:root{
  --navy:#0B1838; --navy-2:#13234a; --navy-3:#1c2f5e;
  --white:#ffffff; --stone:#ede6da; --stone-2:#dcd1bf; --stone-3:#b9ab94;
  --accent:#FF5C1C; --accent-d:#e24a0f;
  --ink:#0B1838; --muted:#5d6479;
  --serif:"Instrument Serif", "Times New Roman", serif;
  --sans:"Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
  --r:14px; --gut:clamp(16px,4vw,56px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:auto;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--ink);background:var(--white);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.is-loading{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
em{font-family:var(--serif);font-style:italic;font-weight:400}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

/* ---------- loader ---------- */
.loader{position:fixed;inset:0;z-index:100;background:var(--navy);color:var(--white);display:grid;place-items:center;transition:opacity .9s ease,visibility .9s}
.loader.is-done{opacity:0;visibility:hidden}
.loader__inner{width:min(360px,80vw)}
.loader__mark{font-family:var(--serif);font-size:clamp(34px,7vw,48px);line-height:1;margin-bottom:28px}
.loader__mark em{color:var(--accent)}
.loader__bar{height:2px;background:rgba(255,255,255,.14);overflow:hidden;border-radius:2px}
.loader__bar span{display:block;height:100%;width:0;background:var(--accent);transition:width .35s ease}
.loader__meta{display:flex;justify-content:space-between;margin-top:14px;font-size:13px;letter-spacing:.02em;color:rgba(255,255,255,.72)}
.loader__meta #loaderPct{font-variant-numeric:tabular-nums;color:var(--white)}

/* ---------- nagłówek ---------- */
.top{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px var(--gut);color:var(--white);transition:background .4s,color .4s,padding .4s,box-shadow .4s}
.top.is-solid{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--navy);padding-top:12px;padding-bottom:12px;box-shadow:0 1px 0 rgba(11,24,56,.08)}
.brand{font-family:var(--serif);font-size:26px;line-height:1;text-decoration:none;white-space:nowrap}
.brand em{color:var(--accent)}
.top:not(.is-solid) .brand em{color:#ffc2a6}
.top__nav{display:flex;gap:28px;font-size:14px;font-weight:500}
.top__nav a{text-decoration:none;opacity:.85}
.top__nav a:hover{opacity:1;color:var(--accent)}
.top__right{display:flex;align-items:center;gap:12px}
.badge-fict{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;border:1px solid var(--accent);color:var(--accent);background:rgba(11,24,56,.55);white-space:nowrap}
.top.is-solid .badge-fict{background:#fff}
.badge-fict::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}

/* ---------- przyciski ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border-radius:999px;font-weight:600;font-size:15px;text-decoration:none;transition:background .25s,transform .25s,color .25s,border-color .25s}
.btn--sm{min-height:40px;padding:0 18px;font-size:14px}
.btn--accent{background:var(--accent);color:#fff}
.btn--accent:hover{background:var(--accent-d);transform:translateY(-1px)}
.btn--ghost{border:1px solid rgba(255,255,255,.35);color:#fff}
.btn--ghost:hover{border-color:var(--accent);color:var(--accent)}
.btn--block{width:100%}

/* ---------- film 3D ---------- */
.film{position:relative;height:calc(var(--film-vh, 1550) * 1vh);background:var(--navy)}
:root{--bar:0px}
@supports (height:100lvh){:root{--bar:calc(100lvh - 100svh)}}
.stage{position:sticky;top:0;height:100vh;height:100lvh;overflow:hidden;background:#d9b39a}
.scrim{position:absolute;inset:0;pointer-events:none;background:
  linear-gradient(90deg,rgba(11,24,56,.72) 0%,rgba(11,24,56,.35) 32%,rgba(11,24,56,0) 58%),
  linear-gradient(0deg,rgba(11,24,56,.55) 0%,rgba(11,24,56,0) 30%),
  linear-gradient(180deg,rgba(11,24,56,.45) 0%,rgba(11,24,56,0) 16%)}
.veil{position:absolute;inset:0;background:var(--stone);opacity:0;pointer-events:none}
.chap{position:absolute;left:var(--gut);bottom:calc(clamp(110px,16vh,170px) + var(--bar));max-width:min(560px,calc(100vw - 2*var(--gut)));color:var(--white);opacity:0;visibility:hidden;will-change:opacity,transform;text-shadow:0 1px 18px rgba(11,24,56,.35)}
.chap.is-on{visibility:visible}
.chap__kicker{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:16px;display:flex;gap:12px;align-items:center}
.chap__kicker span{color:var(--accent)}
.chap__kicker::after{content:"";width:40px;height:1px;background:rgba(255,255,255,.5)}
.chap__title{font-family:var(--serif);font-weight:400;font-size:clamp(44px,7.2vw,104px);line-height:.95;letter-spacing:-.01em}
.chap__title em{color:#ffd9c4}
.chap__lead{margin-top:20px;font-size:clamp(16px,1.5vw,19px);line-height:1.55;max-width:440px;color:rgba(255,255,255,.92)}
.chap__price{margin-top:18px;font-weight:700;font-size:18px;letter-spacing:.02em;display:inline-block;padding:8px 14px;border-radius:999px;background:rgba(11,24,56,.55);border:1px solid rgba(255,255,255,.2)}
.chap .btn{margin-top:24px}
.chap__stats{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px;margin-top:26px}
.chap__stats li{opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s;border-top:1px solid rgba(255,255,255,.3);padding-top:10px}
.chap__stats li.is-in{opacity:1;transform:none}
.chap__stats b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(30px,3.4vw,44px);line-height:1}
.chap__stats span{font-size:13px;color:rgba(255,255,255,.8)}
.chapnav{position:absolute;left:var(--gut);right:var(--gut);bottom:calc(28px + var(--bar));display:grid;grid-template-columns:repeat(4,1fr);gap:14px;z-index:3}
.chapnav button{position:relative;text-align:left;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.65);padding:0 0 12px;min-height:44px;display:flex;align-items:flex-end;gap:8px;transition:color .3s}
.chapnav button span{color:rgba(255,255,255,.45)}
.chapnav button.is-on{color:#fff}
.chapnav button.is-on span{color:var(--accent)}
.chapnav button i{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(255,255,255,.22);overflow:hidden;border-radius:2px}
.chapnav button i::after{content:"";position:absolute;inset:0;background:var(--accent);transform-origin:left;transform:scaleX(var(--p,0))}
.scrollhint{position:absolute;right:var(--gut);bottom:96px;color:#fff;font-size:12px;letter-spacing:.14em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:10px;transition:opacity .4s}
.scrollhint span{width:1px;height:46px;background:linear-gradient(#fff,transparent);animation:hint 1.8s ease-in-out infinite}
@keyframes hint{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.stage__note{position:absolute;right:var(--gut);top:84px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.75)}


/* ---------- film ze zdjęć ---------- */
.stage{background:var(--navy)}
.film-layers{position:absolute;inset:0;perspective:1200px;overflow:hidden}
.sc{position:absolute;inset:0;transform-style:preserve-3d;visibility:hidden}
.ph{position:absolute;inset:0;background-size:cover;background-repeat:no-repeat;will-change:transform,opacity,filter;backface-visibility:hidden}
.grade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,170,90,.32) 0%,rgba(255,92,28,.10) 40%,rgba(11,24,56,0) 70%);mix-blend-mode:soft-light}
.sc--1{perspective:1100px}
.burst-bg{position:absolute;inset:0;transform:translateZ(-1600px) scale(2.6);background:radial-gradient(120% 90% at 40% 45%,#1c2f5e 0%,#0B1838 55%,#060e24 100%)}
.burst-glow{position:absolute;width:120vmax;height:120vmax;border-radius:50%;background:radial-gradient(circle,rgba(255,120,60,.75) 0%,rgba(255,92,28,.3) 30%,rgba(255,92,28,0) 62%);pointer-events:none;opacity:0}
.shards,.chips{position:absolute;inset:0;transform-style:preserve-3d}
.shard{position:absolute;background-repeat:no-repeat;will-change:transform,opacity;backface-visibility:visible}
.chips i{position:absolute;display:block;transform:scale(0);will-change:transform;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.lv-bg{position:absolute;inset:0;background:radial-gradient(90% 70% at 50% 60%,#2a3a62 0%,#0B1838 60%,#060e24 100%)}
.lv-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 40% at 70% 20%,rgba(255,140,80,.22),rgba(255,92,28,0) 70%)}
.lv-cam{position:absolute;inset:0;perspective:1600px;perspective-origin:50% 30%;display:grid;place-items:center}
.lv-rig{position:relative;width:min(38vw,580px);aspect-ratio:3/2;transform-style:preserve-3d;margin-top:-8vh;margin-left:30vw}
.slab__top,.slab__edge{transition:filter .45s}
.slab.is-dim .slab__top,.slab.is-dim .slab__edge{filter:brightness(.38) saturate(.5)}
.slab.is-dim .slab__label{color:rgba(255,255,255,.45)}
.slab--g .slab__top{box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.slab--g .slab__edge{background:linear-gradient(#6f7a45,#4c5a33)}
.slab.is-focus .slab__top{box-shadow:inset 0 0 0 3px var(--accent),0 0 60px rgba(255,92,28,.35)}
.slab.is-focus .slab__label b{color:#ffc2a6}
.ph--wipe{-webkit-mask-image:linear-gradient(90deg,#000 33%,rgba(0,0,0,0) 45%);mask-image:linear-gradient(90deg,#000 33%,rgba(0,0,0,0) 45%);-webkit-mask-size:300% 100%;mask-size:300% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:100% 0;mask-position:100% 0}
.light-sweep{position:absolute;top:-10%;bottom:-10%;left:0;width:55%;pointer-events:none;background:linear-gradient(100deg,rgba(255,200,140,0) 0%,rgba(255,200,140,.22) 50%,rgba(255,200,140,0) 100%);mix-blend-mode:screen;opacity:0}
.slab{position:absolute;inset:0;transform-style:preserve-3d}
.slab__top{position:absolute;inset:0;background-size:cover;background-position:center;border-radius:4px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.slab__edge{position:absolute;left:0;right:0;top:100%;height:18px;background:linear-gradient(#efe8dc,#cfc3ae);transform-origin:top;transform:rotateX(-90deg)}
.slab-shadow{position:absolute;inset:6%;border-radius:50%;background:rgba(0,0,0,.6);filter:blur(40px)}
.slab__label{position:absolute;left:-14px;top:50%;color:#fff;text-align:right;white-space:nowrap;font-size:13px;padding-right:16px;transform-origin:100% 50%;opacity:0}
.slab__label::after{content:"";position:absolute;right:0;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px rgba(255,92,28,.25)}
.slab__label{text-shadow:0 1px 10px rgba(6,14,36,.9),0 0 2px rgba(6,14,36,.8)}
.slab__label b{display:block;font-family:var(--serif);font-weight:400;font-size:26px;line-height:1}
.slab__label span{opacity:.85}
@media (max-width:980px){.lv-rig{width:56vw;margin-top:-14vh;margin-left:0}}
@media (max-width:640px){.lv-rig{width:58vw;margin-top:-30vh;margin-left:18vw}.slab__label{left:auto;right:-10px;transform-origin:0 50%}}

/* ---------- sekcje ---------- */
.wrap{max-width:1240px;margin:0 auto;padding:0 var(--gut)}
.sec{padding:clamp(80px,12vw,150px) 0;position:relative}
.sec--light{background:var(--white)}
.sec--stone{background:var(--stone)}
.sec--navy{background:var(--navy);color:var(--white)}
.sec__head{margin-bottom:clamp(40px,6vw,72px)}
.sec__head--row{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}
.sec__aside{max-width:340px;color:var(--muted);font-size:15px}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}
.h2{font-family:var(--serif);font-weight:400;font-size:clamp(40px,5.6vw,76px);line-height:1;letter-spacing:-.01em}
.sec--light .h2 em,.sec--stone .h2 em{color:var(--accent)}
.sec--navy .h2 em{color:#ffbfa3}

/* fakty */
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--stone-2)}
.fact{padding:26px 22px 28px 0;border-bottom:1px solid var(--stone-2)}
.fact:not(:nth-child(4n)){border-right:0}
.fact dt{font-size:13px;color:var(--muted);margin-bottom:8px}
.fact dd{font-family:var(--serif);font-size:clamp(30px,3vw,42px);line-height:1.05}
.fact small{display:block;margin-top:8px;font-size:13px;color:var(--muted)}
.fact--xl{grid-column:span 2;background:var(--navy);color:#fff;padding:26px 26px 28px;border-radius:var(--r);margin:16px 16px 16px 0;border:0}
.fact--xl dt,.fact--xl small{color:rgba(255,255,255,.75)}
.fact--xl dd{font-size:clamp(40px,4.6vw,64px);color:#fff}
.fact--xl dd::after{content:"";display:block;width:36px;height:3px;background:var(--accent);margin-top:14px}
.fact--wide{grid-column:span 3}

/* opis */
.story__quote{font-family:var(--serif);font-size:clamp(30px,4.2vw,56px);line-height:1.12;max-width:980px}
.story__quote em{color:var(--accent)}
.story__cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,72px);margin-top:clamp(36px,5vw,64px);max-width:980px;color:#2d3550;font-size:17px}

/* kondygnacje */
.levels__tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px}
.levels__tabs button{min-height:48px;padding:0 20px;border-radius:999px;border:1px solid rgba(255,255,255,.22);font-weight:600;font-size:15px;display:inline-flex;gap:10px;align-items:center;transition:all .25s}
.levels__tabs button span{font-size:12px;color:rgba(255,255,255,.55);font-variant-numeric:tabular-nums}
.levels__tabs button:hover{border-color:rgba(255,255,255,.6)}
.levels__tabs button[aria-selected="true"]{background:var(--white);color:var(--navy);border-color:var(--white)}
.levels__tabs button[aria-selected="true"] span{color:var(--accent)}
.levels__body{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(28px,6vw,80px);align-items:center}
.levels__diagram{width:100%;max-width:440px}
.levels__diagram .lv path{fill:rgba(255,255,255,.06);stroke:rgba(255,255,255,.35);stroke-width:1;transition:fill .4s,stroke .4s,transform .5s}
.levels__diagram .lv .side{fill:rgba(255,255,255,.03)}
.levels__diagram .lv .side2{fill:rgba(255,255,255,.015)}
.levels__diagram .lv.is-on path{fill:var(--accent);stroke:var(--accent)}
.levels__diagram .lv.is-on .side{fill:#d9480f}
.levels__diagram .lv.is-on .side2{fill:#b83a0a}
.levels__diagram .lv{transition:transform .5s;transform-box:fill-box}
.levels__diagram .lv.is-on{transform:translateY(-8px)}
.levels__tag{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.levels__title{font-family:var(--serif);font-weight:400;font-size:clamp(30px,3.4vw,44px);line-height:1.05;margin-bottom:16px}
.levels__text{color:rgba(255,255,255,.82);max-width:520px}
.levels__rooms{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 28px}
.levels__rooms li{font-size:14px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.levels__panel.is-swap{animation:swap .45s ease}
@keyframes swap{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* galeria */
.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:clamp(120px,14vw,190px);gap:12px}
.gallery button{position:relative;overflow:hidden;border-radius:10px;background:var(--stone);grid-column:span 4;grid-row:span 2}
.gallery button:nth-child(6n+1){grid-column:span 8;grid-row:span 3}
.gallery button:nth-child(6n+2){grid-column:span 4;grid-row:span 3}
.gallery button:nth-child(6n+5){grid-column:span 4}
.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .6s;opacity:0}
.gallery img.is-loaded{opacity:1}
.gallery button:hover img{transform:scale(1.04)}
.gallery button::after{content:attr(data-n);position:absolute;left:12px;bottom:10px;font-size:12px;font-weight:600;color:#fff;background:rgba(11,24,56,.6);padding:3px 8px;border-radius:999px;opacity:0;transition:opacity .3s}
.gallery button:hover::after,.gallery button:focus-visible::after{opacity:1}
.gallery button.is-broken{display:grid;place-items:center}
.gallery button.is-broken::before{content:"Zdjęcie niedostępne offline";font-size:13px;color:var(--muted)}

/* lightbox */
.lb{position:fixed;inset:0;z-index:90;background:rgba(7,14,33,.96);display:flex;align-items:center;justify-content:center;padding:56px 72px}
.lb[hidden]{display:none}
.lb__fig{max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center}
.lb__fig img{max-width:100%;max-height:calc(100svh - 150px);object-fit:contain;border-radius:6px}
.lb__fig figcaption{color:rgba(255,255,255,.75);font-size:13px;margin-top:14px;font-variant-numeric:tabular-nums}
.lb__close{position:absolute;top:14px;right:18px;width:48px;height:48px;font-size:34px;line-height:1;color:#fff}
.lb__nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:30px;line-height:1}
.lb__nav:hover{border-color:var(--accent);color:var(--accent)}
.lb__nav--prev{left:14px}.lb__nav--next{right:14px}

/* cta */
.cta__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,7vw,100px);align-items:start}
.cta__lead{margin-top:24px;color:rgba(255,255,255,.82);max-width:440px;font-size:17px}
.cta__contact{margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;gap:6px}
.cta__name{font-family:var(--serif);font-size:28px}
.cta__link{text-decoration:none;color:rgba(255,255,255,.85);font-size:16px;width:fit-content;min-height:32px;display:inline-flex;align-items:center}
.cta__link:hover{color:var(--accent)}
.form{background:var(--white);color:var(--ink);border-radius:20px;padding:clamp(22px,3.4vw,40px);display:flex;flex-direction:column;gap:16px}
.form__row{display:grid;gap:14px}
.form__row--2{grid-template-columns:1fr 1fr}
.form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#3a4260}
.form input:not([type=radio]):not([type=checkbox]),.form textarea{font:inherit;font-size:16px;font-weight:400;color:var(--ink);border:1px solid var(--stone-2);background:#fbf9f5;border-radius:10px;padding:12px 14px;min-height:48px;transition:border-color .2s,box-shadow .2s;width:100%}
.form textarea{resize:vertical}
.form input:focus,.form textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(255,92,28,.18)}
.form .is-invalid{border-color:#c2410c!important;background:#fff6f2!important}
.form__chips{border:0;display:flex;flex-wrap:wrap;gap:8px}
.form__chips legend{font-size:13px;font-weight:600;color:#3a4260;margin-bottom:8px}
.form__chips label{flex-direction:row}
.form__chips input{position:absolute;opacity:0;pointer-events:none}
.form__chips span{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border-radius:999px;border:1px solid var(--stone-2);font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;color:var(--ink)}
.form__chips input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}
.form__chips input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.form__consent{flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:500!important;cursor:pointer}
.form__consent input{width:20px;height:20px;margin-top:1px;accent-color:var(--accent);flex:none}
.form__error{color:#c2410c;font-size:14px;min-height:0}
.form__error:empty{display:none}
.form__ok{background:var(--stone);border-radius:12px;padding:16px 18px;font-size:15px}
.form__ok b{font-family:var(--serif);font-size:24px;font-weight:400}

/* stopka */
.foot{background:#070f26;color:rgba(255,255,255,.7);padding:48px 0 calc(48px + env(safe-area-inset-bottom))}
.foot__grid{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:start}
.brand--foot{color:#fff}
.foot__fict{font-size:13px;line-height:1.7;max-width:760px}
.foot__fict .badge-fict{margin-right:8px;vertical-align:1px;background:transparent}
.nojs{position:fixed;inset:auto 0 0 0;background:var(--accent);color:#fff;padding:14px;text-align:center;z-index:200}

/* ---------- responsywność ---------- */
@media (max-width:980px){
  .top__nav{display:none}
  .facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fact--xl{grid-column:span 2;margin-right:0}
  .fact--wide{grid-column:span 2}
  .levels__body,.cta__grid{grid-template-columns:1fr}
  .levels__diagram{max-width:300px;margin:0 auto}
}
@media (max-width:640px){
  body{font-size:15px}
  .top{padding-top:12px;padding-bottom:12px;gap:8px}
  .brand{font-size:21px}
  .top .btn--sm{padding:0 14px;font-size:13px;min-height:38px}
  .top{flex-wrap:wrap;row-gap:6px}
  .top__right{display:contents}
  .top .btn--sm{order:2}
  .top .badge-fict{order:3;font-size:10px;padding:4px 9px}
  .fact.fact--xl{padding:22px 20px 24px}
  .stage__note{display:none}
  .scrim{background:linear-gradient(0deg,rgba(11,24,56,.85) 0%,rgba(11,24,56,.45) 40%,rgba(11,24,56,0) 62%),linear-gradient(180deg,rgba(11,24,56,.5) 0%,rgba(11,24,56,0) 18%)}
  .chap{bottom:calc(96px + var(--bar))}
  .chap__title{font-size:clamp(40px,12vw,56px)}
  .chap__lead{font-size:15px;margin-top:14px}
  .chap__stats{gap:10px 18px;margin-top:18px}
  .chap__stats b{font-size:28px}
  .chapnav{gap:8px;bottom:calc(18px + var(--bar))}
  .chapnav button{font-size:0;padding-bottom:10px}
  .chapnav button span{font-size:12px}
  .scrollhint{display:none}
  .slab__label b{font-size:18px}
  .slab__label{font-size:11px}
  .story__cols{grid-template-columns:1fr;font-size:16px}
  .facts{grid-template-columns:1fr 1fr}
  .fact{padding:20px 12px 22px 0}
  .gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:42vw;gap:8px}
  .gallery button,.gallery button:nth-child(6n+1),.gallery button:nth-child(6n+2),.gallery button:nth-child(6n+5){grid-column:span 1;grid-row:span 1}
  .gallery button:nth-child(5n+1){grid-column:span 2;grid-row:span 1}
  .gallery button::after{opacity:1}
  .form__row--2{grid-template-columns:1fr}
  .lb{padding:56px 8px 80px}
  .lb__nav{top:auto;bottom:14px;transform:none}
  .lb__nav--prev{left:calc(50% - 64px)}.lb__nav--next{right:calc(50% - 64px)}
  .foot__grid{grid-template-columns:1fr;gap:20px}
}
@media (prefers-reduced-motion:reduce){
  .scrollhint span{animation:none}
  *{transition-duration:.01ms!important}
}