/* Navigation and a single dark opening composition. */
.header{position:sticky;top:0;max-width:none;width:100%;padding-inline:max(64px,calc((100vw - 1280px)/2));background:#111715;color:#fcfaf5;border-bottom:1px solid #ffffff14;transition:height .35s,background .35s,border-color .35s,box-shadow .35s;isolation:isolate}
.header.is-scrolled{height:78px;background:#111715b8;backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%);border-bottom-color:#ffffff24;box-shadow:0 8px 30px #11171510}
.header .nav>a:after{background:var(--acid)}.header .language{border-color:#fcfaf5a0;color:var(--paper)}.header .menu-toggle span{background:var(--paper)}
.header .nav-contact{background:var(--acid);color:var(--ink)}.header .nav-contact:hover{background:#e9ff8c}
.hero{max-width:none;margin:0;background:var(--ink);color:var(--paper);padding:78px max(64px,calc((100vw - 1280px)/2)) 95px;grid-template-columns:1.14fr 1fr;gap:45px;min-height:670px;overflow:hidden;position:relative}
.hero h1{font-size:clamp(54px,5.5vw,82px);letter-spacing:-.065em}.hero h1>span{color:var(--acid)}.hero .eyebrow{color:#ccd6c4}.hero .eyebrow .status-dot{background:var(--acid);box-shadow:0 0 0 5px #ddfb490c}
.hero-lead{color:#bdc8b7;max-width:500px}.hero-ctas .button.dark{background:var(--acid);color:var(--ink)}.hero-ctas .button.dark:hover{background:#e9ff8c}.hero .text-link{border-color:#83917a;color:var(--paper)}.hero .hero-note{color:#a2b19a}.hero .tiny-cross{color:var(--acid)}
.hero-art-3d{background:radial-gradient(ellipse at 49% 44%,#293723 0%,#1a261b 37%,#111715 73%);min-height:490px;aspect-ratio:1;overflow:visible;isolation:isolate;border-radius:0;position:relative}
.hero-art-3d:before{content:'';position:absolute;inset:13% 7%;border:1px solid #ddfb4911;border-radius:50%;transform:rotate(-25deg);pointer-events:none}
.hero-art-3d:after{content:'';position:absolute;width:68%;height:68%;top:16%;left:16%;border:1px solid #ddfb490c;border-radius:50%;transform:rotate(30deg);pointer-events:none}
.hero-art-3d .art-top{inset-inline:5px;top:6px;gap:20px;color:#a5b19c;font-size:8px;z-index:2}.motion-status{display:flex;align-items:center;gap:7px;text-align:right}.motion-status i{width:4px;height:4px;border-radius:50%;background:var(--acid);box-shadow:0 0 9px #ddfb4940;flex:none}
.hero-art-3d .art-bottom{inset-inline:5px;bottom:3px;font-size:11px;color:#aebda4;z-index:2;pointer-events:none}.motion-cross{font-size:36px;line-height:1;color:var(--acid);font-weight:400}
.logo-stage{position:absolute;inset:0;touch-action:pan-y}.logo-stage canvas{position:absolute;width:100%;height:100%;inset:0;display:block;z-index:1;opacity:0;transition:opacity .7s}.logo-stage.is-rendered canvas{opacity:1}.hero-fallback{position:absolute;width:57%;height:auto;left:21.5%;top:12%;z-index:1;transition:opacity .5s}.logo-stage.is-rendered .hero-fallback{opacity:0;pointer-events:none}.logo-shadow{position:absolute;width:48%;height:5%;left:26%;bottom:13%;background:#00000085;border-radius:50%;filter:blur(17px);opacity:.5;transform:rotate(-8deg);pointer-events:none}
.hero-copy{position:relative;z-index:2}.hero-copy>*{animation:hero-enter .85s cubic-bezier(.2,.75,.25,1) both}.hero-copy>:nth-child(2){animation-delay:.08s}.hero-copy>:nth-child(3){animation-delay:.16s}.hero-copy>:nth-child(4){animation-delay:.24s}.hero-copy>:nth-child(5){animation-delay:.32s}
@keyframes hero-enter{from{opacity:0;transform:translateY(21px)}to{opacity:1;transform:none}}
@keyframes detail-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.will-reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:var(--reveal-delay,0ms)}.will-reveal.is-visible{opacity:1;transform:none}
.service[open] .service-content,.faq-list details[open] p{animation:detail-enter .4s var(--ease)}.button span:last-child{transition:transform .25s}.button:hover span:last-child{transform:translate(3px,-3px)}.audience-grid article{transition:transform .35s var(--ease),background .35s}.audience-grid article:hover{transform:translateY(-5px)}
.method-visual{transition:background .45s}.method-panel[data-step="1"] .method-visual{background:#27331f}.method-panel[data-step="2"] .method-visual{background:#203022}
@media(min-width:1600px){.hero{gap:75px;min-height:740px}.hero-art-3d{min-height:540px}}
@media(max-width:1180px){.header{padding-inline:40px}.hero{padding:60px 40px 75px;gap:32px}.hero-art-3d{min-height:430px}.hero h1{font-size:clamp(48px,5.45vw,68px)}}
@media(max-width:960px){.header .nav{background:#152017f5;color:var(--paper);border-color:#ffffff26;box-shadow:0 20px 40px #0003;backdrop-filter:blur(20px)}.hero{min-height:580px;grid-template-columns:1.15fr 1fr;gap:18px}.hero h1{font-size:51px}.hero-art-3d{aspect-ratio:.8;min-height:390px}.hero-art-3d .art-top{font-size:6px;letter-spacing:.07em}.hero-art-3d .motion-status{display:none}.hero-art-3d .art-bottom{font-size:9px}.hero-fallback{top:22%;width:66%;left:17%}}
@media(max-width:700px){.header{padding-inline:23px}.header.is-scrolled{height:72px}.header.is-scrolled .nav{top:65px}.hero{padding:42px 23px 35px;grid-template-columns:1fr;gap:20px;min-height:0}.hero h1{font-size:clamp(44px,11.8vw,72px)}.hero-lead{font-size:14px}.hero-art-3d{min-height:315px;max-height:420px;aspect-ratio:1.25;overflow:hidden;margin-top:5px}.hero-art-3d .art-top{inset-inline:0;top:10px;font-size:7px}.hero-art-3d .motion-status{display:flex;font-size:6px}.hero-art-3d .art-bottom{inset-inline:0;bottom:5px;font-size:9px}.hero-fallback{height:75%;width:55%;object-fit:contain;left:22.5%;top:12%}.hero-art-3d:before{inset:12% 15%}.hero-art-3d:after{width:50%;height:74%;top:13%;left:25%}.logo-shadow{bottom:10%}.hero-note{margin-bottom:0}.motion-cross{font-size:28px}}
@media(max-width:370px){.header{padding-inline:17px}.hero h1{font-size:43px}.hero-art-3d .motion-status{display:none}}
@media(prefers-reduced-motion:reduce){.hero-copy>*{animation:none}.will-reveal{opacity:1;transform:none;transition:none}.hero-art-3d:before,.hero-art-3d:after{transform:none}.button:hover span:last-child,.audience-grid article:hover{transform:none}.hero-art-3d .art-bottom>span:first-child{visibility:hidden}}

/* A quieter opening and a narrative that unfolds chapter by chapter. */
.hero-copy{padding-block:36px}.hero h1{margin-top:0}.hero-art-3d .perspective-line{position:absolute;bottom:0;left:6px;font-size:12px;line-height:1.65;color:#b9c5af;letter-spacing:-.015em;z-index:2;pointer-events:none}
.header:after{content:'';position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--acid);transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none;opacity:.8}
.service-toggle{transition:transform .4s var(--ease),background .3s,border-color .3s}.service-toggle:before,.service[open] .service-toggle:before{left:9px;top:13px;width:8px;transform:rotate(45deg)}.service-toggle:after,.service[open] .service-toggle:after{left:14px;top:13px;width:8px;transform:rotate(-45deg)}
.service[open]:not(.is-closing) .service-toggle{transform:rotate(180deg)}.service.is-closing .service-toggle{transform:rotate(0deg)}
.service[open] .service-content,.faq-list details[open] p{animation:none}.service.is-animating,.faq-list details.is-animating{will-change:height}
.faq-list summary>.faq-chevron{display:block;flex:none;width:8px;height:8px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);transition:transform .4s var(--ease);margin-right:5px}.faq-list details[open]:not(.is-closing) summary>.faq-chevron{transform:rotate(225deg)}.faq-list details.is-closing summary>.faq-chevron{transform:rotate(45deg)}
.principles{grid-template-columns:1.3fr .8fr;gap:60px;padding-block:65px;position:relative;isolation:isolate}.principles h2{font-size:clamp(27px,3.1vw,43px);line-height:1.2;letter-spacing:-.05em;position:relative;z-index:1}.principles .decision-list{align-self:center}.principles .decision-list p{font-size:clamp(17px,1.8vw,24px);line-height:1.5}.principles .decision-list p+p{margin-top:7px}
@keyframes story-title{from{clip-path:inset(0 0 100% 0);transform:translateY(18px);opacity:.15}to{clip-path:inset(0);transform:none;opacity:1}}
@keyframes story-shift{from{transform:translateX(32px);opacity:0}to{transform:none;opacity:1}}
@keyframes story-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes story-word{from{opacity:0;transform:translateY(17px)}to{opacity:1;transform:none}}
#vision.story-in h2{animation:story-title .9s var(--ease) both}#vision.story-in .intro-grid>div{animation:story-shift .85s .2s var(--ease) both}
#expertises .service{position:relative}#expertises .service.will-reveal:not(.is-visible){transform:translateX(24px)}#expertises.story-in h2{animation:story-title .85s var(--ease) both}
#methode .method-tabs{position:relative}#methode .method-tabs:before{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:#c4d1b2;transform:scaleX(0);transform-origin:left}#methode.story-in .method-tabs:before{animation:story-line 1.2s .15s var(--ease) both}#methode.story-in h2{animation:story-title .9s var(--ease) both}#methode.story-in .method-tab>span:nth-child(2){animation:story-word .65s .15s var(--ease) both}#methode.story-in .method-tab:nth-child(2)>span:nth-child(2){animation-delay:.28s}#methode.story-in .method-tab:nth-child(3)>span:nth-child(2){animation-delay:.41s}
#partenaires .audience-grid article:first-child.will-reveal:not(.is-visible){transform:translateX(-30px)}#partenaires .audience-grid article:last-child.will-reveal:not(.is-visible){transform:translateX(30px)}
.principles.story-in h2{animation:story-title .8s var(--ease) both}.principles.story-in .decision-list p{animation:story-word .65s .2s var(--ease) both}.principles.story-in .decision-list p:nth-child(2){animation-delay:.36s}.principles.story-in .decision-list p:nth-child(3){animation-delay:.52s}
#questions.story-in h2{animation:story-title .85s var(--ease) both}#questions.story-in .faq-list details{animation:story-word .6s .1s var(--ease) both}#questions.story-in .faq-list details:nth-child(2){animation-delay:.17s}#questions.story-in .faq-list details:nth-child(3){animation-delay:.24s}#questions.story-in .faq-list details:nth-child(4){animation-delay:.31s}#questions.story-in .faq-list details:nth-child(5){animation-delay:.38s}
#contact.story-in h2{animation:story-title .85s var(--ease) both}#contact .contact-form.will-reveal:not(.is-visible){transform:translateX(30px)}#contact.story-in .email-link{animation:story-word .75s .2s var(--ease) both}
@media(max-width:960px){.hero-art-3d .perspective-line{font-size:10px}.principles{gap:35px}.service-toggle:before,.service[open] .service-toggle:before{left:9px;top:13px}.service-toggle:after,.service[open] .service-toggle:after{left:14px;top:13px}}
@media(max-width:700px){.hero-copy{padding-block:8px}.hero-art-3d .perspective-line{left:0;bottom:3px;font-size:10px}.hero-art-3d{margin-top:0}.principles{grid-template-columns:1fr;gap:25px;padding-block:37px}.principles h2{font-size:31px}.principles .decision-list p{font-size:21px}.service-toggle:before,.service[open] .service-toggle:before{left:6px;top:10px}.service-toggle:after,.service[open] .service-toggle:after{left:11px;top:10px}}
@media(prefers-reduced-motion:reduce){.story-scene *{animation:none!important;transition:none!important}.header:after{display:none}.will-reveal{opacity:1!important;transform:none!important}}

/* A tighter opening, an editorial conviction, and larger unframed demonstrations. */
.hero{padding-block:30px 45px;min-height:550px;gap:28px;grid-template-columns:1.08fr 1fr}
.hero-copy{padding-block:12px}.hero h1{font-size:clamp(54px,5.8vw,86px)}
.hero-art-3d{min-height:410px;aspect-ratio:1.12;background:transparent}
.hero-art-3d:before,.hero-art-3d:after{content:none;display:none}
.hero-art-3d .perspective-line{bottom:0;left:10%;padding-left:14px;border-left:2px solid var(--acid);font-size:13px}
.intro-grid{grid-template-columns:1fr 1fr;gap:9%;align-items:center}
.intro-grid h2{font-size:clamp(38px,4.65vw,66px);line-height:1.06;letter-spacing:-.06em}
.conviction-line{display:block}.conviction-line br:after{content:' '}.conviction-line+.conviction-line{margin-top:28px}
.conviction-line:first-child{position:relative;padding-left:24px}
.conviction-line:first-child:before{content:'';position:absolute;left:0;top:.08em;bottom:.06em;width:7px;background:var(--acid);transform:skewY(-25deg)}
.conviction-line.muted{color:#7c857d;padding-left:24px}
.intro-grid .big-copy{font-size:24px;line-height:1.5;max-width:490px;margin:0 0 30px}
.conviction-questions{border-top:1px solid #11171530}
.intro-grid .conviction-questions p{display:grid;grid-template-columns:26px 1fr 20px;gap:12px;align-items:center;padding:18px 0;margin:0;border-bottom:1px solid #11171530;font-size:18px;line-height:1.4}
.conviction-questions p>span:first-child{font-family:monospace;font-size:10px;color:#798275}
.conviction-questions p>span:last-child{font-size:23px;transition:transform .3s}
.conviction-questions p:hover>span:last-child{transform:translate(3px,-3px)}
.intro-grid .conviction-close{font-size:14px;line-height:1.85;margin-top:25px;max-width:480px;color:#606c5b}
#vision.story-in .conviction-questions p{animation:story-word .7s .3s var(--ease) both}
#vision.story-in .conviction-questions p:nth-child(2){animation-delay:.45s}
#vision.story-in .conviction-questions p:nth-child(3){animation-delay:.6s}
.method-panel{grid-template-columns:1.08fr 1fr;gap:75px}
.method-visual,.method-panel[data-step="1"] .method-visual,.method-panel[data-step="2"] .method-visual{background:transparent;padding:20px 6px;min-height:0}
.test-card{max-width:460px;min-height:305px;padding:32px 34px;border:1px solid #11171520;box-shadow:0 12px 26px #11171508}
.test-card>.mono{font-size:11px}.test-lines{margin:32px 0;gap:13px}.test-lines span{height:12px}
.test-options{gap:13px}.test-options span{font-size:12px;padding:13px 8px}
.test-caption{font-size:15px;line-height:1.6;margin-top:25px}
.visual-label{font-size:13px;color:#c4cebc;line-height:1.6;margin-top:27px;gap:10px;text-align:center}
.method-description>p:not(.eyebrow){font-size:16px;line-height:1.85}
@media(min-width:1600px){.hero{min-height:600px}.hero-art-3d{min-height:450px}}
@media(max-width:1180px){.hero{padding-block:28px 42px}.hero h1{font-size:clamp(48px,5.6vw,68px)}.hero-art-3d{min-height:370px}.intro-grid{gap:7%}.intro-grid .big-copy{font-size:21px}.method-panel{gap:45px}}
@media(max-width:960px){.hero{min-height:500px;gap:15px}.hero h1{font-size:49px}.hero-art-3d{min-height:360px;aspect-ratio:.95}.intro-grid h2{font-size:43px}.intro-grid .conviction-questions p{font-size:16px}.method-panel{gap:30px}.test-card{padding:26px 22px}.test-card>.mono{font-size:10px}.test-options span{font-size:10px}.test-caption{font-size:14px}.method-description>p:not(.eyebrow){font-size:14px}}
@media(max-width:700px){.hero{padding-block:30px 28px;min-height:0;grid-template-columns:1fr;gap:3px}.hero h1{font-size:clamp(44px,11.8vw,72px)}.hero-art-3d{min-height:290px;aspect-ratio:1.35}.hero-art-3d .perspective-line{font-size:11px;left:0;bottom:0}.intro-grid{grid-template-columns:1fr;gap:34px}.intro-grid h2{font-size:clamp(38px,10vw,56px)}.conviction-line+.conviction-line{margin-top:19px}.conviction-line br{display:none}.conviction-line:first-child,.conviction-line.muted{padding-left:19px}.conviction-line:first-child:before{width:5px}.intro-grid .big-copy{font-size:21px;margin-bottom:25px}.intro-grid .conviction-questions p{font-size:17px;padding-block:18px}.intro-grid .conviction-close{font-size:14px}.method-panel{grid-template-columns:1fr;gap:28px}.method-visual,.method-panel[data-step="1"] .method-visual,.method-panel[data-step="2"] .method-visual{padding:15px 5px}.test-card{max-width:460px;min-height:290px;padding:28px 24px}.test-caption{font-size:15px}.visual-label{font-size:12px;margin-top:24px}.method-description>p:not(.eyebrow){font-size:15px}}
/* Slow light across the opening, without framing the 3D mark. */
.hero{isolation:isolate}
.hero:before,.hero:after{content:'';position:absolute;inset:-25%;z-index:-1;pointer-events:none}
.hero:before{background:radial-gradient(ellipse at 78% 38%,#65723a60 0%,#34433435 28%,transparent 60%),radial-gradient(ellipse at 8% 75%,#56694e32,transparent 48%);animation:hero-light 18s ease-in-out infinite alternate}
.hero:after{inset:0;opacity:.23;background-image:repeating-linear-gradient(115deg,transparent 0 3px,#ffffff04 3px 4px);mask-image:linear-gradient(90deg,transparent,#000);-webkit-mask-image:linear-gradient(90deg,transparent,#000)}
@keyframes hero-light{from{transform:translate(-3%,2%) scale(1);opacity:.6}to{transform:translate(5%,-4%) scale(1.12);opacity:1}}
.intro-grid .conviction-questions p{grid-template-columns:26px 1fr}
.conviction-questions p>span:last-child{font-size:18px;transition:none}
.conviction-questions p:hover>span:last-child{transform:none}
.perspective-break{background:var(--acid);overflow:hidden;padding-block:58px;position:relative}
.perspective-inner{display:grid;grid-template-columns:1fr 200px 1fr;gap:35px;align-items:center}
.perspective-inner>p{font-size:clamp(23px,2.7vw,38px);font-weight:500;letter-spacing:-.05em;line-height:1.2;margin:0}
.perspective-inner>p:last-child{text-align:right}
.perspective-sign{display:flex;align-items:center;gap:22px}
.perspective-sign img{width:64px;height:74px;flex:none;object-fit:contain}
.perspective-rule{height:1px;background:#11171550;flex:1;transform-origin:center}
.perspective-break.story-in .perspective-sign img{animation:perspective-turn 1.3s var(--ease) both}
.perspective-break.story-in .perspective-rule{animation:story-line 1.4s .2s var(--ease) both}
.perspective-break.story-in .perspective-inner>p:first-child{animation:story-shift 1s var(--ease) both}
.perspective-break.story-in .perspective-inner>p:last-child{animation:story-word 1s .25s var(--ease) both}
@keyframes perspective-turn{from{transform:rotate(-80deg) scale(.65);opacity:.2}to{transform:rotate(0) scale(1);opacity:1}}
@media(max-width:960px){.perspective-inner{grid-template-columns:1fr 140px 1fr;gap:20px}.perspective-sign{gap:12px}.perspective-sign img{width:50px;height:58px}.conviction-questions p>span:last-child{font-size:16px}}
@media(max-width:700px){.perspective-break{padding-block:36px}.perspective-inner{grid-template-columns:1fr;gap:22px}.perspective-inner>p,.perspective-inner>p:last-child{text-align:center;font-size:29px}.perspective-sign{width:190px;margin-inline:auto;gap:24px}.perspective-sign img{width:39px;height:45px}.conviction-questions p>span:last-child{font-size:17px}}
@media(prefers-reduced-motion:reduce){.hero:before,.perspective-break *{animation:none!important;transform:none!important}}
/* A fixed brand imprint, a quieter chapter bridge, and a roomier navigation. */
.header:after{content:none;display:none}
.header.is-scrolled{height:94px}
.header .brand{display:flex;align-items:center;padding-block:12px}
.header .brand img{display:block}
.hero:before{inset:-12% 12% -12% 29%;background:url('assets/mark-yellow.svg') center/contain no-repeat;opacity:.045;transform:rotate(-17deg);animation:none}
.hero:after{opacity:1;background:linear-gradient(115deg,#8f9d6909,transparent 55%),repeating-linear-gradient(115deg,transparent 0 3px,#ffffff03 3px 4px);mask-image:none;-webkit-mask-image:none}
.intro{border-bottom:0;padding-bottom:65px}
.perspective-break{background:var(--paper);padding-block:10px 65px}
.perspective-inner{grid-template-columns:1fr 220px 1fr;gap:50px}
.perspective-inner>p{font-size:clamp(28px,3.5vw,48px);font-weight:500;letter-spacing:-.055em;color:#778172}
.perspective-inner>p:last-child{color:var(--ink)}
.perspective-sign{gap:27px}.perspective-sign img{width:78px;height:90px}
.perspective-rule{background:#11171520}
#expertises .section-heading{position:relative;padding-top:28px}
#expertises .section-heading h2{font-size:clamp(36px,3.9vw,56px);line-height:1.2;letter-spacing:-.06em}
.expertise-title-first,.expertise-title-second{display:block}
.expertise-title-second{width:fit-content;position:relative;isolation:isolate;margin-top:10px;margin-left:40px}
.expertise-title-second:before{content:'';position:absolute;left:-9px;right:-10px;bottom:3px;height:.34em;background:var(--acid);z-index:-1;transform:rotate(-2deg);transform-origin:left}
#expertises.story-in .expertise-title-second:before{animation:story-line 1.1s .3s var(--ease) both}
@media(max-width:960px){.perspective-inner{grid-template-columns:1fr 150px 1fr;gap:20px}.perspective-sign{gap:15px}.perspective-sign img{width:58px;height:67px}.expertise-title-second{margin-left:22px}#expertises .section-heading h2{font-size:38px}}
@media(max-width:700px){.header.is-scrolled{height:88px}.header.is-scrolled .nav{top:80px}.header .brand{padding-block:13px}.intro{padding-bottom:35px}.hero:before{inset:25% -25% 0 0;opacity:.035}.perspective-break{padding-block:15px 25px}.perspective-inner{grid-template-columns:1fr;gap:16px}.perspective-inner>p,.perspective-inner>p:last-child{font-size:31px}.perspective-sign{gap:25px;width:170px}.perspective-sign img{width:38px;height:44px}#expertises .section-heading{padding-top:0}#expertises .section-heading h2{font-size:35px}.expertise-title-second{margin-left:17px;margin-top:10px}}
#expertises.section{padding-top:70px}
@media(max-width:700px){#expertises.section{padding-top:45px}}
/* Silent editorial footage with the brand imprint over it. */
.hero{min-height:600px;padding-block:55px 70px}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3;filter:saturate(.45)}
.hero:after{inset:0;background:linear-gradient(90deg,#111715f2 0%,#111715d9 36%,#11171570 74%,#11171580 100%);opacity:1;z-index:-2}
.hero:before{z-index:-1;inset:-10% 1% -10% 52%;opacity:.13;background-position:center;transform:rotate(-12deg)}
.hero-video-message{min-height:390px;aspect-ratio:auto;display:flex;align-items:flex-end;justify-content:flex-start;background:none;position:relative;isolation:auto;overflow:visible}
.hero .hero-video-message .perspective-line{position:static;font-size:clamp(27px,3vw,43px);font-weight:500;line-height:1.3;color:var(--paper);border-left:3px solid var(--acid);padding-left:23px;letter-spacing:-.045em;margin:0 0 22px 15px;z-index:2}
.video-toggle{position:absolute;bottom:22px;right:max(64px,calc((100vw - 1280px)/2));border:1px solid #ffffff50;border-radius:30px;background:#11171550;color:var(--paper);font-size:11px;padding:9px 16px;cursor:pointer;z-index:3;backdrop-filter:blur(6px)}
.video-toggle:hover{background:#111715b0}.video-toggle:focus-visible{outline:2px solid var(--acid);outline-offset:4px}
.perspective-break{background:var(--ink);padding:23px;display:flex;justify-content:center}
.perspective-capsule{display:flex;align-items:center;justify-content:center;gap:29px;border:1px solid #fcfaf538;border-radius:100px;padding:14px 35px;color:var(--paper);font-size:clamp(17px,2vw,24px);letter-spacing:-.035em;line-height:1.25;background:#ffffff05}
.perspective-capsule img{width:25px;height:29px;object-fit:contain;flex:none}
.perspective-break.story-in .perspective-capsule{animation:story-word .8s var(--ease) both}
.perspective-break.story-in .perspective-capsule img{animation:perspective-turn 1s .2s var(--ease) both}
.intro{padding-bottom:70px}
@media(max-width:960px){.hero{min-height:550px}.hero-video-message{min-height:360px}.hero .hero-video-message .perspective-line{font-size:29px;margin-left:0;padding-left:17px}.video-toggle{right:40px}}
@media(max-width:700px){.hero{min-height:0;padding-block:35px 60px;gap:35px}.hero-video{object-position:61% center}.hero:after{background:linear-gradient(90deg,#111715e8,#1117158c),linear-gradient(0deg,#1117158c,transparent)}.hero:before{inset:30% -18% -4% 18%;opacity:.09}.hero-video-message{min-height:110px;max-height:none;margin:0}.hero .hero-video-message .perspective-line{font-size:31px;line-height:1.3;margin:0 0 10px;padding-left:18px}.video-toggle{right:23px;bottom:15px;font-size:10px;padding:7px 13px}.perspective-break{padding:20px 16px}.perspective-capsule{gap:14px;padding:13px 18px;font-size:17px;white-space:nowrap}.perspective-capsule img{width:20px;height:23px}.intro{padding-bottom:45px}}
/* The thought closes naturally within chapter 01; no separate banner. */
.hero:before{content:none;display:none}
.intro-grid .vision-transition{font-size:21px;line-height:1.5;font-weight:500;letter-spacing:-.04em;margin:24px 0 0;color:var(--ink)}
.vision-transition span{background:linear-gradient(transparent 72%,var(--acid) 72%,var(--acid) 94%,transparent 94%);padding-inline:2px}
.intro{padding-bottom:45px}
#expertises.section{padding-top:65px}
@media(max-width:700px){.intro-grid .vision-transition{font-size:20px;margin-top:23px}.intro{padding-bottom:30px}#expertises.section{padding-top:35px}.hero{padding-bottom:42px}}
/* A consistent shared rhythm replaces the removed interlude. */
.intro{padding-bottom:30px}
#expertises.section{padding-top:30px}
#expertises .section-heading{padding-top:0}
@media(max-width:700px){.intro{padding-bottom:24px}#expertises.section{padding-top:24px}}
/* The opening film continues behind the translucent navigation. */
.header{background:#11171538;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.header.is-scrolled{background:#111715d9;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.hero{margin-top:-100px;padding-top:155px;min-height:700px}
.hero-video{filter:saturate(.7);object-position:center 44%}
.hero:after{background:linear-gradient(90deg,#111715ed 0%,#111715ca 38%,#11171575 100%),linear-gradient(0deg,#11171580,transparent 45%)}
/* One conviction, then a hands-on reading of the three questions. */
.intro.section{padding-block:85px 65px}
.intro-grid{align-items:start;gap:9%}
.intro-grid h2{font-size:clamp(36px,4.1vw,58px)}
.intro-grid .big-copy{margin-bottom:20px;font-size:23px}
.intro-grid .conviction-close{margin-top:0;font-size:15px}
.insight-explorer{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;margin-top:45px}
.insight-choices{border-top:1px solid #11171525}
.insight-trigger{width:100%;border:0;border-bottom:1px solid #11171525;background:none;text-align:left;display:grid;grid-template-columns:30px 1fr 8px;align-items:center;gap:12px;padding:24px 12px 24px 0;font-size:19px;line-height:1.45;transition:background .25s,padding .25s}
.insight-number{font:11px monospace;color:#7b8677}
.insight-indicator{width:6px;height:6px;border-radius:50%;background:#11171525}
.insight-trigger.active{padding-left:16px;background:#ddfb4935}
.insight-trigger.active .insight-indicator{background:var(--ink)}
.insight-display{min-height:300px;position:relative;padding:12px 0 22px}
.insight-panel[hidden]{display:none}
.insight-panel:not([hidden]){animation:insight-enter .45s var(--ease) both}
.insight-panel svg{display:block;width:100%;height:205px;overflow:visible}
.message-card>rect:first-child{fill:#fcfaf5;stroke:#11171550;stroke-width:1.5}
.message-card path,.adjust-block path{fill:none;stroke:#111715;stroke-width:4;stroke-linecap:round}
.message-card .sample{fill:#c9d0c2}.message-card.selected>rect:first-child{fill:var(--ink);stroke:var(--ink)}.message-card.selected path{stroke:var(--paper)}.message-card.selected .sample{fill:var(--acid)}
.message-card.faint{opacity:.4}.message-card.middle{opacity:.7}
.diagram-line{fill:none;stroke:#11171535;stroke-width:1.5}.diagram-dash{fill:none;stroke:#11171570;stroke-width:1.5;stroke-dasharray:4 7}.diagram-dot{fill:var(--ink)}
.budget-bars rect{fill:#d7ddcf}.budget-bars rect.accent{fill:var(--acid);stroke:#11171545;stroke-width:1}
.adjust-block rect{fill:#e6eade;stroke:#11171540}.adjust-knob circle{fill:var(--ink)}.adjust-knob path{stroke:var(--acid);fill:none;stroke-width:4}.adjust-block.result rect{fill:var(--acid);stroke:none}.adjust-block.result path{stroke-width:5}
.insight-caption{font-size:15px;line-height:1.6;margin:17px 0 0;color:#6d7765}.insight-caption strong{color:var(--ink);font-size:18px;font-weight:500}
.insight-note{display:block;font-size:9px;color:#8a9383;margin-top:12px;letter-spacing:.06em}
@keyframes insight-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
/* A clear change of chapter replaces the ambiguous empty bridge. */
#expertises.section{background:var(--ink);color:var(--paper);padding-block:75px 85px}
#expertises .section-label{color:#aab6a1}
#expertises .section-heading{grid-template-columns:1fr 1fr;gap:0 9%;margin-bottom:40px}
#expertises .section-heading .section-label{grid-column:1/-1}
#expertises .section-heading h2{grid-column:1;font-size:clamp(36px,3.9vw,56px)}
#expertises .section-heading>p:last-child{grid-column:2;align-self:end;color:#b8c3af;font-size:14px;line-height:1.8}
#expertises .expertise-title-second{color:var(--acid);margin-left:0}.expertise .expertise-title-second:before{display:none}
#expertises .service{border-color:#fcfaf52b}#expertises .service-list{border-color:#fcfaf52b}
#expertises .service-number{color:#a7b29f}#expertises .service summary p,#expertises .service-content p{color:#b8c3af}
#expertises .service-toggle{border-color:#fcfaf55c}#expertises .service-toggle:before,#expertises .service-toggle:after{background:var(--paper)}
#expertises .service[open] .service-toggle{background:var(--acid);border-color:var(--acid)}#expertises .service[open] .service-toggle:before,#expertises .service[open] .service-toggle:after{background:var(--ink)}
#expertises .tags span{color:#d0d9c8;border-color:#fcfaf530}
@media(max-width:960px){.intro-grid .big-copy{font-size:20px}.insight-trigger{font-size:16px}.insight-explorer{gap:6%}.insight-panel svg{height:180px}.insight-caption strong{font-size:16px}}
@media(max-width:700px){.hero{margin-top:-86px;padding-top:121px;min-height:0}.intro.section{padding-block:60px 45px}.intro-grid{gap:28px}.intro-grid h2{font-size:clamp(36px,10vw,50px)}.intro-grid .big-copy{font-size:21px}.insight-explorer{grid-template-columns:1fr;gap:20px;margin-top:30px}.insight-trigger{padding-block:17px;font-size:17px}.insight-display{min-height:275px;padding-top:10px}.insight-panel svg{height:170px}.insight-caption{margin-top:12px;font-size:14px}.insight-note{margin-top:8px}#expertises.section{padding-block:55px 60px}#expertises .section-heading{grid-template-columns:1fr;gap:23px}#expertises .section-heading h2,#expertises .section-heading>p:last-child{grid-column:1}#expertises .section-heading .section-label{margin:0}#expertises .section-heading h2{font-size:35px}#expertises .section-heading>p:last-child{font-size:13px}}
@media(prefers-reduced-motion:reduce){.insight-panel:not([hidden]){animation:none}.insight-trigger{transition:none}}
/* A softer city-light film, without a competing decorative stroke. */
.hero .hero-video-message .perspective-line{border-left:0;padding-left:0}
.hero-video{filter:saturate(.65);object-position:center}
#expertises .expertise-title-second{color:var(--paper)}
#expertises .expertise-title-second:before{display:block;left:0;right:0;bottom:-4px;height:.12em;background:var(--acid);transform:rotate(-1deg)}
/* Editorial illustrations from Storyset; deliberate selection, visible answers. */
.insight-explorer{margin-top:35px;gap:7%;grid-template-columns:1.05fr 1fr}
.insight-display{padding:0;min-height:430px;align-self:center}
.insight-panel .insight-artwork{width:100%;height:340px;object-fit:contain;display:block;mix-blend-mode:multiply}
.insight-trigger{padding:20px 13px 20px 0;grid-template-columns:26px 1fr 6px;align-items:start;gap:15px;border-left:3px solid transparent}
.insight-trigger.active{background:transparent;border-left-color:var(--ink);padding-left:15px}
.insight-trigger:hover{background:#11171504}
.insight-number{padding-top:5px}.insight-indicator{margin-top:11px;width:5px;height:5px}
.insight-question strong{font-size:19px;line-height:1.4;font-weight:500;display:block}
.insight-answer{display:block;font-size:13px;line-height:1.65;margin-top:9px;max-width:400px;color:#6a7561}
.insight-caption{margin:6px 0 0;font-size:14px;text-align:center}
.insight-caption strong{font-size:17px}
.art-credit{font-size:9px;color:#69745f}
@media(max-width:960px){.insight-question strong{font-size:17px}.insight-answer{font-size:12px}.insight-panel .insight-artwork{height:300px}.insight-display{min-height:385px}}
@media(max-width:700px){.hero .hero-video-message .perspective-line{padding-left:0}.insight-explorer{grid-template-columns:1fr;gap:15px;margin-top:25px}.insight-trigger{padding-block:17px}.insight-question strong{font-size:17px}.insight-answer{font-size:13px}.insight-panel .insight-artwork{height:280px}.insight-display{min-height:350px}.insight-caption strong{font-size:16px}.art-credit{order:4}}
/* A single clear message over the current film, pending the video choice. */
.hero{grid-template-columns:1fr;min-height:650px}.hero-copy{max-width:730px}
/* Horizontal conviction, with both explanatory paragraphs directly below. */
.intro-grid{display:block}
.intro-grid h2{display:grid;grid-template-columns:1fr 1fr;gap:5%;font-size:clamp(30px,3.4vw,48px);line-height:1.2}
.conviction-line,.conviction-line:first-child,.conviction-line.muted{padding:0;white-space:nowrap}
.conviction-line+.conviction-line{margin-top:0}.conviction-line:first-child:before{display:none}
.conviction-body{display:grid;grid-template-columns:1fr 1fr;gap:5%;margin-top:27px}
.intro-grid .big-copy{font-size:21px;line-height:1.55;max-width:none;margin:0}
.intro-grid .conviction-close{font-size:15px;line-height:1.85;margin:0;max-width:none}
.insight-display{min-height:330px;padding-top:0}
.insight-editorial{min-height:255px;display:flex;flex-direction:column;justify-content:space-between;padding:24px 29px;background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.editorial-label,.editorial-foot{font-family:monospace;font-size:9px;letter-spacing:.08em;position:relative;z-index:1}
.editorial-foot{font-size:10px;letter-spacing:0;color:#b7c3ab}
.editorial-message,.editorial-invest,.editorial-adjust{display:flex;flex-direction:column;font-size:clamp(26px,3vw,42px);line-height:1.18;letter-spacing:-.06em;margin:20px 0;position:relative;z-index:1}
.insight-editorial strong{font-weight:700;color:var(--acid)}
.editorial-message>span{color:#8e9b83;font-size:.76em;letter-spacing:-.04em}
.editorial-invest strong{align-self:flex-end}.editorial-adjust{font-size:34px}.editorial-adjust>span:nth-child(2){margin-left:17%}.editorial-adjust>strong{margin-left:34%}
.insight-editorial:after{content:'';position:absolute;width:150px;height:170px;right:-20px;top:-15px;background:url('assets/mark-yellow.svg') center/contain no-repeat;opacity:.035;transform:rotate(-12deg)}
/* Full acid highlight behind the words, rather than a narrow underline. */
#expertises .expertise-title-second{color:var(--ink);padding:4px 10px;margin-left:-10px;z-index:0}
#expertises .expertise-title-second:before{height:100%;bottom:0;left:0;right:0;transform:none;animation:none}
.expertise-cta{margin-top:42px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:30px;border-top:1px solid #fcfaf52b}
.expertise-cta p{font-size:25px;letter-spacing:-.04em}
@media(max-width:960px){.intro-grid h2{font-size:clamp(25px,3.4vw,34px)}.intro-grid .big-copy{font-size:19px}.intro-grid .conviction-close{font-size:14px}.editorial-adjust{font-size:28px}.insight-display{min-height:330px}}
@media(max-width:700px){.hero{min-height:0}.intro-grid h2{grid-template-columns:1fr;gap:10px;font-size:clamp(26px,7.7vw,40px)}.conviction-body{grid-template-columns:1fr;gap:17px;margin-top:25px}.intro-grid .big-copy{font-size:20px}.intro-grid .conviction-close{font-size:14px}.insight-display{min-height:320px}.insight-editorial{min-height:250px;padding:23px}.editorial-message,.editorial-invest{font-size:32px}.editorial-adjust{font-size:31px}.expertise-cta{flex-direction:column;align-items:flex-start;gap:20px;margin-top:30px}.expertise-cta p{font-size:23px}}
/* Restore the earlier conviction layout and the saved partial highlight. */
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}
.intro-grid h2{display:block;font-size:clamp(36px,4.1vw,58px);line-height:1.12;letter-spacing:-.035em}
.conviction-line,.conviction-line:first-child,.conviction-line.muted{white-space:normal;padding:0}
.conviction-line+.conviction-line{margin-top:22px}
.conviction-body{display:block;margin-top:3px}
.intro-grid .big-copy{font-size:22px;line-height:1.55;margin-bottom:22px}
.intro-grid .conviction-close{font-size:16px;line-height:1.65}
#expertises .expertise-title-second{padding:0;margin-left:30px;color:var(--paper);background:linear-gradient(to bottom,var(--paper) 0 calc(100% - .34em - 3px),var(--ink) calc(100% - .34em - 3px) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
#expertises .expertise-title-second:before{left:-9px;right:-10px;bottom:3px;height:.34em;transform:rotate(-2deg);background:var(--acid)}
.expertise-cta{border-top:0;padding-top:10px;margin-top:30px}
/* Brand guide: Poppins only; 400 body, 500 labels, 700 headings. */
#vision,#expertises,#methode{font-family:Poppins,Arial,sans-serif}
#vision .insight-number,#vision .editorial-label,#vision .editorial-foot,#vision .section-label,#expertises .service-number,#expertises .section-label,#expertises .tags,#methode .mono,#methode .section-label,#methode .method-tab{font-family:Poppins,Arial,sans-serif;font-weight:500}
#vision .insight-number,#expertises .service-number{font-size:12px}
#vision .editorial-label,#vision .editorial-foot,#vision .section-label,#expertises .section-label,#methode .section-label,#methode .test-card>.mono{font-size:12px;letter-spacing:.025em}
#vision .big-copy,#vision .conviction-close,#vision .insight-answer,#vision .insight-caption,#expertises .service-content p,#expertises .section-heading>p:last-child,#expertises .service summary p,#methode .method-description>p:not(.eyebrow),#methode .method-heading>p:last-child{font-weight:400}
#vision h2,#expertises h2,#expertises h3,#methode h2,#methode h3,#vision .insight-editorial strong{font-family:Poppins,Arial,sans-serif;font-weight:700;letter-spacing:-.035em}
.editorial-message,.editorial-invest,.editorial-adjust{letter-spacing:-.035em}
#vision .editorial-foot{font-size:11px;line-height:1.6}
@media(max-width:960px){.intro-grid h2{font-size:43px}.intro-grid .big-copy{font-size:20px}#expertises .expertise-title-second{margin-left:22px}}
@media(max-width:700px){.intro-grid{grid-template-columns:1fr;gap:25px}.intro-grid h2{font-size:clamp(35px,10vw,49px)}.conviction-line+.conviction-line{margin-top:18px}.conviction-line br{display:none}.conviction-body{margin-top:0}.intro-grid .big-copy{font-size:20px;margin-bottom:18px}.intro-grid .conviction-close{font-size:15px}#expertises .expertise-title-second{margin-left:12px}#vision .editorial-label,#vision .section-label,#expertises .section-label,#methode .section-label{font-size:11px}}
/* Keep the restored half-block below the letterforms so the words stay clear. */
#expertises .expertise-title-second{background:none;-webkit-text-fill-color:currentColor;color:var(--paper)}
#expertises .expertise-title-second:before{bottom:-.14em;height:.34em}
/* A real creative example with three editorial attention annotations. */
.insight-explorer{grid-template-columns:.95fr 1.1fr;gap:7%;align-items:center}
.insight-display{min-height:0;padding:0}
.campaign-study{margin:0;position:relative;aspect-ratio:4/3;isolation:isolate;overflow:hidden;background:#e7e4de;border:1px solid #11171518}
.campaign-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:64% center;z-index:0}
.campaign-copy{position:absolute;top:8%;left:6%;right:5%;z-index:1}
.campaign-kicker{font-size:10px;letter-spacing:.09em;font-weight:500;display:block;margin-bottom:12px;color:#3c4737}
.campaign-copy>strong{font-size:clamp(25px,2.6vw,37px);line-height:1.13;letter-spacing:-.04em;display:block;font-weight:700;color:var(--ink)}
.campaign-fake-cta{position:absolute;bottom:10%;left:6%;background:var(--ink);color:var(--paper);padding:13px 17px;font-size:12px;font-weight:500;z-index:1}
.campaign-study .campaign-overlay{position:absolute;inset:0;z-index:3;pointer-events:none}
.attention-ring{position:absolute;border:2px solid var(--acid);box-shadow:0 0 0 5px #1117150a;transition:opacity .3s}
.ring-product{left:64%;top:37%;width:30%;height:39%;border-radius:50%}
.ring-message{left:3.5%;top:6%;width:70%;height:31%;border-radius:8px}
.ring-action{left:3.5%;bottom:7.5%;width:48%;height:16%;border-radius:8px}
.attention-bubble{position:absolute;background:var(--ink);color:var(--paper);padding:15px 17px;border-radius:14px;box-shadow:0 7px 25px #11171518;max-width:57%}
.attention-bubble>span{display:block;font-size:9px;letter-spacing:.045em;color:var(--acid);margin-bottom:7px;font-weight:500}
.attention-bubble>strong{display:block;font-size:16px;line-height:1.4;font-weight:500;letter-spacing:-.025em}
.attention-bubble i{position:absolute;width:30px;height:1px;background:var(--acid)}
.bubble-product{left:5%;top:46%}.bubble-product i{right:-30px;top:50%}
.bubble-message{right:4%;top:43%}.bubble-message i{top:-26px;left:28px;width:1px;height:26px}
.bubble-action{right:4%;top:45%}.bubble-action i{left:28px;bottom:-27px;width:1px;height:27px}
.campaign-study-note{font-size:11px;line-height:1.6;color:#78816f;font-weight:400;margin-top:12px;max-width:540px}
/* Restore the full acid block requested for chapter 02. */
#expertises .expertise-title-second{padding:4px 10px;margin-left:-10px;color:var(--ink);background:none;-webkit-text-fill-color:currentColor}
#expertises .expertise-title-second:before{height:100%;bottom:0;left:0;right:0;transform:none;background:var(--acid)}
@media(max-width:960px){.campaign-copy>strong{font-size:26px}.campaign-kicker{font-size:8px;margin-bottom:8px}.attention-bubble{padding:11px 13px}.attention-bubble>strong{font-size:13px}.attention-bubble>span{font-size:8px}.campaign-fake-cta{font-size:10px;padding:10px 12px}}
@media(max-width:700px){.insight-explorer{grid-template-columns:1fr;gap:25px}.campaign-study{aspect-ratio:1.1}.campaign-copy>strong{font-size:27px}.campaign-copy{top:8%}.campaign-kicker{font-size:8px}.campaign-fake-cta{font-size:10px;bottom:9%;padding:11px 13px}.attention-bubble{padding:11px 12px;max-width:62%}.attention-bubble>strong{font-size:13px}.attention-bubble>span{font-size:8px;letter-spacing:0}.bubble-product{top:48%;left:4%}.bubble-message{top:44%;right:4%}.bubble-action{top:49%;right:4%}.ring-product{left:65%;top:39%;height:32%}.ring-message{height:28%}.ring-action{width:58%;bottom:6%;height:15%}.campaign-study-note{font-size:11px}}
/* A precise brand accent beside the first conviction. */
#vision .conviction-line:first-child{position:relative;padding-left:22px}
#vision .conviction-line:first-child:before{content:'';display:block;position:absolute;left:0;top:.07em;bottom:.04em;width:5px;background:var(--acid);transform:none}
#vision .conviction-line.muted{padding-left:22px}
/* Questions as a small editorial index, with one answer already visible. */
#questions.faq{grid-template-columns:.8fr 1.2fr;gap:8%;align-items:start;padding-block:95px}
.faq-intro{position:sticky;top:130px;padding-top:7px}
#questions h2{font-size:clamp(40px,4.5vw,64px);line-height:1.12;letter-spacing:-.035em}
#questions h2 span{color:#7b8672}
.faq-intro-copy{font-size:16px;line-height:1.6;font-weight:400;color:#6b765e;max-width:280px;margin-top:24px}
.faq-contact{margin-top:36px;font-size:12px;gap:12px;max-width:fit-content}
.faq-list{display:grid;gap:12px}
#questions .faq-list details{border:1px solid transparent;border-radius:12px;background:#f0f0e9;overflow:hidden;transition:background .3s,color .3s,border-color .3s}
#questions .faq-list details:hover{border-color:#11171530}
#questions .faq-list summary{display:grid;grid-template-columns:25px 1fr 30px;gap:17px;padding:24px;align-items:center;font-size:17px;line-height:1.45;font-weight:500}
.faq-number{font-family:Poppins,Arial,sans-serif;font-size:11px;color:#839079;align-self:start;padding-top:3px}
.faq-question{display:flex;flex-direction:column;gap:7px}
.faq-topic{font-size:11px;font-weight:500;line-height:1.4;color:#7b8672}
#questions .faq-list summary>.faq-chevron{width:8px;height:8px;margin:0 7px;justify-self:center;transition:transform .4s var(--ease)}
#questions .faq-list details p{font-size:15px;line-height:1.7;font-weight:400;padding:0 62px 26px 66px;margin:0;color:#66705e;max-width:none}
#questions .faq-list details[open]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
#questions .faq-list details[open] .faq-topic,#questions .faq-list details[open] .faq-number{color:var(--acid)}
#questions .faq-list details[open] p{color:#c4cebb}
#questions .faq-list details[open] summary>.faq-chevron{color:var(--acid)}
@media(max-width:960px){#questions.faq{gap:45px}#questions .faq-list summary{padding:21px 18px;gap:12px;font-size:15px}#questions .faq-list details p{padding:0 47px 23px 55px;font-size:14px}#questions h2{font-size:46px}}
@media(max-width:700px){#vision .conviction-line:first-child,#vision .conviction-line.muted{padding-left:17px}#vision .conviction-line:first-child:before{width:4px}#questions.faq{grid-template-columns:1fr;gap:30px;padding-block:60px}.faq-intro{position:static;padding:0}#questions h2{font-size:44px}.faq-intro-copy{font-size:15px;margin-top:19px;max-width:none}.faq-contact{margin-top:20px;font-size:12px}#questions .faq-list summary{padding:20px 15px;grid-template-columns:20px 1fr 19px;gap:10px;font-size:15px}#questions .faq-list details p{padding:0 22px 23px 45px;font-size:14px}.faq-number{font-size:10px}.faq-topic{font-size:10px}.faq-list{gap:10px}}
@media(prefers-reduced-motion:reduce){#questions .faq-list details{transition:none}}
/* The conviction, supporting copy and questions share one left column. */
.vision-layout.intro-grid{grid-template-columns:.95fr 1.1fr;gap:7%;align-items:start}
.vision-layout .conviction-body{display:block;margin-top:24px}
.vision-layout .big-copy{font-size:21px;line-height:1.55;margin-bottom:18px}
.vision-layout .conviction-close{font-size:15px;line-height:1.7;margin:0}
.vision-layout .insight-choices{margin-top:24px}
.vision-layout .insight-trigger{padding-block:17px}
.vision-layout .insight-display{position:sticky;top:125px;align-self:start;min-height:0;padding:0;margin:0}
.vision-layout .campaign-study{margin-top:0}
#methode .method-tabs{border-top:0}
#methode .method-tabs:before{content:none;display:none;animation:none}
/* The approved silent footage carries the contact section, under a reading veil. */
.contact{position:relative;isolation:isolate;overflow:hidden}
.contact-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;filter:grayscale(1);opacity:.35;z-index:-2;pointer-events:none}
.contact:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#11171580,#111715b0 42%,#111715ed 100%);z-index:-1;pointer-events:none}
.contact-grid{position:relative;z-index:1}
.contact-form .form-submit{margin-top:6px}
@media(max-width:960px){.vision-layout .big-copy{font-size:19px}.vision-layout .conviction-close{font-size:14px}.vision-layout .insight-display{top:120px}}
@media(max-width:700px){.vision-layout.intro-grid{grid-template-columns:1fr;gap:23px}.vision-layout .insight-display{position:static;top:auto}.vision-layout .conviction-body{margin-top:22px}.vision-layout .insight-choices{margin-top:22px}.vision-layout .insight-trigger{padding-block:15px}.vision-layout .big-copy{font-size:20px}.vision-layout .conviction-close{font-size:15px}.contact-video{object-position:68% center;opacity:.24}.contact:before{background:#111715a6}}
/* An immersive opening: the film holds while the message scrolls naturally. */
.hero{display:block;height:155vh;height:155svh;min-height:0;padding:0;margin-top:-100px;overflow:visible;position:relative;background:var(--ink)}
.hero:after{display:none;content:none}
.hero-media{position:sticky;top:0;height:100vh;height:100svh;width:100%;overflow:hidden;isolation:isolate;z-index:0}
.hero-media .hero-video{inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:70% center}
.hero-media:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#111715ed 0%,#111715c9 42%,#11171562 100%),linear-gradient(0deg,#11171578,transparent 55%);pointer-events:none}
.hero .hero-copy{position:absolute;z-index:2;top:24vh;top:24svh;left:max(64px,calc((100vw - 1280px)/2));right:64px;max-width:1000px;padding:0}
.hero h1{font-size:clamp(68px,8vw,112px);line-height:1.06;letter-spacing:-.055em;margin:0}
.hero .hero-lead{font-size:18px;line-height:1.65;max-width:540px;margin-top:30px}
.hero .hero-ctas{margin-top:33px}
/* Supporting copy belongs immediately above the visual. */
.vision-layout .insight-display .conviction-body{margin:0 0 24px}
.vision-layout .insight-display .big-copy{margin-bottom:17px}
.vision-layout .vision-left .insight-choices{margin-top:30px}
/* Reveal individual ideas rather than moving whole chapters. */
.will-reveal{transform:translateY(14px);transition:opacity .85s var(--ease),transform .85s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.will-reveal.is-visible{transform:none}
#vision.story-in h2,#vision.story-in .intro-grid>div,#expertises.story-in h2,#methode.story-in h2,#methode.story-in .method-tab>span:nth-child(2),.principles.story-in h2,.principles.story-in .decision-list p,#questions.story-in h2,#questions.story-in .faq-list details,#contact.story-in h2,#contact.story-in .email-link{animation:none}
#expertises .service.will-reveal:not(.is-visible),#partenaires .audience-grid article:first-child.will-reveal:not(.is-visible),#partenaires .audience-grid article:last-child.will-reveal:not(.is-visible){transform:translateY(14px)}
.contact-video{object-position:40% center;filter:saturate(.55);opacity:.44}
@media(max-width:1180px){.hero .hero-copy{left:40px;right:40px}.hero h1{font-size:clamp(64px,8.3vw,94px)}}
@media(max-width:700px){.hero{margin-top:-86px;height:145vh;height:145svh;padding:0}.hero .hero-copy{top:22vh;top:22svh;left:23px;right:23px;max-width:none}.hero h1{font-size:clamp(44px,11.8vw,72px);line-height:1.08}.hero .hero-lead{font-size:15px;line-height:1.75;margin-top:25px}.hero .hero-ctas{margin-top:28px}.hero-media .hero-video{object-position:62% center}.hero-media:after{background:linear-gradient(90deg,#111715db,#11171592),linear-gradient(0deg,#1117158c,transparent)}.vision-layout .insight-display .conviction-body{margin:0 0 22px}.vision-layout .vision-left .insight-choices{margin-top:22px}.contact-video{object-position:45% center;opacity:.3}}
@media(prefers-reduced-motion:reduce){.hero{height:auto;min-height:95vh;min-height:95svh;padding:155px max(23px,calc((100vw - 1280px)/2)) 80px}.hero-media{position:absolute;inset:0;height:100%}.hero .hero-copy{position:relative;top:auto;left:auto;right:auto}.will-reveal{opacity:1;transform:none;transition:none}}
/* A modestly larger opening, without the long pinned scroll sequence. */
.hero{height:auto;min-height:720px;padding:165px max(64px,calc((100vw - 1280px)/2)) 85px;overflow:hidden;display:flex;align-items:center}
.hero-media{position:absolute;inset:0;height:100%;width:100%}
.hero .hero-copy{position:relative;top:auto;left:auto;right:auto;max-width:840px;padding:0}
.hero h1{font-size:clamp(58px,6.1vw,88px);line-height:1.08}
.hero .hero-lead{font-size:17px;margin-top:28px}
.insight-question .insight-short{display:none}
/* One image ratio keeps every annotation anchored to the same composition. */
.campaign-study{aspect-ratio:4/3}
.ring-product{left:61%;top:35%;width:34%;height:40%}
.attention-bubble{max-width:58%}
.bubble-product{left:4%;top:45%}.bubble-message{right:4%;top:44%}.bubble-action{right:4%;top:43%}
@media(max-width:1180px){.hero{padding-inline:40px;min-height:680px}.hero h1{font-size:clamp(54px,6.4vw,78px)}}
@media(max-width:700px){
 .hero{height:auto;min-height:0;padding:132px 23px 63px;display:block}.hero .hero-copy{position:relative;top:auto;left:auto;right:auto}.hero h1{font-size:clamp(44px,11.8vw,68px);line-height:1.1}.hero .hero-lead{font-size:15px;margin-top:25px}
 .vision-layout .vision-left .insight-choices{margin-top:0}
 .insight-display .insight-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;border:0;margin:11px 0 0}
 .insight-display .insight-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 3px;min-height:61px;text-align:center;border:1px solid #11171528;background:#fcfaf5;border-radius:7px;transition:background .2s,color .2s}
 .insight-display .insight-trigger.active{padding:10px 3px;background:var(--ink);border-color:var(--ink);color:var(--paper)}
 .insight-display .insight-number{font-size:10px;padding:0;line-height:1.2;color:#7b8672}
 .insight-display .insight-trigger.active .insight-number{color:var(--acid)}
 .insight-display .insight-question{display:block}
 .insight-display .insight-question .insight-short{display:block;font-size:12px;font-weight:500;line-height:1.3}
 .insight-display .insight-question>strong:not(.insight-short),.insight-display .insight-answer,.insight-display .insight-indicator{display:none}
 .campaign-study{aspect-ratio:4/3;scroll-margin-top:100px}
 .campaign-copy{top:8%;left:6%}.campaign-copy>strong{font-size:clamp(21px,6vw,27px)}.campaign-kicker{font-size:7px;margin-bottom:8px}
 .campaign-fake-cta{font-size:9px;padding:10px 11px;bottom:10%}
 .attention-bubble{padding:9px 10px;max-width:64%;border-radius:11px}
 .attention-bubble>strong{font-size:12px;line-height:1.35}.attention-bubble>span{font-size:7px;margin-bottom:5px}
 .bubble-product{left:4%;top:43%}.bubble-message{right:4%;top:42%}.bubble-action{right:4%;top:42%}
 .bubble-product i{width:20px;right:-20px}.bubble-message i{height:18px;top:-18px}.bubble-action i{height:18px;bottom:-18px}
 .ring-product{left:61%;top:35%;width:34%;height:40%}
 .campaign-study-note{font-size:10px;margin-top:10px}
}
.campaign-copy{right:auto;width:fit-content;max-width:89%}
.attention-bubble i{display:none}
.campaign-study .ring-product{left:62%;top:55%;width:32%;height:auto;aspect-ratio:1;border-radius:50%;transform:translateY(-50%)}

.contact-video{object-position:50% 50%}
@media(max-width:700px){.contact-video{object-position:48% 50%}}

/* Essential chapter content stays visible if entrance observation is delayed. */
#vision .will-reveal{opacity:1;transform:none}

.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-submit:disabled{opacity:.65;cursor:wait}.form-result[data-state="error"]{color:#fcfaf5;border-left:3px solid #ddfb49;padding-left:15px}.form-result[data-state="success"]{color:#ddfb49}.form-result p{outline-offset:5px}
