:root{--bg:#151a17;--panel:#1c231e;--paper:#eee3cb;--gold:#d6b777;--text:#f5eddc;--muted:#bebcaa;--line:#ffffff24;--heading:'Cormorant Infant',Georgia,serif;--body:'Lora',Georgia,serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-padding-top:6rem;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:1rem/1.7 var(--body)}img{display:block;max-width:100%;height:auto}a{color:inherit}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}p,h1,h2,h3,figure{margin:0}p{text-wrap:pretty}h1,h2,h3{font-family:var(--heading);font-weight:500;line-height:1.05;text-wrap:balance}h2{font-size:clamp(2.6rem,4.4vw,4.8rem);letter-spacing:-.035em}h3{font-size:1.85rem}em{color:var(--gold);font-weight:400}a{text-underline-offset:5px}::selection{color:var(--bg);background:var(--gold)}.wrap{width:min(1264px,calc(100% - 7rem));margin-inline:auto}.chapter{padding-block:7.5rem}.eyebrow{font:500 .72rem/1.7 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.intro{font-size:1.1rem;line-height:1.85;color:#d9d8ca}.button{display:inline-flex;align-items:center;justify-content:center;gap:2rem;min-height:54px;padding:.95rem 1.5rem;background:var(--gold);border:1px solid var(--gold);color:#172019;text-decoration:none;font-size:.88rem;font-weight:600;line-height:1.3;transition:background .2s,transform .2s;border-radius:2px}.button:hover{background:#edcf91}.button span{font-size:1.2rem}.button.small{min-height:44px;padding:.7rem 1.15rem;gap:1.5rem;font-size:.8rem}.text-link{display:inline-flex;align-items:center;gap:1.8rem;min-height:44px;text-decoration:none;border-bottom:1px solid #b8a78380;font-size:.84rem;padding-block:.45rem}.text-link:hover{color:var(--gold)}.skip{position:fixed;z-index:99;top:0;left:1rem;padding:1rem;background:var(--gold);color:#151a17;transform:translateY(-130%)}.skip:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.header{height:98px;padding-inline:3.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;position:absolute;inset:0 0 auto;z-index:10;border-bottom:1px solid #d6b77728;background:linear-gradient(#10171070,transparent)}.brand{display:block;flex-shrink:0}.brand img{width:108px;height:69px;object-fit:contain}.header nav{display:flex;gap:2rem;align-items:center}.header nav a{font-size:.78rem;text-decoration:none;padding-block:.8rem;color:#ece7d6}.header nav a:hover{color:var(--gold)}
.hero{min-height:860px;min-height:max(800px,100svh);position:relative;display:flex;align-items:center;isolation:isolate;overflow:hidden;background:#25271e}.hero-art,.hero-shade{position:absolute;inset:0;z-index:-1;pointer-events:none}.hero-art{inset:-8%;transform:translateY(var(--parallax,0px))}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center 58%;filter:sepia(.4) brightness(.52);opacity:.76}.hero-shade{background:linear-gradient(180deg,#111a1790 0%,#131b1750 25%,#1119139c 65%,#151a17 100%),linear-gradient(90deg,#10171177,transparent 50%,#10171166)}.hero-content{text-align:center;padding-block:10.8rem 10rem}.hero .eyebrow{margin-bottom:2rem;color:#e7d2a9}.hero h1{font-size:clamp(3.2rem,6.8vw,7.15rem);letter-spacing:-.055em;line-height:1.02;text-shadow:0 3px 35px #0006}.hero h1 em{display:inline-block;font-size:1.18em;line-height:1.2}.hero-intro{max-width:650px;margin:1.65rem auto 0;color:#e1e0d1;font-size:1rem;line-height:1.9}.hero-actions{display:flex;justify-content:center;gap:2rem;align-items:center;margin-top:2rem}.hero-note{font-size:.7rem;color:#c8c8b8;margin-top:1.25rem}.hero-bottom{position:absolute;bottom:2rem;left:0;right:0;display:flex;justify-content:space-between;align-items:end;gap:1rem}.location-label{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.location-label>span{font-size:1.5rem;margin-right:.4rem;vertical-align:middle}.location-label small{display:block;font:normal .65rem/1.7 var(--body);color:#c7c4b4;margin-top:.3rem;letter-spacing:.06em}.scroll-cue{display:flex;flex-direction:column;align-items:center;font-size:.62rem;text-transform:uppercase;letter-spacing:.15em;text-decoration:none;color:#d6d5c7;min-height:44px}.scroll-cue span{font-size:1.8rem;color:var(--gold);line-height:1.4}.motion-control{font-size:.65rem;border:1px solid #d6b77750;min-height:44px;background:#141b1666;padding:.7rem 1rem;cursor:pointer;letter-spacing:.03em;display:flex;gap:.6rem;align-items:center}.motion-control[hidden]{display:none}.facts-band{border-block:1px solid var(--line);background:#18201a}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding-block:2rem}.facts p{display:flex;align-items:center;justify-content:center;gap:1rem;border-right:1px solid var(--line)}.facts p:last-child{border:0}.facts strong{font:500 2.7rem/1 var(--heading);color:var(--gold);white-space:nowrap}.facts strong small{font-size:1rem}.facts span{font-size:.73rem;color:var(--muted);line-height:1.5;max-width:90px}
.story{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;align-items:center}.story-visual{position:relative;padding:0 1.5rem 2rem 0}.image-frame{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--paper)}.image-frame img{width:100%;height:100%;object-fit:cover;filter:sepia(.15);transform:scale(1.1)}.image-frame:after{content:'';position:absolute;inset:1rem;border:1px solid #6c50385c;pointer-events:none}.image-caption{position:absolute;right:0;bottom:0;background:#233127;padding:1.4rem 2rem;border:1px solid #9d8d5650;box-shadow:0 15px 35px #0003;font:500 1.85rem/1.1 var(--heading)}.image-caption em{font-size:1.2em}.folio{position:absolute;top:-3.6rem;left:-1rem;font:500 7rem/1 var(--heading);color:var(--gold);opacity:.7}.story-copy h2{margin-block:1.25rem 2rem}.story-copy>p:not(.eyebrow){margin-bottom:1.4rem}.story-copy>p:not(.eyebrow):not(.intro){font-size:.94rem;color:var(--muted)}.historian-note{display:flex;gap:1rem;align-items:start;border-top:1px solid var(--line);padding-top:1.5rem;margin-top:2rem}.historian-note>span{font-size:1.4rem;color:var(--gold)}.historian-note p{font-size:.82rem;color:var(--muted)}.historian-note strong{display:block;color:var(--text);font-weight:500;margin-bottom:.3rem}
.cast-section{background:radial-gradient(ellipse at 45% 60%,#34433255,transparent 70%),#111713;border-block:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;gap:3rem;align-items:end;margin-bottom:3rem}.section-heading h2{margin-top:1rem}.section-heading>p{font-size:.85rem;line-height:1.8;color:var(--muted);max-width:330px;padding-bottom:.4rem}.cast-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.character{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:stretch;justify-content:end;padding:0;border:1px solid #ffffff24;background:radial-gradient(ellipse at 50% 50%,#52633c44,#20291d66 70%);cursor:pointer;text-align:left;overflow:hidden;min-width:0;border-radius:110px 110px 2px 2px;transition:border-color .25s,background .25s}.character.selected{border-color:var(--gold);background:radial-gradient(ellipse at 50% 50%,#b1904860,#29332188 70%)}.character:hover{border-color:#d6b77799}.character-index{position:absolute;top:1.15rem;left:50%;transform:translateX(-50%);font-size:.65rem;color:var(--gold);z-index:2}.character img{width:100%;aspect-ratio:221/330;object-fit:contain;object-position:bottom;filter:saturate(.65);padding-top:2rem;transition:transform .6s var(--ease),filter .6s}.character.selected img,.character:hover img{filter:saturate(1)}.character-caption{display:block;padding:1.1rem .9rem 1.4rem;min-height:100px;background:linear-gradient(#10181280,#101812);position:relative;z-index:1}.character-caption strong{display:block;font:500 clamp(1.15rem,1.6vw,1.8rem)/1.1 var(--heading);color:var(--text)}.character-caption small{display:block;margin-top:.5rem;font-size:.65rem;line-height:1.5;color:var(--muted)}.character-mark{display:none;position:absolute;bottom:.3rem;right:.6rem;color:var(--gold);font-size:1rem}.selected .character-mark{display:block}.character-detail{display:flex;gap:3rem;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:1.75rem 0;min-height:148px}.character-detail>div{max-width:660px}.character-detail .eyebrow{font-size:.66rem;margin-bottom:.4rem}.character-detail p:not(.eyebrow):not(.sr-only){font-size:.9rem;color:var(--muted)}.character-detail .text-link{white-space:nowrap;font-size:.75rem}
.mechanics>h2{margin:1rem 0 3rem}.mechanic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3.5rem;padding:0;list-style:none}.mechanic-grid li{border-top:1px solid var(--line);padding-top:1.4rem}.step-number{font:400 2.6rem/1 var(--heading);color:var(--gold);display:flex;justify-content:space-between;align-items:center}.step-number span{font-size:1.2rem;opacity:.4}.mechanic-grid h3{margin:1.5rem 0 1rem}.mechanic-grid p{color:var(--muted);font-size:.9rem}.route-section{background:var(--paper);color:#293326;background-image:linear-gradient(#eee3cbeb,#eee3cbeb),url('parchment.webp');background-size:auto,500px}.route-section em,.route-section .eyebrow{color:#775124}.route-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%}.route-intro h2{margin:1rem 0 1.5rem}.route-intro .intro{color:#5c5e4c;font-size:1rem}.map-figure{margin-top:2.5rem;border:1px solid #423c2a45;padding:.6rem}.map-figure img{width:100%;aspect-ratio:1.4;object-fit:cover;filter:sepia(.15);mix-blend-mode:multiply}.map-figure figcaption{display:flex;justify-content:space-between;gap:1rem;font-size:.66rem;padding:.6rem .3rem .1rem;color:#5d5037}.route-list{padding-top:.5rem}.route-bookend{display:flex;gap:1.2rem;align-items:center;padding:1rem 0 1.8rem}.route-bookend:last-child{padding:1.8rem 0 0}.route-bookend>span:first-child{color:#7b5730;font-size:2rem;width:30px;text-align:center}.route-bookend strong{font-size:.88rem;font-weight:500;display:block}.route-bookend small{font-size:.75rem;color:#6e664f}.route-stop{border-top:1px solid #695c3940}.route-stop:last-of-type{border-bottom:1px solid #695c3940}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.route-stop summary{display:flex;align-items:center;gap:1.1rem;padding-block:1.55rem;min-height:76px}.route-stop h3{font-size:1.7rem;flex:1}.route-number{font:400 1.2rem/1 var(--heading);color:#856536;width:30px;text-align:center;flex-shrink:0}.expand{font:400 1.5rem/1 var(--body);color:#775124}.route-stop[open] .expand{transform:rotate(45deg)}.route-content{padding:0 1rem 1.6rem 3rem}.route-content p{font-size:.87rem;color:#545746;line-height:1.85}.route-content .eyebrow{display:block;font-size:.62rem;margin-top:1rem}.interlude{position:relative;overflow:hidden;text-align:center;padding:7rem 0;isolation:isolate;background:#141d16}.interlude>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.13;filter:sepia(1);z-index:-2}.interlude:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#151a17ee,#151a1740,#151a17ee),linear-gradient(#151a17,transparent,#151a17)}.interlude-quote{font:400 clamp(2.5rem,5vw,5rem)/1.12 var(--heading);letter-spacing:-.035em;margin-block:1.5rem}.interlude .wrap>p:last-child{font-size:.84rem;color:var(--muted)}
.departure{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center}.departure h2{margin-block:1rem 1.5rem}.departure .intro{font-size:1rem;max-width:540px}address{font-style:normal;border-left:1px solid var(--gold);padding-left:1.2rem;margin-block:2rem 1rem;font-size:.9rem}address span,address strong{display:block}address span{color:var(--muted)}address strong{font-weight:500}.departure-card{position:relative;padding:2.7rem;background:#233025;border:1px solid #d6b77766;outline:1px solid #d6b77725;outline-offset:-9px}.departure-card h3{font-size:3.2rem;margin-block:1.2rem 1rem}.departure-card>p:not(.eyebrow){font-size:.9rem;color:#d5d5c2}.departure-card .button{width:100%;margin-top:1.8rem}.departure-card .small-note{font-size:.64rem!important;text-align:center;margin-top:.8rem}.qr{display:flex;align-items:center;gap:1.3rem;padding-top:1.5rem;border-top:1px solid var(--line);margin-top:1.5rem}.qr img{background:#fff;padding:6px;width:100px;height:100px}.qr p{font-size:.72rem;color:#d5d5c2}.qr strong{font-weight:500}.qr a{display:block;color:var(--gold);margin-top:.4rem;font-size:.7rem}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:6%;padding-bottom:7.5rem}.faq h2{margin-top:1rem}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.3rem;font-size:.92rem}.faq-list summary span{color:var(--gold);font-size:1.5rem}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details>p{font-size:.85rem;color:var(--muted);padding:0 2rem 1.5rem 0;max-width:650px}.faq-list details>p a{color:var(--gold)}footer{background:#101611;border-top:1px solid var(--line);padding:3rem 0 2rem}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-bottom:2rem}.footer-top p{font:400 1.8rem/1.1 var(--heading);text-align:center}.footer-top .text-link{font-size:.7rem}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-top:1.6rem;border-top:1px solid var(--line);font-size:.66rem;color:#b8bdac}.footer-bottom nav{display:flex;gap:1.4rem;flex-wrap:wrap}.footer-bottom nav a{min-height:44px;display:inline-flex;align-items:center;text-decoration:none}.mobile-action{display:none}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.hero-enter{animation:enter 1s var(--ease) both}.hero-enter:nth-child(2){animation-delay:.12s}.hero-enter:nth-child(3){animation-delay:.24s}.hero-enter:nth-child(4){animation-delay:.36s}.hero-enter:nth-child(5){animation-delay:.42s}.reveal.is-visible{animation:enter .8s var(--ease) both}.character:hover img{transform:scale(1.035)}.button:active{transform:scale(.96)}@keyframes enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}
.motion-paused *{animation:none!important;transition:none!important}.motion-paused{scroll-behavior:auto!important}.motion-paused .hero-art{transform:none!important}
@media(min-width:1700px){.hero h1{font-size:7.6rem}.hero-content{padding-block:13rem}}
@media(max-width:1100px){.wrap{width:calc(100% - 4rem)}.header{padding-inline:2rem}.header nav{gap:1.2rem}.header nav a{font-size:.68rem}.chapter{padding-block:5rem}.story{gap:6%}.cast-grid{gap:.65rem}.character-caption{padding:1rem .55rem}.character-caption small{font-size:.61rem}.character-detail{gap:2rem}.character-detail .text-link{white-space:normal}.facts p{gap:.6rem}.facts strong{font-size:2.3rem}.facts span{font-size:.65rem}.departure-card{padding:2rem}.mechanic-grid{gap:2rem}.faq{padding-bottom:5rem}}
@media(max-width:760px){html{scroll-padding-top:1rem}.wrap{width:calc(100% - 2.5rem)}.header{height:80px;padding-inline:1.25rem}.header .brand img{width:86px;height:57px}.header nav{display:none}.hero{min-height:max(720px,100svh);align-items:center}.hero-art{inset:-5% -45%;}.hero-art img{object-position:48% center}.hero-shade{background:linear-gradient(#131b1788,#131b17a8 45%,#151a17 100%)}.hero-content{padding-block:9rem 10rem}.hero .eyebrow{max-width:270px;margin:0 auto 1.5rem;font-size:.6rem;letter-spacing:.17em;line-height:1.9}.hero h1{font-size:clamp(2.7rem,9.2vw,4.5rem);line-height:1.08;letter-spacing:-.045em}.hero h1 em{font-size:1.1em;margin-top:.2rem}.hero-intro{font-size:.9rem;margin-top:1.3rem;line-height:1.9;max-width:420px}.hero-intro br{display:none}.hero-actions{flex-direction:column;gap:.9rem;margin-top:1.6rem}.hero-actions .button{width:min(100%,340px);min-height:56px}.hero-actions .text-link{font-size:.75rem}.hero-note{font-size:.61rem;max-width:280px;margin:1.1rem auto 0}.hero-bottom{bottom:1.6rem;align-items:center}.location-label{font-size:.57rem;letter-spacing:.07em}.location-label small{font-size:.57rem}.scroll-cue{display:none}.motion-control{font-size:.6rem;padding:.6rem .75rem}.facts{grid-template-columns:repeat(2,1fr);padding-block:1.5rem;gap:1.5rem .7rem}.facts p{justify-content:start;gap:.8rem;padding-left:.5rem}.facts p:nth-child(2){border:0}.facts strong{font-size:2.3rem}.facts span{font-size:.68rem;max-width:85px}.chapter{padding-block:4rem}.story{grid-template-columns:1fr;gap:3rem}.story-copy{order:-1}.story-copy h2{font-size:3rem;margin:1rem 0 1.5rem}.eyebrow{font-size:.62rem;letter-spacing:.12em}.story-copy>p:not(.eyebrow){font-size:.94rem}.story-visual{margin:1rem auto 0;max-width:430px;width:100%;padding-right:1.25rem}.image-frame{aspect-ratio:1.1}.folio{font-size:5rem;top:-2.2rem;left:.6rem}.image-caption{font-size:1.65rem;padding:1rem 1.4rem}.section-heading{display:block;margin-bottom:2rem}.section-heading>p{margin-top:1.4rem;font-size:.82rem;max-width:none}.section-heading h2{font-size:2.9rem}.cast-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.9rem;padding:4px 2px 1rem;margin:0 -1.25rem;padding-inline:1.25rem;scroll-padding-inline:1.25rem;scrollbar-width:thin;scrollbar-color:#8d7a51 #233025}.character{flex:0 0 62%;scroll-snap-align:start;max-width:260px;border-radius:140px 140px 2px 2px}.character img{aspect-ratio:221/280;padding-top:1.4rem}.character-caption{padding:1rem 1.1rem 1.3rem;min-height:86px}.character-caption strong{font-size:1.8rem}.character-caption small{font-size:.7rem}.character-detail{display:block;min-height:240px;padding-block:1.5rem}.character-detail .text-link{margin-top:1rem;font-size:.75rem}.mechanics>h2{font-size:2.9rem;margin-bottom:2rem}.mechanic-grid{grid-template-columns:1fr;gap:1.8rem}.mechanic-grid li{display:grid;grid-template-columns:44px 1fr;gap:.5rem 1rem}.step-number{font-size:2rem;grid-row:1/3;padding-top:.25rem;display:block}.step-number span{display:none}.mechanic-grid h3{margin:0;font-size:1.8rem}.mechanic-grid p{font-size:.87rem;grid-column:2}.route-grid{grid-template-columns:1fr;gap:2rem}.route-intro h2{font-size:3rem}.map-figure{margin-top:2rem}.map-figure img{aspect-ratio:1.55}.route-stop summary{padding-block:1.35rem;gap:.6rem}.route-stop h3{font-size:1.55rem}.route-content{padding-left:2.5rem}.interlude{padding:4rem 0}.interlude-quote{font-size:2.8rem}.interlude .wrap>p:last-child{font-size:.8rem;max-width:270px;margin:auto}.departure{grid-template-columns:1fr;gap:2.5rem}.departure h2{font-size:3rem}.departure-card{padding:2rem 1.6rem}.departure-card h3{font-size:3rem}.qr{display:none}.faq{grid-template-columns:1fr;gap:1.5rem;padding-block:0 4rem}.faq h2{font-size:2.9rem}.faq-list summary{font-size:.88rem}.faq-list details>p{font-size:.84rem}.footer-top{flex-wrap:wrap;gap:1.5rem;padding-bottom:1.5rem}.footer-top .brand img{width:90px;height:60px}.footer-top p{font-size:1.5rem;text-align:right}.footer-top .text-link{display:none}.footer-bottom{flex-direction:column-reverse;align-items:start;gap:1rem}.footer-bottom nav{gap:.3rem 1.2rem}.footer-bottom{font-size:.65rem}footer{padding-bottom:7rem}.mobile-action{display:flex;position:fixed;inset:auto 0 0;z-index:15;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1.25rem calc(.7rem + env(safe-area-inset-bottom));background:#172019f7;border-top:1px solid #d6b77760;box-shadow:0 -6px 30px #0003;transform:translateY(120%);visibility:hidden;transition:transform .3s,visibility .3s}.mobile-action.visible{transform:none;visibility:visible}.mobile-action>span{font-size:.72rem;line-height:1.5}.mobile-action small{display:block;color:var(--muted);font-size:.61rem}.mobile-action .button{min-width:106px}.motion-paused .mobile-action{transition:none}}
@media(max-width:359px){.hero h1{font-size:2.6rem}.wrap{width:calc(100% - 2rem)}.hero-intro{font-size:.85rem}.hero-bottom{gap:.4rem}.location-label{font-size:.53rem}.facts strong{font-size:2rem}.facts span{font-size:.62rem}.departure-card{padding:2rem 1.2rem}.button{gap:1rem;font-size:.8rem}.route-stop h3{font-size:1.35rem}.character{flex-basis:75%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-art{transform:none!important}}
/* Keep secondary copy comfortably readable on both touch and desktop screens. */
@media(max-width:359px){.cast-grid{margin-inline:-1rem;padding-inline:1rem;scroll-padding-inline:1rem}}
.eyebrow,.hero-note,.motion-control,.location-label,.location-label small,.scroll-cue,.character-index,.character-detail .eyebrow,.route-content .eyebrow,.map-figure figcaption,.departure-card .small-note,.footer-bottom{font-size:.75rem!important}.header nav a,.button.small,.character-caption small,.facts span,.character-detail .text-link,.qr p,.qr a,.footer-top .text-link{font-size:.8rem}.footer-bottom nav{gap:.5rem 1.4rem}.hero-note{line-height:1.7}.character-caption{min-height:112px}.character-caption small{line-height:1.5}.location-label{letter-spacing:.06em}.scroll-cue{letter-spacing:.1em}
@media(max-width:760px){.hero-note{max-width:310px}.hero .eyebrow{font-size:.72rem!important}.location-label,.location-label small,.motion-control{font-size:.65rem!important}.character-caption{min-height:100px}.mobile-action>span{font-size:.8rem}.mobile-action small{font-size:.72rem}.hero-bottom .location-label{max-width:165px}.hero-note{margin-top:.9rem}}

/* BYQ adaptations: cinematic gallery, sticky process, editorial image tabs.
   Original tokens, fonts and static hosting are deliberately retained. */
.cast-v2 .section-heading,.mechanics-v2 .section-heading,.route-v2 .section-heading{margin-bottom:3.5rem}
.persona-stage{display:grid;grid-template-columns:1fr 1.12fr;background:#1d291f;border:1px solid #d6b77740;min-height:460px;position:relative;isolation:isolate}
.persona-art{position:relative;display:grid;place-items:end center;overflow:hidden;min-width:0;background:radial-gradient(ellipse at 50% 52%,#b5985260,transparent 68%),linear-gradient(135deg,#28372a,#111a14)}
.persona-art:before{content:'';position:absolute;inset:8% 15% -10%;border:1px solid #d6b77745;border-radius:50% 50% 0 0;pointer-events:none}
.persona-art:after{content:'';position:absolute;inset:auto 0 0;height:24%;background:linear-gradient(transparent,#141e16)}
.persona-art>img{height:430px;max-height:100%;width:85%;object-fit:contain;object-position:bottom;position:relative;z-index:1;filter:drop-shadow(0 12px 30px #0005)}
.persona-seal{position:absolute;left:1.5rem;top:1rem;font:400 2.2rem/1 var(--heading);color:var(--gold)}
.persona-folio{position:absolute;inset:auto 1.5rem 1.25rem;z-index:2;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;color:var(--gold)}
.persona-copy{padding:3rem clamp(1.5rem,4vw,4rem);align-self:center;min-width:0}
.persona-copy>.eyebrow{display:flex;justify-content:space-between;gap:1rem;font-size:.65rem!important}
#persona-count{white-space:nowrap;font-variant-numeric:tabular-nums}
.persona-copy h3{font-size:clamp(2.7rem,4.3vw,4.5rem);margin:.75rem 0 1rem;letter-spacing:-.035em}
.persona-mission{font:italic 1.75rem/1.2 var(--heading);color:var(--gold);margin-bottom:1.15rem}
#persona-description{font-size:.95rem;color:#dedfd0;max-width:48ch;min-height:5.2em}
.persona-quality{display:flex;gap:1rem;align-items:center;margin:1.5rem 0 1rem;font-size:.8rem;border-top:1px solid var(--line);padding-top:1rem}
.persona-quality span{color:var(--muted)}.persona-quality strong{font-weight:500;color:var(--gold)}
.persona-note{font-size:.72rem;line-height:1.6;color:var(--muted);margin-top:1rem;max-width:40ch}
.selector-label{text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;color:var(--muted);margin:1.8rem 0 .8rem}
.persona-selector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin-bottom:1.25rem}
.persona-selector button{cursor:pointer;position:relative;display:flex;gap:1rem;align-items:center;padding:.5rem 1rem .5rem .5rem;text-align:left;background:#1c281e;border:1px solid #ffffff26;min-width:0;transition:background .2s,border-color .2s}
.persona-selector button[aria-pressed=true]{background:#33402c;border-color:var(--gold)}
.persona-selector button:hover{border-color:var(--gold)}.persona-selector button img{width:56px;height:75px;object-fit:contain;object-position:bottom}
.persona-selector button>span{font:500 1.3rem/1.2 var(--heading)}.persona-selector button small{font:400 .65rem/1 var(--body);display:block;margin-bottom:.5rem;color:var(--gold)}
.persona-selector .selected-tick{position:absolute;right:.45rem;top:.3rem;color:var(--gold);font-size:.8rem;visibility:hidden}
.persona-selector [aria-pressed=true] .selected-tick{visibility:visible}
.gameplay-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}
html:not(.byq-ready) .gameplay-layout{display:block}
.gameplay-sticky{position:sticky;top:2rem;text-align:center;padding:1.5rem 0;isolation:isolate;display:none}
.byq-ready .gameplay-sticky{display:block}.phone-halo{position:absolute;inset:0 -10%;z-index:-1;background:radial-gradient(ellipse,#7b85454f,transparent 65%)}
.phone-frame{position:relative;width:min(300px,100%);border:7px solid #353a31;border-radius:32px;padding:4px;background:#0b110d;box-shadow:0 28px 65px #0005,0 0 0 1px #a5a48a5c;margin:auto;overflow:hidden}
.phone-frame img{width:100%;aspect-ratio:390/844;object-fit:cover;border-radius:21px}
.gameplay-caption{display:flex;justify-content:center;gap:1rem;margin-top:1.25rem;font-size:.8rem;color:var(--text)}#gameplay-counter{color:var(--gold);font-variant-numeric:tabular-nums}
.capture-note{display:block;color:var(--muted);font-size:.68rem;margin-top:.4rem}
.gameplay-steps{margin:0;padding:0;list-style:none;min-width:0}
.gameplay-steps li{padding:4rem 0;min-height:380px;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid var(--line)}
.gameplay-steps li:first-child{padding-top:2rem}.gameplay-copy h3{font-size:clamp(2rem,3.2vw,3.1rem);margin:1rem 0 1.25rem}
.gameplay-copy>p{color:var(--muted);font-size:1rem;max-width:43ch}.preview-trigger{background:none;border:0;border-bottom:1px solid #d6b77770;color:var(--muted);cursor:pointer;margin-top:1.5rem;font-size:.8rem}
.preview-trigger[aria-pressed=true]{color:var(--gold)}.preview-trigger[aria-pressed=true] span{transform:rotate(45deg)}
.gameplay-mobile{max-width:260px;margin:2rem auto 0}.gameplay-mobile img{border:5px solid #48513f;border-radius:18px}.gameplay-mobile figcaption{font-size:.72rem;text-align:center;color:var(--muted);margin-top:.8rem}
.byq-ready .gameplay-mobile{display:none}.gameplay-end{border-top:1px solid var(--line);padding-top:1.5rem;margin-top:2rem;display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.85rem}.gameplay-end a{color:var(--gold)}
.journey-layout{display:grid;grid-template-columns:1.08fr 1fr;gap:7%;align-items:start}.route-v2 .section-heading>p{color:#545746}
.journey-visual{position:sticky;top:2rem;min-width:0}.journey-photo{position:relative;background:#3d3b2a;overflow:hidden;border:1px solid #67522f66}
.journey-photo>img{width:100%;height:290px;object-fit:cover;object-position:center 45%}
.journey-photo figcaption{position:absolute;inset:auto 0 0;padding:3rem 1.3rem 1.2rem;background:linear-gradient(transparent,#131b16ee);color:var(--text)}
.journey-photo figcaption span{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#ebcb8b;display:block;margin-bottom:.4rem}
.journey-photo figcaption strong{font:500 1.8rem/1.15 var(--heading)}
.journey-map{position:relative;width:100%;height:280px;margin-top:1rem;color:#6c5833;border:1px solid #78613d40;background:#f5ead2}
.journey-map svg{position:absolute;inset:0;width:100%;height:100%;font:12px var(--body)}.map-line{fill:none;stroke:#947143;stroke-width:1.5;stroke-dasharray:5 5}
.journey-map button{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);border:1px solid #765b30;width:44px;height:44px;border-radius:50%;background:var(--paper);color:#44391f;font:600 1.1rem/1 var(--heading);cursor:pointer;box-shadow:0 2px 6px #45341c1a;transition:background .2s,color .2s}
.journey-map button[aria-pressed=true]{background:#293b2c;color:#fff0cb;border-color:#293b2c;box-shadow:0 0 0 4px #293b2c2b}
.route-v2 button:focus-visible,.route-v2 summary:focus-visible{outline:3px solid #293b2c;outline-offset:4px}
.map-disclaimer{font-size:.72rem;line-height:1.6;color:#645c46;margin-top:.6rem;max-width:56ch}
.journey-start{display:flex;align-items:center;gap:1rem;padding:0 0 1.6rem;color:#3e4935}.journey-start>span:first-child{font-size:2rem;color:#805d2a}.journey-start strong,.journey-start small{display:block}.journey-start strong{font-size:.87rem;font-weight:600}.journey-start small{font-size:.75rem;margin-top:.2rem}.journey-return{padding-top:1.7rem}
.journey-stop{border-top:1px solid #6b5b3d42}.journey-stop:last-of-type{border-bottom:1px solid #6b5b3d42}.journey-stop summary{display:flex;align-items:center;gap:1rem;min-height:84px;padding-block:1.2rem}
.journey-stop h3{font-size:1.75rem;flex:1;line-height:1.15}.stop-number{font:500 1.25rem/1 var(--heading);color:#79542b;min-width:24px}.journey-stop[open] .expand{transform:rotate(45deg)}
.stop-content{padding:0 0 1.7rem 2.5rem}.stop-content>p{font-size:.9rem;color:#4e5541;line-height:1.8}.stop-content .eyebrow{display:block;margin-top:.9rem;font-size:.65rem!important}
.stop-mobile-image{display:none;margin-top:1.2rem;width:100%;height:210px;object-fit:cover;border:1px solid #0002}
@media(prefers-reduced-motion:no-preference){.persona-selector button:active{scale:.96}.byq-image-enter{animation:byq-image .35s ease-out}@keyframes byq-image{from{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}
@media(min-width:761px) and (max-height:820px){.phone-frame{width:240px}.gameplay-sticky{top:1rem;padding-block:0}.journey-photo>img{height:230px}.journey-map{height:240px}.journey-visual{top:1rem}}
@media(max-width:1000px){.persona-copy{padding:2rem}.persona-selector button{gap:.5rem;padding-right:.5rem}.persona-selector button>span{font-size:1.1rem}.persona-selector button img{width:42px;height:64px}.gameplay-layout{gap:5%}.journey-layout{gap:5%}.journey-stop h3{font-size:1.55rem}}
@media(max-width:760px){
 .cast-v2 .section-heading,.mechanics-v2 .section-heading,.route-v2 .section-heading{margin-bottom:2rem}
 .persona-stage{grid-template-columns:1fr;min-height:0}.persona-art{min-height:230px}.persona-art>img{height:245px;width:65%;max-width:260px}.persona-art:before{inset:5% 22% -20%}.persona-folio{font-size:.62rem}.persona-copy{padding:1.5rem}.persona-copy h3{font-size:2.75rem}.persona-mission{font-size:1.6rem}#persona-description{font-size:.9rem;min-height:0}.persona-copy>.eyebrow{flex-wrap:wrap}.persona-quality{margin-top:1.2rem}.persona-note{font-size:.7rem}
 .persona-selector{gap:.5rem;grid-template-columns:repeat(4,minmax(0,1fr))}.persona-selector button{flex-direction:column;text-align:center;padding:.4rem .2rem .7rem;gap:.5rem}.persona-selector button img{width:100%;height:75px}.persona-selector button>span{font:400 .7rem/1.5 var(--body);overflow-wrap:anywhere}.persona-selector button small{display:none}.selector-label{margin-top:1.2rem;font-size:.65rem}
 .gameplay-layout{display:block}.byq-ready .gameplay-sticky{display:none}.byq-ready .gameplay-mobile{display:block}.gameplay-steps li{padding:2rem 0;min-height:0}.gameplay-copy h3{font-size:2.35rem}.gameplay-copy>p{font-size:.93rem}.preview-trigger{display:none}.gameplay-end{flex-direction:column}.gameplay-mobile{max-width:230px}.gameplay-steps li:last-child{border:0}
 .journey-layout{display:flex;flex-direction:column;gap:2rem}.journey-visual{position:static;width:100%}.journey-photo{display:none}.journey-map{height:260px;margin-top:0}.journey-map button{width:44px;height:44px}.journey-stops{width:100%}.journey-stop h3{font-size:1.5rem}.journey-stop summary{min-height:76px;gap:.75rem}.stop-content{padding-left:2.2rem}.stop-mobile-image{display:block}.journey-start{padding-bottom:1.2rem}.map-disclaimer{font-size:.7rem}.journey-map svg text{font-size:14px}
}
@media(max-width:359px){.persona-copy{padding:1.2rem}.persona-selector button>span{font-size:.65rem}.persona-selector button img{height:62px}.persona-art>img{height:210px}.persona-art{min-height:210px}}
@media(forced-colors:active){.persona-selector button[aria-pressed=true],.journey-map button[aria-pressed=true]{outline:3px solid Highlight}.persona-selector .selected-tick{color:ButtonText}}
