*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:#111;color:#f8f6ef;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #edff8c;outline-offset:6px}header{position:absolute;top:0;left:0;width:100%;z-index:5;padding:35px 4%;display:flex;justify-content:space-between;align-items:center}.brand{font-size:clamp(20px,2.2vw,36px);font-weight:900;letter-spacing:-1.7px;line-height:1}.brand span{display:block;font-size:9px;letter-spacing:2.1px;font-weight:400;margin-top:12px}.menu-toggle{background:transparent;border:0;width:45px;height:38px;display:grid;align-content:center;gap:8px;padding:4px}.menu-toggle span{display:block;height:2px;background:white;width:36px}.film{position:relative;width:100%;aspect-ratio:16/9;max-height:100svh;min-height:480px;overflow:hidden;background:#222}.ambient{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.shade{position:absolute;inset:0;background:linear-gradient(180deg,#0005,transparent 40%,#0006)}.film-open{position:absolute;inset:0;width:100%;border:0;background:transparent;display:grid;place-items:center;text-align:center;text-shadow:0 2px 30px #0006}.film-copy{display:block;padding-top:40px}.client{display:block;text-transform:uppercase;letter-spacing:5px;font-size:13px;font-weight:600}.film h1{font-size:clamp(64px,8.6vw,145px);line-height:1;margin:12px 0 28px;letter-spacing:-5px;font-style:italic;font-weight:800}.play{display:inline-flex;align-items:center;gap:12px;font-size:14px;letter-spacing:2px}.play>span{border-bottom:1px solid #fff6;padding-bottom:5px}.film-open:hover .play{transform:translateY(-3px)}.film-bottom{position:absolute;bottom:30px;left:4%;right:4%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px;pointer-events:none}.worlds{padding:110px 6%;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px}h2{font-size:clamp(34px,4vw,65px);letter-spacing:-2px;line-height:1.05;font-weight:500}i{font-family:Georgia,serif;font-weight:400}.world-links a{display:flex;justify-content:space-between;padding:30px 0;border-bottom:1px solid #555;font-size:22px}.world-links a span:last-child{font-size:11px;align-self:center;letter-spacing:1px}.contact{background:#e9e6dd;color:#151515;padding:100px 6%}.contact h2{font-size:clamp(58px,8vw,128px);margin:28px 0}.contact p{font-size:16px;line-height:1.7;color:#555}.contact-link{display:inline-block;font-size:32px;border-bottom:1px solid;margin-top:24px;padding-bottom:8px}.email{display:block;font-size:13px;margin-top:25px}footer{padding:30px 6%;display:flex;gap:28px;align-items:center;font-size:10px;letter-spacing:1px}footer span{margin-right:auto}dialog{border:0;background:#111;color:#fff;padding:0;max-width:none;max-height:none}dialog::backdrop{background:#000e}dialog .close{position:absolute;top:28px;right:4%;background:none;border:0;z-index:3;font-size:13px;letter-spacing:1px;padding:12px}#menu{width:100%;height:100svh;padding:9vh 8%}#menu nav{display:flex;flex-direction:column;align-items:start}#menu nav a{font-size:clamp(45px,7vw,100px);letter-spacing:-3px;line-height:1.25}#menu sup{font-size:12px;letter-spacing:0;vertical-align:top;display:inline-block;margin:12px 0 0 20px}#menu p{margin-top:35px;color:#999;font-size:13px;line-height:1.6}#player{width:100%;height:100svh;padding:85px 4% 30px}#player h2{font-size:16px;letter-spacing:0;margin:0 0 15px}#player video{width:100%;height:calc(100% - 40px);object-fit:contain}#lightbox{width:100%;height:100svh;padding:70px 6% 20px;text-align:center}#lightbox img{height:calc(100% - 40px);max-width:100%;object-fit:contain}#lightbox p{font-size:12px}.page-intro{padding:180px 6% 70px}.page-intro h1{font-size:clamp(52px,6.5vw,105px);line-height:1.02;font-weight:500;letter-spacing:-4px;margin:30px 0}.page-intro p{font-size:15px;color:#aaa;line-height:1.6}.vertical-grid{padding:20px 10% 110px;display:grid;grid-template-columns:minmax(240px,440px) 1fr;align-items:center;gap:10vw}.portrait{aspect-ratio:9/16;position:relative;width:100%;border:0;padding:0;background:#222}.portrait .play{position:absolute;inset:0;display:flex;justify-content:center;background:#0002}.caption{display:flex;justify-content:space-between;align-items:center}.caption h2{font-size:20px;letter-spacing:0}.caption span{font-size:10px;letter-spacing:1px}.vertical-copy p{color:#aaa;line-height:1.7;max-width:400px}.underlined{display:inline-block;border-bottom:1px solid #777;padding-bottom:10px;margin-top:20px;font-size:13px}.photo-grid{padding:0 6% 100px;columns:3;column-gap:22px}.photo{display:block;width:100%;background:none;border:0;padding:0;margin:0 0 30px;text-align:left;break-inside:avoid}.photo img{width:100%;display:block}.photo span{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;padding-top:12px}.photo b{font-size:16px}body:has(dialog[open]){overflow:hidden}@media(max-width:700px){header{padding:24px 5%}.brand{font-size:22px;letter-spacing:-1px}.brand span{font-size:6px;letter-spacing:1.5px}.film{min-height:0;max-height:none;aspect-ratio:16/9}.film:first-child{margin-top:100px}.film h1{font-size:48px;letter-spacing:-2px;margin:8px 0 12px}.film-copy{padding-top:0}.client{font-size:9px;letter-spacing:3px}.play{font-size:10px}.film-bottom{bottom:12px;font-size:7px;letter-spacing:.6px}.film-bottom span:last-child{display:none}.worlds{padding:65px 6%;grid-template-columns:1fr;gap:10px}.world-links a{font-size:20px}.contact{padding:65px 6%}.contact p{font-size:14px}footer{flex-wrap:wrap;gap:20px}footer span{width:100%}.page-intro{padding-top:145px}.page-intro h1{letter-spacing:-2px}.vertical-grid{grid-template-columns:1fr;padding:0 12% 70px;gap:35px}.photo-grid{columns:2;column-gap:12px;padding:0 4% 60px}.photo span{font-size:7px}#menu{padding-top:100px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.film h2{font-size:clamp(55px,8.6vw,145px);line-height:1;margin:12px 0 28px;letter-spacing:-5px;font-style:italic;font-weight:800}.film-bottom a{pointer-events:auto;position:relative;z-index:2}@media(max-width:700px){.film h2{font-size:clamp(30px,8vw,48px);letter-spacing:-2px;margin:8px 0 12px}}
/* Persistent identity and scroll choreography */
header{position:fixed;z-index:20;pointer-events:none;background:linear-gradient(#0007,transparent);padding-top:28px;padding-bottom:30px}header a,header button{pointer-events:auto}.brand{text-shadow:0 2px 18px #0009}.menu-toggle{filter:drop-shadow(0 1px 4px #000)}.dialog-brand{position:absolute;top:35px;left:4%;font-weight:900;font-size:20px;letter-spacing:-.8px;z-index:4}.film-copy{perspective:900px}.title-word{display:inline-block;white-space:nowrap}.title-letter{display:inline-block;will-change:transform,opacity;transform-origin:50% 85%;transition:transform .12s ease-out,opacity .12s linear}.film .client,.film .play{transition:transform .15s ease-out,opacity .15s linear}.film .ambient{will-change:transform}.film-open:hover .play{letter-spacing:3px}#menu nav a{transition:transform .3s,color .3s}#menu nav a:hover{transform:translateX(18px);color:#d7d5cc}#menu[open] nav a{animation:menu-enter .55s both}#menu[open] nav a:nth-child(2){animation-delay:.07s}#menu[open] nav a:nth-child(3){animation-delay:.14s}#menu[open] nav a:nth-child(4){animation-delay:.21s}@keyframes menu-enter{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}@media(max-width:700px){header{padding:22px 5% 28px}.dialog-brand{font-size:16px;top:36px}.title-word{white-space:normal}}@media(prefers-reduced-motion:reduce){.title-letter,.film .client,.film .play,.film .ambient{transform:none!important;opacity:1!important;will-change:auto}#menu[open] nav a{animation:none}}
/* A pinned viewing beat for every film. */
.film{height:190svh;min-height:0;max-height:none;aspect-ratio:auto;overflow:visible;background:#080808}.film-stage{position:sticky;top:0;height:100svh;width:100%;overflow:hidden;background:#080808}.film-stage .ambient{object-fit:contain}.film-copy{padding:0 5%}.film .title-letter{transition:none}.film .client,.film .play{transition:none}.film .shade{background:linear-gradient(#0003,transparent 30%,transparent 70%,#0004);pointer-events:none}.film-bottom{bottom:28px}.scroll-cue{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:2px;opacity:0;pointer-events:none}.clean-film .film-open{cursor:pointer}.about-sequence{height:260svh;background:#e9e6dd;color:#141414}.about-stage{height:100svh;position:sticky;top:0;overflow:hidden;display:grid;place-items:center}.about-copy-cinema{width:min(1000px,86%);z-index:1;opacity:var(--about-opacity,0);transform:translateY(var(--about-y,50px))}.about-copy-cinema h2{font-size:clamp(52px,8vw,125px);font-weight:900;letter-spacing:-.065em;line-height:.87;margin:26px 0}.about-copy-cinema h2 span{display:block}.about-copy-cinema h2 span:first-child{transform:translateX(calc(-1 * var(--name-spread,90px)))}.about-copy-cinema h2 span:last-child{transform:translateX(var(--name-spread,90px))}.about-role{font-size:clamp(25px,3vw,45px);line-height:1.1;margin:22px 0}.about-description{max-width:540px;font-size:15px;line-height:1.6;color:#45443e}.about-copy-cinema a{display:inline-block;font-size:12px;border-bottom:1px solid #888;padding:8px 0}.split-panel{position:absolute;left:0;width:100%;height:50%;z-index:2;pointer-events:none;overflow:hidden;background:#080808}.split-panel img{width:100%;height:100%;object-fit:cover;filter:brightness(.65)}.split-top{top:0;transform:translateY(calc(var(--split,0) * -105%))}.split-bottom{bottom:0;transform:translateY(calc(var(--split,0) * 105%))}.about-cue{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);font-size:11px;letter-spacing:3px;color:#fff;opacity:calc(1 - var(--split,0))}.about-sequence .eyebrow{color:#555}body:has(.about-sequence) header{mix-blend-mode:difference;background:none}.film-open:focus-visible{outline-offset:-6px}@media(max-width:700px){.film:first-child{margin-top:0}.film{height:180svh}.about-sequence{height:230svh}.about-copy-cinema{padding-top:60px}.about-copy-cinema h2{font-size:clamp(42px,11vw,70px)}.about-description{font-size:14px}.about-role{font-size:28px}.film h1,.film h2{font-size:clamp(34px,9vw,60px)}.film-bottom{bottom:24px}}@media(prefers-reduced-motion:reduce){.film{height:100svh}.about-sequence{height:auto}.about-stage{min-height:100svh;height:auto;padding:120px 0 80px;position:relative}.about-copy-cinema{opacity:1;transform:none}.about-copy-cinema h2 span{transform:none!important}.split-panel,.about-cue,.scroll-cue{display:none}}
.split-panel video{object-fit:cover;filter:brightness(.65)}
.about-manifesto{font-family:Georgia,serif;font-size:clamp(21px,2.4vw,34px);line-height:1.35;max-width:650px;color:#24241f}.biography{background:#e9e6dd;color:#141414;padding:120px 8% 150px;display:grid;grid-template-columns:1fr 1.35fr;gap:8%;scroll-margin-top:105px}.biography-heading h2{font-size:clamp(38px,4vw,66px);line-height:1.05;margin:26px 0}.biography-origin{font-size:9px;letter-spacing:1.5px;color:#65645c}.biography-text{max-width:680px}.biography-text p{font-size:18px;line-height:1.8;margin:0 0 28px;color:#3d3c36}.biography-text strong{font-weight:600;color:#131310}.biography-text p:last-of-type{font-family:Georgia,serif;font-size:clamp(24px,2.3vw,34px);line-height:1.5;margin-top:45px}.biography-contact{display:inline-block;margin-top:20px;padding-bottom:10px;border-bottom:1px solid #888;font-size:13px}@media(max-width:700px){.biography{display:block;padding:65px 7% 90px}.biography-heading{margin-bottom:44px}.biography-text p{font-size:16px;line-height:1.8}.about-manifesto{font-size:23px}}

/* Mobile polish: retain the choreography, avoid permanent GPU layers. */
.title-letter,.film .ambient{will-change:auto}
.scene-active .title-letter{will-change:transform,opacity}
.scene-active .ambient{will-change:transform}
header{padding-top:max(22px,env(safe-area-inset-top));padding-left:max(4%,env(safe-area-inset-left));padding-right:max(4%,env(safe-area-inset-right))}
.menu-toggle,dialog .close{min-width:44px;min-height:44px;touch-action:manipulation}
dialog{overscroll-behavior:contain}
@media(max-width:700px){
 .brand{font-size:clamp(18px,5.3vw,24px);letter-spacing:-1px}
 .brand span{letter-spacing:1px;font-size:7px}
 .film-copy{width:100%;padding:0 6%}
 .film h1,.film h2{font-size:clamp(32px,9vw,60px);overflow-wrap:normal}
 .title-word{white-space:nowrap}
 .client{letter-spacing:2px;line-height:1.5}
 .play{min-height:44px;font-size:12px}
 .film-bottom,.scroll-cue{bottom:max(24px,env(safe-area-inset-bottom))}
 .dialog-brand{left:5%;top:max(30px,env(safe-area-inset-top));font-size:15px}
 dialog .close{right:3%;top:max(18px,env(safe-area-inset-top));font-size:12px}
 #player,#lightbox{height:100dvh;padding-top:95px;padding-bottom:max(20px,env(safe-area-inset-bottom))}
 #player h2{line-height:1.4;font-size:14px}
 #menu{height:100dvh;overflow:auto;padding-bottom:max(30px,env(safe-area-inset-bottom))}
 #menu nav a{font-size:clamp(38px,10vw,65px);line-height:1.4}
 #menu sup{margin-left:10px}
 .about-copy-cinema{padding-top:50px;padding-bottom:25px}
 .about-manifesto{font-size:clamp(19px,5.4vw,23px)}
 .about-role{font-size:clamp(23px,6vw,28px)}
 .email{overflow-wrap:anywhere}
}
@media(max-height:500px) and (orientation:landscape){
 header{padding-top:12px}.brand{font-size:18px}.brand span{margin-top:6px;font-size:6px}
 .about-copy-cinema{padding:65px 0 25px;width:86%}
 .about-copy-cinema h2{font-size:40px;margin:12px 0}.about-copy-cinema h2 span{display:inline-block;margin-right:12px}
 .about-role{font-size:20px;margin:12px 0}.about-manifesto{font-size:18px;margin:12px 0}
 .about-copy-cinema .eyebrow{font-size:8px}.film-bottom,.scroll-cue{bottom:12px}
 #player{padding-top:75px;padding-bottom:12px}
}

/* Immersive phone previews; the player retains the complete original frame. */
@media(max-width:700px) and (orientation:portrait){
 .film-stage .ambient{object-fit:cover;object-position:center}
 .film .shade{background:linear-gradient(180deg,#0007 0%,transparent 30%,#0001 60%,#0008 100%)}
}
