@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700&display=swap');

:root{--ink:#0c1110;--paper:#e9e7df;--cream:#f3efd9;--gold:#e8b65c;--sun:#f06a32;--muted:rgba(255,255,255,.57);--ease:cubic-bezier(.22,.72,.16,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;background:var(--ink);color:#fff;font-family:"Noto Sans KR",sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none} button{font:inherit} em{font:inherit}
.page-progress{position:fixed;left:0;top:0;right:0;height:2px;z-index:100;background:rgba(255,255,255,.08)}.page-progress i{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(0);transform-origin:left}
.frame-debug{position:fixed;z-index:96;right:22px;bottom:19px;min-width:116px;padding:10px 11px;border:1px solid rgba(255,255,255,.2);background:rgba(5,10,10,.58);backdrop-filter:blur(12px);display:grid;grid-template-columns:1fr auto;gap:3px 12px;color:rgba(255,255,255,.72);pointer-events:none;font-variant-numeric:tabular-nums}.frame-debug span{font-size:6px;font-weight:700;letter-spacing:.16em}.frame-debug b{grid-row:1/3;grid-column:2;font-size:24px;line-height:1;font-weight:600;letter-spacing:-.04em;color:#fff}.frame-debug small{font-size:7px;font-weight:600;letter-spacing:.1em;color:var(--gold)}
.site-header{position:fixed;z-index:80;top:0;left:0;right:0;height:82px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12);transition:background .45s,border-color .45s,transform .45s}.site-header.is-scrolled{background:rgba(9,13,12,.74);backdrop-filter:blur(18px);border-color:rgba(255,255,255,.09)}
.brand{display:flex;align-items:center;gap:13px}.brand strong{font-size:28px;letter-spacing:-.08em}.brand span{font-size:7px;font-weight:700;line-height:1.25;letter-spacing:.13em;color:rgba(255,255,255,.55)}
.site-header nav{display:flex;align-items:center;gap:34px;font-size:8px;font-weight:700;letter-spacing:.14em}.site-header nav>a:not(.header-apply){color:rgba(255,255,255,.62)}.header-actions{display:flex;align-items:center;gap:10px}.header-apply{display:flex;gap:25px;align-items:center;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:13px 16px 13px 19px;transition:.25s}.header-apply:hover{background:#fff;color:var(--ink)}

.intro-scroll{height:225vh;position:relative;background:#111817}.intro-sticky{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#071117,#18323b 52%,#a7664b 84%,#251f1a)}.intro-sky,.intro-grain,.intro-sun{position:absolute;inset:0;pointer-events:none}.intro-sky{background:linear-gradient(180deg,#080e11 0%,#182c35 39%,#a7654a 66%,#d5a469 82%,#201c18 82.3%,#0c1110 100%);z-index:-5}.intro-sky:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 72% 66%,rgba(255,190,119,.42),transparent 30%),linear-gradient(90deg,rgba(2,8,9,.7),transparent 45%,rgba(5,7,7,.12))}.intro-sun{inset:auto 22% 17.2% auto;width:12vw;aspect-ratio:1;border-radius:50%;background:#f5c578;box-shadow:0 0 80px rgba(245,167,87,.52);z-index:-4}.intro-grain{opacity:.15;z-index:-1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}
.intro-meta{position:absolute;left:38px;right:38px;top:106px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.14em;color:rgba(255,255,255,.48)}
.intro-copy{position:absolute;left:8.2vw;top:27%;will-change:transform,opacity}.intro-copy>p{font-size:9px;font-weight:700;letter-spacing:.2em;color:rgba(255,255,255,.58);margin:0 0 25px}.intro-copy h1{font-size:clamp(44px,4.9vw,78px);font-weight:600;line-height:1.08;letter-spacing:-.045em;margin:0;word-break:keep-all}.intro-copy h1 span{color:#f19a67;font-weight:500}.intro-deck{margin-top:30px;padding-top:16px;border-top:1px solid rgba(255,255,255,.28);display:grid;grid-template-columns:150px 1fr;max-width:640px}.intro-deck span{font-size:8px;font-weight:700;letter-spacing:.14em}.intro-deck p{font-size:12px;line-height:1.8;color:rgba(255,255,255,.68);margin:0;word-break:keep-all}
.intro-copy>p{font-size:18px}.intro-deck>span{font-size:16px}.intro-deck>p{font-size:18px}
.intro-handoff{position:absolute;z-index:4;inset:0;pointer-events:none}.intro-handoff-copy{position:absolute;left:7.8vw;top:23%;opacity:0;transform:translate3d(0,38px,0);will-change:opacity,transform}.intro-handoff-copy h2{font-size:clamp(38px,3.7vw,60px);font-weight:600;line-height:1.12;letter-spacing:-.045em;margin:0;word-break:keep-all}.intro-handoff-copy h2 span{color:var(--cream);font-weight:500}.intro-handoff-copy p{font-size:12px;line-height:1.85;color:rgba(255,255,255,.62);margin:25px 0 0;word-break:keep-all}.intro-handoff-line{position:absolute;left:15%;right:26%;top:54.16%;height:2px}.intro-handoff-line i{display:block;width:100%;height:100%;background:var(--cream);box-shadow:0 0 7px rgba(255,225,160,.55),0 0 18px rgba(232,182,92,.28);transform:scaleX(0);transform-origin:right center;opacity:0;will-change:transform,opacity}
.intro-handoff-copy{z-index:3}.intro-handoff-line{z-index:2}.intro-handoff-sun-mask{--handoff-sun-size:clamp(58px,7.2vw,108px);--handoff-mask-height:clamp(87px,10.8vw,162px);position:absolute;z-index:1;left:84%;top:calc(54.16% - var(--handoff-mask-height));width:clamp(116px,14.4vw,216px);height:var(--handoff-mask-height);overflow:hidden;transform:translateX(-50%)}.intro-handoff-sun-mask i{position:absolute;left:25%;top:calc(100% - var(--handoff-sun-size));width:var(--handoff-sun-size);height:var(--handoff-sun-size);border-radius:50%;background:radial-gradient(circle at 42% 38%,#ffe6a8 0%,#f7c36f 58%,#eaa055 100%);box-shadow:0 0 24px rgba(250,190,103,.56),0 0 42px rgba(242,147,75,.24);opacity:0;transform:translate3d(0,100%,0);will-change:transform,opacity}
.gateway{position:absolute;left:38px;right:38px;bottom:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid rgba(255,255,255,.19);background:rgba(5,9,8,.37);backdrop-filter:blur(14px);will-change:transform,opacity}.gateway a{min-height:135px;padding:23px 25px;display:flex;flex-direction:column;justify-content:center;gap:6px;border-right:1px solid rgba(255,255,255,.17);transition:background .28s,color .28s}.gateway a:last-child{border-right:0}.gateway a:hover{background:rgba(255,255,255,.12)}.gateway .gateway-apply{background:rgba(180,134,59,.2)}.gateway strong{font-size:22px;line-height:1.16;letter-spacing:-.045em}.gateway p{max-width:34em;margin:0 0 2px;color:rgba(255,255,255,.68);font-size:clamp(11px,.72vw,13px);line-height:1.45;word-break:keep-all}.gateway span{font-size:8px;font-weight:600;letter-spacing:.08em;opacity:.55}.intro-scroll-cue{position:absolute;z-index:6;left:50%;bottom:174px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;color:rgba(255,255,255,.68);text-align:center;will-change:opacity}.intro-scroll-cue span{font-size:7px;font-weight:700;letter-spacing:.2em;white-space:nowrap}.intro-scroll-cue b{font-size:11px;font-weight:400;line-height:1;animation:scrollCueFloat 1.9s ease-in-out infinite}@keyframes scrollCueFloat{0%,100%{transform:translateY(0);opacity:.5}50%{transform:translateY(7px);opacity:1}}

/* INVARIANT: the area below the moving horizon must reuse the hero photograph's real sea pixels. Never replace this layer with a solid or synthetic gradient fill. */
.intro-sky{--intro-horizon-y:76%;--intro-image-width:100vw;--intro-image-height:100vh;--intro-sea-image-height:100vh;background-image:linear-gradient(90deg,rgba(3,10,15,.5) 0%,rgba(3,10,15,.16) 47%,rgba(3,10,15,.02) 75%),linear-gradient(180deg,rgba(3,8,11,.12),transparent 55%,rgba(4,9,10,.28)),url('./assets/hero-sunrise-drawing-v01.png');background-size:100% 100%,100% 100%,var(--intro-image-width) var(--intro-image-height);background-position:center center,center center,center center;background-repeat:no-repeat;will-change:background-position,opacity}.intro-sky:before{content:"";position:absolute;left:0;right:0;top:var(--intro-horizon-y);bottom:0;background-image:url('./assets/hero-sunrise-drawing-v01.png');background-size:var(--intro-image-width) var(--intro-sea-image-height);background-position:center bottom;background-repeat:no-repeat}.intro-sky:after{background:linear-gradient(90deg,rgba(2,8,12,.48),transparent 48%),radial-gradient(ellipse at 76% 72%,rgba(255,195,115,.1),transparent 28%)}.intro-sun{display:none}

.brochure-scroll{height:750vh;position:relative;margin-top:-100svh;background:transparent}.brochure-sticky{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;isolation:isolate;background:#0b1212;opacity:0;will-change:opacity}.sky-layer,.sky-layer>div,.map-grid,.places-layer,.memory-layer{position:absolute;inset:0}.sky-layer{z-index:-7;background:#0b1212}.sky-layer>div{transition:none}.sky-dawn{background:linear-gradient(180deg,#071117,#18323b 52%,#a7664b 84%,#251f1a);opacity:1}.sky-day{background:radial-gradient(circle at 72% 23%,rgba(215,235,222,.2),transparent 24%),linear-gradient(160deg,#9aafa7,#5f7b72 50%,#263b34);opacity:0}.sky-sunset{background:radial-gradient(circle at 72% 60%,rgba(255,186,89,.65),transparent 12%),linear-gradient(180deg,#17213a,#7d4252 55%,#d27145 80%,#321c1d);opacity:0}.sun-orb{inset:auto 11% 11% auto!important;width:15vw;aspect-ratio:1;border-radius:50%;background:#ffc56f;box-shadow:0 0 90px rgba(255,151,71,.6);opacity:0}
.map-grid{z-index:-5;opacity:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,transparent 5%,#000 35%,#000)}.map-grid:after{content:"37° N";position:absolute;right:45px;top:105px;font-size:8px;letter-spacing:.16em;color:rgba(255,255,255,.35)}
.journey-svg{position:absolute;z-index:10;inset:5% 2% 2%;width:96%;height:93%;overflow:visible;pointer-events:none}.journey-line,.journey-line-shadow,.trace-baseline{fill:none;stroke-linecap:round;stroke-linejoin:round}.journey-line{stroke:var(--cream);stroke-width:2.2;filter:url(#lineGlow)}.journey-line-shadow{stroke:transparent;stroke-width:0}.trace-baseline{stroke:rgba(243,239,217,.72);stroke-width:1;vector-effect:non-scaling-stroke;opacity:0;will-change:opacity}.handoff-anchor{fill:var(--gold);stroke:#fff;stroke-width:1.4;filter:url(#lineGlow);opacity:0}.map-art{opacity:0;transform-origin:72% 50%;will-change:opacity,transform}.peninsula-art{opacity:.36;filter:invert(1) sepia(.2) saturate(.5);mix-blend-mode:screen}.sea-label{fill:rgba(255,255,255,.26);font-size:8px;font-weight:700;letter-spacing:.19em;will-change:opacity}.sea-label-east{writing-mode:horizontal-tb}.route-nodes{opacity:0}.route-node{opacity:0}.route-node circle{fill:var(--gold);stroke:#fff;stroke-width:1.4;transform-box:fill-box;transform-origin:center;will-change:transform}.route-node .node-ring{fill:none;stroke:var(--gold);opacity:.62}.route-node text{fill:rgba(255,255,255,.88);font-size:12px;font-weight:700;letter-spacing:.08em}.route-node .trace-place{opacity:0}.route-node .arrival{fill:rgba(255,255,255,.56);font-size:9px;font-weight:600;letter-spacing:.08em;opacity:0}
.scene-copy{position:absolute;z-index:30;left:7.8vw;top:23%;opacity:0;transform:translateY(28px);pointer-events:none;will-change:opacity,transform}.scene-no{display:block;font-size:8px;font-weight:700;letter-spacing:.2em;color:var(--gold);margin-bottom:24px}.scene-copy h2{font-size:clamp(38px,3.7vw,60px);font-weight:600;line-height:1.12;letter-spacing:-.045em;margin:0;word-break:keep-all}.scene-copy h2 span{color:var(--cream);font-weight:500}.scene-copy p{font-size:12px;line-height:1.85;color:rgba(255,255,255,.62);margin:25px 0 0;word-break:keep-all}.scene-copy-geography{left:7.8vw;top:20%}.scene-copy-geography dl{display:grid;grid-template-columns:repeat(3,82px);gap:15px;margin-top:32px}.scene-copy-geography dl div{padding-top:10px;border-top:1px solid rgba(255,255,255,.2)}.scene-copy-geography dt{font-size:7px;letter-spacing:.12em;color:rgba(255,255,255,.4)}.scene-copy-geography dd{font-size:20px;margin:4px 0 0}.scene-copy-places{top:18%}.scene-copy-memory{top:19%}
.first-light-stamp{position:absolute;z-index:32;left:7.8vw;top:105px;font-size:8px;font-weight:700;letter-spacing:.18em;color:rgba(255,255,255,.58);opacity:0;pointer-events:none;will-change:opacity}
.scene-rail{position:absolute;z-index:35;right:35px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:13px;font-size:7px;letter-spacing:.12em;color:rgba(255,255,255,.5)}.scene-rail i{position:relative;width:1px;height:120px;background:rgba(255,255,255,.18)}.scene-rail b{position:absolute;top:0;left:0;width:1px;height:100%;background:var(--gold);transform:scaleY(0);transform-origin:top}
.places-layer{z-index:4;opacity:0;pointer-events:none}.place{position:absolute;margin:0;aspect-ratio:1;height:auto;overflow:hidden;border-radius:50%;background:#25312d;clip-path:circle(0% at 50% 50%);filter:drop-shadow(0 22px 34px rgba(0,0,0,.24));will-change:clip-path,transform}.place-1{width:min(32vw,430px);right:8vw;top:12vh}.place-2{width:min(24vw,320px);right:34vw;bottom:6vh}.place-3{width:min(19vw,250px);right:5vw;bottom:8vh}.place-photo{position:absolute;inset:0;border-radius:inherit;background-size:cover;background-position:center;filter:saturate(.72) contrast(1.04)}.place:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 50%,rgba(4,8,7,.82))}.place-1 .place-photo{background-image:linear-gradient(140deg,transparent,rgba(20,37,31,.16)),url('./assets/sskr_road1.png');background-position:center 62%}.place-2 .place-photo{background-image:url('./assets/sskr_road2.png');background-position:center 58%}.place-3 .place-photo{background-image:url('./assets/sskr_road3.png');background-position:center 55%}.photo-credit{position:absolute;right:8vw;top:10vh;font-size:6px;letter-spacing:.14em;color:rgba(255,255,255,.38)}
.card-connectors{position:absolute;z-index:11;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:0}.card-connectors line{stroke:rgba(244,225,183,.48);stroke-width:.8;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1}.memory-layer{z-index:12;opacity:0}.memory-card{position:absolute;z-index:1;width:min(19vw,270px);background:#e8e4da;color:var(--ink);padding:11px 11px 15px;box-shadow:0 18px 42px rgba(0,0,0,.3);opacity:0;transform:translate3d(24px,18px,0) rotate(var(--r)) scale(.88);transform-origin:center;will-change:transform,opacity;isolation:isolate}.memory-card div{position:relative;z-index:1;height:clamp(120px,10vw,145px);background-size:cover;background-position:center;filter:saturate(.68) contrast(1.03);transform:scale(1);transform-origin:var(--photo-origin-x,50%) var(--photo-origin-y,50%);transition:transform .58s cubic-bezier(.2,.72,.16,1),filter .45s ease,box-shadow .58s ease;will-change:transform;backface-visibility:hidden}.memory-card span{display:block;font-size:10px;font-weight:700;letter-spacing:.1em;color:#a44c2c;margin:10px 0 6px}.memory-card b{display:block;font-size:15px;line-height:1.35;letter-spacing:-.035em}.memory-card small{display:block;font-size:7px;letter-spacing:.12em;color:rgba(0,0,0,.48);margin-top:7px}
.memory-card.is-photo-expanded,.memory-card.is-photo-returning{z-index:40}.memory-card.is-photo-expanded div{transform:scale(2.45);filter:saturate(.92) contrast(1.04);box-shadow:0 24px 70px rgba(0,0,0,.48)}.memory-card.is-photo-expanded:before,.memory-card.is-photo-returning:before{opacity:0}
@media(hover:hover) and (pointer:fine){.memory-card div{cursor:zoom-in}.memory-card.is-photo-expanded div{cursor:zoom-out}}
.sunset-hold{position:absolute;z-index:45;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;opacity:0;pointer-events:none;background:linear-gradient(180deg,rgba(12,8,11,.04),rgba(12,8,11,.38));will-change:opacity}.finale-scene-no{display:block;margin-bottom:12px;font-size:8px;font-weight:700;letter-spacing:.2em;color:var(--gold)}.sunset-hold small{font-size:8px;font-weight:700;letter-spacing:.18em;color:rgba(255,255,255,.58)}.sunset-hold p{font-size:clamp(40px,4.4vw,70px);font-weight:500;line-height:1.12;letter-spacing:-.045em;margin:28px 0 38px}.sunset-hold p>span,.sunset-hold p>strong{display:block;font-size:inherit;font-weight:500;line-height:inherit}.sunset-hold p>span{position:relative}.sunset-hold p>span:after{content:"";position:absolute;left:50%;top:calc(100% + 1px);width:57.54vw;height:2px;transform:translateX(-50%);background:var(--cream);box-shadow:0 0 7px rgba(255,225,160,.42);opacity:.88;pointer-events:none}.sunset-hold strong{color:#f5d6a4}.sunset-hold a{border-bottom:1px solid rgba(255,255,255,.52);padding:0 0 10px;font-size:9px;font-weight:700;letter-spacing:.12em}.sunset-hold a span{margin-left:28px}

/* v0.3 westward handoff: the route remains visible while it opens into a right-to-left time trace. */
.intro-deck{align-items:start}.intro-deck>span,.intro-deck>p{line-height:1.4}
.intro-scroll-cue{gap:10px}.intro-scroll-cue span{font-size:14px}.intro-scroll-cue b{font-size:22px}@keyframes scrollCueFloat{0%,100%{transform:translateY(0);opacity:.5}50%{transform:translateY(10px);opacity:1}}
.place-1{width:min(37vw,510px);right:8vw;top:4vh}.place-2{width:min(30vw,410px);right:30vw;bottom:2vh}.place-3{width:min(28vw,380px);right:2vw;bottom:3vh}
.sky-sunset{background-image:linear-gradient(90deg,rgba(24,10,18,.08),rgba(5,8,18,.24) 78%),linear-gradient(180deg,rgba(8,11,27,.06),rgba(12,8,13,.24)),url('./assets/west-sea-sunset-horizon-v01.png');background-size:cover;background-position:center}
.sun-orb{inset:36% auto auto 4%!important;width:12vw;background:radial-gradient(circle at 44% 38%,#ffe0a0 0%,#ffc56f 56%,#ee9e55 100%);box-shadow:none;clip-path:inset(0 0 0 0);will-change:transform,opacity,clip-path}
.map-art{transform-box:view-box;transform-origin:74% 66%}
.memory-card-1{--r:4.8deg;--pin-x:43%;right:1.5%;top:15%}.memory-card-2{--r:-5.2deg;--pin-x:58%;right:13%;bottom:2%}.memory-card-3{--r:-1.7deg;--pin-x:47%;right:21%;top:10%}.memory-card-4{--r:5.4deg;--pin-x:61%;right:34%;bottom:9%}.memory-card-5{--r:-4.1deg;--pin-x:39%;left:39%;top:17%}.memory-card-6{--r:2.6deg;--pin-x:54%;left:26%;bottom:1%}.memory-card-7{--r:-5.8deg;--pin-x:45%;left:20%;top:11%}.memory-card-8{--r:3.2deg;--pin-x:57%;left:1%;top:14%}
.memory-card:before{content:"";position:absolute;z-index:3;left:var(--pin-x,50%);top:8px;width:10px;height:10px;border-radius:50%;background:#b9563d;box-shadow:0 2px 4px rgba(0,0,0,.38),inset 0 1px 1px rgba(255,255,255,.5);transform:translateX(-50%);transition:opacity .18s ease}
.memory-card-1 div{background-image:url('./assets/memory-gangneung-v02.jpg')}.memory-card-2 div{background-image:url('./assets/memory-pyeongchang-v02.jpg')}.memory-card-3 div{background-image:url('./assets/memory-wonju-v02.jpg')}.memory-card-4 div{background-image:url('./assets/memory-chungju-v02.jpg')}.memory-card-5 div{background-image:url('./assets/memory-goesan-v02.jpg')}.memory-card-6 div{background-image:url('./assets/memory-cheongju-v02.jpg')}.memory-card-7 div{background-image:url('./assets/memory-iksan-v02.jpg')}.memory-card-8 div{background-image:url('./assets/memory-gunsan-v02.jpg')}

.site-footer{min-height:82vh;background:#e7e3d9;color:var(--ink);padding:9vh 4vw 34px}.footer-top{min-height:58vh;display:grid;grid-template-columns:.5fr 1.6fr .5fr;align-items:start;border-bottom:1px solid rgba(0,0,0,.18)}.footer-top>p{font-size:8px;font-weight:700;line-height:1.5;letter-spacing:.15em;margin:8px 0}.footer-top h2{font-size:clamp(58px,6.6vw,106px);font-weight:600;line-height:.92;letter-spacing:-.06em;margin:0}.footer-top h2 em{color:#b8502e;font-weight:500}.footer-cta{align-self:end;margin-bottom:5vh;border-top:1px solid rgba(0,0,0,.35);padding:14px 0;display:grid;grid-template-columns:1fr auto}.footer-cta span{grid-column:1/-1;font-size:7px;letter-spacing:.15em;color:rgba(0,0,0,.5);margin-bottom:25px}.footer-cta strong{font-size:15px}.footer-bottom{padding-top:24px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand strong{font-size:27px;letter-spacing:-.08em}.footer-brand span{font-size:6px;font-weight:700;line-height:1.3;letter-spacing:.13em;color:rgba(0,0,0,.5)}.footer-bottom nav{display:flex;justify-content:center;gap:27px}.footer-bottom a,.footer-bottom>div:last-child span{font-size:7px;font-weight:700;letter-spacing:.13em}.footer-bottom>div:last-child{display:flex;justify-content:flex-end;gap:25px;color:rgba(0,0,0,.55)}

.story-index{position:fixed;z-index:76;right:28px;top:104px;width:auto;padding:0;border:0;background:transparent;display:flex;flex-direction:column;align-items:flex-end;gap:1px;transition:opacity .18s ease,transform .32s var(--ease),visibility .18s;will-change:opacity,transform}.story-index button{width:auto;min-height:26px;padding:5px 0;border:0;background:transparent;color:rgba(255,255,255,.48);font:inherit;display:flex;align-items:center;justify-content:flex-end;gap:8px;text-align:right;cursor:pointer;transition:color .2s,opacity .2s}.story-index button:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.58;flex:0 0 auto;transition:transform .24s var(--ease),background .2s,opacity .2s}.story-index button strong{display:block;white-space:nowrap;font-size:10px;font-weight:600;letter-spacing:-.02em}.story-index button:hover,.story-index button:focus-visible{color:#fff}.story-index button.is-active{color:var(--cream)}.story-index button.is-active:before{background:var(--gold);opacity:1;transform:scale(1.55)}.story-index button:disabled{cursor:default}.story-index.is-travelling,.story-index.is-outside{opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(12px,-4px,0)}html.is-story-travelling{scroll-behavior:auto}
.route-node .memory-label{fill:var(--gold);font-size:7px;font-weight:700;letter-spacing:.16em;opacity:0}.scene-copy-horizon{top:22%}.scene-copy-geography{top:17%;max-width:570px}.scene-copy-places{top:16%;max-width:600px}.scene-copy-memory{top:14%;max-width:610px}
.business-info{margin-top:28px;padding-top:15px;border-top:1px solid rgba(0,0,0,.15);color:rgba(0,0,0,.5);font-size:7px;line-height:1.75;letter-spacing:.02em}.business-info span{display:block;margin-bottom:4px;font-weight:700;color:rgba(0,0,0,.68)}.business-info p{margin:0;word-break:keep-all}

@media(max-width:900px){.story-index{display:none}}
@media(max-width:900px){.site-header{height:68px;padding:0 16px}.brand span,.site-header nav>a:not(.header-apply){display:none}.header-actions{gap:7px}.header-apply{gap:9px;padding:10px 13px}.intro-sticky,.brochure-sticky{min-height:620px}.intro-meta{left:16px;right:16px;top:88px}.intro-copy{left:20px;right:20px;top:25%}.intro-copy h1{font-size:clamp(38px,10.5vw,58px)}.intro-deck{grid-template-columns:1fr;gap:12px}.intro-handoff-copy{left:20px;right:55px;top:16%}.intro-handoff-copy h2{font-size:clamp(36px,9.5vw,52px)}.intro-handoff-line{left:5.4%;right:5.4%}.gateway{left:16px;right:16px;grid-template-columns:1fr;bottom:17px}.gateway a{min-height:70px;padding:13px 15px}.gateway a:not(.gateway-apply){display:none}.gateway strong{font-size:18px}.intro-scroll-cue{display:none}.brochure-scroll{height:750vh}.journey-svg{inset:8% -8% 4%;width:116%;height:88%}.scene-copy,.scene-copy-geography,.scene-copy-places,.scene-copy-memory{left:20px;right:55px;top:16%}.scene-copy h2{font-size:clamp(36px,9.5vw,52px)}.scene-copy p{font-size:11px}.scene-copy-geography dl{grid-template-columns:repeat(3,66px)}.scene-rail{right:16px}.brochure-caption{left:20px}.place{height:auto;aspect-ratio:1}.place-1{width:min(58vw,360px);right:4vw;top:37vh}.place-2{width:min(40vw,245px);left:5vw;right:auto;bottom:6vh}.place-3{display:block;width:min(36vw,220px);right:4vw;bottom:8vh}.memory-card{width:clamp(100px,26vw,155px);padding:7px}.memory-card div{height:clamp(62px,15vw,92px)}.memory-card-1{left:auto;right:2%;top:12%;bottom:auto}.memory-card-2{left:auto;right:3%;top:auto;bottom:10%}.memory-card-3{left:auto;right:20%;top:20%;bottom:auto}.memory-card-4{left:36%;right:auto;top:auto;bottom:20%}.memory-card-5{left:40%;right:auto;top:11%;bottom:auto}.memory-card-6{left:3%;right:auto;top:auto;bottom:8%}.memory-card-7{left:20%;right:auto;top:23%;bottom:auto}.memory-card-8{left:2%;right:auto;top:13%;bottom:auto}.sunset-hold p{font-size:40px}.footer-top{grid-template-columns:1fr;gap:20px}.footer-top h2{font-size:17vw}.footer-top>p{order:-1}.footer-cta{width:100%}.footer-bottom{grid-template-columns:1fr;gap:25px}.footer-bottom nav{justify-content:flex-start}.footer-bottom>div:last-child{justify-content:flex-start}}
@media(max-width:900px){
  .first-light-stamp{left:20px;top:92px}
  .brochure-scroll{height:750vh}
  .journey-svg{inset:8% -8% 4%;width:116%}
  .memory-card{width:clamp(100px,26vw,155px);padding:7px}
  .memory-card div{height:clamp(62px,15vw,92px)}
  .memory-card span{font-size:clamp(7px,1.4vw,9px);margin:6px 0 4px}
  .memory-card b{font-size:clamp(9px,1.8vw,12px);line-height:1.25}
  .memory-card small{display:none}
  .memory-card:before{top:4px;width:6px;height:6px}
  .memory-card-1{left:auto;right:2%;top:12%;bottom:auto}
  .memory-card-2{left:auto;right:3%;top:auto;bottom:10%}
  .memory-card-3{left:auto;right:20%;top:20%;bottom:auto}
  .memory-card-4{left:36%;right:auto;top:auto;bottom:20%}
  .memory-card-5{left:40%;right:auto;top:11%;bottom:auto}
  .memory-card-6{left:3%;right:auto;top:auto;bottom:8%}
  .memory-card-7{left:20%;right:auto;top:23%;bottom:auto}
  .memory-card-8{left:2%;right:auto;top:13%;bottom:auto}
  .sunset-hold p{max-width:100%;padding:0 20px;font-size:clamp(29px,8vw,34px);line-height:1.18;margin:22px 0 30px;word-break:keep-all}
  .frame-debug{right:8px;bottom:8px;min-width:94px;padding:7px 8px;gap:2px 8px}
  .frame-debug span{font-size:5px}.frame-debug b{font-size:20px}.frame-debug small{font-size:6px}
}
@media(max-width:420px){.place-1{width:52vw;top:48vh}.place-2{width:34vw;left:5vw;bottom:6vh}.place-3{width:31vw;right:5vw;bottom:8vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.intro-scroll{height:100svh}.brochure-scroll{height:auto;margin-top:0}.brochure-sticky{position:relative;height:auto;min-height:3100px;opacity:1}.scene-copy{opacity:1!important;transform:none!important;position:relative;left:auto!important;right:auto!important;top:auto!important;margin:0 8vw;padding:160px 0 440px}.intro-handoff,.journey-svg,.places-layer,.memory-layer,.scene-rail,.brochure-caption,.sunset-hold{display:none}}
