/* ---------- «Снежный десант» Югры: домик с тёплым окном, снегопад, парашют и страница /snezhnyy-desant/ (js/desant.js) ----------
   Страница всегда «зимняя ночь» (в обеих темах сайта): ночной синий фон, лайм — единственный акцент для кнопок,
   ледяной голубой — только атмосфера (снег, сияние). Скругления: карточки 24px, кнопки и переключатели — «таблетки». */
:root{--sd-ice:#7DE7FF;--sx-n0:#050B2E;--sx-n1:#0A1550;--sx-n2:#13207A;--sx-tx:#EEF2FF;--sx-mu:#A9B4E8;--sx-ln:rgba(214,224,255,.14);--sx-r:24px}
/* фактуры без внешних файлов (картинки data: разрешены CSP): --sx-frost — крупинки инея, --sx-grain — зерно матового льда */
:root{--sx-frost:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 9 -4.6'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E");
  --sx-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .86 0 0 0 0 .93 0 0 0 0 1 0 0 0 .3 -.12'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E")}

/* ---------- домик с тёплым окном: плавает в левом нижнем углу, напротив чата ----------
   Снаружи ночь и снег, в окне — тепло: главный ход страницы десанта в одной иконке */
.ti{width:1em;height:1em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.snowb{position:fixed;z-index:34;left:max(20px,env(safe-area-inset-left,0px));bottom:22px;display:flex;align-items:center;gap:0;padding:0;border:0;background:none;cursor:pointer;color:#fff;font:inherit;text-align:left;
  animation:sbEnter 1.4s cubic-bezier(.2,.7,.3,1) .8s both}
.snowb-i{position:relative;width:64px;height:64px;flex:none;border-radius:50%;display:block;
  background:radial-gradient(circle at 50% 20%,#2B45FF 0%,#13207A 55%,#0A1550 100%);
  box-shadow:0 16px 34px -10px rgba(11,22,80,.75),0 0 0 3px rgba(255,255,255,.9),0 0 26px 2px rgba(255,170,80,.4);
  transition:transform .3s var(--ease),box-shadow .4s}
.snowb-i::before,.snowb-i::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid #FFB547;opacity:0;pointer-events:none;animation:sdPing 3.6s var(--ease) 3s infinite}
.snowb-i::after{animation-delay:4.2s}
.snowb svg{display:block;width:100%;height:100%}
.sbx-st circle{fill:#fff;animation:sbTw 3s ease-in-out infinite}
.sbx-st circle:nth-child(2n){animation-delay:-1.5s}.sbx-st circle:nth-child(3n){animation-delay:-.7s}
.sbx-d2{fill:#B9CCF5}.sbx-d1{fill:#EEF5FF}
.sbx-h{fill:#4A3470}.sbx-r{fill:#2A1D52}
.sbx-sn,.sbx-sr{fill:#fff}.sbx-sr{fill:none;stroke:#fff;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}
.sbx-m{fill:none;stroke:#4A3470;stroke-width:1.3}
.sbx-gl{transform-origin:31px 38px;animation:sbFlick 2.8s ease-in-out infinite}
.sbx-w{animation:sbWin 2.8s ease-in-out infinite}
.sbx-pool{animation:sbFlick 2.8s ease-in-out infinite}
.sbx-sm circle{fill:#DCE5FF;opacity:0;transform-box:fill-box;transform-origin:center;animation:sbSmoke 3.6s ease-out infinite}
.sbx-sm circle:nth-child(2){animation-delay:-1.2s}.sbx-sm circle:nth-child(3){animation-delay:-2.4s}
.sbx-fl circle{fill:#fff;opacity:.85;animation:sbFl 5s linear infinite}
.sbx-fl circle:nth-child(2){animation-duration:6.5s;animation-delay:-2s}.sbx-fl circle:nth-child(3){animation-duration:5.8s;animation-delay:-4s}.sbx-fl circle:nth-child(4){animation-duration:7s;animation-delay:-1s}
.snowb:hover .snowb-i,.snowb:focus-visible .snowb-i{transform:scale(1.08);box-shadow:0 16px 34px -10px rgba(11,22,80,.75),0 0 0 3px rgba(255,255,255,.9),0 0 34px 6px rgba(255,170,80,.6)}
.snowb:hover .sbx-sm circle{animation-duration:2s}
.snowb:active .snowb-i{transform:scale(.94)}
/* нажали — в окне вспыхивает свет */
.snowb.lit .sbx-gl{animation:sbFlare 1.4s var(--ease)}
.snowb.lit .sbx-w{animation:sbWinOn 1.4s var(--ease)}
.snowb.lit .snowb-i{box-shadow:0 16px 34px -10px rgba(11,22,80,.75),0 0 0 3px #FFE7A3,0 0 44px 12px rgba(255,170,80,.7)}
.snowb-l{margin-left:12px;padding:10px 16px;border-radius:16px;background:var(--surface);color:var(--muted);font:600 13px/1.3 var(--body);white-space:nowrap;
  box-shadow:0 14px 30px -14px rgba(11,22,80,.55),0 0 0 1px var(--line);opacity:0;transform:translateX(-10px) scale(.9);transform-origin:left center;pointer-events:none;
  transition:opacity .35s,transform .45s cubic-bezier(.34,1.4,.5,1)}
.snowb-l b{display:block;font:800 14px var(--display);color:var(--text)}
.snowb:hover .snowb-l,.snowb:focus-visible .snowb-l,.snowb.hint .snowb-l{opacity:1;transform:none}
.snowb.used .snowb-i::before,.snowb.used .snowb-i::after{animation:none}
@keyframes sbTw{0%,100%{opacity:.9}50%{opacity:.25}}
@keyframes sbFlick{0%,100%{opacity:.85}30%{opacity:1}55%{opacity:.7}75%{opacity:.95}}
@keyframes sbWin{0%,100%{filter:none}30%{filter:brightness(1.12)}55%{filter:brightness(.92)}}
@keyframes sbFlare{0%{transform:scale(1);opacity:1}35%{transform:scale(2.6);opacity:1}100%{transform:scale(1);opacity:.85}}
@keyframes sbWinOn{0%,100%{filter:none}30%{filter:brightness(1.5)}}
@keyframes sbSmoke{0%{opacity:0;transform:translate(0,0) scale(.8)}15%{opacity:.75}100%{opacity:0;transform:translate(6px,-18px) scale(2.4)}}
@keyframes sbFl{to{transform:translateY(66px)}}
@keyframes sdPing{0%{opacity:.9;transform:scale(.9)}70%,100%{opacity:0;transform:scale(1.55)}}
@keyframes sbEnter{0%{opacity:0;transform:translateY(24px) scale(.6)}60%{opacity:1;transform:translateY(-4px) scale(1.04)}100%{transform:none}}
body:has(.cmpbar:not([hidden])) .snowb{bottom:84px}
.chat-open .snowb{opacity:0;pointer-events:none}
@media (max-width:760px){
  .snowb{left:16px;bottom:calc(80px + env(safe-area-inset-bottom,0px))}
  .snowb-i{width:56px;height:56px}
  body:has(.cmpbar:not([hidden])) .snowb{bottom:calc(140px + env(safe-area-inset-bottom,0px))}
}
@media print{.snowb{display:none}}

/* снег на шапке */
.top::after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:12px;pointer-events:none;opacity:0;transform:scaleY(0);transform-origin:top;transition:opacity .8s,transform 1.6s var(--ease);
  background:radial-gradient(circle at 10px 0,#fff 9px,transparent 10px) 0 0/22px 12px repeat-x,radial-gradient(circle at 4px 0,#fff 6px,transparent 7px) 9px 0/31px 9px repeat-x;filter:drop-shadow(0 2px 1px rgba(11,22,80,.18))}
.top.snowy::after{opacity:1;transform:none;transition-delay:1.2s,1.2s}

/* снегопад поверх сайта */
.sd-snow{position:fixed;inset:0;width:100%;height:100%;z-index:65;pointer-events:none}

/* карточка на парашюте */
.sd-drop{position:fixed;left:50%;bottom:28px;z-index:66;width:min(340px,calc(100vw - 32px));margin-left:calc(min(340px,calc(100vw - 32px)) / -2);display:flex;flex-direction:column;align-items:center;animation:sdFall 2.6s cubic-bezier(.2,.7,.3,1) both;transform-origin:50% 0}
.sd-drop.gone{animation:sdAway .4s ease-in both}
.sd-dome{width:150px;height:115px;margin-bottom:-2px;overflow:visible;animation:sdSway 3.4s ease-in-out 2.6s infinite;filter:drop-shadow(0 10px 18px rgba(11,22,80,.35))}
.sd-dome .c{fill:url(#sdDomeG);stroke:var(--blue);stroke-width:2.5;stroke-linejoin:round}
.sd-dome .s{fill:none;stroke:rgba(30,59,245,.35);stroke-width:2}
.sd-dome .l{fill:none;stroke:var(--sd-ice);stroke-width:2;stroke-linecap:round}
.sd-card{position:relative;display:flex;gap:14px;align-items:center;width:100%;text-decoration:none;color:#fff;border-radius:22px;padding:16px 18px;background:linear-gradient(135deg,#1E3BF5,#0A1550 80%);box-shadow:0 26px 50px -18px rgba(11,22,80,.75),inset 0 0 0 1px rgba(207,248,255,.35),inset 0 1px 0 rgba(255,255,255,.25)}
.sd-card-i{flex:none;width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:rgba(125,231,255,.18);color:#CFF8FF;font-size:26px}
.sd-card small{display:block;font:700 12px var(--body);color:var(--sd-ice)}
.sd-card b{display:block;font:900 19px/1.15 var(--display);margin-top:2px;text-transform:uppercase}
.sd-card em{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font:700 14px var(--body);font-style:normal;color:var(--lime)}
.sd-card em .ti{transition:transform .25s var(--ease)}
.sd-card:hover em .ti{transform:translateX(4px)}
.sd-x{position:absolute;right:-8px;bottom:70px;width:36px;height:36px;border-radius:50%;border:0;background:#fff;color:var(--ink);display:grid;place-items:center;font-size:18px;cursor:pointer;box-shadow:0 8px 20px -8px rgba(11,22,80,.6)}
@keyframes sdFall{0%{transform:translateY(-110vh) rotate(-8deg)}55%{transform:translateY(12px) rotate(5deg)}75%{transform:translateY(-4px) rotate(-2deg)}100%{transform:none}}
@keyframes sdSway{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
@keyframes sdAway{to{opacity:0;transform:translateY(30px) scale(.95)}}
@media (max-width:760px){.sd-drop{bottom:calc(150px + env(safe-area-inset-bottom,0px))}}
@media (prefers-reduced-motion:reduce){.snowb,.snowb svg,.snowb-i,.snowb-i::before,.snowb-i::after,.sd-dome,.snowb svg *{animation:none!important}.sd-drop{animation-duration:.01s}}

/* ================= страница ================= */
.view[data-tab="desant"]{animation:none}
/* от холода к теплу: сверху ледяная ночь, к финалу — рассвет; фон теплеет сам по мере прокрутки.
   Без clip-path и закреплённых слоёв: в Safari они давали пустые карточки в «прилипшей» летописи */
.sdx{color:var(--sx-tx);overflow-x:clip;
  background:linear-gradient(180deg,var(--sx-n0) 0%,var(--sx-n1) 18%,#0B1758 40%,#141A68 56%,#251C66 70%,#3B2062 82%,#57284F 92%,#6E3443 100%)}
.sdx .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sx-h2{font:900 clamp(30px,4.2vw,56px)/1.02 var(--display);text-transform:uppercase;letter-spacing:-.01em}
.sx-sub{margin-top:14px;max-width:56ch;font-size:18px;color:var(--sx-mu)}
.sdx section{position:relative}
.sdx h1,.sdx h2,.sdx h3{hyphens:manual;-webkit-hyphens:manual}

/* кнопки */
.sx-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.sx-btn{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font:800 15px var(--display);text-decoration:none;padding:16px 26px;border-radius:999px;border:0;cursor:pointer;background:var(--lime);color:var(--ink);box-shadow:0 14px 34px -14px rgba(139,227,63,.65);transition:transform .25s var(--ease),box-shadow .25s,background .25s}
.sx-btn .ti{font-size:20px;transition:transform .25s var(--ease)}
.sx-btn:hover{transform:translateY(-2px);box-shadow:0 18px 40px -14px rgba(139,227,63,.8)}
.sx-btn:hover .ti:last-child{transform:translateX(3px)}
.sx-btn:active{transform:translateY(0) scale(.98)}
.sx-btn.ghost{background:rgba(255,255,255,.06);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(214,224,255,.4)}
.sx-btn.ghost:hover{background:rgba(255,255,255,.12)}
.sx-link{display:inline-flex;align-items:center;gap:8px;margin-top:22px;font-weight:800;color:#fff;text-decoration:none;border-bottom:2px solid var(--c,var(--lime));padding-bottom:2px}
.sx-link .ti{font-size:22px}

/* ---------- первый экран ---------- */
.sx-hero{min-height:calc(100dvh - 68px);display:flex;align-items:center;padding-block:48px 72px;isolation:isolate}
.sd-hsnow{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.sx-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 12px;border-radius:999px;background:rgba(125,231,255,.1);box-shadow:inset 0 0 0 1px rgba(125,231,255,.3);font:700 14px var(--body);color:#CFF8FF}
.sx-eyebrow .ti{font-size:20px;color:var(--sd-ice)}
.sx-title{margin-top:22px;font:900 clamp(44px,6.1vw,96px)/.95 var(--display);text-transform:uppercase;letter-spacing:-.02em}
.sx-title .ln{display:block;white-space:nowrap}
.sx-title .ch{display:inline-block;will-change:transform}
.sx-title .acc{color:var(--lime)}
.sx-lede{margin-top:24px;max-width:34ch;font-size:clamp(18px,1.6vw,21px);line-height:1.5;color:#D3DBFF}
@keyframes sxSway{0%,100%{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(6deg) translateY(8px)}}

/* ---------- цифры ---------- */
.sx-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:8px 24px}
.sx-stats div{padding:6px 24px 6px 28px;border-left:1px solid var(--sx-ln)}
.sx-stats div:first-child{border-left:0;padding-left:0}
.sx-stats b{display:block;font:900 clamp(56px,7vw,96px)/1 var(--display);color:#fff;letter-spacing:-.03em}
.sx-stats span{display:block;margin-top:8px;font-weight:600;color:var(--sx-mu)}

/* ---------- летопись ---------- */

/* ---------- карта ---------- */
.sx-map{padding-block:56px 40px}
.sxm{display:grid;grid-template-columns:340px minmax(0,1fr);gap:28px;margin-top:36px;align-items:start}
.sxm-seg{position:relative;display:inline-flex;padding:4px;border-radius:999px;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px var(--sx-ln)}
.sxm-seg button{position:relative;z-index:1;border:0;background:none;color:var(--sx-mu);font:800 14px var(--display);padding:10px 18px;border-radius:999px;cursor:pointer;transition:color .3s}
.sxm-seg button[aria-pressed="true"]{color:var(--ink)}
.sxm-pill{position:absolute;left:4px;top:4px;bottom:4px;border-radius:999px;background:var(--lime);transition:transform .45s cubic-bezier(.34,1.4,.5,1),width .45s var(--ease)}
.sxm-list{display:grid;gap:10px;margin-top:16px}
.sxm-item{display:flex;gap:14px;align-items:flex-start;text-align:left;width:100%;border:0;cursor:pointer;color:inherit;font:inherit;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--sx-ln);transition:background .25s,box-shadow .25s,transform .25s var(--ease)}
.sxm-item:hover{background:rgba(255,255,255,.08);transform:translateX(3px)}
.sxm-item.on{background:color-mix(in srgb,var(--c) 14%,transparent);box-shadow:inset 0 0 0 1.5px var(--c)}
.sxm-item[hidden]{display:none}
.sxm-ico{flex:none;width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-size:22px;background:color-mix(in srgb,var(--c) 20%,transparent);color:var(--c)}
.sxm-item b{display:block;font:800 16px var(--display)}
.sxm-item b i{font-style:normal;color:var(--sx-mu);font-weight:700;margin-left:4px}
.sxm-item span > span{display:block;margin-top:4px;font-weight:700}
.sxm-item small{display:block;margin-top:2px;color:var(--sx-mu);font-size:13px;font-weight:600}
.sxm-map{margin:0;border-radius:28px;overflow:hidden;background:radial-gradient(120% 90% at 30% 20%,#14237C 0%,#081040 70%);box-shadow:inset 0 0 0 1px var(--sx-ln)}
.sxm-map svg{display:block;width:100%;height:auto;font-family:var(--body)}
.sxm-map figcaption{padding:10px 20px 14px;font-size:12px;color:var(--sx-mu)}
.sxm-grid path{stroke:rgba(214,224,255,.07);stroke-width:1;fill:none}
.sxm-land{fill:url(#sxmLand);stroke:rgba(125,231,255,.55);stroke-width:1.6;stroke-linejoin:round;filter:drop-shadow(0 0 18px rgba(30,59,245,.55))}
.sxm-dist{fill:transparent;stroke:transparent;stroke-width:1.5;transition:fill .4s,stroke .4s}
.sxm-dist.on{fill:color-mix(in srgb,var(--c) 26%,transparent);stroke:var(--c)}
.sxm-riv{fill:none;stroke:#4C7BFF;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:.8}
.sxm-riv.thin{stroke-width:1.8}
.sxm-arc{fill:none;stroke:var(--c);stroke-width:2.6;stroke-linecap:round;transition:opacity .35s,stroke-width .3s}
/* без anime.js (.an) — запасной вариант на CSS */
.sxm:not(.an) .sxm-arc{stroke-dasharray:1;stroke-dashoffset:1}
.sxm.go:not(.an) .sxm-arc{animation:sxDraw 1.3s cubic-bezier(.65,0,.35,1) calc(var(--n)*.22s) forwards}
@keyframes sxDraw{to{stroke-dashoffset:0}}
.sxm-chute{transition:opacity .35s}
.sxm:not(.an) .sxm-chute .sxm-fall{opacity:0}
.sxm.go:not(.an) .sxm-chute .sxm-fall{animation:sxLand 1.1s cubic-bezier(.34,1.3,.5,1) calc(var(--n)*.22s + 1.05s) forwards}
@keyframes sxLand{from{opacity:0;transform:translateY(-46px) rotate(-10deg)}to{opacity:1;transform:none}}
/* парашют: купол, клинья, стропы, рюкзак */
.sxm-fall,.sxm-lift,.sxm-sway,.sxm-chute .cn,.sxm-pt,.sxm-pt circle,.sxm-jet{transform-box:fill-box}
.sxm-sway,.sxm-lift{transform-origin:50% 100%}
.sxm-chute .cn{transform-origin:50% 100%}
.sxm-pt,.sxm-pt circle{transform-origin:center}
.sxm-chute .dm{fill:#fff}
.sxm-chute .gr{fill:var(--c)}
.sxm-chute .ed{fill:none;stroke:#081040;stroke-width:1.5;stroke-linejoin:round}
.sxm-chute .sh{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;opacity:.75}
.sxm-chute .ln{fill:none;stroke:rgba(235,241,255,.8);stroke-width:1}
.sxm-chute .bag{fill:#0B1650;stroke:var(--c);stroke-width:1.8}
.sxm-sway{filter:drop-shadow(0 4px 5px rgba(3,8,40,.55))}
.sxm-lift{transition:transform .35s cubic-bezier(.34,1.4,.5,1)}
.sxm-chute.on .sxm-lift,.sxm-chute.hi .sxm-lift{transform:translateY(-6px) scale(1.18)}
/* точка высадки: снег, круг зоны, облачко и снежинки при посадке */
.sxm-pt .snow{fill:rgba(240,246,255,.9)}
.sxm-pt .ring{fill:none;stroke:var(--c);stroke-width:2;animation:sxPulse 2.6s ease-out infinite}
.sxm-pt .dot{fill:var(--c);stroke:#081040;stroke-width:2}
.sxm-pt .puff{fill:none;stroke:#fff;stroke-width:2;opacity:0}
.sxm-pt .fl{fill:#fff;opacity:0}
.sxm-jet{fill:#fff;opacity:0;filter:drop-shadow(0 0 6px #fff)}
.sxm:not(.an) .sxm-jet{display:none}
/* подписи — плашками (sdMapPills), без плашки — с обводкой */
.sxm-chute text,.sxm-base text{font-size:17px;font-weight:800;fill:#fff;text-anchor:middle;paint-order:stroke;stroke:#081040;stroke-width:5px;stroke-linejoin:round}
.sxm-chute text{font-size:14px;font-weight:700;fill:#EEF2FF}
.sxm.pills .sxm-chute text,.sxm.pills .sxm-base text{stroke:none}
.sxm .pill{fill:rgba(8,16,64,.82);stroke:rgba(214,224,255,.22);stroke-width:1}
.sxm-base .pill{fill:rgba(8,16,64,.9);stroke:rgba(139,227,63,.45)}
.sxm.an .sxm-chute .pill{opacity:0}
.sxm-base .core{fill:#fff;stroke:var(--lime);stroke-width:3}
.sxm-base .ring{fill:none;stroke:var(--lime);stroke-width:2;transform-box:fill-box;transform-origin:center;animation:sxPulse 2.6s ease-out infinite}
@keyframes sxPulse{from{transform:scale(.4);opacity:.9}to{transform:scale(1.6);opacity:0}}
.sxm-arc.off,.sxm-chute.off{opacity:.08}
.sxm.picked .sxm-arc:not(.on),.sxm.picked .sxm-chute:not(.on),.sxm.hov .sxm-arc:not(.hi),.sxm.hov .sxm-chute:not(.hi){opacity:.18}
.sxm-arc.on,.sxm-arc.hi{stroke-width:4}

/* ---------- отряды ---------- */
.sx-squads{padding-block:96px 40px}
.sxs-patch{width:84px;height:94px;display:grid;place-items:center;align-content:center;gap:2px;color:var(--ink);background:var(--c);clip-path:polygon(50% 0,100% 18%,100% 72%,50% 100%,0 72%,0 18%);font-size:36px}
.sxs-patch span{font:900 11px var(--display);letter-spacing:.1em}
.sxs-motto{margin-top:14px;font:800 20px/1.3 var(--display);color:var(--c)}
.sxs-trips{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.sxs-trips li{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:999px;background:rgba(255,255,255,.07);font-weight:700;font-size:14px}
.sxs-trips b{padding:4px 10px;border-radius:999px;background:var(--c);color:var(--ink);font:800 12px var(--display)}

/* ---------- что делает десант: мозаика ---------- */
.sx-acts{padding-block:96px 40px}
.sxa-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(210px,auto);grid-auto-flow:dense;gap:16px;margin-top:36px}
.sxa{position:relative;overflow:hidden;border-radius:var(--sx-r);display:flex;align-items:flex-end;isolation:isolate;box-shadow:inset 0 0 0 1px var(--sx-ln)}
.sxa-0{grid-column:span 2;grid-row:span 2}
.sxa-1,.sxa-3,.sxa-5{grid-column:span 2}
.sxa img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s var(--ease)}
.sxa.ph::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,11,46,0) 20%,rgba(5,11,46,.55) 50%,rgba(5,11,46,.95))}
.sxa:hover img{transform:scale(1.05)}
.sxa-b{padding:22px 24px}
.sxa-b > .ti{font-size:34px;color:var(--lime)}
.sxa-b h3{margin-top:10px;font:800 22px var(--display)}
.sxa-b p{margin-top:6px;max-width:40ch;color:#D3DBFF;font-size:15px}
.sxa-0 .sxa-b h3{font-size:clamp(26px,2.6vw,36px)}
.sxa-2{background:linear-gradient(150deg,#1E3BF5,#0E1A63)}
.sxa-4{background:radial-gradient(100% 120% at 100% 0%,rgba(125,231,255,.35),transparent 60%),#0E1A63}
.sxa-5{background:linear-gradient(120deg,rgba(139,227,63,.16),transparent 60%),#0B1550}
.sxa-2 .sxa-b > .ti,.sxa-4 .sxa-b > .ti{color:#fff}

/* ---------- как устроен ---------- */
.sx-how{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;padding-block:96px 40px;align-items:start}
.sxh-side{position:sticky;top:100px}
.sxh-crew{margin:32px 0 0;display:grid;gap:18px}
.sxh-crew div{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center}
.sxh-crew dt{font:900 52px/1 var(--display);color:var(--lime);letter-spacing:-.03em}
.sxh-crew dd{margin:0;font-weight:600;color:#D3DBFF}
.sxh-line{position:relative;list-style:none;margin:0;padding:0 0 0 44px;display:grid;gap:22px}
.sxh-line::before,.sxh-line .fill{content:"";position:absolute;left:13px;top:12px;bottom:12px;width:2px;border-radius:2px}
.sxh-line::before{background:var(--sx-ln)}
.sxh-line .fill{background:linear-gradient(180deg,var(--lime),var(--sd-ice));transform-origin:top}
.sx-calm .sxh-line .fill{transform:none}
.sxh-line li{position:relative;padding:24px 26px;border-radius:var(--sx-r);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--sx-ln)}
.sxh-line .dot{position:absolute;left:-40px;top:28px;width:20px;height:20px;border-radius:50%;background:var(--sx-n1);box-shadow:inset 0 0 0 3px var(--lime)}
.sxh-line small{font:800 13px var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--sd-ice)}
.sxh-line h3{margin-top:6px;font:800 26px var(--display)}
.sxh-line p{margin-top:8px;color:#D3DBFF}

/* ---------- словарик: карточки-перевёртыши ---------- */
.sx-words{padding-block:96px 40px}
.sxw-row{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:32px max(20px,calc((100vw - 1160px)/2 + 20px)) 12px}
.sxw-row::-webkit-scrollbar{display:none}
.sxw{scroll-snap-align:start;flex:0 0 250px;height:230px;position:relative;border:0;padding:0;background:none;cursor:pointer;perspective:900px;font:inherit;color:inherit;text-align:left}
.sxw > span{position:absolute;inset:0;border-radius:var(--sx-r);padding:22px;display:flex;flex-direction:column;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:transform .7s cubic-bezier(.34,1.2,.5,1)}
.sxw .f{background:linear-gradient(160deg,#1A2A8E,#0B1550);box-shadow:inset 0 0 0 1px var(--sx-ln)}
.sxw .f .ti{font-size:34px;color:var(--sd-ice)}
.sxw .f b{margin-top:auto;font:900 24px/1.1 var(--display);text-transform:uppercase}
.sxw .f small{margin-top:8px;font-weight:700;color:var(--lime)}
.sxw .b{background:var(--lime);color:var(--ink);transform:rotateY(180deg)}
.sxw .b b{font:900 17px var(--display);text-transform:uppercase}
.sxw .b span{margin-top:10px;font-weight:600;line-height:1.45}
.sxw[aria-pressed="true"] .f{transform:rotateY(-180deg)}
.sxw[aria-pressed="true"] .b{transform:rotateY(0)}
.sxw:hover .f{box-shadow:inset 0 0 0 1.5px var(--lime)}

/* ---------- финал ---------- */
.sx-join{--sx-mu:#E8C9C4;position:relative;padding-block:110px 230px;text-align:center;background:radial-gradient(70% 55% at 50% 100%,rgba(255,176,96,.32),transparent 72%)}
/* посёлок на рассвете: окна зажигаются по одному, когда финал на экране */
.sxj-village{position:absolute;left:0;right:0;bottom:0;width:100%;height:170px;pointer-events:none}
.sxj-village .h{fill:#1C1238}
.sxj-village .rf{fill:none;stroke:#F4EEFF;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.sxj-village .g{fill:#F1ECFA}
.sxj-village .w{fill:#2C2150;transition:fill .6s}
.sxj-village .wg{fill:#FFB45C;opacity:0;filter:blur(6px)}
.sx-join.go .sxj-village .w{animation:sxWin .7s ease-out calc(.6s + var(--k)*.28s) forwards}
.sx-join.go .sxj-village .wg{animation:sxGlow .9s ease-out calc(.6s + var(--k)*.28s) forwards}
.sxj-village .wg{transform-box:fill-box;transform-origin:center}
.sx-join.an .sxj-village .w,.sx-join.an .sxj-village .wg{animation:none}
.sx-calm .sxj-village .w{fill:#FFC86B;animation:none}.sx-calm .sxj-village .wg{opacity:.55;animation:none}
@keyframes sxWin{to{fill:#FFC86B}}
@keyframes sxGlow{to{opacity:.55}}
.sxj-in{display:flex;flex-direction:column;align-items:center}
.sxj-steps{width:min(560px,90%);height:auto;fill:rgba(238,242,255,.85)}
.sxj-steps g{opacity:0}
.sx-join.go .sxj-steps g{animation:sxStep .5s ease-out calc(var(--k)*.22s) forwards}
.sx-calm .sxj-steps g{opacity:1;animation:none}
@keyframes sxStep{from{opacity:0;transform:scale(.6)}to{opacity:1}}
.sxj-steps g{transform-box:fill-box;transform-origin:center}
.sxj-h{margin-top:18px;font:900 clamp(42px,7vw,104px)/.95 var(--display);text-transform:uppercase;letter-spacing:-.02em}
.sxj-h span{color:var(--lime)}
.sxj-facts{list-style:none;padding:0;margin:34px 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.sxj-facts li{display:flex;align-items:center;gap:10px;padding:12px 20px;border-radius:999px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px var(--sx-ln);font-weight:600;color:#D3DBFF}
.sxj-facts b{font:900 18px var(--display);color:#fff}
.sxj-facts .ti{font-size:22px;color:var(--lime)}
.sx-join .sx-cta{justify-content:center}
.sxj-badge{display:flex;align-items:center;gap:8px;margin-top:22px;font-weight:600;color:var(--sx-mu)}
.sxj-badge .ti{font-size:20px;color:var(--sd-ice)}
.sxj-comms{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;width:100%;margin-top:56px;text-align:left}
.sxj-comms a{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;text-decoration:none;color:#fff;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px var(--sx-ln);transition:background .25s,transform .25s var(--ease)}
.sxj-comms a:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}
.sxj-comms a > .ti:first-child{font-size:26px;color:#7FA8FF}
.sxj-comms b{display:block;font-size:14px;line-height:1.25}
.sxj-comms small{display:block;margin-top:2px;font-size:12px;color:var(--sx-mu)}
.sxj-comms .go{margin-left:auto;font-size:18px;color:var(--sx-mu)}

/* ---------- планшет и телефон ---------- */
@media (max-width:1100px){.sxj-comms{grid-template-columns:repeat(3,minmax(0,1fr))}.sxm{grid-template-columns:minmax(0,1fr)}.sxm-side{order:2}.sxm-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .sx-how{grid-template-columns:minmax(0,1fr);gap:32px}.sxh-side{position:static}
}
@media (max-width:767px){
  .sx-hero{min-height:0;padding-block:28px 48px}
  .sx-title{font-size:clamp(40px,12.5vw,64px)}
  .sx-stats{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}
  .sx-stats div:nth-child(3){border-left:0;padding-left:0}
  .sxm-list{grid-template-columns:minmax(0,1fr)}
  .sxm-base text{font-size:22px}
  .sxm-chute text{display:block;font-size:17px}
  .sxa-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(180px,auto)}
  .sxa-0{grid-row:span 1}
  .sxa-0,.sxa-1,.sxa-3,.sxa-5{grid-column:span 2}
  .sxa-0{min-height:300px}
  .sxa-b{padding:18px}
  .sxh-crew div{grid-template-columns:72px 1fr}.sxh-crew dt{font-size:40px}
  .sx-join{padding-block:72px 170px}
  .sxj-village{height:120px}
  .sxj-facts{flex-direction:column;align-items:stretch}
  .sxj-facts li{text-align:left;border-radius:20px}
  .sxj-facts b{flex:none;min-width:64px}
  .sxj-h{font-size:clamp(30px,9.6vw,44px)}
  .sx-h2{font-size:clamp(28px,8.4vw,40px)}
  .sxj-comms{grid-template-columns:minmax(0,1fr)}
  .sx-btn{padding:15px 22px}
}
@media (prefers-reduced-motion:reduce){
  .sxm-base .ring{animation:none}
  .sxm-arc{stroke-dashoffset:0;animation:none!important}
  .sxm-chute .sxm-fall{opacity:1!important;animation:none!important}
  .sxw > span{transition:none}
}

/* ---------- высотомер: прокрутка как прыжок (3000 м → зона высадки → 0 м) ----------
   --warm (0..1) ставит desant.js на сам высотомер: от ледяного к тёплому цвету */
.sx-alt{transition:opacity .35s;--ac:color-mix(in oklab,#7DE7FF,#FFB86B calc(var(--warm,0)*100%));position:fixed;z-index:20;right:max(14px,env(safe-area-inset-right,0px));top:50%;translate:0 -50%;
  display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 7px;border-radius:999px;background:rgba(5,11,46,.42);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  box-shadow:inset 0 0 0 1px var(--sx-ln);pointer-events:none;color:var(--sx-tx);font-family:var(--display)}
.sxl-top{font-size:10px;font-weight:700;color:var(--sx-mu)}
.sxl-scale{position:relative;width:4px;height:min(38vh,300px);border-radius:4px;background:repeating-linear-gradient(180deg,rgba(214,224,255,.32) 0 2px,transparent 2px 10px)}
.sxl-zone{position:absolute;left:-2px;right:-2px;top:80%;bottom:0;border-radius:4px;background:color-mix(in oklab,var(--lime) 55%,transparent)}
.sxl-chute{position:absolute;left:50%;top:0;translate:-50% -50%;display:grid;place-items:center;width:30px;height:30px;font-size:24px;color:var(--ac);filter:drop-shadow(0 2px 6px rgba(0,0,0,.4));transition:rotate .5s,scale .5s}
.sxl-read{min-width:40px;text-align:center;font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ac)}
.sxl-tag{max-width:58px;font:700 9px/1.2 var(--body);text-transform:uppercase;letter-spacing:.04em;text-align:center;color:var(--lime);opacity:0;transition:opacity .4s}
.sx-alt[data-st="zone"] .sxl-tag,.sx-alt[data-st="land"] .sxl-tag{opacity:1}
.sx-live .sxl-chute{animation:sxSway 2.4s ease-in-out infinite}
.sx-alt[data-st="land"] .sxl-chute{animation:none;scale:.8;rotate:-90deg}
@keyframes sxSway{50%{rotate:-8deg}}
@media (max-width:1299px){
  /* узкий экран и телефон: только тонкая шкала у правого края по центру — не закрывает текст,
     кнопки снежинки (слева внизу), чата (справа внизу) и нижнее меню свободны */
  .sx-alt{right:4px;padding:0;gap:6px;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
  .sxl-top,.sxl-tag{display:none}
  .sxl-scale{width:3px;height:30vh}
  .sxl-chute{width:20px;height:20px;font-size:16px}
  .sxl-read{min-width:0;font-size:10px;writing-mode:vertical-rl;rotate:180deg;text-shadow:0 1px 3px rgba(0,0,0,.6)}
  .sxl-read::after{content:" м"}
}
@media (max-width:767px){.sxl-scale{height:24vh}}
.sx-alt.gone{opacity:0}
@media print{.sx-alt{display:none}}

/* ---------- посадочный талон в финале ---------- */
.sxt{width:min(780px,100%);margin-top:44px;text-align:left}
.sxt [hidden]{display:none!important}
.sxt-form{display:grid;gap:14px;padding:clamp(20px,3vw,32px);border-radius:28px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px var(--sx-ln)}
.sxt-k{display:flex;align-items:center;gap:8px;margin:0;font:800 13px var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--lime)}
.sxt-k .ti{font-size:20px}
.sxt-h{font:900 clamp(22px,3vw,30px)/1.1 var(--display)}
.sxt-name > span,.sxt-city legend{display:block;margin-bottom:8px;padding:0;font-weight:700;font-size:14px;color:var(--sx-mu)}
.sxt-name input{width:100%;box-sizing:border-box;padding:14px 18px;border:0;border-radius:16px;background:rgba(5,11,46,.5);box-shadow:inset 0 0 0 1.5px rgba(214,224,255,.3);color:#fff;font:700 20px var(--body)}
.sxt-name input:focus-visible{outline:3px solid var(--lime);outline-offset:2px}
.sxt-err{margin:-4px 0 0;font-weight:700;font-size:14px;color:#FFB4A8}
.sxt-err:empty{display:none}
.sxt-city{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;border:0;min-width:0}
.sxt-city legend{float:left;width:100%;grid-column:1/-1}
.sxt-city label{position:relative;cursor:pointer}
.sxt-city input{position:absolute;opacity:0;width:1px;height:1px}
.sxt-city span{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;height:100%;box-sizing:border-box;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px var(--sx-ln);transition:background .25s,box-shadow .25s}
.sxt-city .ti{grid-row:span 2;font-size:24px;color:var(--c)}
.sxt-city b{font-size:15px;line-height:1.2}
.sxt-city small{font-size:12px;font-weight:600;color:var(--sx-mu)}
.sxt-city label:hover span{background:rgba(255,255,255,.09)}
.sxt-city input:checked + span{background:color-mix(in oklab,var(--c) 16%,transparent);box-shadow:inset 0 0 0 2px var(--c)}
.sxt-city input:focus-visible + span{outline:3px solid var(--lime);outline-offset:2px}
.sxt-form .sx-btn{justify-self:start}
.sxt-note{margin:0;font-size:13px;font-weight:600;color:var(--sx-mu)}
/* сам талон: светлый билет, справа отрывная часть с выемками */
.sxt-card{--st:210px;display:grid;grid-template-columns:minmax(0,1fr) var(--st);border-radius:26px;overflow:hidden;background:#F5F7FF;color:#0B1650;box-shadow:0 30px 60px rgba(0,0,0,.35);
  -webkit-mask:radial-gradient(circle 16px at calc(100% - var(--st)) 0,#0000 97%,#000) top/100% 51% no-repeat,radial-gradient(circle 16px at calc(100% - var(--st)) 100%,#0000 97%,#000) bottom/100% 51% no-repeat;
  mask:radial-gradient(circle 16px at calc(100% - var(--st)) 0,#0000 97%,#000) top/100% 51% no-repeat,radial-gradient(circle 16px at calc(100% - var(--st)) 100%,#0000 97%,#000) bottom/100% 51% no-repeat}
.sxt-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;background:#1E3BF5;color:#fff;border-bottom:6px solid var(--c)}
.sxt-top b{font:800 14px var(--display);text-transform:uppercase;letter-spacing:.04em}
.sxt-top span{display:flex;align-items:center;gap:6px;font-weight:600;font-size:13px}
.sxt-top .ti{font-size:18px}
.sxt-route{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:22px 24px 14px}
.sxt-route b{display:block;font:900 clamp(32px,5vw,50px)/1 var(--display)}
.sxt-route small{display:block;margin-top:6px;font-weight:600;font-size:13px;color:#5B6596}
.sxt-route .to{text-align:right}
.sxt-fly{display:flex;align-items:center;gap:8px;color:#1E3BF5;font-size:32px}
.sxt-fly::before,.sxt-fly::after{content:"";width:clamp(12px,4vw,44px);border-top:3px dashed #B9C1E6}
.sxt-f{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin:0 24px;padding:16px 0 24px;border-top:2px solid #DDE2F5}
.sxt-f .w{grid-column:1/-1}
.sxt-f dt{font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#5B6596}
.sxt-f dd{margin:2px 0 0;font:800 18px/1.2 var(--display);overflow-wrap:anywhere}
.sxt-stub{display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:24px 22px;border-left:3px dashed #C9CFEA}
.sxt-stub small{display:block;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#5B6596}
.sxt-stub b{display:block;margin-top:4px;font:900 22px/1.15 var(--display);color:#1E3BF5;overflow-wrap:anywhere}
.sxt-bars{display:block;width:100%;height:64px;fill:#0B1650}
.sxt-dest{display:flex;align-items:flex-start;justify-content:center;gap:8px;margin:18px 0 0;font-weight:600;font-size:14px;color:var(--sx-mu);text-align:center}
.sxt-dest .ti{flex:none;font-size:18px;margin-top:1px}
.sxt-act{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px}
.sxt-act .sx-btn:disabled{opacity:.6;cursor:progress}
@media (max-width:767px){
  .sxt{margin-top:32px}
  .sxt-city{grid-template-columns:minmax(0,1fr)}
  .sxt-form .sx-btn{justify-self:stretch;justify-content:center}
  .sxt-card{--st:118px;grid-template-columns:minmax(0,1fr);
    -webkit-mask:radial-gradient(circle 14px at 0 calc(100% - var(--st)),#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle 14px at 100% calc(100% - var(--st)),#0000 97%,#000) right/51% 100% no-repeat;
    mask:radial-gradient(circle 14px at 0 calc(100% - var(--st)),#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle 14px at 100% calc(100% - var(--st)),#0000 97%,#000) right/51% 100% no-repeat}
  .sxt-top{padding:14px 18px}.sxt-top span{display:none}
  .sxt-route{padding:18px 18px 12px}.sxt-f{margin:0 18px}
  .sxt-stub{height:var(--st);box-sizing:border-box;flex-direction:row;align-items:center;padding:18px;border-left:0;border-top:3px dashed #C9CFEA}
  .sxt-stub > div{flex:1;min-width:0}.sxt-bars{width:42%;height:56px}
  .sxt-act .sx-btn{flex:1 1 100%;justify-content:center}
}

/* ================= снег и лёд: сияние, тайга, иней, сугробы, матовый лёд, окно (2026-10-07) ================= */
/* северное сияние: мягкие ленты-занавеси над тайгой */
/* лучи занавеси: тонкие вертикальные полосы в той же ленте */

/* тайга в три плана на сугробе (svg из sdTaiga) */

/* иней на заголовке: буквы сначала в изморози (.frost), потом оттаивают по одной; .fz — мороз от наведения */
.sx-title .ch{background-image:var(--sx-frost),linear-gradient(170deg,#FFFFFF 0%,#D4F2FF 38%,#8FD8FF 68%,#EAF8FF 100%);background-size:90px 90px,100% 100%;
  -webkit-background-clip:text;background-clip:text;
  transition:color .8s ease calc(var(--i,0)*22ms),filter .8s ease calc(var(--i,0)*22ms)}
.sx-title.frost .ch,.sx-title .ch.fz{color:transparent;filter:drop-shadow(0 0 8px rgba(125,231,255,.6))}
.sx-title.thawed .ch{transition-delay:0s}
.sx-title .ch.fz{transition-duration:.2s}

/* сугроб между блоками */
.sx-drift{position:relative;height:clamp(46px,6vw,80px);margin:32px 0 -8px;pointer-events:none}
.sx-drift svg{display:block;width:100%;height:100%;-webkit-mask-image:linear-gradient(180deg,#000 45%,transparent);mask-image:linear-gradient(180deg,#000 45%,transparent)}
.sx-drift .b{fill:rgba(170,190,255,.07)}
.sx-drift .f{fill:rgba(205,220,255,.1)}
.sx-drift .rim{fill:none;stroke:rgba(230,240,255,.55);stroke-width:2;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 4px rgba(207,248,255,.6))}
.sx-drift i{position:absolute;width:3px;height:3px;margin:-1.5px;border-radius:50%;background:#fff;box-shadow:0 0 6px 1px rgba(207,248,255,.9);opacity:.15;animation:sxTw 3.2s ease-in-out calc(var(--k)*.37s) infinite}
@keyframes sxTw{50%{opacity:1;transform:scale(1.4)}}

/* снежные шапки на карточках: две гряды «сосулек-холмиков» разного шага — выглядит неровно, как настоящий снег */
.sxw .f{overflow:hidden}

/* матовый лёд: зерно, ледяная кромка и блик, который пробегает при наведении */
.sxw .f{background-image:var(--sx-grain),linear-gradient(160deg,#1A2A8E,#0B1550)}
.sxm-item{position:relative}

/* ледяная карта: иней по углам и снег поверх */
.sxm-map{position:relative}
.sxm-map::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:inherit;
  background:var(--sx-frost) 0 0/120px 120px;opacity:.3;
  -webkit-mask-image:radial-gradient(60% 50% at 0 0,#000,transparent 70%),radial-gradient(55% 45% at 100% 100%,#000,transparent 70%),radial-gradient(35% 30% at 100% 0,#000,transparent 70%);
  mask-image:radial-gradient(60% 50% at 0 0,#000,transparent 70%),radial-gradient(55% 45% at 100% 100%,#000,transparent 70%),radial-gradient(35% 30% at 100% 0,#000,transparent 70%)}
.sxm-map::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 60px rgba(160,215,255,.22),inset 0 0 0 1px rgba(207,240,255,.22)}
.sxm-snow{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}

/* «Протри окно» */
.sx-win{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:56px;align-items:center;padding-block:110px 40px}
.sxwn-k{display:inline-flex;align-items:center;gap:8px;font:800 13px var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--sd-ice)}
.sxwn-k .ti{font-size:20px}
.sx-win .sx-h2{margin-top:12px}
.sx-win .sx-h2 span{color:#FFB86B}
.sx-win .sx-btn{margin-top:28px}
.sx-win .sx-btn:disabled{opacity:.4;cursor:default;transform:none}
.sxwn-cap{margin-top:18px;font-weight:600;color:#FFD9A8;opacity:0;transform:translateY(8px);transition:opacity .6s,transform .6s cubic-bezier(.16,1,.3,1)}
.sx-win.clear .sxwn-cap{opacity:1;transform:none}
/* рама окна: тёмное дерево ночи, тёплый свет изнутри, снег на подоконнике */
.sxwn-frame{position:relative;margin:0;padding:14px;border-radius:26px;background:linear-gradient(160deg,#24185A,#120C36);
  box-shadow:0 40px 80px -30px rgba(2,6,30,.9),0 0 0 1px rgba(255,214,170,.18),0 0 90px -10px rgba(255,170,90,.35);transition:box-shadow 1.2s}
.sx-win.clear .sxwn-frame{box-shadow:0 40px 80px -30px rgba(2,6,30,.9),0 0 0 1px rgba(255,214,170,.3),0 0 140px 0 rgba(255,170,90,.55)}
.sxwn-frame::after{content:"";position:absolute;left:-10px;right:-10px;bottom:-12px;height:30px;border-radius:16px 16px 12px 12px;pointer-events:none;
  background:radial-gradient(ellipse 34px 16px at 50% 100%,#F2F7FF 97%,transparent 100%) 0 0/58px 22px repeat-x,radial-gradient(ellipse 22px 12px at 50% 100%,#E2EBFF 97%,transparent 100%) 21px 4px/41px 20px repeat-x,linear-gradient(#EEF4FF,#DCE6FF) 0 100%/100% 10px no-repeat;
  filter:drop-shadow(0 6px 8px rgba(5,11,46,.5))}
.sxwn-glass{position:relative;aspect-ratio:3/2;border-radius:16px;overflow:hidden;background:#3a2a40}
.sxwn-glass img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(1.08) sepia(.12) brightness(1.03)}
/* перекрестье рамы поверх стекла */
.sxwn-glass::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;
  background:linear-gradient(90deg,transparent calc(50% - 6px),#1A1146 calc(50% - 6px),#1A1146 calc(50% + 6px),transparent calc(50% + 6px)),
    linear-gradient(180deg,transparent calc(42% - 6px),#1A1146 calc(42% - 6px),#1A1146 calc(42% + 6px),transparent calc(42% + 6px));
  box-shadow:inset 0 0 30px rgba(10,6,40,.55)}
.sxwn-fog{position:absolute;inset:0;width:100%;height:100%;z-index:2;cursor:grab;touch-action:pan-y;transition:opacity 1.4s ease}
.sx-win.clear .sxwn-fog{opacity:0;pointer-events:none}
.sxwn-hint{position:absolute;left:50%;top:50%;z-index:4;translate:-50% -50%;display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border-radius:999px;pointer-events:none;
  background:rgba(11,22,80,.78);color:#fff;font:800 15px var(--display);white-space:nowrap;box-shadow:0 14px 30px -12px rgba(2,6,30,.7);transition:opacity .4s}
.sxwn-hint .ti{font-size:22px;animation:sxRub 1.6s ease-in-out infinite}
@keyframes sxRub{0%,100%{transform:translateX(-5px) rotate(-8deg)}50%{transform:translateX(5px) rotate(8deg)}}
.sx-win.wiped .sxwn-hint,.sx-win.clear .sxwn-hint{opacity:0}

@media (max-width:900px){.sx-win{grid-template-columns:minmax(0,1fr);gap:32px}}
@media (max-width:767px){
  .sx-win{padding-block:64px 24px}
  .sxwn-frame{padding:10px;border-radius:20px}
  .sxwn-glass{aspect-ratio:4/3;border-radius:12px}
  .sx-drift{margin-top:20px}
}
@media (prefers-reduced-motion:reduce){
  .sx-drift i,.sxwn-hint .ti{animation:none}
  .sx-title .ch{transition:none}
  .sxwn-fog,.sxwn-cap{transition:none}
}

/* ================= кино: кадр на первом экране, «Зона высадки», «Десант в кадрах», летопись стопкой (2026-10-07) ================= */
/* первый экран: фото во весь экран, тонировано в ночной синий; заголовок и снег — слои поверх */
.sx-hero{position:relative;min-height:calc(100svh - 68px);display:flex;align-items:flex-end;padding-block:96px clamp(72px,12vh,140px);overflow:hidden;isolation:isolate;--dk:0}
.sxh-bg{position:absolute;inset:-4% 0 -12%;z-index:-3;will-change:transform}
.sxh-bg img{display:block;width:100%;height:100%;object-fit:cover;object-position:60% 35%;transform:scale(1.06)}
.sxh-shade{position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:linear-gradient(180deg,rgba(5,11,46,.55) 0%,rgba(5,11,46,.05) 30%,rgba(5,11,46,.25) 55%,rgba(5,11,46,.92) 88%,var(--sx-n0) 100%),
    linear-gradient(90deg,rgba(5,11,46,.78) 0%,rgba(5,11,46,.35) 45%,transparent 70%),
    linear-gradient(180deg,rgba(30,59,245,.18),rgba(30,59,245,.18))}
.sxh-shade::after{content:"";position:absolute;inset:0;background:var(--sx-n0);opacity:calc(var(--dk)*.85)}
.sx-hero .sd-hsnow{z-index:-1}
.sxh-in{position:relative;will-change:transform,opacity}
.sx-hero .sx-title{font-size:clamp(52px,10.5vw,176px);line-height:.86;letter-spacing:-.03em;text-shadow:0 10px 50px rgba(5,11,46,.45)}
.sx-hero .sx-lede{max-width:46ch;margin-top:28px;font-size:clamp(17px,1.5vw,21px);color:#E6ECFF;text-shadow:0 2px 14px rgba(5,11,46,.6)}
.sx-hero .sx-lede b{display:block;margin-bottom:6px;font:800 clamp(19px,1.8vw,25px)/1.25 var(--display);color:#fff}
.sxh-down{position:absolute;left:50%;bottom:22px;translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:10px;font:700 12px var(--body);letter-spacing:.08em;text-transform:uppercase;color:rgba(230,236,255,.8)}
.sxh-down span{width:2px;height:44px;border-radius:2px;background:linear-gradient(180deg,transparent,#fff);animation:sxDown 1.8s ease-in-out infinite}
@keyframes sxDown{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}}

/* «Зона высадки»: секция выше экрана; пока окно прилипло, прокрутка раскрывает фото (--p ставит desant.js) */
.sx-zone{height:260vh;--p:0}
.sxz-pin{position:sticky;top:68px;height:calc(100svh - 68px);display:grid;place-items:center;overflow:hidden}
.sxz-media{position:relative;z-index:1;overflow:hidden;
  width:calc(min(420px,70vw) + (100vw - min(420px,70vw))*var(--p));height:calc(min(52vh,520px) + (100% - min(52vh,520px))*var(--p));
  border-radius:calc(28px*(1 - var(--p)));box-shadow:0 40px 90px -30px rgba(0,0,0,.8)}
.sxz-media img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(calc(1.25 - .25*var(--p)))}
.sxz-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,11,46,.1) 30%,rgba(5,11,46,.85));opacity:calc(var(--p)*1.1)}
.sxz-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:clamp(24px,6vw,72px) max(20px,calc((100vw - 1160px)/2 + 20px));opacity:0;transform:translateY(30px);transition:opacity .6s,transform .8s cubic-bezier(.16,1,.3,1)}
.sx-zone.done .sxz-cap{opacity:1;transform:none}
.sxz-cap .sx-h2{font-size:clamp(34px,6vw,88px);max-width:14ch}
.sxz-cap p:last-child{margin-top:14px;max-width:52ch;font-size:clamp(16px,1.4vw,20px);color:#E6ECFF}
.sxz-k{display:inline-flex;align-items:center;gap:8px;margin-bottom:12px;padding:8px 14px;border-radius:999px;background:var(--lime);color:var(--ink);font:800 13px var(--display);text-transform:uppercase;letter-spacing:.05em}
.sxz-k .ti{font-size:18px}
.sxz-words{position:absolute;inset:0;z-index:0;display:flex;align-items:center;justify-content:center;gap:min(450px,72vw);pointer-events:none;
  font:900 clamp(34px,5.6vw,100px)/1 var(--display);text-transform:uppercase;letter-spacing:-.02em;color:#fff;opacity:calc(1 - var(--p)*1.4)}
.sxz-words .l{transform:translateX(calc(var(--p)*-55vw))}
.sxz-words .r{transform:translateX(calc(var(--p)*55vw))}
.sx-zone.done .sxz-words{visibility:hidden}
.sx-zone.calm{height:auto;--p:1}.sx-zone.calm .sxz-pin{position:relative;top:0;height:min(86svh,760px)}

/* «Десант в кадрах»: семь фото, центр вырастает во весь экран */
.sx-zoom{height:300vh;margin-top:40px}
.sxzm-pin{position:sticky;top:68px;height:calc(100svh - 68px);overflow:hidden}
.sxzm-it{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.sxzm-it > div{position:relative;width:25vw;height:25vh;overflow:hidden;border-radius:6px}
.sxzm-it img{width:100%;height:100%;object-fit:cover}
.sxzm-it.i1 > div{top:-30vh;left:5vw;width:35vw;height:30vh}
.sxzm-it.i2 > div{top:-10vh;left:-25vw;width:20vw;height:45vh}
.sxzm-it.i3 > div{left:27.5vw;width:25vw;height:25vh}
.sxzm-it.i4 > div{top:27.5vh;left:5vw;width:20vw;height:25vh}
.sxzm-it.i5 > div{top:27.5vh;left:-22.5vw;width:30vw;height:25vh}
.sxzm-it.i6 > div{top:22.5vh;left:25vw;width:15vw;height:15vh}
.sxzm-cap{position:absolute;left:0;right:0;bottom:0;padding:48px max(20px,calc((100vw - 1160px)/2 + 20px));margin:0;font:800 clamp(18px,2vw,26px)/1.3 var(--display);color:#fff;
  background:linear-gradient(180deg,transparent,rgba(5,11,46,.85));opacity:0;transform:translateY(20px);transition:opacity .6s,transform .8s cubic-bezier(.16,1,.3,1)}
.sxzm-cap b{display:block;font:900 clamp(36px,6vw,90px)/1 var(--display);text-transform:uppercase;letter-spacing:-.02em}
.sx-zoom.done .sxzm-cap{opacity:1;transform:none}
.sx-zoom.calm{height:auto}.sx-zoom.calm .sxzm-pin{position:relative;top:0;height:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 20px}
.sx-zoom.calm .sxzm-it{position:static}.sx-zoom.calm .sxzm-it > div{position:static;width:100%;height:220px}.sx-zoom.calm .sxzm-cap{position:static;opacity:1;transform:none;grid-column:1/-1;background:none;padding:12px 0}

/* летопись стопкой: главы прилипают сверху одна на другую */

.sxj-credit{margin-top:28px;font-size:12px;color:var(--sx-mu);opacity:.8}

@media (max-width:767px){
  .sx-hero{padding-block:64px calc(120px + env(safe-area-inset-bottom,0px));align-items:flex-end}
  .sx-hero .sx-title{font-size:clamp(38px,12.6vw,64px)}
  .sxh-down{display:none}
  .sxz-cap{padding-bottom:calc(120px + env(safe-area-inset-bottom,0px))}
  .sxz-cap .sx-h2{font-size:clamp(30px,9vw,42px)}
  .sxzm-cap{padding-bottom:calc(120px + env(safe-area-inset-bottom,0px))}
  .sxzm-cap b{font-size:clamp(32px,10vw,48px)}
  .sxh-shade{background:linear-gradient(180deg,rgba(5,11,46,.45) 0%,rgba(5,11,46,.1) 25%,rgba(5,11,46,.55) 55%,rgba(5,11,46,.95) 85%,var(--sx-n0) 100%)}
  .sxh-bg img{object-position:62% 30%}
  .sx-zone{height:220vh}
  .sxz-words{flex-direction:column;gap:min(56vh,540px)}
  .sxz-words .l{transform:translateY(calc(var(--p)*-40vh))}.sxz-words .r{transform:translateY(calc(var(--p)*40vh))}
  .sx-zoom{height:240vh}
  .sxzm-it > div{width:42vw;height:24vh}
  .sxzm-it.i1 > div{top:-31vh;left:6vw;width:50vw;height:22vh}
  .sxzm-it.i2 > div{top:-6vh;left:-31vw;width:24vw;height:34vh}
  .sxzm-it.i3 > div{left:33vw;width:26vw;height:22vh}
  .sxzm-it.i4 > div{top:27vh;left:8vw;width:40vw;height:20vh}
  .sxzm-it.i5 > div{top:24vh;left:-30vw;width:30vw;height:24vh}
  .sxzm-it.i6 > div{top:-26vh;left:-32vw;width:22vw;height:14vh}
  .sx-zoom.calm .sxzm-pin{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){.sxh-down span{animation:none}}

/* ================= манифест, ленты крест-накрест, подсветка шагов (2026-10-07) ================= */
.sx-mani{padding-block:120px 80px}
.sxmn{margin:0;max-width:22ch;font:900 clamp(30px,4.6vw,72px)/1.08 var(--display);letter-spacing:-.02em;text-transform:uppercase}
.sxmn .w{display:inline;color:rgba(214,224,255,.16);transition:color .35s ease}
.sxmn .w.on{color:#fff}
.sxmn .w.acc.on{color:var(--lime)}

.sx-ribbons{position:relative;height:clamp(150px,18vw,230px);margin-block:40px;overflow:hidden;pointer-events:none}
.sx-ribbons .rb{position:absolute;left:-10%;right:-10%;top:50%;padding:14px 0;overflow:hidden;box-shadow:0 18px 40px -18px rgba(0,0,0,.6)}
.sx-ribbons .ra{background:var(--lime);color:var(--ink);transform:translateY(-50%) rotate(-4deg)}
.sx-ribbons .rb2{background:#F4F7FF;color:#0B1650;transform:translateY(-50%) rotate(3deg)}
.sx-ribbons .tr{display:flex;width:max-content;animation:sxRun 38s linear infinite}
.sx-ribbons .rb2 .tr{animation-direction:reverse;animation-duration:46s}
.sx-ribbons .tr span{display:flex;align-items:center;white-space:nowrap}
.sx-ribbons b{font:900 clamp(18px,2vw,28px)/1 var(--display);text-transform:uppercase;letter-spacing:.01em;padding-inline:22px}
.sx-ribbons i{font-style:normal;font-size:clamp(16px,1.6vw,22px);opacity:.7}
@keyframes sxRun{to{transform:translateX(-50%)}}

.sxh-line li{transition:opacity .45s,box-shadow .45s,transform .45s cubic-bezier(.16,1,.3,1)}
.sxh-line.lit li{opacity:.42}
.sxh-line.lit li.on{opacity:1;transform:translateX(6px);box-shadow:inset 0 0 0 1.5px var(--lime),0 24px 50px -24px rgba(139,227,63,.45)}
.sxh-line li.on .dot{background:var(--lime)}

@media (max-width:767px){.sx-mani{padding-block:72px 48px}.sx-ribbons{margin-block:16px}}
@media (prefers-reduced-motion:reduce){.sx-ribbons .tr{animation:none}.sxmn .w{transition:none}}

/* ================= снег и лёд на карточках (после переделки отрядов и летописи) ================= */
.sxa::before,.sxw .f::before{content:"";position:absolute;left:0;right:0;top:0;height:14px;z-index:3;pointer-events:none;
  background:radial-gradient(ellipse 15px 9px at 50% 0,#F2F7FF 97%,transparent 100%) 0 2px/30px 11px repeat-x,
    radial-gradient(ellipse 9px 7px at 50% 0,#E4EDFF 97%,transparent 100%) 13px 2px/23px 9px repeat-x,
    linear-gradient(#F4F8FF,#F4F8FF) 0 0/100% 4px no-repeat;filter:drop-shadow(0 2px 2px rgba(5,11,46,.35))}
.sxh-line li,.sxm-item,.sxw .f,.sxj-facts li{background-image:var(--sx-grain),linear-gradient(160deg,rgba(207,232,255,.1),rgba(255,255,255,.02));background-size:140px 140px,100% 100%}
.sxw .f{background-image:var(--sx-grain),linear-gradient(160deg,#1A2A8E,#0B1550)}
.sxh-line li,.sxm-item,.sxw .f{box-shadow:inset 0 0 0 1px rgba(207,240,255,.16),inset 0 1px 0 rgba(255,255,255,.22)}
.sxh-line li::after,.sxm-item::after,.sxw .f::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:2;
  background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.16) 49%,rgba(207,248,255,.07) 53%,transparent 60%) no-repeat;background-size:260% 100%;background-position:130% 0;transition:background-position 1s cubic-bezier(.16,1,.3,1)}
.sxh-line li:hover::after,.sxm-item:hover::after,.sxw:hover .f::after{background-position:-30% 0}

/* ================= «Десант по России»: блок прилипает, прокрутка листает главы (2026-10-07) ================= */
.sx-scale{padding-top:60px}
.sxsc-run{height:calc(var(--n)*62vh + 100svh)}
.sxsc-pin{position:sticky;top:68px;height:calc(100svh - 68px);overflow:hidden;
  background:radial-gradient(60% 70% at 75% 60%,rgba(30,59,245,.35),transparent 70%)}
.sx-scale.yu .sxsc-pin{background:radial-gradient(60% 70% at 75% 60%,rgba(139,227,63,.18),transparent 70%)}
.sxsc-in{height:100%;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-template-rows:auto 1fr auto;column-gap:48px;padding-block:32px 28px}
.sxsc-top{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap}
.sxsc-k span{font:800 13px var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--sd-ice)}
.sxsc-main{align-self:center}
.sxsc-y{display:inline-block;padding:8px 16px;border-radius:999px;background:var(--lime);color:var(--ink);font:900 20px var(--display)}
.sx-scale.yu .sxsc-y{background:#fff}
.sxsc-n{margin-top:18px;display:flex;align-items:baseline;gap:6px;line-height:.85}
.sxsc-n{white-space:nowrap}
.sxsc-n b{font:900 clamp(72px,9vw,160px)/.85 var(--display);letter-spacing:-.05em;color:#fff;font-variant-numeric:tabular-nums}
.sxsc-n i{font:900 clamp(48px,7vw,120px)/1 var(--display);font-style:normal;color:var(--lime)}
.sxsc-n span{font:900 clamp(28px,3.4vw,56px)/1 var(--display);color:var(--sx-mu)}
.sxsc-l{margin-top:14px;font:800 clamp(20px,2.2vw,32px)/1.15 var(--display);text-transform:uppercase}
.sx-scale.yu .sxsc-l{color:var(--lime)}
.sxsc-r{margin-top:10px;font-weight:700;color:var(--sd-ice);min-height:1.4em}
.sxsc-d{margin-top:10px;max-width:46ch;font-size:clamp(16px,1.3vw,19px);color:#D3DBFF;min-height:3em}
/* столбики: участники по годам */
.sxsc-bars{position:relative;align-self:end;height:min(52vh,460px);padding-bottom:28px}
.sxsc-bars .g{position:absolute;inset:0 0 28px;display:flex;align-items:flex-end;gap:14px;transition:opacity .5s,transform .6s cubic-bezier(.16,1,.3,1)}
.sxsc-bars .yug{opacity:0;transform:translateY(20px);padding-inline:12%}
.sx-scale.yu .sxsc-bars .rus{opacity:0;transform:translateY(-20px)}
.sx-scale.yu .sxsc-bars .yug{opacity:1;transform:none}
.sxsc-bars .yug .bar.on i{background:linear-gradient(180deg,#B9F27F,#8BE33F)}
.sxsc-bars .bar{position:relative;flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.sxsc-bars .bar i{display:block;width:100%;height:var(--h);min-height:6px;border-radius:12px 12px 4px 4px;background:rgba(214,224,255,.12);transform:scaleY(.04);transform-origin:bottom;transition:transform .8s cubic-bezier(.16,1,.3,1),background .4s}
.sxsc-bars .bar.on i{transform:none;background:linear-gradient(180deg,#7DE7FF,#1E3BF5)}
.sxsc-bars .bar b{position:absolute;bottom:calc(var(--h) + 8px);font:800 14px var(--display);opacity:0;transition:opacity .4s}
.sxsc-bars .bar.on b{opacity:1}
.sxsc-bars .bar span{position:absolute;bottom:-26px;font:800 13px var(--display);color:var(--sx-mu)}
/* точки глав внизу */
.sxsc-dots{grid-column:1/-1;list-style:none;margin:0;padding:0;display:flex;gap:6px}
.sxsc-dots li{flex:1;position:relative;height:4px;border-radius:4px;background:rgba(214,224,255,.15);overflow:hidden}
.sxsc-dots li::after{content:"";position:absolute;inset:0;background:var(--sd-ice);transform:scaleX(0);transform-origin:left;transition:transform .5s}
.sxsc-dots li.yu::after{background:var(--lime)}
.sxsc-dots li.past::after,.sxsc-dots li.on::after{transform:none}
.sxsc-dots span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* список для экранных дикторов и без анимаций */
.sxsc-list{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.sx-scale.calm .sxsc-run{display:none}
.sx-scale.calm .sxsc-list{position:static;width:auto;height:auto;clip:auto;overflow:visible;max-width:1160px;margin:0 auto;padding:0 20px;display:grid;gap:14px;list-style:none}
.sx-scale.calm .sxsc-list li{padding:18px 20px;border-radius:18px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px var(--sx-ln);color:#D3DBFF}
.sx-scale.calm .sxsc-list b{display:block;font:900 22px var(--display);color:var(--lime)}
/* цитата после блока */
.sxsc-q{margin-top:80px;margin-bottom:0;display:flex;flex-direction:column;gap:18px}
.sxsc-q > .ti{font-size:44px;color:var(--sd-ice)}
.sxsc-q blockquote{margin:0;padding:0;background:none;max-width:24ch;font:900 clamp(28px,4vw,60px)/1.08 var(--display);font-style:normal;text-transform:uppercase;letter-spacing:-.01em;color:#fff}
.sxsc-q figcaption{font-weight:600;color:var(--sx-mu)}

/* ================= отряды: три панели, раскрывается одна ================= */
.sx-squads{padding-block:110px 40px}
.sxq{display:flex;gap:14px;height:min(72vh,620px);margin-top:36px}
.sxq-p{position:relative;flex:1;min-width:0;border-radius:28px;overflow:hidden;isolation:isolate;cursor:pointer;outline:none;
  background:radial-gradient(90% 70% at 70% 30%,color-mix(in srgb,var(--c) 30%,transparent),transparent 70%),#0E1A63;
  box-shadow:inset 0 0 0 1px var(--sx-ln);transition:flex 0.7s cubic-bezier(.16,1,.3,1),box-shadow .3s}
.sxq-p.on{flex:3.4;cursor:default;box-shadow:inset 0 0 0 2px var(--c)}
.sxq-p:focus-visible{box-shadow:inset 0 0 0 3px var(--lime)}
.sxq-bg{position:absolute;inset:0;z-index:-1}
.sxq-bg img{width:100%;height:100%;object-fit:cover;filter:saturate(.9);transform:scale(1.08);transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.sxq-p.on .sxq-bg img{transform:none}
.sxq-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,11,46,.2) 0%,rgba(5,11,46,.55) 45%,rgba(5,11,46,.95) 100%)}
.sxq-glyph{position:absolute;right:-6%;top:6%;font-size:min(34vw,360px);color:var(--c);opacity:.22}
.sxq-glyph .ti{stroke-width:.9}
.sxq-in{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(20px,3vw,40px)}
.sxq-head{display:flex;align-items:center;gap:16px}
.sxq-head .sxs-patch{flex:none;width:64px;height:72px;font-size:28px}
.sxq-head h3{font:900 clamp(26px,3.2vw,52px)/.95 var(--display);text-transform:uppercase;letter-spacing:-.02em;white-space:nowrap}
.sxq-head p{margin-top:6px;font-weight:700;color:var(--sx-mu);white-space:nowrap}
.sxq-p:not(.on) .sxq-head{flex-direction:column;align-items:flex-start}
.sxq-p:not(.on) .sxq-head h3{font-size:clamp(20px,1.8vw,28px)}
.sxq-p:not(.on) .sxq-head p{white-space:normal;font-size:13px}
.sxq-body{max-height:0;opacity:0;overflow:hidden;transition:max-height .7s cubic-bezier(.16,1,.3,1),opacity .4s}
.sxq-p.on .sxq-body{max-height:420px;opacity:1;transition-delay:0s,.25s}
.sxq-body > p:not(.sxs-motto){margin-top:10px;max-width:52ch;color:#E3E8FF}
.sxq-body .sxs-motto{margin-top:18px}

@media (max-width:900px){.sxsc-in{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr auto}.sxsc-bars{height:24vh;padding-bottom:24px}}
@media (max-width:767px){
  .sx-map,.sx-squads,.sx-acts,.sx-how,.sx-words{padding-block:64px 24px}
  .sxsc-run{height:calc(var(--n)*55vh + 100svh)}
  .sxsc-in{padding-block:18px calc(96px + env(safe-area-inset-bottom,0px));row-gap:12px}
  .sxsc-n b{font-size:clamp(60px,18vw,110px)}
  .sxsc-bars{height:18vh;gap:8px}
  .sxsc-bars .bar b{font-size:11px}
  .sxsc-d{font-size:15px;min-height:4.5em}
  .sxsc-q{margin-top:56px}
  .sxq{flex-direction:column;height:auto}
  .sxq-p,.sxq-p.on{flex:none;min-height:340px;cursor:default}
  .sxq-body{max-height:none;opacity:1}
  .sxq-p:not(.on) .sxq-head{flex-direction:row;align-items:center}
  .sxq-head h3{font-size:clamp(26px,8vw,36px)}
}
@media (prefers-reduced-motion:reduce){.sxq-p,.sxq-body,.sxsc-bars .bar i{transition:none}}

/* ================= песни десанта: кнопка на первом экране ================= */
.sx-music{position:absolute;right:max(20px,calc((100vw - 1160px)/2 + 20px));top:28px;z-index:2;display:flex;align-items:center;gap:8px}
.sxmu-play{display:inline-flex;align-items:center;gap:12px;padding:12px 18px 12px 14px;border:0;border-radius:999px;cursor:pointer;font:800 14px var(--display);color:#fff;
  background:rgba(5,11,46,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 0 0 1.5px rgba(214,224,255,.35)}
.sx-music.on .sxmu-play{box-shadow:inset 0 0 0 1.5px var(--lime)}
.sxmu-play .eq{display:flex;align-items:flex-end;gap:2px;height:16px}
.sxmu-play .eq i{width:3px;height:4px;border-radius:2px;background:var(--lime)}
.sx-music.on .eq i{animation:sxEq .9s ease-in-out infinite}
.sx-music.on .eq i:nth-child(2){animation-delay:-.3s}.sx-music.on .eq i:nth-child(3){animation-delay:-.6s}.sx-music.on .eq i:nth-child(4){animation-delay:-.15s}
@keyframes sxEq{50%{height:16px}}
.sxmu-panel{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 16px;border-radius:999px;background:rgba(5,11,46,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.sxmu-panel[hidden]{display:none}
.sxmu-now b{display:block;font:800 13px var(--display);max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sxmu-now small{display:block;font-size:12px;color:var(--sx-mu)}
.sxmu-next{width:36px;height:36px;border:0;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:rgba(255,255,255,.1);color:#fff;font-size:18px}
@media (max-width:767px){.sx-music{top:14px;right:16px}.sxmu-play .lbl{display:none}.sxmu-panel{display:none!important}}
@media (prefers-reduced-motion:reduce){.sx-music.on .eq i{animation:none;height:12px}}
