/* Deliberate, visible entrance choreography; the full-size cards themselves stay opaque. */
.story-stack{--dam-hold:clamp(560px,75svh,960px);padding-bottom:1px}
.dam-scroll-space{height:var(--dam-hold);pointer-events:none}
.chapter-scroll-space{height:clamp(120px,16svh,220px);pointer-events:none}
.story-world .story-stack>.panel:nth-child(5){z-index:5}
.story-world .story-stack>.panel:nth-child(6){z-index:6}
.story-world .motion-target{translate:var(--from-x,0px) var(--from-y,0px);opacity:0;transition:translate 1700ms cubic-bezier(.42,0,.18,1),opacity 1100ms ease-in-out,transform .9s ease-out,box-shadow .35s,border-color .35s;transition-delay:var(--move-delay,0ms)}
.story-world .motion-target.is-revealed{translate:0 0;opacity:1}
.motion-word{display:inline-block;overflow:hidden;vertical-align:baseline;white-space:nowrap;font-style:normal;padding-bottom:.12em;margin-bottom:-.12em;line-height:inherit}
.motion-letter{display:inline-block;opacity:0;transform:translate3d(-.65em,.28em,0) rotate(5deg);transition:transform 1350ms cubic-bezier(.32,0,.18,1),opacity 900ms ease-in-out;transition-delay:calc(var(--move-delay,0ms) + var(--glyph-delay,0ms))}
.is-revealed .motion-letter{opacity:1;transform:none}
.story-world .scene-idle *{animation-play-state:paused!important}
.story-world .tool-card,.story-world .map-quote{backdrop-filter:none}
.story-world .hero-environment{background-image:url('assets/hero-environment-v2.webp')}
.story-world .journey-v2:before{background-image:linear-gradient(0deg,#243d3600,#26392f66),url('assets/hero-environment-v2.webp')}
.journey-notes{position:absolute;pointer-events:none;z-index:3}
.journey-note{position:absolute;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#59705eef,#233c32f0);border:1px solid #d4e4c957;border-radius:999px;box-shadow:0 7px 15px #122c244d,inset 0 1px 0 #ecf4e11c;color:#f6faef;font-size:clamp(11px,1.25vw,24px);font-weight:500;letter-spacing:-.02em;white-space:nowrap}
.note-exhale{left:5%;top:83.91%;width:14.42%;height:10.22%}
.note-new{left:23.58%;top:8.70%;width:21.67%;height:10.43%}
.note-together{left:51.50%;top:83.91%;width:17.25%;height:10.22%}
.note-renew{left:69.83%;top:9.35%;width:25.83%;height:10.43%}
.beaver-dam{position:absolute;z-index:4;left:50%;bottom:-1%;width:clamp(620px,57vw,1120px);height:94%;max-height:96%;object-fit:contain;transform:translateX(calc(-50% + var(--dam-offset,0px)));filter:drop-shadow(0 15px 20px #3e4b3033);pointer-events:none}
.story-world .mascot .beaver{clip-path:inset(0 var(--beaver-cover,100%) 0 0)}
.story-world .mascot .mascot-left,.story-world .mascot .mascot-note{z-index:7}
.impressions-map{color:#eef3e7;background:radial-gradient(ellipse at 90% 0,#89759b22,transparent 55%),#243b31;min-height:calc(100svh - 32px);padding:42px clamp(32px,3.2vw,68px) 24px;display:flex;flex-direction:column}
.impressions-map .section-top{color:#d0dfc4}.impressions-map .section-number{color:#a5b79c}.impressions-map .tiny-circle{border-color:#bb9dde;box-shadow:0 0 12px #b394d540}
.map-heading{display:flex;justify-content:space-between;gap:40px;align-items:center;margin-top:30px}
.map-heading h2{font-size:clamp(42px,3.8vw,74px);font-weight:650;max-width:1050px}.map-heading h2>span{color:#bfceae}
.map-heading>p{font-size:clamp(13px,1vw,18px);color:#c6d4be;line-height:1.8;max-width:360px}
.map-stage{position:relative;flex:1;min-height:620px;margin:30px -15px 0;isolation:isolate}
.map-terrain{position:absolute;inset:0;border-radius:22px;overflow:hidden;background:#263e32}
.map-terrain>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.75) brightness(.88)}
.terrain-shade{position:absolute;inset:0;background:linear-gradient(180deg,#243b314d,transparent 25%,#243b3133 75%,#243b31aa),linear-gradient(90deg,#243b3166,transparent 35%,#243b3122)}
.terrain-overlay{position:absolute;inset:0;width:100%;height:100%;stroke:none;fill:none}
.terrain-zone{fill:#b3cba914;stroke:#cfddbc4d;stroke-width:1}.terrain-zone.zone-purple{fill:#b394d51c;stroke:#c6a8e24d}
.terrain-thread{stroke:#d7e6c6a6;stroke-width:1.1;stroke-dasharray:4 9}.terrain-overlay circle{fill:#c6a6e66e;stroke:#efe8f8;stroke-width:1.4}
.map-location{position:absolute;font-size:11px;letter-spacing:.07em;color:#f0f5e9;text-shadow:0 1px 8px #0a241b;background:#1b342982;border:1px solid #d5e4ca3d;border-radius:20px;padding:6px 10px}
.loc-katun{left:17.5%;top:42%}.loc-lake{left:calc(75.7% - 130px);top:20%}.loc-steppe{left:79.3%;top:60.4%}.loc-belukha{left:45%;top:63.2%}
.map-north{position:absolute;right:28px;top:20px;display:flex;flex-direction:column;align-items:center;font-size:10px;color:#deead1}.map-north>span{font-size:27px;line-height:1.2}
.map-quotes{position:absolute;inset:0;pointer-events:none}.map-quote{position:absolute;width:clamp(220px,19vw,325px);padding:20px 22px;border:1px solid #e8efd788;border-radius:18px;background:linear-gradient(135deg,#f4f4e7ed,#d8e4d0e8);color:#294132;box-shadow:0 18px 40px -20px #0a211ecc,inset 0 1px 0 #fff9;backdrop-filter:blur(18px)}
.quote-katun{left:5%;top:9%}.quote-lake{right:4%;top:3%}.quote-steppe{right:6%;bottom:5%}.quote-belukha{left:27%;bottom:3%}
.quote-place{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:10px;font-weight:650;letter-spacing:.025em}.quote-place>i{font-style:normal;font-size:9px;color:#795b93;background:#b394d51c;border:1px solid #a183bb33;border-radius:20px;padding:5px 8px;white-space:nowrap}
.map-quote blockquote{font-size:clamp(15px,1.2vw,21px);font-weight:600;letter-spacing:-.035em;line-height:1.45;margin:15px 0 13px}.quote-example{font-size:9px;color:#77856b;letter-spacing:.04em}
.map-disclosure{font-size:11px;color:#afc1a5;line-height:1.7;padding-top:20px}
@media(min-width:1151px){.story-world .hero-v2 .emblem-scene{top:auto;bottom:11%;right:3%;height:65%;width:46%}.story-world .hero-v2 .scene-coordinate{bottom:-3%}}
@media(max-width:900px){.impressions-map{padding:32px 26px 24px}.map-heading{gap:25px}.map-heading h2{font-size:42px}.map-heading>p{font-size:12px;max-width:240px}.map-stage{min-height:650px}.map-quote{width:235px;padding:17px}.quote-katun{left:3%;top:9%}.quote-belukha{left:12%;bottom:3%}.beaver-dam{width:94%}}
@media(max-width:600px){.story-stack{--dam-hold:560px}.story-world .motion-target{transition-duration:1500ms,1000ms,.9s,.35s,.35s}.motion-letter{transition-duration:1250ms,850ms,1000ms}.journey-note{font-size:12px}.impressions-map{padding:28px 22px 22px}.impressions-map .section-number{font-size:6px;max-width:105px;text-align:right;line-height:1.7}.map-heading{display:block;margin-top:26px}.map-heading h2{font-size:35px}.map-heading>p{margin-top:20px;font-size:13px;max-width:none}.map-stage{min-height:0;margin:24px 0 0;display:flex;flex-direction:column;gap:18px}.map-terrain{position:relative;inset:auto;flex-shrink:0;height:390px}.map-quotes{position:relative;inset:auto;display:grid;gap:12px}.map-quote{position:relative;inset:auto;width:100%;padding:16px 18px}.map-quote blockquote{font-size:16px;margin:12px 0 10px}.map-location{font-size:8px;padding:5px 7px}.loc-lake{left:auto;right:7%}.loc-steppe{left:auto;right:3%}.map-disclosure{font-size:10px;padding-top:18px}.beaver-dam{width:145%;height:68%;max-height:none;bottom:12%;left:50%}}
@media(prefers-reduced-motion:reduce){.dam-scroll-space,.chapter-scroll-space{height:0}.story-world .motion-target{translate:0 0!important;opacity:1;transition:none!important}.motion-letter{transform:none;opacity:1;filter:none;transition:none!important}.beaver-dam{display:none}.story-world .mascot .beaver{clip-path:none}}
