/* Oscar Marhue — cinematic scroll portfolio. Self-hosted Space Grotesk (SIL OFL). */
@font-face{
  font-family:'Space Grotesk';font-style:normal;font-weight:400;font-display:swap;
  src:url('fonts/SpaceGrotesk-normal-400-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Space Grotesk';font-style:normal;font-weight:700;font-display:swap;
  src:url('fonts/SpaceGrotesk-normal-700-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{--putty:#d8d8cb;--ink:#18211e;--paper:#faf9f3;--font-display:'Space Grotesk',Arial,sans-serif;--font-body:'Space Grotesk',Arial,sans-serif;--gutter:clamp(24px,5vw,88px)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:90px;-webkit-text-size-adjust:100%}body{background:var(--putty);color:var(--ink);font-family:var(--font-body);line-height:1.6}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer}img,video{display:block;max-width:100%}a,button{-webkit-tap-highlight-color:transparent}::selection{background:#c7ff79;color:#152315}:focus-visible{outline:2px solid currentColor;outline-offset:6px}main:focus,section:focus{outline:none}.skip{position:fixed;top:-100px;left:20px;padding:14px;z-index:200;background:var(--paper);color:var(--ink)}.skip:focus{top:16px}
h1,h2,h3{font-family:var(--font-display);font-weight:400;font-style:normal;letter-spacing:-.065em;line-height:.98;text-wrap:balance}em{font-style:normal}p{text-wrap:pretty}.kicker,.credit{font-size:11px;letter-spacing:.1em}.kicker{text-transform:uppercase;margin-bottom:24px}
/* Glass surfaces keep an opaque fallback and a highlight that follows the pointer. */
.topbar{position:fixed;z-index:90;top:18px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;justify-content:space-between;padding:10px 12px 10px 24px;border:1px solid #ffffff75;border-radius:999px;color:#fff;background:#1b252760;box-shadow:inset 0 1px 0 #ffffff9c,inset 0 -1px 0 #ffffff35,0 8px 32px #0a19121c;backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);transition:background .3s,box-shadow .3s}
.topbar.is-scrolled{background:#21362dc2}.site-brand{display:inline-flex;align-items:center;min-height:40px;text-decoration:none;white-space:nowrap;font:400 clamp(17px,1.5vw,23px)/1.2 var(--font-body);letter-spacing:-.055em}
.btn,.btn-solid,.car-btn,.photo-close{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:44px;padding:11px 22px;border:1px solid #ffffff9c;border-radius:99px;background:#ffffff16;color:inherit;text-decoration:none;font-size:12px;box-shadow:inset 0 1px 1px #ffffff80,inset 0 -2px 5px #ffffff15,0 3px 10px #07181012;backdrop-filter:blur(12px) saturate(1.8);-webkit-backdrop-filter:blur(12px) saturate(1.8);transition:background .25s,transform .25s,box-shadow .25s;overflow:hidden}
.btn::before,.btn-solid::before,.car-btn::before,.photo-close::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at var(--glass-x,30%) var(--glass-y,0%),#fff7,transparent 70%);opacity:.5;pointer-events:none}.btn:hover,.btn-solid:hover,.car-btn:hover:enabled,.photo-close:hover{background:#ffffff35;box-shadow:inset 0 1px 2px #fff,0 5px 25px #13292420;transform:translateY(-2px)}.btn-menu span{font-size:22px;line-height:1}.btn-solid{margin-top:22px;gap:40px;pointer-events:auto}
.menu{position:fixed;inset:0;z-index:120;padding:100px var(--gutter) 30px;color:var(--paper);background:linear-gradient(130deg,#163932,#202e49 65%,#4b344b);visibility:hidden;opacity:0;transform:translateY(-10px);transition:opacity .25s,transform .25s,visibility .25s;overflow:auto;overscroll-behavior:contain}.menu.open{visibility:visible;opacity:1;transform:none;transition:opacity .25s,transform .25s}.menu-close{position:absolute;top:24px;right:var(--gutter)}.menu-list{list-style:none}.menu-list li{border-top:1px solid #e4e2d84a}.menu-list a{position:relative;display:flex;align-items:center;justify-content:space-between;overflow:hidden;padding:15px 0;text-decoration:none;font:400 clamp(30px,4vw,60px)/1.1 var(--font-display);letter-spacing:-.05em}.menu-flow{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:40px;background:#d0fc9b;color:var(--ink);transform:translateY(102%);transition:transform .35s;white-space:nowrap;pointer-events:none}.menu-flow img{width:110px;height:58px;object-fit:cover;border-radius:50%}.menu-list a:hover .menu-flow,.menu-list a:focus-visible .menu-flow{transform:none}.motion-ready .menu-list a:hover .menu-flow span{animation:flow-text 6s linear infinite alternate}@keyframes flow-text{to{transform:translateX(-35px)}}.menu-arrow{font:400 28px var(--font-body)}.menu-foot{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:center;margin-top:30px;font-size:11px}.controls{display:flex;gap:12px}
/* Scenes use native document scroll: sticky while the film/reveal completes, then release. */
[data-scroll-scene]{position:relative;--scene-progress:0}.scene-pin{position:relative;min-height:100svh;isolation:isolate}.motion-ready [data-scroll-scene].scroll-ready{height:calc(100svh + var(--scroll-distance,160svh))}.motion-ready .scroll-ready>.scene-pin{position:sticky;top:0;height:100svh}.scroll-ready [data-reveal-at]{opacity:var(--reveal,1);transform:translateY(var(--reveal-y,0));will-change:opacity,transform}.scroll-ready [data-reveal-at]:focus-within{opacity:1;transform:none}.film-stage{display:flex;align-items:end;overflow:clip;color:var(--paper);background:#152019}.film-media,.film-shade{position:absolute;inset:0;pointer-events:none}.film-media{z-index:-3}.film-media video,.film-media>.video-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.film-media video{z-index:1}.film-shade{z-index:-2;background:linear-gradient(90deg,#061510a3,transparent 95%),linear-gradient(0deg,#031811b0,transparent 80%)}.film-progress{position:absolute;inset:auto var(--gutter) 30px;height:1px;background:#ffffff30;pointer-events:none}.film-progress span,.gallery-progress span{display:block;width:100%;height:100%;background:currentColor;transform-origin:left;transform:scaleX(var(--scene-progress,0))}
.hero{background:#173329}.hero .film-media video,.hero .film-media>.video-poster{object-position:61% center}.hero-copy{position:relative;padding:145px var(--gutter) 90px;width:100%;max-width:1350px}.hero-copy h1{font-size:clamp(75px,11.5vw,178px);max-width:10ch;line-height:.9;letter-spacing:-.07em}.hero-dictionary{max-width:540px;margin-top:30px}.pronunciation{font-size:13px;letter-spacing:.025em}.pronunciation span{margin-left:18px;color:#e5f4d6}.definition{font-size:15px;line-height:1.65;margin-top:12px;max-width:49ch}.hero-def{font-size:clamp(22px,2.1vw,32px);line-height:1.25;margin-top:26px;letter-spacing:-.045em}.text-link{display:inline-flex;align-items:center;gap:50px;font-size:12px;text-decoration:none;border-bottom:1px solid #fff8;padding-bottom:7px;margin-top:26px}.text-link:hover{color:#c7ff79}
.about{background:#17211b;color:var(--paper)}.about-stage{display:flex;align-items:center;overflow:clip}.about-portrait,.about-shade,.about-wash{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.about-portrait{object-fit:cover;object-position:center;z-index:-3}.about-wash{z-index:-2;background:linear-gradient(110deg,#6bbd5d08,transparent 55%,#68cfb115);mix-blend-mode:screen}.about-shade{z-index:-1;background:linear-gradient(90deg,transparent 40%,#15221965 59%,#07130fe8 100%)}.about-copy{position:relative;width:40%;margin-left:60%;padding:110px var(--gutter) 85px 0}.about-copy h2{font-size:clamp(45px,5vw,76px);margin-bottom:30px}.about-copy>p:not(.kicker){font-size:14px;max-width:40ch;line-height:1.75;margin-bottom:20px}.about-copy .btn-solid{margin-left:40px}
.youniqc{position:relative;background:linear-gradient(145deg,#e3e5ce,#c9d4bd 55%,#d6d9c5);color:var(--ink);overflow:clip}.anchor-alias{position:absolute;top:0}.yq-opening{min-height:730px;height:90svh;max-height:1080px;position:relative;display:flex;align-items:center}.yq-copy{position:relative;width:57%;padding:50px var(--gutter);z-index:2;pointer-events:none}.yq-copy h2{font-size:clamp(95px,12.6vw,210px);letter-spacing:-.085em;line-height:1;margin-bottom:35px}.yq-statement{font:400 clamp(26px,3vw,46px)/1.18 var(--font-display);letter-spacing:-.055em;max-width:16ch;text-wrap:balance}.u-gallery{background:#efefeb}.gallery-stage{display:flex;flex-direction:column;justify-content:center;overflow:clip;padding:90px 0 45px}.gallery-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:12px 40px;padding:0 var(--gutter) 30px;align-items:end}.gallery-intro .kicker{grid-column:1/-1;margin:0}.gallery-intro h3{font-size:clamp(40px,4.9vw,75px)}.gallery-intro>p:last-child{max-width:35ch;justify-self:end;font-size:14px}.drift-wall{display:flex;align-items:start;gap:45px;padding:25px var(--gutter) 18px;overflow-x:auto;overflow-y:hidden;scrollbar-color:#6f866d transparent;scroll-snap-type:x proximity;flex-shrink:0}.scroll-ready .drift-wall{scroll-snap-type:none;scroll-behavior:auto}.drift-piece{flex:0 0 clamp(280px,30vw,470px);min-width:0;scroll-snap-align:center}.round-media{height:clamp(235px,36svh,410px);width:100%;position:relative;border-radius:50%;overflow:hidden;background:#14271b}.drift-piece:nth-child(even){flex-basis:clamp(265px,25vw,400px)}.drift-piece:nth-child(even) .round-media{width:85%;margin:auto}.round-media img,.round-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.round-media video{z-index:1}.drift-piece figcaption{display:flex;gap:16px;margin-top:24px}.archetype-number{font-size:10px;padding-top:4px;opacity:.65}.drift-piece figcaption strong{font-size:19px;font-weight:400;letter-spacing:-.04em;line-height:1.2;display:block}.drift-piece figcaption p{font-size:12px;max-width:35ch;line-height:1.6;margin-top:9px;color:#304432}.gallery-progress{height:2px;background:#18382b21;margin:24px var(--gutter) 0;color:#36563a}
.premier{background:#eee9e0;color:#252c26;padding-bottom:32px}.premier .film-shade{background:linear-gradient(0deg,#101e17cc,transparent 90%),linear-gradient(90deg,#13201f45,transparent)}.premier-head{position:relative;padding:140px var(--gutter) 90px;display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;width:100%;color:#fff}.premier-head h2{font-size:clamp(85px,13vw,205px);line-height:.88}.premier-intro{max-width:400px;justify-self:end}.editorial-lede{font:400 clamp(27px,3vw,43px)/1.08 var(--font-display);letter-spacing:-.045em;margin-bottom:24px}.premier-intro>p:not(.kicker):not(.editorial-lede){font-size:13px;line-height:1.7}.premier-intro .credit{margin-top:24px;opacity:.8}.premier-walk{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:26px;padding:40px var(--gutter);align-items:stretch}.premier-piece{grid-column:span 6;min-width:0;position:relative;background:#c9c5b9;border-radius:22px;overflow:hidden}.premier-piece:nth-child(3){grid-column:span 12}.premier-piece .photo-open{height:clamp(380px,52vw,750px)}.premier-piece:nth-child(3) .photo-open{height:clamp(420px,50vw,720px)}.photo-open{display:block;border:0;padding:0;position:relative;overflow:hidden;background:transparent;width:100%;cursor:zoom-in}.photo-open>img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.photo-open:hover>img{transform:scale(1.035)}.premier-piece figcaption{position:absolute;inset:auto 24px 23px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#fff;pointer-events:none;text-shadow:0 1px 8px #000c;z-index:4}
/* Five masked backdrop layers progressively soften the image edges. */
.media-edge-blur{position:absolute;inset:auto 0 0;height:22%;z-index:3;pointer-events:none;background:linear-gradient(transparent,#06181050)}.media-edge-blur>span{position:absolute;inset:0;pointer-events:none;backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));mask-image:linear-gradient(transparent var(--start),#000 var(--end));-webkit-mask-image:linear-gradient(transparent var(--start),#000 var(--end))}.media-edge-blur>span:nth-child(1){--blur:1px;--start:0%;--end:22%}.media-edge-blur>span:nth-child(2){--blur:2px;--start:18%;--end:42%}.media-edge-blur>span:nth-child(3){--blur:4px;--start:38%;--end:62%}.media-edge-blur>span:nth-child(4){--blur:8px;--start:58%;--end:82%}.media-edge-blur>span:nth-child(5){--blur:12px;--start:78%;--end:100%}.round-media .media-edge-blur{height:18%;opacity:.65}
.projects{background:#d9dccd;padding:0 0 70px;overflow:clip}.projects-head{position:relative;padding:120px var(--gutter) 100px;width:100%}.projects-title{font-size:clamp(85px,13vw,200px);max-width:8ch;line-height:.9}.projects-film .film-media video,.projects-film .film-media>.video-poster{object-position:58% center}.projects-film .film-shade{background:linear-gradient(90deg,#062b2075,transparent 75%),linear-gradient(0deg,#0f28117d,transparent 80%)}.carousel{padding-top:48px}.car-track{display:flex;align-items:flex-start;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;padding:25px var(--gutter) 35px;scrollbar-width:none}.car-track::-webkit-scrollbar{display:none}.car-card{flex:0 0 clamp(250px,28vw,400px);scroll-snap-align:start;scroll-margin-left:var(--gutter)}.project-detail{border-top:1px solid #263e3755;padding-top:25px}.project-detail summary{list-style:none;cursor:pointer}.project-detail summary::-webkit-details-marker{display:none}.project-thumb{width:130px;height:130px;border-radius:50%;object-fit:cover;margin-bottom:28px}.project-summary{display:block}.car-name{font-size:37px;line-height:1.07;letter-spacing:-.055em;margin-bottom:15px}.project-hint{display:flex;justify-content:space-between;font-size:11px}.project-hint span{font-size:20px;line-height:1}.project-detail[open] .project-hint span{transform:rotate(45deg)}.project-expanded{margin-top:25px}.car-media{position:relative;aspect-ratio:4/3;background:#182720;overflow:hidden;border-radius:18px}.car-media img,.car-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.car-media video{z-index:1}.car-body{margin-top:20px}.car-meta{display:flex;justify-content:space-between;gap:20px;font-size:10px;text-transform:uppercase}.car-desc{font-size:14px;line-height:1.7;margin-top:12px}.car-nav{display:flex;gap:12px;align-items:center;padding-inline:var(--gutter)}.car-btn{padding:0;width:44px;height:44px;font-size:22px;background:#fff4;border-color:#294e3b44}.car-btn:disabled{opacity:.25;cursor:default}.car-count{font-size:11px;margin-left:15px}
/* Contact becomes a vivid, legible last room with directional flowing links. */
.contact{position:relative;isolation:isolate;overflow:clip;background:#c8ecb1;color:#163327;padding:105px var(--gutter) 40px}.contact::before{content:'';position:absolute;inset:-15%;z-index:-2;background:radial-gradient(ellipse at 12% 14%,#e1b2eb 0,transparent 43%),radial-gradient(ellipse at 87% 22%,#bcf4b0 0,transparent 52%),radial-gradient(ellipse at 68% 94%,#9bbded 0,transparent 54%),#e9e6a8}.motion-ready .contact::before{animation:contact-color 18s ease-in-out infinite alternate}@keyframes contact-color{to{transform:translate3d(3%,-3%,0) scale(1.08);filter:hue-rotate(24deg)}}.contact-title{font-size:clamp(65px,8vw,128px);max-width:15ch;line-height:1.02;margin-bottom:65px;letter-spacing:-.065em}.contact-links{border-bottom:1px solid #1a493951}.contact-links>a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;text-decoration:none;border-top:1px solid #1a493951;padding:30px 12px;overflow:hidden;min-height:115px;isolation:isolate}.cl-big{font:400 clamp(30px,4vw,59px)/1.15 var(--font-display);letter-spacing:-.05em}.cl-sub{font-size:12px;flex-shrink:0}.cl-sub::after{content:' ↗';margin-left:20px}.contact-flow{position:absolute;inset:0;display:flex;align-items:center;overflow:hidden;pointer-events:none;background:#213f36;color:#ecf9bb;transform:translateY(var(--flow-entry,102%));transition:transform .42s cubic-bezier(.2,.7,.2,1);z-index:2}.flow-link:nth-child(2) .contact-flow{background:#64477c;color:#fce6d7}.flow-link:nth-child(3) .contact-flow{background:#385b89;color:#d7f6bb}.flow-ribbon{display:flex;align-items:center;gap:36px;white-space:nowrap;width:max-content;will-change:transform}.flow-group>span{font-size:clamp(35px,4.5vw,67px);line-height:1;letter-spacing:-.055em}.flow-group>img{height:75px;width:130px;object-fit:cover;border-radius:99px;max-width:none}.flow-link:hover .contact-flow,.flow-link:focus-visible .contact-flow{transform:translateY(0)}.motion-ready .flow-link:hover .flow-ribbon,.motion-ready .flow-link:focus-visible .flow-ribbon{animation:flow-marquee 15s linear infinite}@keyframes flow-marquee{to{transform:translateX(-50%)}}.footer{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:28px;padding-top:80px;font-size:11px}.footer-wordmark{display:block;width:100%;font:400 clamp(65px,13.4vw,220px)/1.16 var(--font-display);letter-spacing:-.075em;white-space:nowrap;padding-block:12px;margin:0 0 25px;overflow:visible}.hue{color:#284b39;background:linear-gradient(110deg,#164b31,#64417b,#254c7f,#164b31);background-size:250% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:hue-rotate(var(--hue-scroll,0deg))}.motion-ready .hue{animation:hue-drift 14s ease-in-out infinite alternate}@keyframes hue-drift{to{background-position:100% 0}}
.photo-dialog{position:fixed;inset:0;margin:auto;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;padding:80px 24px 25px;background:#132319;color:var(--paper)}.photo-dialog::backdrop{background:#102016ee}.photo-dialog>img{height:calc(100% - 45px);width:100%;object-fit:contain}.photo-dialog>p{text-align:center;font-size:12px;padding-top:15px}.photo-close{position:absolute;right:24px;top:18px;width:45px;height:45px;font-size:26px;padding:0}.rv{opacity:1}.js.motion-ready .rv:not(.in){opacity:0;transform:translateY(22px)}.rv.in{transition:opacity .7s,transform .7s;transform:none;opacity:1}.video-poster{pointer-events:none}.no-motion video,.no-js video{display:none}.no-motion .rv{opacity:1;transform:none}.no-motion *,.no-motion *::before,.no-motion *::after{animation:none!important;transition:none!important}.no-js #motion-toggle,.no-js #menu-open,.no-js .menu-close,.no-js .car-nav{display:none}.no-js .photo-open{cursor:default}html:has(body.no-motion){scroll-behavior:auto}
@media(max-width:1000px){.about-copy{width:43%;margin-left:57%;padding-right:var(--gutter)}.about-copy h2{font-size:53px}.about-copy>p:not(.kicker){font-size:13px}.hero-copy h1{font-size:12vw}.premier-head{gap:35px}.yq-opening{min-height:660px}.gallery-intro h3{font-size:48px}.drift-wall{gap:32px}.footer-wordmark{font-size:13vw}}
@media(max-width:600px){html{scroll-padding-top:82px}.topbar{top:12px;left:16px;right:16px;padding:7px 8px 7px 17px}.site-brand{font-size:17px}.btn{padding:9px 15px;font-size:11px;gap:20px}.scene-pin{min-height:max(720px,100svh)}.hero-copy{padding:135px var(--gutter) 82px}.hero-copy h1{font-size:clamp(46px,13.4vw,80px);line-height:.95}.hero .film-media video,.hero .film-media>.video-poster{object-position:45% center}.hero .film-shade{background:linear-gradient(0deg,#08241adc,transparent 100%)}.hero-dictionary{margin-top:26px;max-width:38ch}.pronunciation{font-size:10px}.pronunciation span{margin-left:8px}.definition{font-size:12px;max-width:35ch}.hero-def{font-size:23px;margin-top:26px}.text-link{margin-top:26px}.film-progress{bottom:25px}.about-stage{align-items:end;min-height:max(820px,100svh)}.about-portrait{object-position:37% center}.about-shade{background:linear-gradient(0deg,#081e15fc 0%,#091f16e8 38%,#102a1240 65%,transparent 80%)}.about-copy{width:100%;margin:0;padding:340px var(--gutter) 65px}.about-copy h2{font-size:40px;max-width:12ch;margin-bottom:20px}.about-copy .kicker{margin-bottom:16px;font-size:10px}.about-copy>p:not(.kicker){font-size:12px;line-height:1.65;max-width:43ch;margin-bottom:14px}.about-copy .btn-solid{margin-left:0;margin-top:10px}.yq-opening{display:block;height:auto;min-height:740px;padding-top:390px}.yq-copy{width:100%;padding:20px var(--gutter) 55px}.yq-copy h2{font-size:25vw;margin-bottom:24px}.yq-statement{font-size:29px;max-width:19ch}.gallery-stage{padding:90px 0 30px;min-height:max(720px,100svh)}.gallery-intro{display:block;padding-bottom:10px}.gallery-intro h3{font-size:43px;margin-top:18px}.gallery-intro>p:last-child{font-size:12px;max-width:34ch;margin-top:18px}.gallery-intro .kicker{font-size:9px}.drift-wall{gap:24px;padding-top:24px;padding-bottom:12px}.drift-piece{flex-basis:78vw}.drift-piece:nth-child(even){flex-basis:72vw}.round-media{height:270px}.drift-piece figcaption{margin-top:18px;gap:12px}.drift-piece figcaption strong{font-size:19px}.drift-piece figcaption p{font-size:11px;max-width:32ch}.gallery-progress{margin-top:20px}.premier-head{display:block;padding:155px var(--gutter) 76px}.premier-head h2{font-size:26vw;margin-bottom:32px}.premier-intro{max-width:36ch}.editorial-lede{font-size:30px;margin-bottom:15px}.premier-intro .kicker{font-size:9px;margin-bottom:16px}.premier-intro>p:not(.kicker):not(.editorial-lede){font-size:12px}.premier-intro .credit{margin-top:16px}.premier-walk{grid-template-columns:1fr 1fr;gap:14px;padding:24px 16px}.premier-piece,.premier-piece:nth-child(3){grid-column:span 2;border-radius:16px}.premier-piece:nth-child(2),.premier-piece:nth-child(4){grid-column:span 1}.premier-piece:nth-child(3){grid-row:3}.premier-piece .photo-open{height:430px}.premier-piece:nth-child(2) .photo-open,.premier-piece:nth-child(4) .photo-open{height:290px}.premier-piece:nth-child(3) .photo-open{height:360px}.premier-piece figcaption{inset:auto 14px 18px;display:block;font-size:9px}.premier-piece figcaption span+span{display:block;margin-top:5px}.projects-head{padding:130px var(--gutter) 90px}.projects-title{font-size:25vw}.projects{padding-bottom:50px}.carousel{padding-top:24px}.car-card{flex-basis:78%}.car-name{font-size:34px}.contact{padding-top:75px}.contact-title{font-size:13vw;margin-bottom:45px}.contact-links>a{align-items:start;flex-direction:column;gap:12px;padding:25px 0;min-height:122px}.cl-big{font-size:36px}.cl-sub{font-size:11px}.flow-group>span{font-size:40px}.flow-group>img{height:70px;width:100px}.flow-ribbon{gap:25px}.footer{padding-top:50px;font-size:9px;gap:20px}.footer-wordmark{font-size:12.5vw;letter-spacing:-.07em;margin-bottom:10px;line-height:1.25}.menu{padding-top:95px}.menu-list a{font-size:34px;padding-block:17px}.menu-flow{gap:18px}.menu-flow img{width:72px}.menu-foot{font-size:10px}.controls{flex-wrap:wrap}}
@media(max-height:700px) and (min-width:601px){.scene-pin{min-height:760px}.about-stage{min-height:800px}.gallery-stage{min-height:850px}.menu{padding-top:70px}.menu-list a{padding-block:10px;font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body:not(.motion-ready) *,body:not(.motion-ready) *::before,body:not(.motion-ready) *::after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
@supports not (backdrop-filter:blur(1px)){.topbar{background:#244a3e}.btn,.btn-solid{background:#34594ddd}.media-edge-blur{background:linear-gradient(transparent,#06181075)}}

.flow-ribbon{gap:0}.flow-group{display:flex;align-items:center;justify-content:space-around;gap:36px;min-width:100vw;flex-shrink:0;padding-right:36px}.car-media .media-edge-blur{height:19%;opacity:.7}.motion-ready .hero-copy h1{animation:hero-enter 1.25s cubic-bezier(.2,.7,.2,1) both}@keyframes hero-enter{from{opacity:0;transform:translateY(25px);filter:blur(10px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@media(max-width:600px){.flow-group{gap:25px;padding-right:25px}}

/* Ozzy's second annotation pass: room for the films, faces and full words. */
.hero-copy h1{font-size:clamp(32px,5.9vw,94px);line-height:1.06;max-width:none;white-space:nowrap;letter-spacing:-.055em}
.hero-copy{max-width:none}
.hero-dictionary{margin-top:25px}
.yq-opening{color:#fff8ef;overflow:hidden;isolation:isolate}
.yq-film{position:absolute;inset:0;z-index:-2}
.yq-film video,.yq-film>.video-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 10%}
.yq-film video{z-index:1}
.yq-opening::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#250c0deb, #320b0b80 43%,#260a0610 78%),linear-gradient(0deg,#1e090855,transparent 70%)}
.yq-copy{width:64%}
.yq-copy h2{font-size:clamp(95px,11vw,180px)}
.yq-statement{max-width:17ch;font-size:clamp(26px,2.7vw,43px)}
.yq-cta{pointer-events:auto;margin-top:34px;color:#fff8ef;background:#ffffff1c;border-color:#fff8ef88}
/* Match the portrait films' aspect ratio: full frames, without letterbox padding. */
.drift-piece:nth-child(2) .round-media,.drift-piece:nth-child(4) .round-media,.drift-piece:nth-child(5) .round-media{width:auto;aspect-ratio:720/958;max-width:100%;margin-inline:auto}
.drift-piece:nth-child(2) .round-media :is(img,video),.drift-piece:nth-child(4) .round-media :is(img,video),.drift-piece:nth-child(5) .round-media :is(img,video){object-fit:cover;inset:0;height:100%;object-position:center top}
.premier-head{grid-template-columns:1fr;gap:38px;align-content:center}
.premier-head h2{font-size:clamp(54px,10.4vw,165px);line-height:1;white-space:nowrap}
.premier-intro{justify-self:start;max-width:470px}
.premier-intro .editorial-lede br{display:none}
.photo-open{isolation:isolate}
.premier-blur-mount{position:absolute;inset:0;pointer-events:none}
.premier-blur-mount:empty{top:auto;height:6rem;background:linear-gradient(transparent,#101d244d)}
.premier-piece figcaption{justify-content:flex-end}
.premier-piece figcaption a{pointer-events:auto;color:inherit;text-decoration:none;padding:8px 0;letter-spacing:.015em}
.premier-piece figcaption a:hover{text-decoration:underline;text-underline-offset:4px}
.car-track{overflow-anchor:none;scroll-snap-type:none;scroll-behavior:auto;gap:32px}
.car-track.is-moving{scroll-behavior:auto}
.car-card{flex-basis:clamp(310px,37vw,550px);scroll-snap-align:none}
.project-detail{border:0;padding:0}
.project-preview{display:block;width:100%;aspect-ratio:1.28;overflow:hidden;border-radius:24px;background:#e7e8da;margin-bottom:24px}
.project-thumb{display:block;width:100%;height:100%;border-radius:0;object-fit:cover;margin:0;transition:transform .5s ease}
.car-media img[data-crop="massawippi"]{object-fit:cover;object-position:50% 65%}
.project-thumb[data-crop="omnivers"],.car-media img[data-crop="omnivers"]{object-fit:cover;object-position:50% 60%}
.project-summary{padding-inline:5px}
.project-detail summary:hover .project-thumb{transform:scale(1.035)}
.car-name{font-size:clamp(30px,3vw,45px)}
.contact-title{font-size:clamp(22px,4.3vw,70px);line-height:1.12;max-width:none;white-space:nowrap;letter-spacing:-.06em}
.footer-wordmark{font-size:clamp(54px,12.7vw,208px);letter-spacing:-.065em;padding-right:.09em}
.footer-wordmark .hue{display:inline-block;padding-right:.11em;margin-right:-.11em;padding-bottom:.04em}
@media(max-width:600px){
  .hero-copy h1{font-size:7.05vw;letter-spacing:-.055em}
  .yq-opening{display:flex;align-items:end;height:90svh;min-height:730px;padding-top:0}
  .yq-film video,.yq-film>.video-poster{object-position:60% center}
  .yq-opening::before{background:linear-gradient(0deg,#210706f5, #250806bd 40%,transparent 84%)}
  .yq-copy{width:100%;padding-bottom:55px}
  .yq-copy h2{font-size:23vw;margin-bottom:24px}
  .yq-statement{font-size:28px;max-width:18ch}
  .yq-cta{margin-top:26px}
  .premier-head h2{font-size:13vw;margin-bottom:28px}
  .car-card{flex-basis:80vw}
  .project-preview{border-radius:18px}
  .contact-title{font-size:4.25vw;letter-spacing:-.04em}
  .footer-wordmark{font-size:12.3vw;letter-spacing:-.065em}
}

/* Static project heading, including the longer French label, stays readable on phones. */
.projects-title { max-width: none; white-space: nowrap; }
@media (max-width:600px) {
  .projects-title { font-size:18vw; }
  html[lang="fr"] .projects-title { font-size:14vw; }
}

/* Persistent language navigation and direct destinations for public projects. */
.topbar-actions{display:flex;align-items:center;gap:10px}
.language-switch{min-width:48px;min-height:44px;justify-content:center;padding:10px 14px}
.project-link{display:block;color:inherit;text-decoration:none}
.project-link:focus-visible{outline:2px solid var(--ink);outline-offset:6px;border-radius:24px}
.project-link:hover .project-thumb:not([data-fit="maison"]){transform:scale(1.035)}
.project-thumb[data-fit="maison"]{object-fit:cover;object-position:50% 68%;transform:none}
/* Feather the original moving portraits into their neutral studio backdrop. */
.u-gallery .round-media{background:transparent;-webkit-mask-image:radial-gradient(ellipse 50% 50% at center,#000 85%,transparent 100%);mask-image:radial-gradient(ellipse 50% 50% at center,#000 85%,transparent 100%)}
.gallery-intro>p:last-child{max-width:42ch}
@media(max-width:600px){.topbar-actions{gap:6px}.language-switch{min-width:42px;padding:10px}.gallery-intro>p:last-child{max-width:38ch}}
