@font-face{font-family:Epimetheus Mincho;src:url('assets/fonts/epimetheus-mincho.woff2') format('woff2');font-weight:400;font-display:swap}
:root{color-scheme:dark;--bg:#19211d;--deep:#141b17;--paper:#f5f0e6;--text:#e9e2d3;--muted:#b4b5a6;--gold:#c3ae7e;--line:#40493d;--serif:'Epimetheus Mincho','Yu Mincho','Hiragino Mincho ProN',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--serif);font-weight:400;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{touch-action:manipulation}button{border:0;background:none}button:focus-visible,a:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}a:hover{color:var(--gold)}[hidden]{display:none!important}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip-link:focus{position:fixed;z-index:20;padding:16px;background:var(--paper);color:var(--deep)}.site-header{height:114px;max-width:1440px;margin:auto;padding:0 6%;display:flex;align-items:center;justify-content:space-between}.wordmark{font-size:18px;letter-spacing:.12em}.wordmark span{display:block;font-family:Georgia,serif;font-size:9px;letter-spacing:.34em;margin-top:9px;color:var(--gold)}nav{display:flex;gap:35px;font-size:12px;letter-spacing:.12em}nav a{padding:12px 0}.hero{max-width:1320px;margin:auto;padding:16px 6% 70px;position:relative;display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.eyebrow,.section-label,.roman-title,.scroll-cue,.art-number,.gallery-caption>span{font-family:Georgia,'Times New Roman',serif}.eyebrow{display:flex;align-items:center;gap:14px;letter-spacing:.15em;color:var(--gold);font-size:10px;margin:0 0 42px;white-space:nowrap}.short-rule{width:28px;height:1px;background:var(--gold)}.hero-kicker{font-size:14px;letter-spacing:.13em;margin:0 0 22px}h1{font-weight:400;margin:0;line-height:1.6;letter-spacing:.075em;font-size:clamp(29px,3.3vw,46px)}h1 span{display:block;white-space:nowrap}h1 .title-last{font-size:clamp(66px,7vw,94px);line-height:1.34;letter-spacing:.22em;margin-top:0}.roman-title{color:var(--gold);letter-spacing:.19em;font-size:11px;margin-top:21px}.hero-description{font-size:14px;line-height:2.3;letter-spacing:.08em;color:var(--muted);margin:38px 0 28px}.download-button{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:19px 24px;background:#c4b183;border:1px solid #c4b183;color:#20271f;font-size:13px;letter-spacing:.08em;max-width:350px;min-height:60px}.download-button:hover{color:#141b17;background:#ddcca3}.download-button[aria-disabled=true]{background:transparent;color:#c9bb98;border-color:#6c7159;cursor:default}.download-button[aria-disabled=true]:hover{background:#222b23}.download-note{font-size:11px;letter-spacing:.12em;color:var(--muted);margin:12px 0 0}.hero-visual{min-width:0;padding:9px 0 0}.art-frame{padding:10px;border:1px solid #69715b;position:relative;box-shadow:0 24px 60px #050c0840}.art-slides{position:relative;aspect-ratio:2/3;background:#252d24}.art-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 1s ease;pointer-events:none}.art-slide.is-active{opacity:1}.art-controls{display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:8px}.art-number{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:10px}.art-number>span:first-child{color:var(--text)}.number-line{width:26px;height:1px;background:#66715c}.dots{display:flex;align-items:center;justify-content:center;gap:1px}.dot{width:38px;height:44px;display:grid;place-items:center;padding:0}.dot:before{content:'';width:5px;height:5px;border:1px solid #a5aa96;border-radius:50%}.dot[aria-pressed=true]:before{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 5px var(--bg),0 0 0 6px #6f785c}.pause-button{width:44px;height:44px;font-size:13px;color:var(--muted)}.scroll-cue{position:absolute;left:6%;bottom:16px;display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.15em;color:var(--muted)}.scroll-cue>span{height:37px;width:1px;background:#6a735e}.section{max-width:1120px;margin:auto}.intro{text-align:center;padding:115px 20px 70px}.section-label{font-size:10px;color:var(--gold);letter-spacing:.22em;margin:0 0 25px}h2{font-weight:400;font-size:29px;letter-spacing:.12em;line-height:1.8;margin:0 0 27px}.intro>p:not(.section-label){font-size:14px;letter-spacing:.07em;line-height:2.6;color:var(--muted)}.mobile-break{display:none}.ornament{display:flex;justify-content:center;align-items:center;gap:17px;color:var(--gold);font-size:18px;margin-top:50px}.ornament span{height:1px;width:40px;background:#56624b}.gallery{padding:65px 40px 70px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:32px}.section-heading h2{margin:0}.section-heading .section-label{margin-bottom:16px}.section-aside{font-size:11px;color:var(--muted);letter-spacing:.09em;padding-bottom:7px}.gallery-stage{aspect-ratio:16/9;background:var(--deep);border:1px solid var(--line);touch-action:pan-y}.gallery-slide{width:100%;height:100%;margin:0}.gallery-slide img{width:100%;height:100%;object-fit:contain;display:block}.unavailable{display:grid;place-items:center;text-align:center;padding:20px}.unavailable h3{font-size:24px;font-weight:400;margin:20px 0}.unavailable p{font-size:14px;color:var(--muted);line-height:1.9}.unavailable .pending-detail{font-size:12px}.gallery-caption{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:9px 0;min-height:62px}.gallery-caption>span{font-size:11px;letter-spacing:.12em;color:var(--gold)}.gallery-caption p{font-size:14px;letter-spacing:.12em;margin:8px 0}.gallery-caption .scene-id{margin-left:auto;color:var(--muted)}.gallery-controls{display:flex;justify-content:center;align-items:center;gap:30px;margin-top:20px}.arrow{width:46px;height:46px;border:1px solid #59614e;font-size:20px}.arrow:hover{border-color:var(--gold);color:var(--gold)}.gallery-help,.gallery-note{text-align:center;color:var(--muted);font-size:10px;line-height:1.9;letter-spacing:.03em}.gallery-help{margin-top:18px}.gallery-note{color:#bfb292}.download-section{text-align:center;padding:90px 20px 110px;max-width:none;margin-top:25px;background:var(--deep);border-top:1px solid #323c30;border-bottom:1px solid #323c30}.download-section>p:not(.section-label):not(.download-note){line-height:2.2;color:var(--muted);font-size:14px;margin-bottom:30px}.download-section .download-button{margin:auto}.download-section h2{font-size:30px}footer{max-width:1240px;padding:64px 6% 28px;margin:auto}.credit-main{display:flex;justify-content:space-between;align-items:center;padding-bottom:40px}.credit-main .section-label{margin-bottom:18px}.author{font-size:23px;letter-spacing:.18em;margin:0}.author span{display:block;font-family:Georgia,serif;font-size:12px;letter-spacing:.12em;color:var(--muted);margin-top:14px}.profile{font-size:12px;border-bottom:1px solid #657154;padding-bottom:12px}.profile>span[aria-hidden]{margin-left:28px}.footer-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;color:var(--muted);font-size:10px;line-height:2}.footer-bottom small{font-size:10px}.footer-bottom details{max-width:440px}.footer-bottom details p{line-height:2.2}.footer-bottom details a{text-decoration:underline;text-underline-offset:3px}summary{cursor:pointer}.noscript-note{text-align:center;padding:24px;font-size:14px}
@media(min-width:1500px){.hero{padding-top:28px;padding-bottom:80px}.hero-visual{max-width:510px}.hero-description{margin-top:46px}.hero-copy{padding-left:10px}}
@media(max-width:1000px) and (min-width:761px){.hero{gap:4%;padding-left:5%;padding-right:5%}.eyebrow{font-size:8px;letter-spacing:.07em;margin-bottom:24px}.hero-description{margin:24px 0;font-size:13px}.download-button{font-size:11px;padding:17px}.roman-title{font-size:9px}.dot{width:30px}}
@media(max-width:760px){.site-header{height:88px;padding:0 6%}.wordmark{font-size:13px;letter-spacing:.05em}.wordmark span{font-size:8px;margin-top:8px}nav{gap:18px;font-size:10px}nav a:first-child{display:none}.hero{padding:20px 8% 58px;grid-template-columns:1fr;gap:42px}.hero-copy{padding-top:8px}.eyebrow{font-size:8px;margin-bottom:30px;letter-spacing:.13em}.hero-kicker{font-size:12px;margin-bottom:17px}h1{font-size:clamp(27px,6.8vw,43px)}h1 .title-last{font-size:clamp(60px,16vw,88px)}.roman-title{font-size:9px;margin-top:16px}.hero-description{font-size:13px;line-height:2.2;margin:25px 0 24px}.download-button{max-width:none;font-size:12px;padding:18px;min-height:58px}.download-note{font-size:10px}.hero-visual{padding:0}.art-frame{padding:8px}.art-controls{min-height:60px}.dot{width:36px}.scroll-cue{left:8%;bottom:5px;font-size:8px}.scroll-cue>span{height:26px}.intro{padding:86px 20px 32px}.section-label{font-size:9px;margin-bottom:20px}h2{font-size:22px;letter-spacing:.07em;margin-bottom:22px}.intro>p:not(.section-label){font-size:12px;line-height:2.6}.mobile-break{display:block}.ornament{margin-top:34px}.gallery{padding:45px 6% 42px}.section-heading{display:block;margin-bottom:22px}.section-heading h2{font-size:24px}.section-aside{font-size:10px;margin:14px 0 0;padding:0}.gallery-caption{gap:13px;min-height:57px}.gallery-caption>span{font-size:9px}.gallery-caption p{font-size:12px;letter-spacing:.04em}.gallery-controls{gap:20px;margin-top:16px}.gallery-help{font-size:9px}.gallery-help>span{display:block;height:0;visibility:hidden}.gallery-note{font-size:9px}.unavailable{padding:12px}.unavailable h3{font-size:17px;margin:10px 0}.unavailable .section-label{font-size:8px}.unavailable p{font-size:11px;margin:7px 0}.unavailable .pending-detail{font-size:9px}.download-section{padding:68px 8% 74px;margin-top:12px}.download-section h2{font-size:22px}.download-section>p:not(.section-label):not(.download-note){font-size:12px}.credit-main{align-items:flex-start;gap:20px}.author{font-size:20px}.profile{font-size:10px;margin-top:35px}.profile>span[aria-hidden]{margin-left:10px}footer{padding-top:45px}.footer-bottom{flex-wrap:wrap;font-size:9px;gap:16px}.footer-bottom details{order:3;flex-basis:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.art-slide{transition:none}}

/* Mobile first-view spacing; desktop typography and carousel remain unchanged. */
@media(max-width:760px){
 .site-header{height:76px}
 .hero{padding-top:12px;gap:26px}
 .hero-copy{padding-top:4px}
 .eyebrow{margin-bottom:20px}
 .hero-kicker{margin-bottom:12px}
 .roman-title{margin-top:12px}
 .hero-description{margin:19px 0 18px;line-height:2.1}
}
