:root{--ink:#0b0b0b;--paper:#f7f7f4;--muted:#888;--line:#d9d9d4;--pad:clamp(18px,3vw,48px);--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.45}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:100%;padding-inline:var(--pad)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(247,247,244,.9);backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:.3s}.site-header.scrolled{border-color:var(--line)}.site-header .wrap{height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.logo{font-weight:800;font-size:13px;letter-spacing:-.02em}.main-nav{display:flex;gap:28px;font-size:12px}.main-nav a{opacity:.55;transition:.2s}.main-nav a:hover,.main-nav a.active{opacity:1}.header-actions{justify-self:end;display:flex;align-items:center;gap:18px}.icon-link svg,.menu-btn svg{width:18px;height:18px}.menu-btn{display:none;border:0;background:none;padding:0;color:inherit}
.hero{min-height:50vh;display:flex;align-items:flex-end;padding:clamp(55px,7vw,100px) var(--pad) 58px}.hero-inner{width:min(1150px,100%)}.kicker{font-size:11px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:18px}.hero h1{font-size:clamp(54px,9vw,144px);line-height:.82;letter-spacing:-.075em;margin:0;font-weight:800;max-width:1100px}.hero-copy{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:55px;max-width:850px}.hero-copy p{margin:0;font-size:clamp(15px,1.4vw,19px)}
.rule-head{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--ink);padding-top:12px;margin-bottom:26px}.rule-head h2{font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:0}.rule-head span{font-size:11px;color:var(--muted)}
.categories{padding:45px var(--pad) 100px;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,5vw,80px)}.category-image{aspect-ratio:1/1;overflow:hidden;background:#ddd}.category-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.category:hover img{transform:scale(1.025)}.category h2{font-size:20px;letter-spacing:-.03em;margin:18px 0 18px}.category p{margin:0;font-size:13px;line-height:1.7;color:#333}
.filmography{padding:20px var(--pad) 32px}.poster-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(12px,1.5vw,24px)}.poster-card{display:block}.poster-frame{aspect-ratio:2/3;background:#e6e6e1;overflow:hidden;position:relative}.poster-frame img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .3s}.poster-card:hover img{transform:scale(1.025)}.poster-meta{display:flex;justify-content:space-between;gap:12px;padding-top:9px;font-size:11px}.poster-meta span:last-child{color:var(--muted)}.poster-placeholder{height:100%;padding:18px;display:flex;flex-direction:column;justify-content:space-between;background:#111;color:#fff}.poster-placeholder strong{font-size:clamp(18px,2vw,32px);line-height:.95;letter-spacing:-.06em;text-transform:uppercase}.poster-placeholder small{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#aaa}.poster-card[href=""]{pointer-events:none}.poster-card[href=""] .poster-frame{opacity:.55}
.gallery-intro{padding:90px var(--pad) 50px}.gallery-intro h1{font-size:clamp(44px,8vw,120px);line-height:.88;letter-spacing:-.07em;margin:0}.gallery-intro p{max-width:520px;margin:35px 0 0;font-size:16px}.gallery{padding:0 var(--pad) 120px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:start}.gallery-col{display:flex;flex-direction:column;gap:8px}.gallery figure{margin:0;overflow:hidden;background:#ddd;cursor:zoom-in}.gallery img{width:100%;height:auto;transition:opacity .25s}.gallery figure:hover img{opacity:.88}
.lightbox{position:fixed;inset:0;background:rgba(8,8,8,.97);z-index:100;display:none;align-items:center;justify-content:center;padding:50px}.lightbox.open{display:flex}.lightbox img{max-width:92vw;max-height:90vh;object-fit:contain}.lb-close{position:absolute;right:22px;top:18px;color:white;background:none;border:0;font-size:32px;font-weight:200;cursor:pointer}.lb-count{position:absolute;left:22px;top:22px;color:#aaa;font-size:11px}.lb-prev,.lb-next{position:absolute;top:50%;border:0;background:none;color:white;font-size:36px;cursor:pointer}.lb-prev{left:20px}.lb-next{right:20px}
.page{padding:110px var(--pad) 130px}.page h1{font-size:clamp(54px,9vw,140px);line-height:.84;letter-spacing:-.075em;margin:0 0 80px}.about-grid{display:grid;grid-template-columns:minmax(260px,.7fr) 1.3fr;gap:clamp(40px,8vw,130px);align-items:start}.portrait{aspect-ratio:1/1;overflow:hidden;border-radius:50%}.portrait img{width:100%;height:100%;object-fit:cover}.bio{font-size:clamp(18px,2.1vw,30px);line-height:1.25;letter-spacing:-.03em}.bio p:first-child{margin-top:0}.bio-small{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:60px;font-size:13px;color:#444}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-big a{font-size:clamp(30px,5vw,76px);line-height:1.05;letter-spacing:-.055em;border-bottom:1px solid var(--ink)}.contact-list{align-self:end;font-size:14px}.contact-list p{margin:8px 0}
footer{border-top:1px solid var(--line);padding:25px var(--pad) 35px;display:grid;grid-template-columns:1fr auto 1fr;font-size:11px}.foot-links{display:flex;gap:22px}.foot-meta{text-align:right;color:var(--muted)}
@media(max-width:900px){.site-header .wrap{grid-template-columns:1fr auto;height:64px}.main-nav{position:fixed;inset:64px 0 auto 0;background:var(--paper);padding:25px var(--pad) 35px;display:none;flex-direction:column;gap:20px;border-bottom:1px solid var(--line);font-size:18px}.main-nav.open{display:flex}.menu-btn{display:block}.icon-link{display:none}.hero{min-height:55vh}.hero-copy{grid-template-columns:1fr;max-width:560px}.categories{grid-template-columns:1fr;gap:60px}.category{display:grid;grid-template-columns:1fr 1fr;gap:20px}.category h2{margin-top:0}.category p{grid-column:2}.poster-grid{grid-template-columns:repeat(3,1fr)}.about-grid,.contact-grid{grid-template-columns:1fr}.portrait{max-width:430px}.gallery{gap:5px}.gallery-col{gap:5px}footer{grid-template-columns:1fr 1fr}.foot-links{display:none}}
@media(max-width:620px){.hero{padding-top:70px}.hero h1{font-size:17vw}.hero-copy{margin-top:35px}.category{display:block}.category h2{margin-top:14px}.poster-grid{grid-template-columns:repeat(2,1fr);gap:22px 10px}.gallery{grid-template-columns:1fr;gap:6px}.gallery-col{display:contents}.gallery figure{margin-bottom:0}.page{padding-top:70px}.page h1{margin-bottom:55px}.bio-small{grid-template-columns:1fr}.contact-big a{font-size:10vw}footer{grid-template-columns:1fr auto}.foot-meta{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.poster-placeholder{display:flex;align-items:center;justify-content:center;background:#111;color:#fff;text-align:center;letter-spacing:.12em;font-size:12px;line-height:1.5}.poster-placeholder span{opacity:.72}
/* Filmography v2.7 */
.poster-meta>div{min-width:0}.poster-title{display:block;font-weight:600}.poster-meta small{display:block;margin-top:3px;color:var(--muted);font-size:9px;line-height:1.25;text-transform:none}.poster-title-card{display:flex;align-items:center;justify-content:center;padding:18px;text-align:center;background:#e6e6e1;color:#111}.poster-title-card strong{font-size:clamp(17px,1.5vw,25px);line-height:1;letter-spacing:-.045em}.poster-placeholder{align-items:flex-start!important;justify-content:space-between!important;text-align:left!important;padding:18px!important}.poster-placeholder strong{font-size:clamp(18px,2vw,30px)!important;line-height:.95!important;letter-spacing:-.055em!important}.poster-placeholder small{font-size:9px!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#aaa!important}

/* v2.17 unified production cards */
.poster-frame{aspect-ratio:2/3!important;background:#e8e8e3!important}
.poster-frame img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.poster-meta{min-height:58px;align-items:flex-start}
.poster-meta>div{flex:1}.poster-title{font-size:12px;line-height:1.15;min-height:28px}.poster-meta small{font-size:9px;line-height:1.25}.poster-meta>span:last-child{white-space:nowrap;font-size:10px}
.poster-placeholder{aspect-ratio:2/3!important;height:auto!important;padding:20px!important;background:#111!important;color:#fff!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:space-between!important;text-align:left!important}
.poster-placeholder strong{font-size:clamp(20px,2vw,30px)!important;line-height:.95!important}.poster-placeholder small{font-size:9px!important}

/* Commercial work — editorial split */
.commercial-work{padding:45px var(--pad) 110px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(36px,7vw,110px);align-items:end}.commercial-image{aspect-ratio:4/3;overflow:hidden;background:#ddd}.commercial-image img{width:100%;height:100%;object-fit:cover;display:block}.commercial-copy{padding-bottom:4px}.commercial-label{text-transform:uppercase;font-size:11px;letter-spacing:.14em;color:#777;margin-bottom:18px}.commercial-copy h2{font-size:clamp(34px,4.2vw,68px);line-height:.95;letter-spacing:-.055em;margin:0 0 30px;font-weight:600}.commercial-copy p{margin:0;max-width:640px;font-size:14px;line-height:1.85;color:#333}.hero-copy-facts p:last-child{font-weight:500;color:#111}
@media(max-width:900px){.commercial-work{grid-template-columns:1fr;padding-bottom:80px;gap:28px}.commercial-copy{max-width:700px}.commercial-image{aspect-ratio:16/10}}
@media(max-width:620px){.commercial-work{padding-top:25px}.commercial-image{aspect-ratio:4/3}.commercial-copy h2{margin-bottom:22px}.commercial-copy p{font-size:13px;line-height:1.75}}
/* v2.20 — poster-first hierarchy */
.commercial-work.commercial-work-type{display:block;max-width:none;margin:24px 0 0;padding:clamp(40px,5vw,72px) var(--pad,4vw) clamp(72px,9vw,140px);border-top:1px solid rgba(0,0,0,.18)}
.commercial-work-type .commercial-copy{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:minmax(160px,.7fr) minmax(220px,1fr) minmax(0,2.6fr);gap:clamp(24px,4vw,80px);align-items:start}
.commercial-work-type .commercial-label{margin:0;padding-top:.45em}
.commercial-work-type h2{margin:0;font-size:clamp(2rem,4vw,4.6rem);line-height:.9;letter-spacing:-.055em;font-weight:500}
.commercial-work-type p{margin:0;font-size:clamp(1rem,1.35vw,1.35rem);line-height:1.7;max-width:52em}
@media(max-width:800px){.commercial-work-type .commercial-copy{grid-template-columns:1fr;gap:18px}.commercial-work-type h2{font-size:clamp(2.5rem,12vw,4rem)}.commercial-work-type p{line-height:1.6}}

/* V2.21 hero spacing + fact line */
.hero-copy-facts{display:block;max-width:none}
.hero-copy-facts p{white-space:nowrap}
@media(max-width:620px){.hero-copy-facts p{white-space:normal}}

/* V2.23 — editorial About */
.about-editorial{padding:clamp(72px,8vw,120px) var(--pad) clamp(100px,12vw,180px)}
.about-head{border-bottom:1px solid var(--ink);padding-bottom:clamp(42px,6vw,86px)}
.about-kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:clamp(28px,4vw,58px)}
.about-head h1{margin:0;max-width:1300px;font-size:clamp(50px,7.4vw,122px);line-height:.88;letter-spacing:-.065em;font-weight:700}
.about-profile{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(340px,1.05fr);gap:clamp(40px,8vw,130px);padding:clamp(48px,7vw,100px) 0 clamp(70px,9vw,130px);align-items:end}
.about-portrait{aspect-ratio:4/5;overflow:hidden;background:#ddd}
.about-portrait img{width:100%;height:100%;object-fit:cover;object-position:center}
.about-intro{max-width:720px;padding-bottom:1vw}
.about-intro p{font-size:clamp(16px,1.35vw,21px);line-height:1.55;margin:0 0 28px;color:#333}
.about-intro .about-lead{font-size:clamp(25px,2.7vw,44px);line-height:1.12;letter-spacing:-.04em;color:var(--ink);margin-bottom:clamp(34px,5vw,70px)}
.about-timeline{border-top:1px solid var(--ink)}
.about-timeline article{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(0,2.35fr);gap:clamp(24px,5vw,80px);padding:clamp(25px,3vw,44px) 0;border-bottom:1px solid var(--line);align-items:start}
.about-year{font-size:clamp(24px,3vw,48px);line-height:.95;letter-spacing:-.045em;font-weight:600;white-space:nowrap}
.about-timeline h2{font-size:clamp(18px,1.65vw,27px);line-height:1.05;letter-spacing:-.035em;margin:0 0 10px;font-weight:600}
.about-timeline p{max-width:760px;margin:0;font-size:clamp(14px,1.1vw,17px);line-height:1.55;color:#444}
@media(max-width:800px){.about-profile{grid-template-columns:1fr;align-items:start}.about-portrait{max-width:620px}.about-intro{padding:0}.about-timeline article{grid-template-columns:1fr;gap:16px}.about-year{font-size:34px}.about-head h1 br{display:none}}
@media(max-width:620px){.about-editorial{padding-top:70px}.about-head h1{font-size:14vw}.about-profile{padding-top:42px}.about-intro .about-lead{font-size:28px}.about-timeline article{padding:28px 0}}

/* V2.24 — About aligned with 2nd AC visual language */
.about-v224{padding-bottom:clamp(90px,10vw,150px)}
.about-v224-hero{min-height:50vh;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(55px,7vw,100px) var(--pad) 58px;border-bottom:1px solid var(--ink)}
.about-v224-hero .kicker{margin-bottom:18px}
.about-v224-hero h1{font-size:clamp(54px,9vw,144px);line-height:.82;letter-spacing:-.075em;margin:0;font-weight:800;max-width:1100px}
.about-v224-deck{margin:55px 0 0;max-width:680px;font-size:clamp(15px,1.4vw,19px);line-height:1.45}
.about-v224-story{display:grid;grid-template-columns:minmax(320px,.92fr) minmax(420px,1.08fr);gap:clamp(45px,8vw,130px);padding:clamp(65px,8vw,120px) var(--pad);align-items:start}
.about-v224-image{aspect-ratio:4/5;overflow:hidden;background:#ddd;position:sticky;top:100px}
.about-v224-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-v224-copy{max-width:760px}
.about-v224-copy p{margin:0;padding:0 0 clamp(28px,3vw,44px);font-size:clamp(18px,1.55vw,24px);line-height:1.5;letter-spacing:-.018em;color:#202020}
.about-v224-copy p+p{padding-top:clamp(28px,3vw,44px);border-top:1px solid var(--line)}
.about-v224-copy strong{font-weight:650;color:var(--ink)}
.about-v224-facts{margin:0 var(--pad);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);display:grid;grid-template-columns:repeat(4,1fr)}
.about-v224-facts div{padding:clamp(28px,3.5vw,54px) clamp(12px,2vw,30px) clamp(30px,4vw,60px) 0;border-right:1px solid var(--line)}
.about-v224-facts div:not(:first-child){padding-left:clamp(18px,2vw,32px)}
.about-v224-facts div:last-child{border-right:0}
.about-v224-facts span{display:block;font-size:clamp(38px,5vw,82px);line-height:.9;letter-spacing:-.06em;font-weight:700;margin-bottom:14px}
.about-v224-facts small{display:block;font-size:11px;line-height:1.35;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:900px){.about-v224-hero{min-height:55vh}.about-v224-story{grid-template-columns:1fr}.about-v224-image{position:relative;top:auto;max-width:620px}.about-v224-copy{max-width:760px}.about-v224-facts{grid-template-columns:repeat(2,1fr)}.about-v224-facts div:nth-child(2){border-right:0}.about-v224-facts div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:620px){.about-v224-hero{padding-top:70px}.about-v224-hero h1{font-size:17vw}.about-v224-deck{margin-top:35px}.about-v224-story{padding-top:48px;padding-bottom:70px;gap:42px}.about-v224-copy p{font-size:18px}.about-v224-facts{grid-template-columns:1fr}.about-v224-facts div,.about-v224-facts div:not(:first-child){padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.about-v224-facts div:last-child{border-bottom:0}}


/* V2.25 About — same visual language as 2nd AC, stats first, circular portrait */
.about-v225 .about-v225-hero{min-height:46vh;padding-bottom:52px;border-bottom:0}
.about-v225-facts{margin-top:0}
.about-v225-story{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(480px,1.28fr);gap:clamp(55px,8vw,135px);padding:clamp(70px,8vw,125px) var(--pad) clamp(85px,9vw,140px);align-items:start}
.about-v225-image{width:min(100%,520px);aspect-ratio:1/1;border-radius:50%;overflow:hidden;background:#ddd}
.about-v225-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-v225-copy{max-width:820px;padding-top:4px}
.about-v225-copy p{margin:0 0 1.45em;font-size:clamp(17px,1.35vw,21px);line-height:1.62;letter-spacing:-.012em;color:#202020}
.about-v225-copy p:last-child{margin-bottom:0}
@media(max-width:900px){.about-v225 .about-v225-hero{min-height:48vh}.about-v225-story{grid-template-columns:1fr;gap:52px}.about-v225-image{width:min(72vw,460px)}}
@media(max-width:620px){.about-v225 .about-v225-hero{min-height:43vh;padding-bottom:40px}.about-v225-story{padding-top:52px;gap:42px}.about-v225-image{width:min(82vw,390px)}.about-v225-copy p{font-size:17px;line-height:1.6}}

/* About v2.26 — editorial story first, compact facts last */
.about-v226 .about-v226-hero{min-height:46vh;padding-bottom:52px;border-bottom:1px solid var(--ink)}
.about-v226-story{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(500px,1.22fr);gap:clamp(60px,8vw,140px);padding:clamp(72px,8vw,120px) var(--pad) clamp(90px,10vw,150px);align-items:start}
.about-v226-image{width:min(100%,540px);aspect-ratio:1/1;border-radius:50%;overflow:hidden;background:#ddd;position:sticky;top:110px}
.about-v226-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-v226-copy{max-width:850px}
.about-v226-block{padding:0 0 clamp(42px,4.2vw,64px);margin:0 0 clamp(42px,4.2vw,64px);border-bottom:1px solid var(--line)}
.about-v226-block:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.about-v226-label{font-size:11px;line-height:1.2;letter-spacing:.13em;text-transform:uppercase;margin-bottom:clamp(18px,2vw,26px)}
.about-v226-copy p{margin:0;color:#202020;letter-spacing:-.015em}
.about-v226-copy .about-v226-lead{font-size:clamp(25px,2.25vw,36px);line-height:1.16;letter-spacing:-.035em;font-weight:650;max-width:800px;margin-bottom:20px}
.about-v226-copy .about-v226-lead + p{font-size:clamp(16px,1.2vw,19px);line-height:1.58;max-width:720px}
.about-v226-facts{margin:0 var(--pad);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);display:grid;grid-template-columns:repeat(4,1fr)}
.about-v226-facts div{padding:clamp(22px,2.4vw,34px) clamp(12px,1.8vw,26px) clamp(24px,2.6vw,38px) 0;border-right:1px solid var(--line)}
.about-v226-facts div:not(:first-child){padding-left:clamp(16px,1.8vw,28px)}
.about-v226-facts div:last-child{border-right:0}
.about-v226-facts span{display:block;font-size:clamp(34px,3.6vw,58px);line-height:.92;letter-spacing:-.055em;font-weight:700;margin-bottom:10px}
.about-v226-facts small{display:block;font-size:10px;line-height:1.3;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:900px){.about-v226-story{grid-template-columns:1fr;gap:55px}.about-v226-image{position:relative;top:auto;width:min(72vw,480px)}.about-v226-facts{grid-template-columns:repeat(2,1fr)}.about-v226-facts div:nth-child(2){border-right:0}.about-v226-facts div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:620px){.about-v226 .about-v226-hero{min-height:43vh;padding-bottom:40px}.about-v226-story{padding-top:52px;padding-bottom:80px;gap:46px}.about-v226-image{width:min(82vw,390px)}.about-v226-copy .about-v226-lead{font-size:26px}.about-v226-facts{grid-template-columns:1fr}.about-v226-facts div,.about-v226-facts div:not(:first-child){padding:22px 0;border-right:0;border-bottom:1px solid var(--line)}.about-v226-facts div:last-child{border-bottom:0}}

/* V2.27 — About uses the same vertical rhythm as the 2nd AC hero */
.about-v226 .about-v226-hero{
  min-height:50vh;
  padding:clamp(55px,7vw,100px) var(--pad) 58px;
}
.about-v226-story{
  padding:20px var(--pad) 32px;
}
.about-v226-facts{
  margin-top:24px;
}
@media(max-width:900px){
  .about-v226 .about-v226-hero{min-height:55vh}
}
@media(max-width:620px){
  .about-v226 .about-v226-hero{padding-top:70px;padding-bottom:58px}
  .about-v226-story{padding-top:20px;padding-bottom:32px}
}


/* V2.29 — About hero uses the exact 2nd AC hero geometry */
.about-v226 .about-v226-hero{
  min-height:50vh;
  display:flex;
  align-items:flex-end;
  padding:clamp(55px,7vw,100px) var(--pad) 58px;
  border-bottom:0;
}
.about-v226 .about-v226-hero .hero-inner{width:min(1150px,100%)}
.about-v226 .about-v226-hero .kicker{margin-bottom:18px}
.about-v226 .about-v226-hero h1{
  font-size:clamp(54px,9vw,144px);
  line-height:.82;
  letter-spacing:-.075em;
  margin:0;
  font-weight:800;
  max-width:1100px;
}
.about-v226 .about-hero-spacer{
  display:block;
  max-width:none;
  margin-top:55px;
  visibility:hidden;
}
/* Same inset rule position as Selected productions on 2nd AC, with less dead air. */
.about-v226-story{
  margin:0;
  padding:20px var(--pad) clamp(72px,8vw,118px);
  border-top:0;
  position:relative;
}
.about-v226-story::before{
  content:"";
  position:absolute;
  top:20px;
  left:var(--pad);
  right:var(--pad);
  border-top:1px solid var(--ink);
}
.about-v226-story > *{margin-top:42px}
@media(max-width:900px){
  .about-v226 .about-v226-hero{min-height:55vh}
}
@media(max-width:620px){
  .about-v226 .about-v226-hero{padding-top:70px;padding-bottom:58px}
  .about-v226 .about-hero-spacer{margin-top:35px}
  .about-v226-story{padding-top:20px;padding-bottom:72px}
  .about-v226-story > *{margin-top:36px}
}

/* V2.30 — Set Stills hero matched exactly to 2nd AC hero geometry */
.stills-hero{min-height:50vh;display:flex;align-items:flex-end;padding:clamp(55px,7vw,100px) var(--pad) 58px}
.stills-hero .hero-inner{width:min(1150px,100%)}
.stills-hero .kicker{margin-bottom:18px}
.stills-hero h1{font-size:clamp(54px,9vw,144px);line-height:.82;letter-spacing:-.075em;margin:0;font-weight:800;max-width:1100px}
.stills-hero-spacer{visibility:hidden;pointer-events:none;margin-top:55px}
.hranikonset-link{display:inline-block}
@media(max-width:900px){.stills-hero{min-height:55vh}}
@media(max-width:620px){.stills-hero{padding-top:70px}.stills-hero h1{font-size:17vw}.stills-hero-spacer{margin-top:35px}}

/* V2.31 — Set Stills: compact hero; no phantom copy spacer */
.stills-hero{min-height:0;padding:clamp(55px,7vw,100px) var(--pad) 58px}
.stills-hero-spacer{display:none}
.gallery{padding-top:20px;position:relative}
.gallery::before{content:"";position:absolute;top:0;left:var(--pad);right:var(--pad);border-top:1px solid var(--ink)}
@media(max-width:900px){.stills-hero{min-height:0}}
@media(max-width:620px){.stills-hero{min-height:0;padding-top:70px;padding-bottom:58px}.gallery{padding-top:20px}}

/* V2.32 — Contact */
.contact-v232-hero{min-height:50vh;display:flex;align-items:flex-end;padding:clamp(55px,7vw,100px) var(--pad) 58px}
.contact-v232-hero .hero-inner{width:min(1150px,100%)}
.contact-v232-hero .kicker{margin-bottom:18px}
.contact-v232-hero h1{font-size:clamp(54px,9vw,144px);line-height:.82;letter-spacing:-.075em;margin:0;font-weight:800;max-width:1100px}
.contact-v232-details{margin:0 var(--pad) 110px;border-top:1px solid var(--ink)}
.contact-v232-row{display:grid;grid-template-columns:minmax(150px,.34fr) 1fr auto;gap:28px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.contact-v232-label{font-size:11px;letter-spacing:.14em;font-weight:600}
.contact-v232-value{font-size:clamp(25px,3.1vw,50px);line-height:1;letter-spacing:-.045em}
.contact-v232-arrow{font-size:22px;transition:transform .18s ease}
.contact-v232-row:hover .contact-v232-arrow{transform:translate(4px,-4px)}
@media(max-width:900px){.contact-v232-hero{min-height:55vh}.contact-v232-row{grid-template-columns:150px 1fr auto}}
@media(max-width:620px){.contact-v232-hero{padding-top:70px}.contact-v232-hero h1{font-size:17vw}.contact-v232-details{margin-bottom:75px}.contact-v232-row{grid-template-columns:1fr auto;gap:10px 18px;padding:24px 0}.contact-v232-label{grid-column:1/-1}.contact-v232-value{font-size:8vw;overflow-wrap:anywhere}}

/* V2.33 — copyright / image-use footer */
.site-footer{border-top:1px solid var(--line)}
.site-footer .foot-links{display:flex;gap:22px}
.site-footer a{text-decoration:none}
.site-footer a:hover{text-decoration:underline;text-underline-offset:3px}
img{-webkit-user-drag:none;user-select:none}
.legal-page{padding:0 var(--pad)}
.legal-hero{padding:clamp(55px,7vw,100px) 0 58px;border-bottom:1px solid var(--ink)}
.legal-hero .kicker{margin-bottom:18px}
.legal-hero h1{font-size:clamp(54px,9vw,144px);line-height:.82;letter-spacing:-.075em;margin:0;font-weight:800;max-width:1100px}
.legal-copy{width:min(860px,100%);margin-left:auto;padding:clamp(55px,7vw,100px) 0 clamp(90px,10vw,150px)}
.legal-copy p{font-size:clamp(20px,2.1vw,32px);line-height:1.25;letter-spacing:-.025em;margin:0 0 34px}
.legal-copy a{text-decoration:underline;text-underline-offset:4px}
.legal-copy .legal-thirdparty{font-size:15px;line-height:1.45;letter-spacing:0;padding-top:34px;border-top:1px solid var(--line);margin-top:58px}
@media(max-width:620px){.legal-hero{padding-top:70px}.legal-hero h1{font-size:17vw}.legal-copy{margin-left:0}.site-footer .foot-links{gap:14px}}

/* V2.34 — launch polish */
.legal-copy{width:min(720px,100%)}
.legal-copy p{font-size:clamp(16px,1.25vw,18px);line-height:1.62;letter-spacing:0;margin-bottom:24px}
.legal-copy .legal-thirdparty{font-size:13px;line-height:1.55;margin-top:42px;padding-top:26px}
a:focus-visible,button:focus-visible,.gallery figure:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.gallery figure{outline:none}
.error-hero{min-height:calc(100vh - 78px - 72px)}
.error-back{margin:42px 0 0;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.error-back a{border-bottom:1px solid currentColor;padding-bottom:3px}
@media(max-width:620px){.lightbox{padding:54px 12px 42px}.lightbox img{max-width:100%;max-height:82vh}.lb-prev,.lb-next{top:auto;bottom:12px;font-size:32px}.lb-prev{left:18px}.lb-next{right:18px}.lb-close{right:14px;top:10px}.lb-count{left:14px;top:16px}.legal-copy{padding-top:42px}.legal-copy p{font-size:15px;line-height:1.6}}

/* V2.35 — Contact aligned to the compact editorial rhythm */
.contact-v232-hero{min-height:0;padding:clamp(55px,7vw,100px) var(--pad) 58px}
.contact-v232-details{margin:0 var(--pad) 110px;border-top:1px solid var(--ink);max-width:none}
.contact-v232-row{grid-template-columns:minmax(145px,220px) minmax(0,1fr) auto;gap:clamp(24px,4vw,64px);padding:22px 0}
.contact-v232-label{font-size:10px;letter-spacing:.14em;font-weight:600;text-transform:uppercase}
.contact-v232-value{font-size:clamp(18px,1.55vw,25px);line-height:1.15;letter-spacing:-.025em;font-weight:500}
.contact-v232-arrow{font-size:16px}
@media(max-width:900px){.contact-v232-hero{min-height:0}.contact-v232-row{grid-template-columns:150px 1fr auto}}
@media(max-width:620px){.contact-v232-hero{min-height:0;padding-top:70px;padding-bottom:58px}.contact-v232-details{margin-bottom:75px}.contact-v232-row{grid-template-columns:1fr auto;gap:8px 16px;padding:19px 0}.contact-v232-label{grid-column:1/-1}.contact-v232-value{font-size:20px;overflow-wrap:anywhere}}

/* V2.36 — final consistency / interaction pass */
:root{--hero-top:clamp(78px,8.2vw,118px);--hero-bottom:58px;--hero-kicker-gap:18px}
/* One shared hero coordinate system across the four primary pages. */
.hero,.about-v226 .about-v226-hero,.stills-hero,.contact-v232-hero{
  min-height:0!important;
  padding-top:var(--hero-top)!important;
  padding-bottom:var(--hero-bottom)!important;
  align-items:initial;
}
.hero .hero-inner,.about-v226 .about-v226-hero .hero-inner,.stills-hero .hero-inner,.contact-v232-hero .hero-inner{width:min(1150px,100%)}
.hero .kicker,.about-v226 .about-v226-hero .kicker,.stills-hero .kicker,.contact-v232-hero .kicker{margin-bottom:var(--hero-kicker-gap)!important}
.hero h1,.about-v226 .about-v226-hero h1,.stills-hero h1,.contact-v232-hero h1{margin:0;font-size:clamp(54px,9vw,144px);line-height:.82;letter-spacing:-.075em;font-weight:800;max-width:1100px}
/* About keeps the 2nd AC fact-line rhythm without showing duplicate copy. */
.about-v226 .about-hero-spacer{margin-top:55px!important;height:23px;display:block!important;visibility:hidden}
/* Set Stills and Contact have no secondary hero copy: same headline geometry, clean handoff. */
.stills-hero,.contact-v232-hero{padding-bottom:58px!important}

/* Quiet, editorial hover states. */
.poster-frame{isolation:isolate}
.poster-frame::after{content:"";position:absolute;inset:0;background:#000;opacity:0;transition:opacity .22s ease;pointer-events:none;z-index:1}
.poster-hover{position:absolute;inset:auto 16px 16px 16px;z-index:2;color:#fff;opacity:0;transform:translateY(5px);transition:opacity .22s ease,transform .22s ease;pointer-events:none}
.poster-hover strong{display:block;font-size:14px;line-height:1.08;letter-spacing:-.02em}
.poster-hover span{display:block;margin-top:5px;font-size:9px;line-height:1.3;letter-spacing:.04em;text-transform:uppercase;opacity:.82}
@media(hover:hover) and (pointer:fine){
  .poster-card:hover .poster-frame::after{opacity:.24}
  .poster-card:hover .poster-frame img{transform:scale(1.018)}
  .poster-card:hover .poster-hover{opacity:1;transform:none}
  .hranikonset-link{transition:opacity .18s ease}
  .hranikonset-link:hover{opacity:.58}
}

/* Almost imperceptible page transition. */
body{opacity:1;transition:opacity .18s ease}
body.page-leaving{opacity:0}
@media(prefers-reduced-motion:reduce){body{transition:none}.poster-frame img,.poster-hover,.poster-frame::after,.hranikonset-link{transition:none!important}}

/* Mobile navigation as typography, not a generic dropdown. */
@media(max-width:900px){
  .menu-btn{font:inherit;font-size:11px;letter-spacing:.12em;text-transform:uppercase;min-width:44px;text-align:right}
  .main-nav{inset:64px 0 auto 0;padding:34px var(--pad) 42px;gap:0;border-bottom:1px solid var(--ink)}
  .main-nav a{font-size:clamp(25px,7vw,42px);line-height:1.05;letter-spacing:-.04em;padding:11px 0;opacity:1;border-bottom:1px solid var(--line)}
  .main-nav a:last-child{border-bottom:0}
  .main-nav a.active::before{content:"— ";font-size:.65em;vertical-align:.12em}
}
@media(max-width:620px){
  :root{--hero-top:70px;--hero-bottom:50px}
  .hero,.about-v226 .about-v226-hero,.stills-hero,.contact-v232-hero{padding-top:var(--hero-top)!important;padding-bottom:var(--hero-bottom)!important}
  .hero h1,.about-v226 .about-v226-hero h1,.stills-hero h1,.contact-v232-hero h1{font-size:17vw}
  .about-v226 .about-hero-spacer{margin-top:35px!important;height:20px}
  .poster-hover{display:none}
}
