.header{position:absolute;z-index:10;top:20px;left:4.5%;width:91%;max-width:none;height:72px;background:#f7f6f2;padding-inline:24px;border:0}.header .wordmark span{display:none}
.immersive{position:relative;isolation:isolate;width:100%;max-width:none;min-height:max(800px,100svh);display:flex;justify-content:center;overflow:hidden;background:#20231c;color:#f7f6f2}.hero.immersive{padding-block:150px 125px;padding-inline:var(--gutter)}.immersive .film{position:absolute;inset:0;width:100%;max-width:none;height:100%;margin:0;z-index:-2}.immersive .film video{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;aspect-ratio:auto}.immersive::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.2) 80%),linear-gradient(0deg,rgba(0,0,0,.7),transparent 55%);z-index:-1;pointer-events:none}.immersive .eyebrow{color:#f7f6f2;font-size:14px}.hero.immersive h1,.outro-section.immersive h2{font-weight:900;font-size:clamp(58px,7.4vw,116px);line-height:.98;letter-spacing:-.055em;color:#f7f6f2;margin:23px 0 28px}.hero.immersive .hero-summary{display:block;border:0;margin:0;padding:0;max-width:460px}.hero.immersive .hero-specialism{display:none}.hero.immersive .hero-summary>div{padding:0;border:0}.hero.immersive .intro{font-size:17px;color:#f7f6f2}.hero.immersive .availability{color:#f7f6f2;font-size:14px}.hero.immersive .availability span{border-color:rgba(255,255,255,.6)}.hero.immersive .actions{gap:22px}.immersive .button.primary{background:#f7f6f2;border-color:#f7f6f2;color:#20231c;font-weight:700}.immersive .button.primary:hover{background:#e0e5d5}.immersive .text-link{border-color:#f7f6f2}.immersive .film figcaption{position:absolute;bottom:25px;left:var(--gutter);font-size:13px;color:#f7f6f2;display:block;margin:0}.immersive .film figcaption span+span{display:none}.video-tools{position:absolute;bottom:20px;right:var(--gutter);display:flex;gap:8px;z-index:2}.video-tools button{background:rgba(0,0,0,.65);border:1px solid rgba(255,255,255,.75);color:white;font-size:14px;padding:10px 17px;min-height:44px;cursor:pointer}.video-tools button:hover{background:#f7f6f2;color:#20231c}.outro-section.immersive{padding-block:100px 125px;border:0;align-items:center}.outro-section.immersive>.wrap{width:100%;max-width:none}.outro-section.immersive .section-head{display:block;margin:0}.outro-section.immersive h2{font-size:clamp(48px,7.2vw,110px)}.outro-section.immersive video{object-position:60% center}.layering{display:grid;grid-template-columns:.85fr 1.4fr;gap:5vw;align-items:center;border-bottom:1px solid var(--line)}.layering h2{margin:22px 0}.layering-copy>p:not(.eyebrow){margin:18px 0}.layering-note{font-size:14px;border-top:1px solid var(--line);padding-top:20px;color:var(--accent)}.layering video{aspect-ratio:1280/860;object-fit:contain}.layering figcaption{font-size:12px}
@media(max-width:1000px){.hero.immersive h1{font-size:clamp(58px,8.6vw,90px)}.immersive{min-height:max(840px,100svh)}}
@media(max-width:700px){.header{top:14px;left:18px;width:calc(100% - 36px);height:60px;padding-inline:16px}.header .wordmark{font-size:23px}.hero.immersive{padding-top:115px;padding-bottom:135px;min-height:max(800px,100svh)}.hero.immersive h1{font-size:clamp(44px,10.7vw,72px);margin:20px 0 25px}.immersive .eyebrow{font-size:12px}.hero.immersive .actions{gap:18px;align-items:start;flex-direction:column}.hero.immersive .intro{font-size:16px}.hero.immersive .availability{font-size:12px}.immersive .film figcaption{bottom:82px;font-size:12px}.video-tools{left:var(--gutter);right:auto;bottom:22px}.video-tools button{padding:9px 13px}.outro-section.immersive h2{font-size:clamp(35px,8.3vw,62px)}.outro-section.immersive{min-height:max(660px,90svh)}.hero.immersive video{object-position:55% center}.layering{grid-template-columns:1fr;gap:30px}}
@media print{.header{position:static}.immersive{min-height:0!important;background:white!important;color:black!important}.immersive .film,.immersive::after,.video-tools{display:none}.immersive h1,.immersive h2,.immersive p{color:black!important}.hero.immersive,.outro-section.immersive{padding-block:25px}}

/* Preserve the complete original artwork through explicit SVG viewports. */
.brand-artwork{display:block;width:min(100%,var(--logo-width));height:auto;overflow:hidden;flex:none;filter:grayscale(1) contrast(20);mix-blend-mode:multiply}
.reference .brand-artwork{justify-self:center}
.experience-brands{display:flex;align-items:center;gap:28px;flex-wrap:wrap;min-height:60px;padding-block:12px}
h2{font-family:"Arial Black",Arial,Helvetica,sans-serif;font-weight:900;line-height:1.1}
h3{font-weight:700}
/* An angled colour field with an offset, full-colour portrait. */
.about-section{position:relative;isolation:isolate;background:transparent;color:#20231e;border:0;padding-block:125px 145px;margin-block:24px}
.about-section::before{content:"";position:absolute;inset:0;z-index:-1;background:#e8d974;clip-path:polygon(0 0,100% 4%,100% 100%,0 94%)}
.about-section .about-grid{grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center}
.about-section .portrait{max-width:360px;transform:rotate(-2.5deg) translateY(-20px);margin-left:20px}
.about-section .portrait img{filter:none}
.about-section .portrait figcaption{color:#30382e;font-size:14px}
.about-section p{color:#353a2c}
.about-section .eyebrow{color:#444c32;font-weight:700}
.about-section h2{max-width:740px;font-size:clamp(34px,3.9vw,60px)}
.about-section .text-link{border-color:currentColor;font-weight:700}
.about-section a:focus-visible{outline-color:#20231e}
@media(max-width:700px){
 .reference .brand-artwork:last-child{grid-column:1/-1}
 .experience-brands{gap:24px}
 .about-section{padding-block:75px 95px;margin-block:12px}
 .about-section::before{clip-path:polygon(0 0,100% 2%,100% 100%,0 98%)}
 .about-section .about-grid{grid-template-columns:1fr;gap:34px}
 .about-section .portrait{width:80%;max-width:300px;margin-left:10px;transform:rotate(-2.5deg)}
}
@media print{.about-section{padding-block:30px;margin:0}.about-section::before{display:none}.about-section .portrait{transform:none}}

/* Shared identity: one yellow accent, neutral surfaces, predictable responsive sizing. */
:root{--paper:#f7f7f5;--ink:#202020;--muted:#606060;--line:#d7d7d4;--accent:#e8d974;--tint:#ededeb}
body{overflow-wrap:break-word}
main,section,article,figure,.hero-summary>div,.about-grid>div{min-width:0}
.eyebrow,.steps li>span,.layering-note{color:var(--muted)}
.soft{color:#707070}
a:focus-visible,button:focus-visible{outline:3px solid var(--ink);outline-offset:5px}
.immersive a:focus-visible,.immersive button:focus-visible{outline-color:var(--accent)}
.header{background:var(--paper)}
.button,.immersive .button.primary{background:var(--accent);border-color:var(--accent);color:var(--ink);font-weight:700}
.button:hover,.immersive .button.primary:hover{background:var(--ink);border-color:var(--ink);color:var(--accent)}
.text-link,.contact-link,.email{border-bottom:3px solid var(--accent);padding-bottom:5px}
.immersive .text-link{color:var(--accent);border-color:var(--accent)}
.header nav a:hover,.footer a:hover{background:var(--accent);color:var(--ink);text-decoration:none}
.nav-end button{min-width:44px;min-height:44px}
.nav-end .contact-link{background:var(--accent);padding:9px 14px;border:0;color:var(--ink)}
.reference .brand-logos{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(20px,3vw,48px);padding-block:20px}
.brand-artwork{display:block;max-width:100%;height:auto;filter:grayscale(1);mix-blend-mode:multiply;align-self:center}
.experience-brands{min-height:0;gap:24px 30px}
.about-section::before{background:var(--accent)}
.about-section .portrait{transform:none;margin-left:0}
.about-section p,.about-section .eyebrow,.about-section .portrait figcaption{color:var(--ink)}
.about-section .text-link{border-color:var(--ink)}
.immersive{background:#202020}
.video-tools button:hover{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.work-grid img{background:var(--tint)}
.email{max-width:100%;overflow-wrap:anywhere}
.hero.immersive .hero-summary{max-width:580px}
.hero.immersive .intro{max-width:550px}
.contact-heading .section-intro[data-en="Hybrid, regular presence in Paris"]{display:none}
.hero.immersive .eyebrow{font-size:14px;letter-spacing:.06em}
@media(min-width:701px) and (max-width:1050px){
 .header nav{gap:16px;margin-right:0}.header{padding-inline:18px;gap:18px}.nav-end{gap:10px}
 .reference .brand-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
 .about-section .about-grid{gap:5vw;grid-template-columns:.8fr 1.2fr}
 .about-section .portrait{width:100%}
 .cv-summary{gap:5vw;grid-template-columns:.85fr 1.15fr}
 .contact-heading{gap:30px}
}
@media(max-width:700px){
 :root{--gutter:22px}
 .header{left:16px;width:calc(100% - 32px);padding-inline:14px;gap:10px}
 .header .wordmark{font-size:22px}.nav-end{gap:2px}.nav-end .contact-link{font-size:14px;padding:9px 11px}
 .hero.immersive{min-height:100svh;padding-top:120px;padding-bottom:135px}
 .hero.immersive h1{font-size:clamp(40px,10.4vw,72px);line-height:1.03;letter-spacing:-.055em}
 .hero.immersive .eyebrow{font-size:12px;letter-spacing:.025em;max-width:300px}
 .hero.immersive .actions{gap:20px}.hero.immersive .availability{font-size:13px;gap:8px}
 .reference .brand-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
 .reference .brand-artwork:last-child{grid-column:1/-1}
 .reference .brand-artwork[aria-label="Aigle"]{width:52px}
 .experience-brands .brand-artwork[aria-label="Aigle"]{width:48px}
 .section-head h2,.about-section h2,.contact-heading h2{font-size:clamp(30px,8vw,44px)}
 .about-section .portrait{width:100%;max-width:300px;margin:0;transform:none}
 .about-section{padding-block:68px 78px}
 .about-section .bio{font-size:18px}
 .cv-summary{gap:35px}.experience-list article{padding-block:24px}
 .experience-brands{gap:24px}.brand-artwork{flex-shrink:1}
 .button{max-width:100%;text-align:center;min-height:48px}
 .film figcaption{font-size:13px}.footer{align-items:flex-start}.footer p{margin-left:0}
 .footer>div{width:100%;gap:14px 22px}
}
@media(prefers-reduced-motion:no-preference){
 .button,.text-link,.contact-link{transition:background .2s ease,color .2s ease,border-color .2s ease}
}

/* Mobile finishing: text controls, stable portrait and unobstructed video tools. */
a,button{-webkit-tap-highlight-color:rgba(232,217,116,.25)}
.portrait img{display:block;width:100%;height:auto;aspect-ratio:480/599;object-fit:cover}
.video-tools button{white-space:nowrap;line-height:1.3}
.immersive .film figcaption{display:none}
@media(max-width:700px){.hero.immersive{padding-bottom:130px}.video-tools{bottom:28px;flex-wrap:wrap;max-width:calc(100% - 44px)}.header .contact-link{white-space:nowrap}.hero.immersive .eyebrow{max-width:280px;line-height:1.5}.hero.immersive .availability{flex-wrap:wrap}.about-section .portrait{max-width:360px}.nav-end .contact-link{padding:9px 12px}.header .wordmark{font-size:21px}}

/* Supplied identity and senior product title; retain the existing visual system. */
.bureau-logo{display:block;width:150px;max-width:100%;height:auto;object-fit:contain}
.header .wordmark{display:block;flex-shrink:0}.hero.immersive #hero-title{font-size:clamp(44px,6vw,92px);max-width:1000px;line-height:1.04}.hero-disciplines{display:inline-block;margin-top:10px}.hero.immersive .availability{display:block;max-width:580px;line-height:1.6}
@media(max-width:700px){.header .bureau-logo{width:118px}.hero.immersive #hero-title{font-size:clamp(36px,9vw,54px);line-height:1.08}.hero.immersive .eyebrow{max-width:none}.hero-disciplines{font-size:12px;letter-spacing:0}.header{gap:10px}}

/* CWF archives within the existing experience chapter. */
.cwf-archives{margin-top:38px;padding-top:28px;border-top:1px solid var(--line);max-width:420px}
.cwf-archives h3{font-size:22px;line-height:1.25;margin:0 0 14px;letter-spacing:-.02em}
.cwf-archives p{font-size:16px;line-height:1.65;margin:0 0 20px;color:var(--muted)}
