:root{color-scheme:dark;--bg:#111412;--surface:#171c18;--line:rgba(232,226,211,.22);--paper:#eee9df;--muted:#adafa7;--copper:#c9a77c;--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;overflow-x:hidden;background:var(--bg);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%}
button,a{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--copper);outline-offset:5px}
::selection{background:var(--copper);color:#101210}
.skip-link{position:fixed;z-index:200;left:20px;top:-70px;padding:12px 18px;background:var(--paper);color:var(--bg)}
.skip-link:focus{top:16px}
.site-header{position:fixed;z-index:100;inset:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;min-height:100px;padding:27px clamp(24px,4.2vw,76px);transition:background .3s,border-color .3s;border-bottom:1px solid transparent}
body:not(.on-film) .site-header,.page-inner .site-header{background:rgba(17,20,18,.92);border-color:var(--line);backdrop-filter:blur(20px)}
.wordmark{display:block;width:160px;flex:none;transition:filter .2s}
.wordmark img{display:block;width:100%;height:auto}
.wordmark:hover{filter:brightness(1.22)}
.site-nav{display:flex;align-items:center;gap:clamp(26px,3.3vw,58px);padding-top:15px}
.site-nav a{position:relative;padding-bottom:9px;color:#d8d7ce;font-size:11px;letter-spacing:.12em;white-space:nowrap;transition:color .2s}
.site-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--copper);transition:right .25s}
.site-nav a:hover,.site-nav a.active{color:#fff}
.site-nav a:hover:after,.site-nav a.active:after{right:0}
.menu-toggle{display:none}
.section-pad{padding:clamp(92px,10vw,180px) clamp(24px,6vw,108px)}
.section-index,.overline,.eyebrow{font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase}
.section-index{color:var(--copper)}
.overline{margin:0 0 28px;color:var(--copper)}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.044em}
h1 em,h2 em{font-weight:400}
p{line-height:1.7}
.text-link{display:inline-flex;gap:40px;align-items:center;margin-top:30px;padding-bottom:12px;border-bottom:1px solid var(--copper);color:var(--paper);font-size:11px;letter-spacing:.12em;transition:color .2s,gap .2s}
.text-link span{font-size:18px;line-height:1}
.text-link:hover{color:var(--copper);gap:52px}
.button-link{display:inline-flex;align-items:center;gap:65px;border:1px solid var(--copper);padding:20px 25px;font-size:11px;letter-spacing:.15em;transition:background .25s,color .25s}
.button-link:hover{background:var(--copper);color:#101310}
.button-link span{font-size:20px}

/* The film scrolls inside one native page section; playback never starts. */
.film-track{height:850svh;background:#090b0d}
.film-sticky{position:sticky;top:0;height:100svh;min-height:560px;overflow:hidden;isolation:isolate;background:#080c0e}
.film-media,.film-shade{position:absolute;inset:0}
.film-media img,.film-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.film-media .film-ambient{display:none}
.film-media img{filter:saturate(.82)}
.film-media video{opacity:0;transition:opacity .45s}
body.video-ready:not(.still-mode) .film-media video{opacity:1}
.film-shade{pointer-events:none;background:linear-gradient(180deg,rgba(5,8,8,.68) 0%,transparent 26%,transparent 57%,rgba(5,8,8,.86) 100%),linear-gradient(90deg,rgba(5,8,8,.40),transparent 59%)}
.hero-copy{position:absolute;z-index:2;left:clamp(28px,7.5vw,144px);right:clamp(28px,7.5vw,144px);top:27%;max-width:1050px;opacity:var(--hero-opacity,1);transform:translateY(calc(var(--film-progress,0)*-28px));pointer-events:none}
.hero-copy .eyebrow{display:flex;align-items:center;gap:17px;margin-bottom:32px;color:#d5c6a9}
.eyebrow-rule{display:inline-block;width:34px;height:1px;background:var(--copper)}
.hero-copy h1{margin:0;text-shadow:0 2px 30px rgba(0,0,0,.2)}
.hero-title-intro{display:block;margin:0 0 10px 3px;color:#d1aa70;font:300 clamp(20px,2.3vw,32px)/1.15 'Helvetica Neue',Arial,sans-serif;letter-spacing:.27em}
.hero-title-main{display:block;max-width:100%;color:#f1e9db;font:400 clamp(64px,7.8vw,120px)/.94 Baskerville,'Palatino Linotype','Book Antiqua',Georgia,serif;letter-spacing:-.055em;text-wrap:balance}
.hero-sub{display:grid;gap:5px;max-width:620px;margin:35px 0 0;padding-left:19px;border-left:1px solid rgba(222,177,104,.8);font:400 clamp(13px,1.12vw,16px)/1.5 'Helvetica Neue',Arial,sans-serif;letter-spacing:.015em;color:#e7e1d7;text-shadow:0 1px 8px rgba(0,0,0,.95)}
.hero-sub span:last-child{color:#c7c5bc;font-size:.86em}
.film-chapter-copy{position:absolute;z-index:2;left:clamp(28px,7.5vw,144px);bottom:22%;opacity:var(--chapter-opacity,0);pointer-events:none;transition:opacity .25s}
.chapter-kicker{display:block;margin-bottom:17px;font-size:10px;letter-spacing:.2em;color:var(--copper)}
.film-chapter-copy p{margin:0;font:italic 400 clamp(38px,4.7vw,80px)/1.06 var(--serif);letter-spacing:-.04em}
.film-side-note{position:absolute;right:clamp(20px,3.5vw,65px);top:36%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.22em;color:rgba(238,233,223,.75)}
.film-side-note span{padding:14px 0;color:var(--copper)}
.film-bottom{position:absolute;z-index:3;left:clamp(24px,4.2vw,76px);right:clamp(24px,4.2vw,76px);bottom:34px;display:grid;grid-template-columns:minmax(120px,1fr) minmax(380px,700px) minmax(110px,1fr);align-items:end;gap:30px}
.scroll-cue{display:flex;align-items:center;gap:15px;font-size:9px;letter-spacing:.16em;color:#e9e4d9;white-space:nowrap}
.scroll-arrow{font-size:26px;line-height:1;color:var(--copper)}
.film-chapters{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.film-chapters button{min-width:0;padding:12px 0 0;border:0;border-top:1px solid rgba(255,255,255,.32);background:none;text-align:left;color:#babcb5;font-size:9px;letter-spacing:.08em;transition:border-color .2s,color .2s}
.film-chapters button span{display:block;margin-bottom:7px;font-size:9px}
.film-chapters button[aria-current="step"],.film-chapters button:hover{border-color:var(--copper);color:#fff}
.motion-toggle{justify-self:end;min-width:125px;padding:12px 15px;border:1px solid rgba(255,255,255,.38);border-radius:50px;background:rgba(9,12,11,.3);color:#f2eee6;font-size:10px;letter-spacing:.04em;white-space:nowrap;transition:background .2s}
.motion-toggle:hover{background:rgba(201,167,124,.2)}
.film-progress{position:absolute;z-index:4;bottom:0;left:0;right:0;height:2px;background:rgba(255,255,255,.15)}
.film-progress span{display:block;width:100%;height:100%;background:var(--copper);transform:scaleX(var(--film-progress,0));transform-origin:left}
.film-status{position:absolute;z-index:3;top:110px;left:clamp(24px,4.2vw,76px);margin:0;color:#e9e2d3;font-size:10px;letter-spacing:.08em}
.film-status:empty{display:none}

.statement{display:grid;grid-template-columns:24% 1fr;gap:6%;background:#161b18}
.statement-inner{max-width:1150px}
.statement h2,.editorial-intro h2{font-size:clamp(52px,6.5vw,110px);line-height:1.06}
.statement-inner>p:last-child,.editorial-intro>div:last-child>p:last-child{max-width:550px;margin-left:auto;color:#c4c8bf;font-size:clamp(15px,1.25vw,19px)}
.feature-section{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:8%;align-items:center;background:#1c211d}
.feature-image{height:min(70vw,730px);max-height:78svh;overflow:hidden}
.feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.feature-image:hover img{transform:scale(1.035)}
.feature-copy{max-width:510px}
.feature-copy .section-index{margin-bottom:90px}
.feature-copy h2{font-size:clamp(52px,5vw,89px);line-height:1.04}
.feature-copy>p:not(.overline){color:#c0c3ba;font-size:16px}
.full-quote{position:relative;min-height:88svh;display:flex;align-items:center;padding:10vw clamp(24px,8vw,150px);isolation:isolate}
.full-quote>img,.full-quote-shade{position:absolute;inset:0;width:100%;height:100%}
.full-quote>img{z-index:-2;object-fit:cover;object-position:center 48%}
.full-quote-shade{z-index:-1;background:linear-gradient(90deg,rgba(7,10,11,.83),rgba(7,10,11,.20) 72%),linear-gradient(0deg,#11141299,transparent 60%)}
.full-quote h2{font-size:clamp(64px,8vw,140px);line-height:.95}
.full-quote .text-link{margin-top:22px}
.route-grid{background:#161b18}
.route-grid-heading{margin:65px 0 75px;max-width:950px}
.route-grid-heading h2{font-size:clamp(55px,6vw,106px);line-height:1.05}
.route-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.route-card{position:relative;display:flex;flex-direction:column;min-height:520px;overflow:hidden;padding:28px;background:#252c27;isolation:isolate}
.route-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0b11101a,#08100de6)}
.route-card>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:transform .7s,filter .7s}
.route-card:hover>img{transform:scale(1.05);filter:saturate(1)}
.route-card-meta{font-size:10px;letter-spacing:.18em;color:#f0e8da}
.route-card strong{margin-top:auto;font:400 clamp(38px,3vw,60px)/1 var(--serif)}
.route-card-arrow{position:absolute;right:28px;bottom:27px;font-size:28px;color:var(--copper)}
.site-footer{padding:75px clamp(24px,6vw,108px) 30px;background:#0e110f}
.footer-top{display:flex;align-items:start;justify-content:space-between;gap:30px;padding-bottom:110px}
.footer-wordmark{width:280px}
.footer-top p{max-width:340px;color:#c7c5bb;font:italic 27px/1.3 var(--serif);text-align:right}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid var(--line);color:#939990;font-size:9px;letter-spacing:.13em}
.footer-bottom a:hover{color:var(--copper)}

/* Inner pages retain the same proportions, palette and typographic rhythm. */
.inner-hero{position:relative;min-height:86svh;display:flex;align-items:end;padding:185px clamp(24px,7.5vw,144px) 105px;isolation:isolate}
.inner-hero>img,.inner-hero-shade{position:absolute;inset:0;width:100%;height:100%}
.inner-hero>img{z-index:-2;object-fit:cover}
.inner-hero-shade{z-index:-1;background:linear-gradient(0deg,rgba(6,9,9,.87),transparent 68%),linear-gradient(90deg,rgba(6,9,9,.48),transparent 70%)}
.inner-hero-copy{max-width:1050px}
.inner-hero .eyebrow{margin-bottom:28px;color:var(--copper)}
.inner-hero h1{font-size:clamp(68px,9vw,154px);line-height:.9}
.inner-hero-copy>p:last-child{font-size:16px;color:#e1dfd5}
.inner-hero-side{position:absolute;right:clamp(24px,4vw,70px);bottom:105px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.2em}
.editorial-intro{display:grid;grid-template-columns:24% 1fr;gap:6%;background:#161b18}
.architecture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;background:#1b211c}
.architecture-card{position:relative;padding-top:26px;border-top:1px solid var(--line)}
.architecture-no{display:block;margin-bottom:26px;color:var(--copper);font-size:10px;letter-spacing:.16em}
.architecture-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.architecture-card>div{padding:28px 8% 0 0}
.architecture-card h3{margin-bottom:12px;font:400 clamp(33px,3vw,50px)/1 var(--serif)}
.architecture-card p{max-width:380px;color:#bdc3b9;font-size:14px}
.interior-band{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center;background:#151a17}
.interior-band-copy{max-width:500px}
.interior-band h2{font-size:clamp(58px,5.8vw,100px);line-height:1.03}
.interior-band-copy>p:not(.overline){color:#bdc3b9}
.interior-band-images{display:grid;grid-template-columns:1fr .8fr;gap:15px;align-items:end}
.interior-band-images img{width:100%;aspect-ratio:3/4;object-fit:cover}
.interior-band-images img:last-child{aspect-ratio:4/5;margin-bottom:-60px}
.process-note{display:grid;grid-template-columns:24% 1fr auto;gap:5%;align-items:start;border-top:1px solid var(--line);background:#1a211b}
.process-note p{max-width:650px;margin:0;color:#c4c9be;font-size:18px}
.process-note .text-link{margin-top:0;white-space:nowrap}
.scene-intro{display:grid;grid-template-columns:24% 1fr;gap:6%;align-items:end;min-height:80svh;padding-top:200px;background:#171c19}
.scene-intro>div:last-child{max-width:1100px}
.scene-intro h1{font-size:clamp(74px,9vw,150px);line-height:.9}
.scene-intro>div:last-child>p:not(.overline){max-width:530px;margin-left:auto;color:#bbc1b7;font-size:18px}
.scene-intro .text-link{margin-left:auto;display:flex;width:max-content}
.scene-list{background:#101512}
.scene-row{display:grid;grid-template-columns:42% 58%;min-height:620px;border-top:1px solid var(--line)}
.scene-row:nth-child(even){grid-template-columns:58% 42%}
.scene-row:nth-child(even) .scene-row-text{order:2}
.scene-row img{width:100%;height:100%;min-height:620px;object-fit:cover}
.scene-row-text{display:flex;flex-direction:column;align-items:start;justify-content:center;padding:75px clamp(28px,6vw,110px)}
.scene-row-text span{margin-bottom:55px;color:var(--copper);font-size:10px;letter-spacing:.2em}
.scene-row-text h2{max-width:520px;font-size:clamp(49px,5vw,85px);line-height:1.02}
.scene-row-text p{max-width:400px;color:#bdc4bb;font-size:16px}
.next-chapter{text-align:center;background:#1b211d}
.next-chapter h2{font-size:clamp(60px,7vw,120px);line-height:1}
.page-frame{background:#111412}
.brand-hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-top:200px;background:radial-gradient(circle at 84% 56%,#26342d 0%,#171e19 29%,#111412 68%)}
.brand-hero h1{max-width:1300px;font-size:clamp(78px,11vw,186px);line-height:.9}
.brand-hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-top:40px}
.brand-hero-bottom p{max-width:570px;color:#c3c8bf;font-size:clamp(17px,1.4vw,23px)}
.brand-primary{width:clamp(185px,20vw,270px);flex:none;text-align:center}
.brand-primary img{display:block;height:auto}
.brand-portal{width:62%;margin:0 auto 16px;filter:drop-shadow(0 0 25px rgba(209,139,31,.23))}
.brand-signature{width:100%}
.manifesto-strip{position:relative;display:flex;align-items:center;min-height:90svh;padding:10vw;isolation:isolate}
.manifesto-strip img,.manifesto-strip-shade{position:absolute;inset:0;width:100%;height:100%}
.manifesto-strip img{z-index:-2;object-fit:cover}
.manifesto-strip-shade{z-index:-1;background:linear-gradient(90deg,#050809bb,#05080920),linear-gradient(0deg,#11141299,transparent)}
.manifesto-strip blockquote{margin:0;font:italic 400 clamp(65px,9vw,158px)/.97 var(--serif);letter-spacing:-.05em}
.principles{display:grid;grid-template-columns:24% 1fr;gap:6%;background:#1a211b}
.principles-list article{display:grid;grid-template-columns:60px 1fr 1fr;gap:6%;align-items:start;padding:55px 0;border-top:1px solid var(--line)}
.principles-list article:last-child{border-bottom:1px solid var(--line)}
.principles-list span{color:var(--copper);font-size:11px}
.principles-list h2{font-size:clamp(45px,5vw,80px);line-height:1}
.principles-list p{max-width:370px;color:#bec6ba}
.closing-statement{text-align:center;background:#121814}
.closing-statement h2{font-size:clamp(65px,8vw,138px);line-height:.98}

@media(max-width:1100px){
  .site-header{grid-template-columns:1fr auto}
  .site-nav{grid-column:2}
  .film-bottom{grid-template-columns:1fr 1fr;gap:25px}
  .film-chapters{grid-column:1/-1;grid-row:1}
  .scroll-cue{grid-row:2}
  .motion-toggle{grid-column:2;grid-row:2}
  .route-card{min-height:430px}
  .scene-row,.scene-row:nth-child(even){min-height:520px}
  .scene-row img{min-height:520px}
}
@media(max-width:760px){
  .site-header{grid-template-columns:1fr auto;align-items:center;min-height:78px;padding:21px 6vw}
  .wordmark{width:132px}
  .site-header>.wordmark{position:relative;z-index:102}
  .menu-toggle{display:flex;z-index:102;width:38px;height:32px;flex-direction:column;justify-content:center;gap:7px;border:0;background:none}
  .menu-toggle span{width:100%;height:1px;background:var(--paper);transition:transform .2s}
  body.menu-open .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}
  body.menu-open .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .site-nav{position:fixed;z-index:101;inset:0;display:flex;flex-direction:column;align-items:start;justify-content:center;gap:30px;padding:100px 9vw;background:#101512;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}
  body.menu-open .site-nav{opacity:1;visibility:visible}
  .site-nav a{font:400 46px/1 var(--serif);letter-spacing:-.04em}
  body.menu-open{overflow:hidden}
  .section-pad{padding:90px 7vw}
  .film-track{height:750svh}
  .film-sticky{min-height:0}
  .film-media{background:linear-gradient(180deg,#111a1b,#060a0b)}
  .film-media .film-ambient{display:block;inset:-20px;width:calc(100% + 40px);height:calc(100% + 40px);object-fit:cover;filter:blur(28px) brightness(.31) saturate(.65);opacity:.85}
  .film-media img,.film-media video{object-fit:contain;object-position:center 43%}
  .film-shade{background:linear-gradient(180deg,rgba(4,7,8,.55),transparent 22%,transparent 51%,rgba(4,7,8,.90) 83%,#070b0b 100%)}
  .hero-copy{left:7vw;right:6vw;top:17%}
  .hero-copy .eyebrow{font-size:8px;line-height:1.6;flex-wrap:wrap}
  .hero-title-intro{font-size:clamp(18px,3.5vw,26px)}
  .hero-title-main{font-size:clamp(52px,10vw,80px)}
  .hero-sub{margin-top:24px;font-size:12px}
  .film-chapter-copy{left:7vw;right:7vw;bottom:29%}
  .film-chapter-copy p{font-size:clamp(34px,9vw,65px)}
  .film-side-note{display:none}
  .film-bottom{left:7vw;right:7vw;bottom:22px;gap:20px}
  .film-chapters{gap:6px}
  .film-chapters button{font-size:0;padding-top:8px}
  .film-chapters button span{font-size:9px}
  .scroll-cue{font-size:8px}
  .motion-toggle{min-width:0;padding:10px 12px;font-size:9px}
  .film-status{top:85px;left:7vw}
  .statement,.editorial-intro,.principles,.scene-intro{grid-template-columns:1fr;gap:42px}
  .statement h2,.editorial-intro h2{font-size:clamp(48px,10vw,75px)}
  .statement-inner>p:last-child,.editorial-intro>div:last-child>p:last-child{margin-left:0}
  .feature-section,.interior-band{grid-template-columns:1fr;gap:65px}
  .feature-image{height:57svh;max-height:none}
  .feature-copy .section-index{margin-bottom:45px}
  .feature-copy h2,.interior-band h2{font-size:clamp(52px,10vw,80px)}
  .full-quote{min-height:75svh;padding:15vw 7vw}
  .full-quote h2{font-size:clamp(55px,12vw,95px)}
  .route-grid-heading{margin:40px 0 50px}
  .route-grid-heading h2{font-size:clamp(48px,10vw,80px)}
  .route-cards{grid-template-columns:1fr;gap:15px}
  .route-card{min-height:410px}
  .footer-top{padding-bottom:70px}
  .footer-wordmark{width:220px}
  .footer-top p{font-size:20px}
  .inner-hero{min-height:75svh;padding:150px 7vw 70px}
  .inner-hero h1{font-size:clamp(65px,13vw,106px)}
  .inner-hero-side{display:none}
  .architecture-grid{grid-template-columns:1fr;gap:70px}
  .architecture-card img{aspect-ratio:16/10}
  .interior-band-images img:last-child{margin-bottom:0}
  .process-note{grid-template-columns:1fr;gap:25px}
  .process-note .text-link{width:max-content}
  .scene-intro{min-height:70svh;padding-top:160px}
  .scene-intro h1{font-size:clamp(65px,12vw,105px)}
  .scene-intro>div:last-child>p:not(.overline),.scene-intro .text-link{margin-left:0}
  .scene-row,.scene-row:nth-child(even){display:flex;flex-direction:column;min-height:0}
  .scene-row:nth-child(even) .scene-row-text{order:0}
  .scene-row-text{min-height:340px;padding:70px 7vw 50px}
  .scene-row-text span{margin-bottom:32px}
  .scene-row-text h2{font-size:clamp(47px,10vw,74px)}
  .scene-row img{height:auto;min-height:0;aspect-ratio:16/10}
  .brand-hero{min-height:85svh;padding-top:160px}
  .brand-hero h1{font-size:clamp(75px,13vw,110px)}
  .brand-hero-bottom{align-items:start}
  .brand-hero-bottom{flex-wrap:wrap}
  .brand-primary{width:185px;margin:30px 0 0 auto}
  .manifesto-strip{min-height:75svh;padding:15vw 7vw}
  .manifesto-strip blockquote{font-size:clamp(62px,12vw,96px)}
  .principles-list article{grid-template-columns:40px 1fr;gap:20px}
  .principles-list article p{grid-column:2}
}
@media(max-width:480px){
  .film-sticky{height:100svh}
  .hero-copy{top:16%}
  .hero-title-intro{font-size:18px}
  .hero-title-main{font-size:clamp(46px,11.7vw,56px);line-height:.97}
  .hero-sub{font-size:11px}
  .film-media img,.film-media video{object-position:center 41%}
  .film-chapter-copy{bottom:27%}
  .film-bottom{bottom:25px}
  .footer-top{display:block}
  .footer-top p{text-align:left;margin-top:65px}
  .footer-bottom{flex-direction:column}
  .route-card{min-height:350px}
  .interior-band-images{grid-template-columns:1fr 1fr;gap:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Museum shell: navigation, languages and a 24-hour local-time artwork. */
html{scroll-padding-top:0}
.site-header{align-items:center}
.site-nav{gap:clamp(16px,2vw,32px);padding-top:0}
.site-nav a{font-size:10px;letter-spacing:.07em}
body.on-film:not(.menu-open) .site-nav{opacity:0;visibility:hidden;pointer-events:none}
body.on-film:not(.menu-open) .menu-toggle{opacity:0;visibility:hidden;pointer-events:none}
.header-tools{grid-column:3;display:flex;align-items:center;justify-content:flex-end;gap:22px;min-width:0}
.language-switch{display:flex;align-items:center;white-space:nowrap}
.language-switch button,.language-menu summary{border:0;background:none;color:#c4bfb2;font:400 10px/1 var(--sans);letter-spacing:.025em;cursor:pointer}
.language-switch button:hover,.language-menu summary:hover{color:#fff}
.language-menu{position:relative}
.language-menu summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 5px;color:#f1ca81}
.language-menu summary::-webkit-details-marker{display:none}
.language-menu summary:focus-visible{outline:1px solid #f1ca81;outline-offset:4px}
.language-menu[open] summary{color:#fff}
.language-chevron{font-size:15px;line-height:.6;transform:translateY(-2px)}
.language-menu[open] .language-chevron{transform:translateY(1px) rotate(180deg)}
.language-options{position:absolute;top:calc(100% + 13px);right:0;z-index:150;display:grid;min-width:178px;padding:10px;background:#111612;border:1px solid rgba(229,185,109,.45);box-shadow:0 22px 70px #0009}
.language-options button{padding:12px 13px;text-align:left;font-size:13px}
.language-options button[hidden]{display:none}
.language-options button:hover,.language-options button:focus-visible{background:#283127;color:#f1ca81}
.museum-clock{position:relative;width:50px;height:50px;flex:none;color:#d4ad76}
.museum-clock svg{position:absolute;inset:0;width:100%;height:100%}
.museum-clock circle{stroke:rgba(218,173,94,.12)}
.clock-mark{stroke:#b98950;stroke-width:1.6;stroke-linecap:round}
.clock-core{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.clock-core time{color:#e8c78e;font:400 10px/1 var(--sans);font-variant-numeric:tabular-nums;letter-spacing:.04em}
body.on-film .site-header{border-color:transparent}
.film-track{scroll-margin-top:0}
.film-bottom{grid-template-columns:minmax(120px,1fr) minmax(380px,700px) minmax(150px,1fr)}
.film-chapters b{font-weight:400}
.film-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.skip-journey{font-size:10px;letter-spacing:.06em;color:#f2d4a3;border-bottom:1px solid #b99053;padding-bottom:5px;white-space:nowrap}
.skip-journey:hover{color:#fff}
.current-exhibit,.halls-section,.curator-section,.contact-section{scroll-margin-top:90px}
.current-exhibit{min-height:95svh;display:grid;grid-template-columns:19% 1fr;gap:4%;background:radial-gradient(circle at 60% 42%,#263027,#131914 48%,#0b0e0c 100%)}
.exhibit-stage{display:grid;grid-template-columns:minmax(190px,.8fr) 1fr;align-items:center;gap:8%;min-height:65svh}
.exhibit-art{position:relative;width:min(30vw,340px);aspect-ratio:3/4;margin:auto;border:1px solid rgba(210,164,75,.58);box-shadow:0 0 0 20px #161b18,0 0 0 21px rgba(210,164,75,.18),0 0 100px rgba(226,161,58,.13);background:linear-gradient(140deg,#0a0b0b,#222b24 55%,#0c0f0d)}
.exhibit-art span{position:absolute;inset:12%;border:1px solid rgba(225,181,98,.25)}
.exhibit-copy h2,.halls-section h2,.curator-section h2,.contact-section h2{font-size:clamp(55px,6vw,110px);line-height:1.02}
.exhibit-copy>p:last-child,.contact-section>div:last-child>p:last-child{max-width:530px;color:#b9c0b5;font-size:17px}
.halls-section{background:#171d18}
.halls-section h2{max-width:950px;margin:65px 0 80px}
.hall-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.hall-door{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:510px;padding:35px;overflow:hidden;border:1px solid rgba(218,173,94,.25);background:radial-gradient(circle at 50% 95%,#4a3421,#171b17 54%,#0e110f)}
.hall-door::after{content:'';position:absolute;inset:28px;border:1px solid rgba(218,173,94,.16);pointer-events:none}
.hall-door>span{z-index:1;font-size:10px;letter-spacing:.15em;color:#e4c795}
.hall-door h3{z-index:1;margin:auto 0 0;font:400 clamp(45px,4vw,73px)/1 var(--serif)}
.hall-door p{z-index:1;color:#bbac91;font-size:12px;letter-spacing:.1em}
.talent-door{background:radial-gradient(circle at 50% 38%,#3a2d17,#151a15 55%,#0c100d)}
.talent-door img{position:absolute;top:12%;left:42%;width:22%;height:55%;object-fit:contain;opacity:.55}
.curator-section,.contact-section{display:grid;grid-template-columns:19% 1fr;gap:4%;align-items:center;min-height:75svh;background:#111713}
.curator-section>div:last-child,.contact-section>div:last-child{max-width:1000px}
.curator-story{max-width:790px;margin:42px 0 0;padding-top:28px;border-top:1px solid rgba(218,173,94,.32)}
.curator-story blockquote{margin:0}
.curator-story p{margin:0 0 21px;color:#c1c6bd;font-size:17px;line-height:1.65}
.curator-story p:first-child{color:#e1dccf;font:400 clamp(21px,2vw,27px)/1.45 var(--serif)}
.curator-story p:last-child{margin-bottom:0}
.curator-signature{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:max-content;margin-top:31px;color:#a9a49a;font-size:11px;letter-spacing:.33em;text-transform:uppercase}
.curator-signature img{display:block;width:180px;max-width:100%;height:auto}
.curator-signature span{padding-left:12px}
.contact-section{min-height:60svh;background:#1a211a}
.site-footer{background:#0a0d0b}
@media(max-width:1250px){
  .site-header{grid-template-columns:1fr auto}
  .site-nav{position:fixed;z-index:101;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:22px;padding:110px 9vw;background:#101512;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility .2s}
  .site-nav a{font:400 clamp(36px,5vw,62px)/1 var(--serif);letter-spacing:-.04em}
  body.menu-open .site-nav{opacity:1;visibility:visible;pointer-events:auto}
  .header-tools{grid-column:2;position:relative;z-index:102}
  .menu-toggle{display:flex;z-index:102;width:38px;height:32px;flex-direction:column;justify-content:center;gap:7px;border:0;background:none}
  .menu-toggle span{width:100%;height:1px;background:var(--paper);transition:transform .2s}
  body.menu-open .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}
  body.menu-open .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
  body.menu-open{overflow:hidden}
}
@media(max-width:760px){
  .site-header{padding:13px 5vw;min-height:70px}
  .site-header>.wordmark{width:111px}
  .header-tools{gap:6px}
  .museum-clock{width:42px;height:42px}
  .clock-core time{font-size:9px}
  .language-menu summary{font-size:10px;padding:7px 3px}
  .language-options button{font-size:13px;padding:12px}
  .menu-toggle{width:30px;margin-left:5px}
  .site-nav{padding:100px 8vw;gap:20px;overflow-y:auto}
  .site-nav a{font-size:clamp(35px,8vw,50px)}
  .film-bottom{grid-template-columns:1fr auto;gap:16px}
  .film-chapters{grid-column:1/-1;grid-row:1}
  .scroll-cue{grid-column:1;grid-row:2;white-space:normal}
  .film-actions{grid-column:2;grid-row:2;align-items:flex-end;gap:8px}
  .skip-journey{font-size:8px}
  .current-exhibit,.curator-section,.contact-section{grid-template-columns:1fr;gap:45px}
  .exhibit-stage{grid-template-columns:1fr;gap:60px}
  .exhibit-art{width:min(60vw,250px)}
  .hall-grid{grid-template-columns:1fr}
  .halls-section h2{margin:40px 0 50px}
  .hall-door{min-height:420px}
  .curator-section,.contact-section{min-height:60svh}
  .curator-story{margin-top:32px}
}
@media(max-width:480px){
  .site-header>.wordmark{width:95px}
  .language-menu summary{font-size:10px}
  .museum-clock{width:36px;height:36px}
  .clock-core time{font-size:8.5px}
  .menu-toggle{width:26px;margin-left:2px}
  .language-options{right:-32px}
  .film-chapters button b{display:none}
  .motion-toggle{font-size:8px;padding:9px 8px}
  .skip-journey{max-width:84px;line-height:1.3;text-align:right}
  .hall-door{min-height:330px;padding:25px}
}
html[lang="ja"] body{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}
html[lang="ja"] .hero-title-intro,html[lang="ja"] .hero-title-main{font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;letter-spacing:.03em}
html[lang="ja"] .hero-title-main{font-size:clamp(42px,6vw,86px);line-height:1.15}
html[lang="es"] .hero-title-main,html[lang="pt"] .hero-title-main,html[lang="fr"] .hero-title-main,html[lang="de"] .hero-title-main,html[lang="it"] .hero-title-main{font-size:clamp(58px,6.7vw,104px)}
@media(max-width:760px){html[lang="es"] .hero-title-main,html[lang="pt"] .hero-title-main,html[lang="fr"] .hero-title-main,html[lang="de"] .hero-title-main,html[lang="it"] .hero-title-main{font-size:clamp(43px,8.4vw,68px)}}
@media(max-width:480px){html[lang="es"] .hero-title-main,html[lang="pt"] .hero-title-main,html[lang="fr"] .hero-title-main,html[lang="de"] .hero-title-main,html[lang="it"] .hero-title-main{font-size:clamp(40px,10vw,48px)}}
@media(max-width:360px){
  .site-header{padding:12px 4vw}
  .site-header>.wordmark{width:78px}
  .header-tools{gap:4px}
  .museum-clock{width:34px;height:34px}
  .clock-core time{font-size:8px}
  .language-menu summary{font-size:9px;padding:6px 2px}
  .menu-toggle{width:22px;margin-left:0}
  .halls-section h2{font-size:40px}
}
