:root{--red:#d80d20;--black:#090909;--paper:#f4f1eb;--gray:#a8a8a8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--paper);color:#111}.top{height:82px;background:#080808;color:#fff;display:flex;align-items:center;padding:0 5vw;position:sticky;top:0;z-index:10;border-bottom:2px solid var(--red)}.brand{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none;font-size:18px;letter-spacing:2px}.brand b{color:#ff3042}.flag,.mini-flag{width:38px;height:38px;background:var(--red);position:relative;display:inline-block}.flag:before,.mini-flag:before{content:"";position:absolute;background:#fff;width:20px;height:7px;left:9px;top:15px}.flag:after,.mini-flag:after{content:"";position:absolute;background:#fff;width:7px;height:20px;left:15px;top:9px}.top nav{margin-left:auto;display:flex;gap:22px}.top nav a{color:#ddd;text-decoration:none;font-size:13px}.top nav a:hover{color:#fff}.menu{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:28px}.hero{min-height:calc(100vh - 82px);background:radial-gradient(circle at 70% 30%,#2d2d2d 0,#0b0b0b 35%,#050505 70%);color:#fff;padding:10vh 8vw;position:relative;overflow:hidden}.hero:after{content:"CH";position:absolute;right:-2vw;bottom:-9vw;font-size:34vw;font-weight:900;color:rgba(255,255,255,.025)}.hero-flag{position:absolute;right:10vw;top:12vh;width:28vw;max-width:390px;aspect-ratio:1;background:var(--red);box-shadow:0 35px 80px #000}.hero-flag:before,.hero-flag:after{content:"";position:absolute;background:#fff}.hero-flag:before{width:58%;height:18%;left:21%;top:41%}.hero-flag:after{width:18%;height:58%;left:41%;top:21%}.eyebrow,.num{color:var(--red);font-weight:800;letter-spacing:3px}.hero h1{font-size:clamp(62px,10vw,150px);line-height:.77;margin:45px 0 35px;letter-spacing:-6px;position:relative;z-index:1}.hero h1 em{font-style:normal;color:var(--red)}.lead{font-size:19px;line-height:1.6;max-width:620px;color:#cfcfcf;position:relative;z-index:1}.cta{display:inline-block;margin-top:22px;background:var(--red);color:#fff;text-decoration:none;padding:16px 24px;font-weight:800;text-transform:uppercase;letter-spacing:1px}section:not(.hero){padding:100px 8vw}h2{font-size:clamp(42px,6vw,78px);margin:10px 0 30px;letter-spacing:-3px}.split{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center}.split p:not(.num),.intro,.contact>p{max-width:700px;font-size:18px;line-height:1.7;color:#555}.panel{background:var(--red);color:#fff;min-height:300px;padding:45px;display:flex;flex-direction:column;justify-content:flex-end}.panel strong{font-size:38px}.panel span{margin-top:12px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards article{border-top:5px solid var(--red);background:#fff;padding:30px;min-height:180px}.cards b{font-size:23px}.cards p{line-height:1.6;color:#555}.dark{background:#0a0a0a;color:#fff}.dark .intro{color:#aaa}.empty{border:1px solid #777;padding:35px;margin-top:35px;color:#999}.dark .empty{border-color:#333}.contact form{max-width:720px;display:grid;gap:18px;margin-top:35px}.contact label{font-weight:700;display:grid;gap:8px}.contact input,.contact textarea{font:inherit;padding:14px;border:1px solid #bbb;background:#fff}.contact button{justify-self:start;background:var(--red);border:0;color:#fff;padding:15px 24px;font-weight:800;cursor:pointer}footer{background:#050505;color:#aaa;padding:35px 8vw;display:flex;align-items:center;gap:16px}footer b{color:#fff}footer span:last-child{margin-left:auto}.mini-flag{width:28px;height:28px}.mini-flag:before{width:16px;height:5px;left:6px;top:12px}.mini-flag:after{width:5px;height:16px;left:12px;top:6px}@media(max-width:900px){.menu{display:block}.top nav{display:none;position:absolute;top:82px;left:0;right:0;background:#080808;flex-direction:column;padding:25px 6vw}.top nav.open{display:flex}.hero{padding-top:12vh}.hero-flag{opacity:.28;right:-10vw;top:15vh;width:70vw}.hero h1{letter-spacing:-3px}.split,.cards{grid-template-columns:1fr}section:not(.hero){padding:70px 7vw}footer{flex-wrap:wrap}footer span:last-child{width:100%;margin:5px 0 0}}
.posts-feed{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.publication{background:#fff;color:#111;overflow:hidden}.dark .publication{background:#171717;color:#fff}.publication img,.publication video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#000}.publication-body{padding:24px}.publication-body time{font-size:12px;color:var(--red);font-weight:bold}.publication-body h3{font-size:24px;margin:8px 0 12px}.publication-body p{line-height:1.6;color:#666}.dark .publication-body p{color:#aaa}@media(max-width:900px){.posts-feed{grid-template-columns:1fr}}
/* Page Qui je suis */
.about-full{max-width:1100px;margin:0 auto;padding-left:24px;padding-right:24px}
.about-video{max-width:960px;margin:28px auto 38px;border-radius:16px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.28);background:#000}
.about-text{max-width:900px;margin:0 auto;font-size:1.05rem;line-height:1.85}
.about-text p{margin:0 0 1.35em}
@media(max-width:700px){.about-full{padding-left:18px;padding-right:18px}.about-text{font-size:1rem;line-height:1.72}.about-video{margin-top:20px;margin-bottom:28px;border-radius:10px}}
/* Accueil éditorial */
.home-hero{min-height:640px;background:linear-gradient(115deg,#050505 0,#101010 65%,#1b1b1b 100%);color:#fff;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:7vw;padding:90px 8vw!important;position:relative;overflow:hidden}.home-copy{position:relative;z-index:2}.home-hero h1{font-size:clamp(64px,9vw,138px);line-height:.82;letter-spacing:-6px;margin:30px 0}.home-hero h1 em{display:block;color:var(--red);font-style:normal}.home-actions{display:flex;gap:12px;flex-wrap:wrap}.cta-ghost{background:transparent;border:1px solid #555}.swiss-mark{width:min(30vw,380px);aspect-ratio:1;background:var(--red);position:relative;justify-self:end;box-shadow:0 35px 90px rgba(0,0,0,.55)}.swiss-mark:before,.swiss-mark:after{content:"";position:absolute;background:#fff}.swiss-mark:before{width:58%;height:18%;left:21%;top:41%}.swiss-mark:after{width:18%;height:58%;left:41%;top:21%}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:36px}.section-head h2{margin-bottom:0}.section-head>p{max-width:520px;line-height:1.7;color:#666}.dark .section-head>p{color:#aaa}.latest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.latest-card{background:#fff;border-top:5px solid var(--red);min-height:250px;padding:26px;display:flex;flex-direction:column}.latest-card .tag{font-size:11px;letter-spacing:1.5px;color:var(--red);font-weight:900;text-transform:uppercase}.latest-card h3{font-size:22px;margin:14px 0}.latest-card p{color:#666;line-height:1.55}.latest-card time{margin-top:auto;color:#888;font-size:12px}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.category-grid a{min-height:270px;border:1px solid #292929;padding:28px;text-decoration:none;color:#fff;display:flex;flex-direction:column;transition:.2s}.category-grid a:hover{transform:translateY(-4px);border-color:var(--red);background:#121212}.category-grid span{color:var(--red);font-weight:900}.category-grid h3{font-size:28px;margin:34px 0 10px}.category-grid p{color:#999;line-height:1.55}.category-grid b{margin-top:auto;color:#fff;font-size:13px}.archive .posts-feed{grid-template-columns:repeat(3,minmax(0,1fr))}.about-full{max-width:1100px}.about-text{max-height:680px;overflow:auto;padding-right:18px;border-right:1px solid #ddd}.dark+.about-full{}@media(max-width:1100px){.latest-grid,.category-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.home-hero{grid-template-columns:1fr;min-height:auto;padding:80px 7vw!important}.swiss-mark{position:absolute;right:-15vw;top:100px;width:65vw;opacity:.18}.home-hero h1{letter-spacing:-3px}.section-head{display:block}.latest-grid,.category-grid,.archive .posts-feed{grid-template-columns:1fr}.about-text{max-height:none;overflow:visible;padding-right:0;border-right:0}}
/* Nouvel accueil Swiss Warriors */
.welcome-home{padding:0!important;background:#f4f1eb}.welcome-top{min-height:680px;background:radial-gradient(circle at 76% 30%,#282828 0,#101010 35%,#050505 72%);color:#fff;display:grid;grid-template-columns:1.3fr .7fr;gap:7vw;align-items:center;padding:90px 8vw;position:relative;overflow:hidden}.welcome-copy{position:relative;z-index:2}.welcome-copy h1{font-size:clamp(54px,7.6vw,116px);line-height:.88;letter-spacing:-5px;margin:28px 0 30px;max-width:1050px}.welcome-copy h1 em{font-style:normal;color:var(--red)}.welcome-lead{font-size:20px;line-height:1.65;color:#c8c8c8;max-width:700px}.home-presentation{padding:105px 8vw 120px}.presentation-heading{max-width:900px;margin:0 auto 42px;text-align:center}.presentation-heading h2{margin-bottom:12px}.presentation-heading>p:last-child{font-size:18px;color:#666}.presentation-video{max-width:1100px;margin:0 auto 70px;background:#000;box-shadow:0 28px 70px rgba(0,0,0,.24)}.welcome-article{max-width:900px;margin:0 auto;background:#fff;padding:60px 70px;border-top:6px solid var(--red);box-shadow:0 20px 60px rgba(0,0,0,.08);font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.9}.welcome-article p{margin:0 0 1.55em}.welcome-article .dropcap:first-letter{float:left;font-size:74px;line-height:.72;font-weight:700;color:var(--red);padding:13px 10px 0 0}.welcome-article .signature{margin-top:45px;padding-top:28px;border-top:1px solid #ddd}.welcome-article strong{color:#111}@media(max-width:900px){.welcome-top{grid-template-columns:1fr;min-height:620px;padding:70px 7vw}.welcome-top .swiss-mark{position:absolute;right:-18vw;top:110px;width:70vw;opacity:.16}.welcome-copy h1{letter-spacing:-3px}.home-presentation{padding:75px 6vw 85px}.presentation-video{margin-bottom:45px}.welcome-article{padding:38px 26px;font-size:17px;line-height:1.8}.presentation-heading{text-align:left}}

.services-dynamic #services-content{max-width:1000px;margin:35px auto 0}.services-video{position:relative;width:100%;padding-top:56.25%;height:0;overflow:hidden;background:#000;box-shadow:0 20px 55px rgba(0,0,0,.18)}.services-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.services-text{margin-top:35px;background:#fff;padding:38px 42px;border-top:5px solid var(--red);font-size:18px;line-height:1.8;white-space:normal}@media(max-width:700px){.services-text{padding:26px 22px;font-size:16px}}

/* Navigation par rubriques + nouvel Accueil */
.page-section{display:none}.page-section.page-active{display:block}.top nav a.active{color:#fff;position:relative}.top nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--red)}
.home-new{padding:0!important;background:#f4f1eb}.home-new-hero{min-height:calc(100vh - 82px);background:radial-gradient(circle at 76% 30%,#282828 0,#101010 35%,#050505 72%);color:#fff;display:grid;grid-template-columns:1.25fr .75fr;gap:7vw;align-items:center;padding:90px 8vw;position:relative;overflow:hidden}.home-new-copy{position:relative;z-index:2}.home-new-copy h1{font-size:clamp(56px,8vw,126px);line-height:.84;letter-spacing:-5px;margin:30px 0}.home-new-copy h1 em{font-style:normal;color:var(--red)}.home-new-lead{font-size:20px;line-height:1.65;color:#c8c8c8;max-width:680px}.home-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;padding:105px 8vw;background:#f4f1eb}.home-intro-title h2{margin-bottom:0}.home-intro-text{font-size:19px;line-height:1.8;color:#4d4d4d}.home-intro-text p:first-child{margin-top:8px}.home-feature{padding:105px 8vw 120px;background:#fff}.home-feature-copy{max-width:850px;margin:0 auto 45px;text-align:center}.home-feature-copy h2{margin-bottom:15px}.home-feature-copy>p:last-child{font-size:18px;line-height:1.7;color:#666}.home-feature .presentation-video{margin-bottom:0}.page-section:not(#accueil){min-height:calc(100vh - 160px)}
@media(max-width:900px){.top nav a.active:after{display:none}.home-new-hero{grid-template-columns:1fr;min-height:650px;padding:70px 7vw}.home-new-hero .swiss-mark{position:absolute;right:-18vw;top:120px;width:70vw;opacity:.16}.home-new-copy h1{letter-spacing:-3px}.home-intro{grid-template-columns:1fr;padding:75px 7vw;gap:20px}.home-feature{padding:75px 7vw 85px}.home-feature-copy{text-align:left}}

/* Accueil — thème sombre */
.home-new{background:#070707;color:#f5f5f5}
.home-new-hero{background:radial-gradient(circle at 76% 28%,#252525 0,#101010 36%,#050505 74%);border-bottom:1px solid #242424}
.home-intro{background:#0b0b0b;color:#f5f5f5;border-bottom:1px solid #242424}
.home-intro-title h2{color:#fff}
.home-intro-text{color:#bdbdbd}
.home-feature{background:#070707;color:#f5f5f5}
.home-feature-copy h2{color:#fff}
.home-feature-copy>p:last-child{color:#b5b5b5}
.home-feature .presentation-video{background:#000;border:1px solid #292929;box-shadow:0 24px 70px rgba(0,0,0,.55)}
.home-new .cta{box-shadow:0 10px 28px rgba(216,13,32,.2)}

/* Qui je suis + J'Offre Mes Services — thème sombre */
#qui,#services{background:#070707;color:#f5f5f5}
#qui h2,#services h2{color:#fff}
#qui .about-video{border:1px solid #292929;box-shadow:0 24px 70px rgba(0,0,0,.55)}
#qui .about-text{color:#c6c6c6;border-right-color:#292929}
#qui .about-text p{color:#c6c6c6}
#services #services-content{color:#f5f5f5}
#services .services-video{border:1px solid #292929;box-shadow:0 24px 70px rgba(0,0,0,.55)}
#services .services-text{background:#111;color:#c6c6c6;border-top-color:var(--red);box-shadow:0 20px 55px rgba(0,0,0,.32)}
#services .services-text h1,#services .services-text h2,#services .services-text h3,#services .services-text strong{color:#fff}
#services .empty{border-color:#333;color:#999;background:#0d0d0d}

/* Qui je suis — pleine page sombre, texte intégral sans défilement interne */
#qui.page-section.about-full{max-width:none;width:100%;min-height:calc(100vh - 82px);margin:0;padding:90px 8vw 110px;background:#080808;color:#fff}
#qui h2{color:#fff}
#qui .about-video{max-width:1100px;margin:28px auto 48px;background:#000;box-shadow:0 22px 60px rgba(0,0,0,.55)}
#qui .about-text{max-width:1100px;max-height:none;overflow:visible;margin:0 auto;padding:0;border:0;color:#d6d6d6;font-size:18px;line-height:1.8}
#qui .about-text p{color:#d6d6d6;margin:0 0 1.45em}
@media(max-width:900px){#qui.page-section.about-full{padding:65px 7vw 80px}#qui .about-text{font-size:17px;line-height:1.75}}

/* Blog — thème sombre pleine page */
#blog.page-section.archive{background:#080808;color:#fff;min-height:calc(100vh - 82px)}
#blog .section-head>p{color:#aaa}
#blog .publication{background:#171717;color:#fff;border:1px solid #262626}
#blog .publication-body p{color:#aaa}
#blog .empty{border-color:#333;color:#999;background:#111}

/* Lives + Contact — thème sombre pleine page */
#lives.page-section.archive,
#contact.page-section.contact{background:#080808;color:#fff;min-height:calc(100vh - 82px)}
#lives .section-head>p,
#contact>p{color:#aaa}
#lives .publication{background:#171717;color:#fff;border:1px solid #262626}
#lives .publication-body p{color:#aaa}
#lives .empty{border-color:#333;color:#999;background:#111}
#contact form{background:#111;border:1px solid #262626;padding:30px}
#contact label{color:#eee}
#contact input,#contact textarea{background:#171717;color:#fff;border:1px solid #3a3a3a;outline:none}
#contact input:focus,#contact textarea:focus{border-color:var(--red)}
#contact input::placeholder,#contact textarea::placeholder{color:#777}
@media(max-width:900px){#contact form{padding:22px}}

/* Language selector (Google Translate) */
.lang-switcher{display:flex;align-items:center;gap:.35rem;margin-left:auto;margin-right:.55rem;padding:.3rem .4rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#151515}
.lang-switcher button{appearance:none;border:0;background:transparent;color:#ddd;font:inherit;font-size:.78rem;font-weight:800;letter-spacing:.04em;padding:.38rem .48rem;border-radius:999px;cursor:pointer}
.lang-switcher button:hover,.lang-switcher button.active{background:#d71920;color:#fff}
#google_translate_element{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.goog-te-banner-frame.skiptranslate,.goog-te-gadget-icon{display:none!important}body{top:0!important}.goog-text-highlight{background:transparent!important;box-shadow:none!important}
@media(max-width:1050px){.lang-switcher{order:2;margin-left:auto}.top .menu{order:3}.top nav{order:4}.lang-switcher button{font-size:.72rem;padding:.34rem .42rem}}

/* Masquer complètement la barre supérieure Google Traduction */
iframe.goog-te-banner-frame,
iframe.goog-te-banner-frame.skiptranslate,
.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
.goog-te-balloon-frame,
body > .skiptranslate:not(#google_translate_element){display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;max-height:0!important;border:0!important}
html,body{top:0!important;margin-top:0!important;position:static!important}

/* Compact flag language selector */
.lang-switcher{gap:.18rem;padding:.22rem .3rem}
.lang-switcher button{font-size:1.15rem;line-height:1;padding:.34rem .4rem;min-width:2rem;filter:saturate(.92);transition:transform .15s ease,background .15s ease}
.lang-switcher button:hover{transform:translateY(-1px)}
.lang-switcher button.active{background:#2b2b2b;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
@media(max-width:1050px){.lang-switcher button{font-size:1.05rem;padding:.3rem .34rem;min-width:1.8rem}}

/* Reliable language flag icons (local SVG, no emoji dependency) */
.lang-switcher button{display:flex;align-items:center;justify-content:center;width:34px;height:27px;padding:3px!important;overflow:hidden}
.lang-switcher button img{display:block!important;width:26px!important;height:18px!important;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.25);pointer-events:none}
.lang-switcher button.active{background:#2b2b2b!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}

/* Contact — formulaire centré */
#contact.page-section.contact{text-align:center}
#contact.page-section.contact>p{margin-left:auto;margin-right:auto}
#contact form{margin:35px auto 0;text-align:left;width:min(100%,720px)}
#contact form button{justify-self:center}

/* Correction drapeau de la première section d'accueil : toujours entièrement visible */
.home-new-hero .swiss-mark{position:relative;right:auto;top:auto;width:min(30vw,380px);max-width:100%;justify-self:end;opacity:1;flex-shrink:0}
@media(max-width:900px){.home-new-hero{grid-template-columns:1fr}.home-new-hero .swiss-mark{position:relative;right:auto;top:auto;width:min(72vw,340px);justify-self:center;margin:20px auto 0;opacity:1}}

.publication-video{position:relative;width:100%;padding-top:56.25%;height:0;overflow:hidden;background:#000}.publication-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* J'Offre mes Services : texte sans cadre */
#services .services-text{background:transparent;border:0;box-shadow:none;padding:0;margin-top:35px;color:#c6c6c6}
@media(max-width:700px){#services .services-text{padding:0}}

/* Qui je suis — texte compact, sans espace entre les paragraphes */
#qui .about-text p{margin:0!important;padding:0!important}

/* Contact SMTP */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-status{margin:.8rem 0 0;min-height:1.4em}
.read-more{display:inline-block;margin-top:14px;color:var(--red);font-weight:900;text-decoration:none}.read-more:hover{text-decoration:underline}.latest-card .read-more{margin-top:10px}.article-page{margin:0;background:#080808;color:#f2f2f2;font-family:Arial,Helvetica,sans-serif;min-height:100vh}.article-top{background:#080808;padding:20px max(5vw,24px)}.article-top a{color:#fff;text-decoration:none;font-weight:800}.article-single{width:min(980px,90vw);margin:55px auto 90px;background:#111;border:1px solid #262626;padding:clamp(28px,5vw,65px);box-sizing:border-box;box-shadow:0 20px 60px rgba(0,0,0,.35)}.article-single h1{font-size:clamp(38px,6vw,72px);line-height:1;margin:12px 0 32px}.article-single time{color:#aaa;font-size:13px}.article-category a{color:var(--red);font-weight:900;text-decoration:none}.article-media{display:block;width:100%;margin:0 0 34px;max-height:680px;object-fit:contain;background:#000}.publication-video{position:relative;width:100%;padding-top:56.25%;height:0;overflow:hidden;background:#000}.publication-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.article-content{font-size:18px;line-height:1.8;overflow-wrap:anywhere;color:#e8e8e8}@media(max-width:600px){.article-single{width:100%;margin:0;padding:30px 20px}.article-single h1{font-size:40px}}

/* Navigation des pages d'articles complets */
.article-top{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.article-nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.article-nav a{white-space:nowrap}
@media (max-width:760px){.article-top{align-items:flex-start;flex-direction:column}.article-nav{width:100%;gap:10px}.article-nav a{display:block}}
