:root{--ink:#241c17;--paper:#f3eee6;--stone:#ddd2c4;--muted:#6b5a4d;--bronze:#78543a;--line:rgba(36,28,23,.22);--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--pad:clamp(24px,4.8vw,88px)}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bd763a;outline-offset:6px}button:disabled{opacity:.4;cursor:default}button,select,input{min-height:44px}button{border:0;background:none}.text-button{padding:8px 0}.skip-link{position:fixed;z-index:50;top:-100px;left:20px;background:var(--paper);padding:14px;color:var(--ink)}.skip-link:focus{top:12px}.header{position:absolute;top:0;left:0;width:100%;z-index:5;color:#fff9f1;display:flex;align-items:center;justify-content:space-between;padding:28px var(--pad);gap:24px}.brand{font-family:var(--serif);font-size:30px;letter-spacing:.07em;line-height:1.1}.brand span{display:block;font:8px/1.5 var(--sans);letter-spacing:.2em;margin-top:9px}.header nav{display:flex;align-items:center;gap:34px;font-size:12px}.header nav>a{padding:12px 0}.header nav button{border-bottom:1px solid rgba(255,255,255,.6)}.journey{height:calc(100svh + var(--travel,7800px));background:var(--ink);color:#fff9f1}.stage{position:sticky;top:0;height:100svh;min-height:550px;overflow:clip;background:var(--ink)}.visual,.visual img,.visual canvas,.shade{position:absolute;inset:0;width:100%;height:100%}.visual img{object-fit:cover}.visual canvas{opacity:0;transition:opacity .15s}.visual canvas.ready{opacity:1}.shade{background:linear-gradient(180deg,rgba(18,13,9,.46),transparent 32%,rgba(18,13,9,.14) 47%,rgba(18,13,9,.82));pointer-events:none}.stage-top{position:absolute;top:132px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:center;font-size:11px}.edition{font-size:9px;letter-spacing:.14em}.stage-top button{font-size:11px}.stage-copy{position:absolute;left:var(--pad);bottom:155px;max-width:790px}.stage-copy>p:first-child{font-size:10px;letter-spacing:.12em;margin:0 0 20px}.stage-copy h1{font:clamp(62px,7.5vw,126px)/.98 var(--serif);letter-spacing:-.035em;margin:0}.stage-copy h1 em,h2 em{font-weight:400}.stage-copy p#scene-description{font-size:14px;line-height:1.65;margin:25px 0 0;max-width:360px}.stage-copy.inner h1{font-size:clamp(46px,5vw,76px);max-width:660px}.stage-copy.inner p#scene-description{font-size:13px;margin-top:16px}.viewpoint{display:inline-block;font-size:10px;margin-top:15px;border-top:1px solid #b9a797;padding-top:8px}.viewpoint[hidden]{display:none}.tour-bottom{position:absolute;left:var(--pad);right:var(--pad);bottom:33px;display:flex;align-items:center;justify-content:space-between;gap:15px}.scroll-hint{display:flex;gap:15px;align-items:center;font-size:9px;letter-spacing:.08em}.scroll-hint small{font-size:10px;letter-spacing:0;opacity:.85}.scroll-mark{font-size:30px;font-weight:100}.tour-controls{display:flex;align-items:center;border:1px solid rgba(255,255,255,.45);background:rgba(29,22,17,.75);border-radius:2px}.tour-controls>button{min-width:47px;padding:12px 15px;min-height:50px}.tour-controls #chapter-toggle{display:flex;align-items:center;gap:20px;font-size:12px;border-inline:1px solid rgba(255,255,255,.22)}#scene-count{font-size:9px;color:#d7c7b7}.tour-bottom>.text-button{font-size:10px}.progress-track{position:absolute;height:2px;bottom:0;left:0;right:0;background:rgba(255,255,255,.2)}#tour-progress{height:100%;width:0;background:#ead1b4}.chapter-menu{position:absolute;right:var(--pad);bottom:100px;width:min(440px,calc(100% - 48px));max-height:65svh;overflow:auto;background:var(--paper);color:var(--ink);padding:20px 24px;box-shadow:0 15px 55px #0005;z-index:8}.chapter-heading{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.08em}.chapter-heading button{font-size:25px;padding:0 8px}.chapter-menu p{font-size:12px;color:var(--muted);margin:0 0 14px}#chapter-links{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px}#chapter-links button{text-align:left;border-bottom:1px solid var(--line);font-size:12px;padding:8px 0}#chapter-links button[aria-current=true]{color:var(--bronze);font-weight:bold}.media-status{position:absolute;top:190px;right:var(--pad);font-size:10px;padding:8px;background:#241c17cc}.section-pad{padding:100px var(--pad)}.section-number{font-size:10px;letter-spacing:.12em;margin:0 0 26px;color:var(--muted)}h2{font:clamp(45px,5.5vw,86px)/1.07 var(--serif);letter-spacing:-.035em;margin:0;font-weight:400}h3{font-family:var(--serif);font-weight:400}.intro{display:grid;grid-template-columns:1fr 2fr;padding-block:120px}.intro>.section-number{padding-top:14px}.intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:45px;align-items:end}.intro-bottom p{margin:0;max-width:350px;font-size:14px;line-height:1.85;color:var(--muted)}.line-link{border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;padding:12px 0;font-size:12px}.stays{background:#e9e1d6}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:56px}.section-heading>p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:7px}.room-explorer{display:grid;grid-template-columns:1fr 2fr;gap:7vw;align-items:center}.room-tabs{display:flex;flex-direction:column;align-items:stretch}.room-tabs button{border-bottom:1px solid var(--line);text-align:left;display:flex;align-items:center;justify-content:space-between;padding:15px 0;font-family:var(--serif);font-size:22px;color:#766758;gap:8px}.room-tabs button span:first-child{font:9px var(--sans);width:20px}.room-tabs button[aria-selected=true]{color:var(--ink)}.room-tabs button[aria-selected=true] .tab-arrow{opacity:1;transform:translateX(0)}.tab-arrow{opacity:0;transform:translateX(-6px);transition:transform .2s}.room-image-wrap{position:relative;aspect-ratio:1.38;overflow:hidden}.room-image-wrap>img{width:100%;height:100%;object-fit:cover}.image-note{position:absolute;bottom:18px;left:20px;color:white;font-size:8px;letter-spacing:.12em;text-shadow:0 1px 5px #000}.room-caption{display:flex;justify-content:space-between;align-items:center;padding-top:25px}.room-caption p{font-size:9px;letter-spacing:.08em;color:var(--muted);margin:0 0 6px}.room-caption h3{font-size:34px;margin:0}.round-link{display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;height:52px;width:52px;font-size:24px;transition:background .2s,color .2s}.round-link:hover{background:var(--ink);color:var(--paper)}.rituals>.section-heading{margin-bottom:0}.ritual-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}.ritual{position:relative;min-height:590px;overflow:hidden;color:var(--paper);display:flex;align-items:end}.ritual img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .6s}.ritual:hover img{transform:scale(1.025)}.ritual:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 25%,#1e1713d9)}.ritual>div{position:relative;z-index:1;padding:55px var(--pad);width:100%}.ritual span{font-size:9px;letter-spacing:.1em}.ritual h3{font-size:clamp(36px,4vw,62px);line-height:1.05;margin:20px 0 28px}.ritual p{display:flex;justify-content:space-between;font-size:12px;border-bottom:1px solid #f3eee688;padding-bottom:15px;margin:0}.ritual p span{font-size:18px}.horizon{position:relative;min-height:800px;display:flex;align-items:center;color:var(--paper);isolation:isolate}.horizon>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.horizon:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#17110acc,transparent 90%);z-index:-1}.horizon .section-number{color:var(--paper)}.light-button,.dark-button{padding:15px 24px;font-size:12px;display:inline-block}.light-button{background:var(--paper);color:var(--ink);margin-top:40px}.dark-button{background:var(--ink);color:var(--paper);margin-top:16px;width:100%}.footer{padding-block:65px 35px}.footer-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:55px;gap:30px}.footer-top>a:last-child{font-size:14px}.footer-top span{display:block;margin-top:10px;font-size:12px}.footer-bottom{display:flex;align-items:end;justify-content:space-between;gap:24px;padding-top:28px;font-size:10px;color:var(--muted)}.footer-bottom p{margin:0}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}dialog{width:min(540px,calc(100% - 32px));max-height:90svh;background:var(--paper);color:var(--ink);padding:45px;border:0;overflow:auto}dialog::backdrop{background:#17110caa;backdrop-filter:blur(5px)}dialog h2{font-size:48px}dialog form>p:not(.section-number){font-size:12px;color:var(--muted);line-height:1.7}dialog label{display:flex;flex-direction:column;font-size:11px;gap:7px;margin-top:18px}dialog input,dialog select{border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);padding:9px;width:100%;min-width:0}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dialog-close{position:absolute;right:18px;top:12px;font-size:26px;min-width:44px}.noscript-note{padding:30px}.detail-header{position:relative;color:var(--ink);border-bottom:1px solid var(--line)}.detail-header nav button{border-color:var(--line)}.detail-hero{padding-top:55px}.detail-hero h1{font:clamp(56px,7vw,110px)/1.05 var(--serif);margin:0 0 30px}.detail-meta{display:flex;justify-content:space-between;gap:30px;margin:0 0 35px;font-size:12px;color:var(--muted)}.detail-main-image{width:100%;aspect-ratio:1.9;object-fit:cover;display:block}.detail-story{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.detail-story img{width:100%;aspect-ratio:1.15;object-fit:cover}.detail-story p{font-size:14px;line-height:1.9;color:var(--muted);max-width:380px}.detail-story h2{font-size:55px}.detail-story .line-link{margin-top:30px}.detail-related{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding-block:45px}.detail-related a{font:clamp(22px,3vw,38px) var(--serif)}.tile{max-width:1200px;margin:auto}.swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:45px 0}.swatch{height:160px;padding:20px;display:flex;align-items:end;border:1px solid var(--line)}.tile-note{max-width:650px;color:var(--muted)}
@media(min-width:1600px){.stage-copy{bottom:165px}.ritual{min-height:750px}}
@media(max-width:800px){.header{padding-top:22px}.brand{font-size:25px}.brand span{font-size:7px}.header nav{gap:18px}.header nav>a{display:none}.header nav button{font-size:10px}.stage{min-height:620px}.stage-top{top:112px}.edition{font-size:8px}.stage-copy{bottom:165px;max-width:90%}.stage-copy h1{font-size:65px}.stage-copy.inner h1{font-size:46px}.stage-copy>p:first-child{margin-bottom:14px}.stage-copy p#scene-description{font-size:12px;margin-top:18px}.tour-bottom{bottom:24px;flex-wrap:wrap;gap:20px}.tour-controls{order:2;margin-left:auto}.tour-bottom>.text-button{order:1}.scroll-hint{order:0}.scroll-hint small{font-size:9px}.tour-controls #chapter-toggle{gap:15px}.intro{grid-template-columns:1fr;gap:30px;padding-block:75px}.intro-bottom{gap:24px}.section-pad{padding-block:75px}.section-heading{align-items:start;flex-direction:column;gap:25px;margin-bottom:35px}h2{font-size:50px}.room-explorer{grid-template-columns:1fr;gap:28px}.room-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.room-tabs button{font-size:18px;padding:12px 0}.room-image-wrap{aspect-ratio:1.32}.room-caption h3{font-size:30px}.ritual{min-height:500px}.ritual-grid{grid-template-columns:1fr}.ritual h3{font-size:49px}.horizon{min-height:650px}.horizon>img{object-position:58% center}.footer-top,.footer-bottom{align-items:start;flex-direction:column}.footer{padding-block:55px 35px}.footer-top{padding-bottom:35px}.detail-story{grid-template-columns:1fr;gap:35px}.detail-story h2{font-size:45px}.detail-related{padding-block:30px}.swatches{grid-template-columns:1fr 1fr}.detail-meta{flex-wrap:wrap}.detail-main-image{aspect-ratio:1.2}.detail-header nav a{display:block}}
@media(max-width:550px){.visual{top:18%;height:48%;bottom:auto}.visual img{object-fit:contain}.shade{background:linear-gradient(180deg,#241c1733,transparent 40%,#241c17 73%)}.stage-copy{bottom:155px}.stage-copy h1{font-size:54px}.stage-copy.inner h1{font-size:38px}.stage-copy p#scene-description{max-width:290px;font-size:11px;margin-top:12px}.stage-copy>p:first-child{font-size:8px;margin-bottom:10px}.stage-copy .viewpoint{font-size:9px;margin-top:7px;padding-top:4px}.stage-top{top:100px}.stage-top button{font-size:10px}.edition{max-width:140px}.tour-controls{width:100%;justify-content:space-between}.tour-controls #chapter-toggle{flex:1;justify-content:center}.tour-bottom{gap:8px}.scroll-hint{font-size:8px}.scroll-mark{font-size:22px}.tour-bottom>.text-button{font-size:9px;margin-left:auto}.tour-controls>button{min-height:44px;padding-block:8px}.intro-bottom{grid-template-columns:1fr;gap:30px}h2{font-size:43px}.room-tabs button{font-size:16px}.room-tabs button span:first-child{font-size:8px;width:12px}.room-tabs button{gap:3px}.room-caption h3{font-size:27px}.section-pad{padding-block:60px}.ritual{min-height:430px}.ritual>div{padding-block:40px}.ritual h3{font-size:43px}.horizon{min-height:610px}.horizon .section-number{font-size:8px}.horizon h2{font-size:54px}dialog{padding:35px 24px}dialog h2{font-size:39px}.detail-header .brand span{display:none}.detail-hero h1{font-size:51px}.detail-story h2{font-size:42px}.detail-main-image{aspect-ratio:1.1}.media-status{top:150px;right:24px}.chapter-menu{bottom:130px;max-height:56svh}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}.journey{height:100svh!important;min-height:650px}.stage{position:relative}.ritual:hover img{transform:none}.scroll-mark{display:none}.visual canvas{display:none}.stage-copy h1{font-size:clamp(44px,7vw,100px)}}

.media-pool{position:fixed;width:1px;height:1px;overflow:hidden;pointer-events:none;opacity:0;left:-2px;bottom:0}.media-pool video{width:1px;height:1px}

.stage-options{display:flex;align-items:center;gap:24px}.stage-options #motion-toggle{border-bottom:1px solid #fff8}.stage-copy{text-shadow:0 1px 18px #17110c55}.journey.still-mode{height:100svh;min-height:650px}.still-mode .stage{position:relative}.still-mode canvas{display:none}.still-mode .scroll-mark{display:none}@media(max-width:550px){.stage-options{gap:14px}.stage-options button{font-size:9px}.edition{max-width:110px;font-size:7px}}

/* Continuous-tour revision: architecture leads, captions stay out of the doorway. */
.stage-copy.inner{bottom:135px;max-width:540px}.stage-copy.inner h1{font-size:clamp(30px,3.4vw,49px);line-height:1.04}.stage-copy.inner #scene-description{display:none}.stage-copy.inner>p:first-child{margin-bottom:13px}.stage-copy.inner .viewpoint{border:0;padding:0;margin-top:16px;font-size:9px;letter-spacing:.05em}.visual canvas{transition:none}.still-mode .stage-copy.inner #scene-description{display:block}.still-mode .stage-copy{opacity:1!important}@media(max-width:550px){.stage-copy.inner{bottom:170px;max-width:310px}.stage-copy.inner h1{font-size:37px}.stage-copy.inner>p:first-child{font-size:8px;margin-bottom:12px}.stage-copy.inner .viewpoint{font-size:9px;margin-top:14px}}

.stage-copy.traveling h1,.stage-copy.traveling #scene-description{visibility:hidden}

/* Keep focus on tour controls from scrolling a sticky descendant into a different chapter. */
.tour-bottom,.stage-top,.chapter-menu{position:fixed}.journey.outside .tour-bottom,.journey.outside .stage-top,.journey.outside .chapter-menu{visibility:hidden;pointer-events:none}.still-mode .tour-bottom,.still-mode .stage-top,.still-mode .chapter-menu{position:absolute}@media(prefers-reduced-motion:reduce){.tour-bottom,.stage-top,.chapter-menu{position:absolute}}

@media(max-width:550px){.visual{inset:0;height:100%}.visual img{object-fit:cover}.shade{background:linear-gradient(180deg,#140f0ba6,transparent 35%,#140f0b33 55%,#140f0bdd)}.stage-copy.inner{bottom:155px}}
