.opening-status{font-size:11px;color:#b1aaa0;margin:8px 0 14px}.sound-replay{font-size:11px;min-height:44px;padding:8px 19px;border:1px solid #c8af9166;border-radius:24px;color:#e5d8c7;background:transparent;cursor:pointer}.sound-replay:hover{background:#c8af9114}.sound-replay:disabled{opacity:.5}
/* Version 5. Each chapter has a concrete subject and its own visual rhythm. */
.sound-settings{max-width:340px;margin-top:22px;padding-top:22px;border-top:1px solid #d0bda13b;color:#d6cfc3}
.sound-settings-top{display:flex;justify-content:space-between;gap:24px;font-size:9px;letter-spacing:.1em;color:#a9a397}
.sound-settings-top output{font-variant-numeric:tabular-nums;letter-spacing:0;font-size:11px;color:#d9ccba}
.sound-track-credit{display:block;font-size:15px;line-height:1.45;letter-spacing:-.02em;padding:14px 0 4px}
.sound-track-credit small{display:block;font-size:11px;margin-top:4px;color:#b1aaa0;letter-spacing:0}
.sound-settings .volume-label{display:block;font-size:11px;margin-top:18px}
.sound-settings input[type=range]{display:block;width:100%;height:36px;margin:0;padding:0;border:0;background:transparent;accent-color:#c8af91;cursor:pointer}
.sound-effects-option{display:flex;align-items:center;gap:12px;min-height:44px;font-size:11px;color:#c6c0b5;cursor:pointer}
.sound-settings input[type=checkbox]{width:16px;height:16px;margin:0;padding:0;accent-color:#c8af91;flex:none}
.sound-toggle[aria-busy=true]{opacity:.75}
/* Hero revision: the film and identity carry the opening. Motion lives in Explore. */
.world-poster-picture{position:absolute;inset:0;width:100%;height:100%;display:block;transition:opacity 1s}
.world-poster-picture>.world-poster{width:100%;height:100%;object-fit:cover;object-position:center}
.world.video-ready>.world-poster-picture,.world.webgl-ready>.world-poster-picture{opacity:0}
.opening-copy{bottom:100px}
.hero-intro{margin-top:27px}
.menu-motion{display:flex;align-items:center;gap:14px;border-top:1px solid #d0bda13b;margin-top:25px;padding:17px 0 0;min-height:50px;font-size:12px;color:#c8c4b9}
.menu-motion>span:first-child{font-size:15px}
#mobile-nav #motion-toggle{font-size:12px;min-height:50px}
@media(max-width:760px){.opening-copy{bottom:90px}.hero-intro{margin-top:24px}}
@media(max-width:760px) and (max-height:650px){.opening-copy{bottom:70px}}
@media(max-height:550px) and (min-width:500px){.opening-copy{bottom:47px}.hero-intro{margin-top:18px}}
:root{--paper:#eae5dc;--ink:#242322;--muted:#6c655f;--copper:#9c5231;--night:#181b1e}
html{scrollbar-gutter:stable}
dialog{background:#1b1d20;border-color:#625f58;color:#eae5dc}
dialog::backdrop{background:#080d11e8}
.credits-button{min-height:44px;font-size:10px;color:#b4aaa1}
.brief-dialog input,.brief-dialog select,.brief-dialog textarea{background:#272a2c;border-color:#6c6961;color:#eae5dc}
.brief-dialog>p:not(.section-label),.credits-dialog>p:not(.section-label){color:#c6c1b8}
.personal-section{position:relative;background:var(--paper);padding:100px var(--pad) 110px;isolation:isolate}
.personal-top{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1500px;margin:0 auto 64px;color:#655b52}
.personal-location{font-size:10px;letter-spacing:.06em}
.personal-layout{max-width:1500px;margin:auto;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:clamp(50px,10vw,150px);align-items:center}
.personal-portrait{position:relative;aspect-ratio:1/1.08;max-width:540px;isolation:isolate;background:#d1cdc5;overflow:hidden}
.personal-portrait>img{width:100%;height:100%;object-fit:cover;object-position:50% 38%}
.personal-portrait>canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .4s}
.personal-portrait.gpu-ready>canvas{opacity:1}
.portrait-signature{position:absolute;left:30px;bottom:32px;color:#f4eee6;z-index:2;font-size:38px;letter-spacing:-.07em;text-shadow:0 1px 12px #0009}
.portrait-note{position:absolute;right:25px;bottom:40px;color:#e8e5df;font-size:8px;letter-spacing:.1em;z-index:2;text-shadow:0 1px 6px #000}
.personal-copy h2{font-size:clamp(38px,4.1vw,66px);line-height:1.16;letter-spacing:-.05em;max-width:680px}
.personal-intro{font-size:clamp(15px,1.25vw,19px);line-height:1.9;max-width:590px;margin-top:30px;color:#524b46}
.personal-current{font-size:14px;line-height:1.8;margin-top:17px;color:#645b53;max-width:520px}
.personal-route{margin-top:38px;position:relative;padding-top:50px}
.route-line{position:absolute;left:0;top:0;width:100%;height:58px;overflow:visible;fill:none;stroke-width:1.2}
.route-base{stroke:#ab9c8e;opacity:.4}.route-ink{stroke:#9c5231;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--route-progress,1))}
.personal-route ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:12px 0 0}
.personal-route li{font-size:11px;line-height:1.65;color:#635a52;min-width:0}
.personal-route li>span{font-size:9px;display:block;margin-bottom:10px;color:#8a533b}
.personal-more{border-top:1px solid #bfb4a850;margin-top:30px;padding-top:8px;max-width:590px}
.personal-more summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;font-size:11px;cursor:pointer;color:#5c5148}
.personal-more summary::-webkit-details-marker{display:none}.personal-more summary>span{font-size:22px;transition:rotate .3s}
.personal-more[open] summary>span{rotate:45deg}.personal-more>div{padding:10px 0 15px;font-size:13px;color:#65594f;line-height:1.9}.personal-more p+p{margin-top:15px}
@media(min-width:1000px){.personal-section{min-height:120svh;display:flex;flex-direction:column;justify-content:center}.personal-top{width:100%}.personal-layout{width:100%}.motion-ready .personal-portrait{transform:perspective(1400px) rotateY(calc(var(--personal-progress,.5)*2deg - 1deg));transform-origin:50% 50%}}
@media(max-width:900px){.personal-layout{gap:6vw;grid-template-columns:minmax(0,.78fr) minmax(0,1fr)}.personal-copy h2{font-size:40px}.personal-intro{font-size:15px}.personal-route ol{gap:12px}.personal-route li{font-size:10px}.portrait-signature{font-size:30px;left:22px}.portrait-note{display:none}}
@media(max-width:650px){.personal-section{padding:65px 24px 70px}.personal-top{display:block;margin-bottom:34px}.personal-location{display:block;margin-top:12px;font-size:9px}.personal-layout{display:flex;flex-direction:column;gap:36px;align-items:stretch}.personal-portrait{width:74%;max-width:380px;align-self:center;aspect-ratio:1/1.05}.portrait-signature{font-size:30px;left:20px;bottom:22px}.personal-copy h2{font-size:39px;line-height:1.15}.personal-intro{font-size:15px;line-height:1.9;margin-top:23px}.personal-current{font-size:13px}.personal-route{padding-top:35px;margin-top:28px}.route-line{height:35px}.personal-route ol{gap:14px;grid-template-columns:repeat(2,1fr);row-gap:22px}.personal-route li{font-size:12px}.personal-route li>span{display:inline-block;margin:0 10px 0 0;font-size:10px}.personal-more{margin-top:28px}}
@media(max-width:360px){.personal-copy h2{font-size:34px}.personal-route li{font-size:11px}.personal-portrait{width:82%}}
@media(prefers-reduced-motion:reduce){.personal-portrait{transform:none!important}.route-ink{stroke-dashoffset:0}}
.media-retry{position:absolute;top:24%;left:var(--pad);z-index:5;display:flex;align-items:center;gap:20px;min-height:44px;padding:8px 18px;border:1px solid #eae5dc80;border-radius:40px;color:#eeeae3;background:#181b1e88;backdrop-filter:blur(10px);font-size:12px}.media-retry>span{font-size:20px}

.tool-section{position:relative;background:#191b1e;color:#ece6dc;padding:150px var(--pad) 75px;isolation:isolate}
.chapter-curve{position:absolute;left:0;top:-1px;width:100%;height:100px;pointer-events:none}
.tool-curve{fill:var(--paper);height:calc(80px + var(--tool-curve,0)*60px)}
.tool-heading{max-width:1500px;margin:auto;display:flex;align-items:end;justify-content:space-between;gap:40px}
.tool-heading .section-label{color:#bbaa98;margin-bottom:26px}
.tool-heading h2{font-size:clamp(50px,6vw,92px);letter-spacing:-.055em}
.tool-heading>p{font-size:14px;line-height:1.85;color:#b7b2aa;max-width:330px;padding-bottom:5px}
.tool-study{max-width:1500px;height:clamp(250px,29vw,430px);position:relative;margin:42px auto 15px;color:#b29173;isolation:isolate}
.tool-fallback,.tool-study>canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.tool-study>canvas{opacity:0}.tool-study.gpu-ready>canvas{opacity:1}.tool-study.gpu-ready>.tool-fallback{opacity:0}
.tool-fallback,.tool-study>canvas{height:calc(100% - 56px)}
@media(max-width:650px){.tool-fallback,.tool-study>canvas{height:calc(100% - 76px)}}
.tool-fallback>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0}
.tool-study[data-study="0"] [data-study-frame="0"],.tool-study[data-study="1"] [data-study-frame="1"],.tool-study[data-study="2"] [data-study-frame="2"]{opacity:1}
.study-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:30px;color:#b8aa9a;font-size:9px;letter-spacing:.1em}
.study-scroll{color:#9e9e9a;font-size:8px}
.tool-domains{max-width:1500px;margin:42px auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5vw}
.tool-domain{position:relative;display:flex;flex-direction:column;text-align:left;border-top:1px solid #9990844d;padding:25px 0 20px;min-width:0;min-height:260px;isolation:isolate}
.tool-domain:before{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:#d0af89;transform:scaleX(0);transform-origin:left;transition:transform .65s var(--ease)}
.tool-domain.is-current:before,.tool-domain:hover:before{transform:scaleX(1)}
.tool-domain-label{display:flex;align-items:center;gap:22px;font-size:12px;color:#b7afa5;line-height:1.7}
.tool-domain-label>span{font-size:10px;color:#b3977c}
.tool-names{display:flex;flex-direction:column;gap:9px;margin-top:27px;color:#d2cdc4;transition:color .5s}
.tool-names>span{font-size:clamp(24px,2.3vw,35px);line-height:1.25;letter-spacing:-.035em}
.tool-domain.is-current .tool-names,.tool-domain:hover .tool-names{color:#fff9ee}
.tool-skills{display:block;font-size:11px;line-height:1.85;max-width:320px;margin-top:auto;padding-top:30px;color:#a8a69f}
.tool-footnote{display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1500px;margin:45px auto 0;border-top:1px solid #99908430;padding-top:25px;font-size:11px;color:#aaa49a;line-height:1.8}
.tool-footnote .soft-link{font-size:12px;color:#ded3c2;white-space:nowrap}
@media(min-width:1700px){.personal-section,.tool-section{padding-left:max(var(--pad),calc((100vw - 1500px)/2));padding-right:max(var(--pad),calc((100vw - 1500px)/2))}}
@media(max-width:900px){.tool-domains{gap:4vw}.tool-names>span{font-size:24px}.tool-skills{font-size:10px}.tool-domain{min-height:245px}.tool-domain-label{gap:14px;font-size:11px}}
@media(max-width:650px){.tool-section{padding:110px 24px 55px}.chapter-curve{height:70px}.tool-curve{height:calc(55px + var(--tool-curve,0)*35px)}.tool-heading{display:block}.tool-heading .section-label{margin-bottom:22px}.tool-heading h2{font-size:49px}.tool-heading>p{font-size:13px;margin-top:23px;padding:0}.tool-study{height:230px;margin:15px -5px 0}.study-caption{font-size:8px;gap:15px}.study-scroll{font-size:7px}.tool-domains{display:flex;flex-direction:column;gap:0;margin-top:30px}.tool-domain{padding:23px 0 25px;min-height:0}.tool-domain-label{font-size:12px;gap:20px}.tool-names{flex-direction:row;flex-wrap:wrap;gap:8px 18px;margin-top:20px}.tool-names>span{font-size:25px;line-height:1.3}.tool-skills{font-size:11px;margin-top:18px;padding:0;max-width:100%}.tool-footnote{margin-top:10px;display:block;padding-top:24px;font-size:11px}.tool-footnote .soft-link{margin-top:14px}}

.route-mobile{display:none}.route-line circle{fill:#eae5dc;stroke:#9c5231;stroke-width:1}.personal-route li{font-size:12px}.personal-route li>span{font-size:10px}
.route-desktop{width:calc(75% + 13.5px)}
.route-line circle.is-reached{fill:#9c5231}
@media(min-width:651px) and (max-width:900px){.route-desktop{width:calc(75% + 9px)}}
@media(max-width:650px){.route-desktop{display:none}.route-mobile{display:block;left:0;top:0;width:24px;height:190px}.personal-route{padding:0 0 0 44px;margin-top:30px;min-height:190px}.personal-route ol{display:flex;flex-direction:column;gap:15px;margin:0}.personal-route li{font-size:12px;min-height:40px;line-height:1.5}.personal-route li br{display:none}.personal-route li>span{margin-right:12px}.personal-more{margin-top:20px}}

.tool-section{padding-top:130px}.tool-domains{margin-top:55px}.tool-domain{min-height:255px}.tool-study{height:clamp(230px,23vw,340px);margin-top:10px}.tool-footnote{margin-top:35px}
@media(max-width:650px){.tool-section{padding-top:105px}.tool-domains{margin-top:32px}.tool-domain{min-height:0}.tool-study{height:220px;margin-top:18px}.tool-footnote{margin-top:30px}}

.photo-section{position:relative;background:#eae5dc;padding:145px var(--pad) 95px;isolation:isolate}
.photo-curve{fill:#191b1e;height:calc(110px - var(--photo-edge,1)*45px)}
.photo-editorial-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;max-width:1500px;margin:0 auto 70px}
.photo-editorial-heading .section-label{color:#766452;margin-bottom:25px}
.photo-editorial-heading h2{font-size:clamp(46px,5.5vw,85px);letter-spacing:-.055em}
.unsplash-link{display:flex;align-items:center;gap:17px;min-height:56px;padding:8px 0 13px;border-bottom:1px solid #8c776755;color:#42372f;font-size:17px;line-height:1.5}
.unsplash-link small{display:block;font-size:11px;color:#705b4a;margin-top:2px;letter-spacing:.02em}
.unsplash-symbol{display:block;width:27px;height:27px}.unsplash-symbol svg{width:100%;height:100%;fill:currentColor}
.featured-prints{max-width:1500px;margin:auto;position:relative;display:grid;grid-template-columns:1.08fr .88fr 1fr;gap:5vw;align-items:start;isolation:isolate}
.featured-print{min-width:0;margin:0}.print-path{margin-top:130px}.print-pantheon{margin-top:55px}
.print-image{display:block;width:100%;position:relative;background:#ded6cb;isolation:isolate;overflow:hidden}
.print-image img{display:block;width:100%;height:auto;transition:opacity .25s;pointer-events:none}
.print-image.in-development img{opacity:0}
.featured-print figcaption{position:relative;display:flex;align-items:start;gap:20px;padding-top:23px;z-index:2}
.print-number{font-size:10px;color:#775b45;padding-top:3px;min-width:13px}
.featured-print h3{font-size:21px;line-height:1.25;letter-spacing:-.035em;font-weight:400;color:#3d342e}
.featured-print figcaption p{font-size:11px;color:#705b4a;margin-top:8px;line-height:1.7}
.print-open{display:flex;align-items:center;gap:20px;min-height:44px;margin-top:6px;font-size:11px;color:#67513f}
.print-open>span{font-size:19px;font-weight:400;transition:rotate .4s}.print-open:hover>span{rotate:90deg}
#prints-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;opacity:0}.featured-prints.gpu-ready>#prints-canvas{opacity:1}
.photo-editorial-close{max-width:1500px;margin:65px auto 0;display:flex;align-items:center;justify-content:space-between;gap:35px;border-top:1px solid #b1a08e40;padding-top:25px;color:#756452;font-size:12px;line-height:1.8}
.photo-editorial-close .soft-link{font-size:12px;color:#584330;white-space:nowrap}
@media(min-width:1700px){.photo-section{padding-left:max(var(--pad),calc((100vw - 1500px)/2));padding-right:max(var(--pad),calc((100vw - 1500px)/2))}}
@media(max-width:1000px){.featured-prints{gap:4vw}.featured-print h3{font-size:19px}.featured-print figcaption{gap:14px}.print-path{margin-top:95px}.print-pantheon{margin-top:40px}}
@media(max-width:650px){.photo-section{padding:110px 24px 60px}.photo-curve{height:calc(75px - var(--photo-edge,1)*30px)}.photo-editorial-heading{display:block;margin-bottom:40px}.photo-editorial-heading .section-label{font-size:9px;margin-bottom:23px}.photo-editorial-heading h2{font-size:44px}.unsplash-link{width:max-content;max-width:100%;font-size:16px;margin-top:22px;gap:14px;padding-bottom:10px}.unsplash-symbol{width:23px;height:23px}.unsplash-link small{font-size:10px}.featured-prints{display:flex;flex-direction:column;gap:46px}.featured-print{width:86%;margin:0}.print-path{width:76%;align-self:end}.print-pantheon{width:88%;align-self:start}.featured-print h3{font-size:22px}.featured-print figcaption{padding-top:19px;gap:18px}.featured-print figcaption p{font-size:12px}.print-number{font-size:10px}.print-open{font-size:12px;margin-top:5px}.photo-editorial-close{margin-top:40px;display:block;padding-top:25px;font-size:12px}.photo-editorial-close .soft-link{margin-top:12px;white-space:normal}}
@media(max-width:360px){.photo-editorial-heading h2{font-size:39px}.featured-print{width:90%}.print-path{width:82%}.print-pantheon{width:92%}}

.cinema-section{background:#171a1d;color:#ede7dd;padding:105px var(--pad) 85px;position:relative;isolation:isolate}
.cinema-heading{max-width:1500px;margin:0 auto 55px;display:flex;align-items:end;justify-content:space-between;gap:40px}
.cinema-heading .section-label{color:#b1a394;margin-bottom:26px}
.cinema-heading h2{font-size:clamp(46px,5.8vw,88px);line-height:1.12;letter-spacing:-.055em}
.cinema-heading-aside{text-align:right;font-size:10px;color:#b8b6b0;letter-spacing:.06em;padding-bottom:3px}
.cinema-heading-aside>span{display:block}.cinema-heading-aside>button{display:inline-flex;align-items:center;min-height:44px;font-size:11px;border-bottom:1px solid #b0a18f55;margin-top:10px;letter-spacing:0;color:#d6cab9}
.cinema-layout{max-width:1500px;margin:auto;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.6fr);gap:6vw;align-items:start;position:relative}
.film-index{min-width:0}.film-index-intro{font-size:11px;color:#9e9d97;margin-bottom:18px;line-height:1.8}
.film-index ol{list-style:none;padding:0;margin:0;border-bottom:1px solid #b1aa9f25}
.film-index-button{display:flex;align-items:center;gap:17px;width:100%;min-height:110px;padding:24px 0;border-top:1px solid #b1aa9f25;text-align:left;position:relative;color:#9f9f9b;transition:color .45s}
.film-index-button:before{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:#c1a07c;transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease)}
.film-index-button.is-current:before{transform:scaleX(1)}.film-index-button.is-current,.film-index-button:hover{color:#f5eee2}
.film-index-number{font-size:9px;color:#a9957e;min-width:15px;align-self:start;padding-top:4px}
.film-index-name{display:block;font-size:clamp(18px,1.65vw,25px);line-height:1.3;letter-spacing:-.035em;min-width:0;flex:1}
.film-index-name small{display:block;font-size:10px;letter-spacing:0;color:#a7a9a5;margin-top:9px;line-height:1.7}
.film-index-duration{font-size:10px;color:#b3b2aa;white-space:nowrap;font-variant-numeric:tabular-nums;align-self:start;padding-top:5px}
.film-index>.soft-link{margin-top:25px;font-size:12px;color:#c0b6a6}
.cinema-sticky{position:sticky;top:115px;min-width:0;z-index:2}
.cinema-surface{position:relative;width:100%;aspect-ratio:16/9;background:#101315;isolation:isolate;overflow:hidden}
.preview-layer{position:absolute;inset:0;display:none;background:#101315}.preview-layer.is-active{display:block}
.preview-layer img,.preview-layer video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.preview-layer video{opacity:0;transition:opacity .6s}.preview-layer.has-preview video{opacity:1}
#cinema-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0;z-index:2;transition:opacity .4s}
.cinema-surface.gpu-ready>#cinema-canvas{opacity:1}
.cinema-bottom-line{position:absolute;left:23px;right:23px;bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:#f3f0e9;font-size:9px;letter-spacing:.09em;pointer-events:none;z-index:3;text-shadow:0 1px 7px #000,0 1px 20px #000}
.cinema-bottom-line:before{content:'';position:absolute;inset:-38px -23px -16px;background:linear-gradient(transparent,#0005);z-index:-1}
.preview-retry{position:absolute;left:50%;top:50%;translate:-50% -50%;z-index:4;display:flex;align-items:center;gap:18px;font-size:12px;color:#eee7db;background:#171a1daa;border:1px solid #d1b89888;border-radius:40px;backdrop-filter:blur(10px);min-height:48px;padding:9px 20px;white-space:nowrap}.preview-retry>span{font-size:22px}
.cinema-caption{margin-top:24px;min-height:130px}.cinema-caption-top{display:flex;justify-content:space-between;gap:25px;align-items:start;color:#b9b8ae;font-size:10px;letter-spacing:.055em;line-height:1.8}
.cinema-caption h3{font-size:clamp(27px,2.7vw,42px);line-height:1.2;letter-spacing:-.045em;margin-top:16px;max-width:900px;color:#f0eade}
.cinema-caption>p{font-size:12px;line-height:1.85;color:#aaa9a2;margin-top:12px;max-width:800px}
.cinema-actions{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:23px}
.cinema-watch{display:inline-flex;align-items:center;gap:16px;font-size:12px;min-height:48px;color:#e4d7c1}
.cinema-watch .round-play{width:43px;height:43px;font-size:9px;margin:0;flex:none;border-color:#d0b79880}
.cinema-step-controls{display:flex;gap:25px;align-items:center}.cinema-step-controls>button{min-height:44px;min-width:44px;font-size:11px;color:#c0b4a3}
.cinema-index-progress{height:1px;background:#a0907a30;margin-top:24px;overflow:hidden}.cinema-index-progress>span{height:100%;display:block;background:#b4926c;transform:scaleX(var(--film-progress,.125));transform-origin:left;transition:transform .6s var(--ease)}
.tool-footnote{justify-content:end}
@media(min-width:1700px){.cinema-section{padding-left:max(var(--pad),calc((100vw - 1500px)/2));padding-right:max(var(--pad),calc((100vw - 1500px)/2))}}
@media(max-width:1050px){.cinema-layout{gap:4vw;grid-template-columns:minmax(0,.78fr) minmax(0,1.5fr)}.film-index-button{gap:12px;min-height:105px}.film-index-name{font-size:19px}.cinema-caption h3{font-size:29px}.cinema-caption{min-height:140px}.cinema-sticky{top:110px}.cinema-step-controls{gap:16px}}
@media(max-width:760px){.cinema-section{padding:70px 24px 60px}.cinema-heading{display:block;margin-bottom:35px}.cinema-heading .section-label{font-size:9px;margin-bottom:23px}.cinema-heading h2{font-size:42px}.cinema-heading-aside{display:flex;align-items:center;justify-content:space-between;text-align:left;margin-top:22px;font-size:10px;gap:20px}.cinema-heading-aside>button{margin:0;font-size:11px}.cinema-layout{display:flex;flex-direction:column;gap:30px}.cinema-sticky{order:-1;top:70px;width:calc(100% + 48px);margin:0 -24px;background:#171a1d;padding:0 24px 14px;border-bottom:1px solid #a0907a38;z-index:3}.cinema-surface{width:calc(100% + 48px);margin:0 -24px;max-height:32svh;aspect-ratio:16/9}.cinema-caption{margin-top:18px;min-height:0}.cinema-caption-top{font-size:9px;gap:15px}.cinema-caption h3{font-size:25px;margin-top:10px;line-height:1.2}.cinema-caption>p{font-size:11px;line-height:1.75;margin-top:10px}.cinema-actions{margin-top:14px;gap:15px}.cinema-watch{font-size:11px;gap:12px;min-height:44px}.cinema-watch .round-play{width:35px;height:35px;font-size:8px}.cinema-step-controls{gap:16px}.cinema-step-controls>button{font-size:10px}.cinema-index-progress{margin-top:13px}.film-index{width:100%}.film-index-intro{font-size:12px;margin-bottom:15px}.film-index-button{min-height:94px;padding:22px 0;gap:18px}.film-index-name{font-size:21px}.film-index-name small{font-size:10px;margin-top:7px}.film-index-number{font-size:10px}.film-index-duration{font-size:11px}.cinema-bottom-line{font-size:8px;bottom:13px;left:18px;right:18px}.film-index>.soft-link{font-size:12px;margin-top:22px}}
@media(max-width:360px){.cinema-heading h2{font-size:37px}.cinema-caption h3{font-size:23px}.cinema-caption>p{font-size:10px}.cinema-step-controls{gap:8px}.cinema-watch{gap:9px;font-size:10px}.film-index-name{font-size:19px}.film-index-button{gap:12px}.cinema-caption-top{font-size:8px}}
@media(max-height:550px) and (min-width:761px){.cinema-sticky{top:85px}.cinema-surface{max-height:45svh}.cinema-caption{min-height:0;margin-top:15px}.cinema-caption h3{font-size:24px;margin-top:8px}.cinema-caption>p{font-size:10px;margin-top:7px}.cinema-caption-top{font-size:8px}.cinema-actions{margin-top:9px}.cinema-watch{min-height:36px}.cinema-watch .round-play{width:32px;height:32px}.cinema-index-progress{margin-top:10px}}

.cinema-surface-watch{position:absolute;top:20px;right:20px;z-index:4;display:flex;align-items:center;gap:12px;min-height:44px;color:#fff7e8;text-shadow:0 1px 5px #000;background:#12171b50;border:1px solid #e5d7bf70;border-radius:40px;padding:0 15px;backdrop-filter:blur(10px)}.cinema-surface-watch>span{font-size:9px}.cinema-surface-watch>small{font-size:10px}.cinema-surface-watch:hover{background:#222b3190}
@media(max-width:760px){.cinema-surface-watch{top:14px;right:15px;min-height:40px;padding:0 13px;gap:10px}.cinema-surface-watch>small{font-size:9px}}

/* On phones the index is a native horizontal rail, so the screen cannot cover the titles. */
@media(max-width:760px){.cinema-sticky{position:relative;top:auto}.cinema-caption{min-height:130px}.film-index{min-width:0}.film-index ol{display:flex;gap:26px;width:calc(100% + 48px);margin:0 -24px;padding:0 24px 14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;border:0;scrollbar-width:thin;scrollbar-color:#8b7255 #25282a}.film-index li{flex:0 0 78%;min-width:0;scroll-snap-align:start}.film-index-button{height:130px;min-height:130px;align-items:start}.film-index-intro{margin-bottom:12px}.film-index-name{font-size:21px}.film-index-duration{margin-left:2px}.film-index>.soft-link{margin-top:20px}.cinema-layout{gap:26px}}
@media(max-width:760px) and (max-height:650px){.cinema-caption{min-height:92px}.cinema-caption>p{display:none}.cinema-caption h3{font-size:23px}.cinema-surface{max-height:none}.cinema-actions{margin-top:7px}.cinema-index-progress{margin-top:8px}.film-index-button{height:120px;min-height:120px}}

.tool-domain{cursor:default}.tool-domain:hover:before{transform:scaleX(0)}.tool-domain.is-current:hover:before{transform:scaleX(1)}.tool-domain-label{font-weight:400;letter-spacing:0;line-height:1.7}.tool-domain:hover .tool-names{color:#d2cdc4}.tool-domain.is-current:hover .tool-names{color:#fff9ee}
.study-controls{display:flex;align-items:center;gap:24px}.study-controls>button{font-size:11px;min-height:44px;position:relative;color:#a9a397}.study-controls>button:after{content:'';position:absolute;bottom:6px;left:0;right:0;height:1px;background:#c4a482;transform:scaleX(0);transform-origin:left;transition:transform .4s}.study-controls>button[aria-pressed=true]{color:#f0e4ce}.study-controls>button[aria-pressed=true]:after{transform:scaleX(1)}
@media(max-width:650px){.study-caption{align-items:center;flex-wrap:wrap;gap:6px}.study-controls{gap:24px}.study-controls>button{font-size:10px}.tool-study{height:250px}.tool-domain-label{font-size:12px}}

@media(max-width:760px){.film-index ol{scroll-padding-inline:24px}}
@media(min-width:1000px){.personal-section{min-height:100svh}} @media(max-width:760px){.film-index ol{scrollbar-width:none}.film-index ol::-webkit-scrollbar{display:none}}
/* Keep the cinema controls inside a laptop viewport; phones retain natural flow. */
@media(min-width:761px) and (min-height:551px) and (max-height:800px){.cinema-sticky{top:95px;width:100%;max-width:calc((100svh - 330px)*16/9);justify-self:center}.cinema-caption{min-height:100px;margin-top:18px}.cinema-caption h3{font-size:29px;margin-top:12px}.cinema-caption>p{font-size:11px;line-height:1.7;margin-top:9px}.cinema-actions{margin-top:14px}.cinema-index-progress{margin-top:18px}}
@media(min-width:761px) and (max-height:700px){.cinema-caption>p{display:none}}
@media(max-width:760px){.opening-kicker{font-size:9px}.hero-watch small{font-size:9px}.begin-story,#motion-toggle{font-size:10px}}
@media(max-height:550px) and (min-width:500px){.opening-kicker{font-size:9px}.hero-frame{font-size:8px}.hero-intro>p{font-size:12px}.hero-watch{font-size:11px}.hero-watch small{font-size:9px}.begin-story,#motion-toggle{font-size:9px}.hero-options>button{min-height:40px;font-size:9px}.hero-options>button>span{font-size:11px}#motion-toggle{min-height:40px}.opening-bottom{bottom:12px}}
@media(max-width:650px){.tool-domains{margin-top:26px}.tool-domain{padding:20px 0 22px}.tool-names{margin-top:14px}.tool-skills{margin-top:12px}.tool-study{height:220px}.tool-footnote{margin-top:20px}}
@media(max-width:650px){.brief-dialog,.credits-dialog{padding:24px 20px;max-height:94svh}.brief-dialog h2,.credits-dialog h2{font-size:clamp(32px,8.4vw,40px);line-height:1.15;margin:20px 0}.brief-dialog input,.brief-dialog select,.brief-dialog textarea{font-size:16px}.brief-submit{font-size:14px;min-height:48px}.film-index ol{padding-top:8px}}
@media(max-width:760px){.photo-viewer{padding:18px;max-height:94svh}.photo-viewer>.screening-top{margin-bottom:12px}.photo-viewer>img{width:100%;height:auto;max-height:calc(94svh - 180px);object-fit:contain}.photo-viewer-bottom{flex-direction:column;align-items:flex-start;gap:4px;margin-top:12px;font-size:10px;line-height:1.5}.photo-viewer-bottom .text-link{min-height:44px;max-width:100%;font-size:11px;white-space:normal;align-items:center}}
