/* Дайв Тур · «Погружение» — страница как один спуск: лагуна → бирюза → ультрамарин флага → бездна */
:root{
  --ultra:#2430E8; --biryuza:#19B6C8; --laguna:#BDF2EC; --glubina:#0B1452; --bezdna:#040824;
  --buy:#FF6A2C; --buy-t:#FF8A55; --pena:#F2FBFF; --chernila:#071033;
  --fon-sekcii:#DDF6F4; --tekst-sekcii:#071033;
  --zag:"Unbounded", "Arial Black", sans-serif; --tekst:"Manrope", system-ui, sans-serif; --mono:"JetBrains Mono", ui-monospace, monospace;
  --pole:clamp(18px, 5vw, 84px); --shir:1320px;
}
*{box-sizing:border-box}
html{overflow-x:clip;background:var(--fon-sekcii);color:var(--tekst-sekcii);transition:background-color .9s ease, color .6s ease}
body{margin:0;font:400 17px/1.6 var(--tekst);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{display:block;max-width:100%}
figure{margin:0}
a{color:inherit}
h1,h2,h3{font-family:var(--zag);font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0}
p{margin:0}
button{font:inherit;cursor:pointer}
section{scroll-margin-top:96px}

/* ── плашка демо ── */
.demo{position:relative;z-index:60;display:flex;gap:14px;align-items:center;justify-content:center;padding:9px 52px 9px 18px;background:var(--buy);color:#fff;font:600 13px/1.35 var(--tekst)}
.demo button{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:50%;background:rgba(0,0,0,.18);color:#fff;font-size:18px;line-height:1}
.demo[hidden]{display:none}

/* ── кнопки ── */
.knopka{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;background:var(--buy);color:#fff;text-decoration:none;font:700 15px/1 var(--tekst);letter-spacing:.01em;border:2px solid var(--buy);transition:transform .2s, background .2s, box-shadow .2s;box-shadow:0 10px 30px -12px rgba(255,106,44,.8)}
.knopka:hover{transform:translateY(-2px);background:var(--buy-t)}
.knopka-kontur{background:transparent;border-color:rgba(242,251,255,.55);color:var(--pena);box-shadow:none}
.knopka-kontur:hover{background:rgba(242,251,255,.12)}

/* ── шапка ── */
.shapka{position:sticky;top:0;z-index:50;height:76px;display:flex;align-items:center;gap:22px;padding:0 var(--pole);color:var(--chernila);transition:background .35s, color .35s, box-shadow .35s}
.shapka.skolzit{background:rgba(4,8,36,.86);color:var(--pena);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(255,255,255,.08)}
.znak{display:flex;align-items:center;gap:12px;text-decoration:none;margin-right:auto}
.znak img{width:44px;height:44px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px rgba(255,255,255,.9)}
.znak b{display:block;font:800 17px/1 var(--zag);letter-spacing:-.01em}
.znak small{display:block;margin-top:4px;font:500 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;opacity:.7}
.menu{display:flex;gap:22px;align-items:center}
.menu a{text-decoration:none;font:600 14px/1 var(--tekst);opacity:.85;padding:8px 0;border-bottom:2px solid transparent}
.menu a:hover,.menu a.tut{opacity:1;border-color:var(--buy)}
.menu-tel{display:none}
.knopka-sh{min-height:44px;padding:0 20px;font-size:14px}
.mini-glub{display:none}
.burger{display:none}

/* ── глубиномер ── */
.glubinomer{position:fixed;left:22px;top:50%;z-index:40;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-start;gap:14px;pointer-events:none;color:var(--tekst-sekcii);transition:color .6s, opacity .4s}
.gl-shkala{position:relative;width:26px;height:min(40vh,320px)}
.gl-delenia{position:absolute;left:0;top:0;bottom:0;width:100%;background:repeating-linear-gradient(to bottom,currentColor 0 1px,transparent 1px 8%);opacity:.35;-webkit-mask:linear-gradient(90deg,#000 0 40%,transparent 40%);mask:linear-gradient(90deg,#000 0 40%,transparent 40%)}
.gl-delenia::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:currentColor}
.gl-metka{position:absolute;left:-2px;top:0;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:14px solid var(--buy);transform:translateY(calc(var(--glub,0) * min(40vh,320px) - 7px));filter:drop-shadow(0 0 6px rgba(255,106,44,.7))}
.glubinomer.skryt{opacity:0}
.gl-ekran{font-family:var(--mono);line-height:1}
.gl-ekran small{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;opacity:.6}
.gl-ekran b{display:block;margin:6px 0 6px;font-size:30px;font-weight:700;font-variant-numeric:tabular-nums}
.gl-ekran b i{font-style:normal;font-size:13px;margin-left:3px;opacity:.7}
.gl-ekran em{display:block;font-style:normal;font-size:12px;letter-spacing:.06em;text-transform:uppercase;opacity:.75;max-width:120px;line-height:1.3}

/* ── первый экран: ватерлиния ── */
.hero{position:relative;margin-top:-76px;min-height:max(100svh,700px);overflow:hidden;color:var(--pena);--vl:46svh}
.nebo{position:absolute;left:0;right:0;top:0;height:var(--vl);background:radial-gradient(120% 90% at 78% 0%,#FFFFFF 0%,#E9FAF8 40%,#BDF2EC 100%)}
.hero-nadpis{position:absolute;left:var(--pole);top:calc(76px + 6svh);max-width:560px;color:var(--ultra);font:600 13px/1.5 var(--mono);letter-spacing:.18em;text-transform:uppercase}
.volna{position:absolute;left:0;top:calc(var(--vl) - 30px);width:200%;height:60px;z-index:2}
.js-anim .volna{animation:volna 16s linear infinite}
@keyframes volna{to{transform:translateX(-50%)}}
.voda{position:absolute;left:0;right:0;top:var(--vl);bottom:0;background:linear-gradient(180deg,#2430E8 0%,#1E28CC 45%,#141C9A 100%);z-index:1}
.kaustika{position:absolute;inset:0;opacity:.35;background:
  radial-gradient(40% 18% at 20% 10%,rgba(189,242,236,.5),transparent 70%),
  radial-gradient(30% 14% at 70% 22%,rgba(189,242,236,.35),transparent 70%),
  repeating-linear-gradient(105deg,transparent 0 60px,rgba(255,255,255,.05) 60px 64px,transparent 64px 140px);mix-blend-mode:screen}
.js-anim .kaustika{animation:kaustika 9s ease-in-out infinite alternate}
@keyframes kaustika{to{transform:translateX(-40px) skewX(-4deg);opacity:.5}}
.vaterlin{position:absolute;z-index:3;left:calc(var(--pole) - .04em);top:var(--vl);transform:translateY(-50%);font:800 clamp(46px,8.6vw,158px)/1 var(--zag);letter-spacing:-.045em;white-space:nowrap}
.vl-nad{display:block;color:var(--ultra);clip-path:inset(0 0 50% 0)}
.vl-pod{position:absolute;left:0;top:0;color:var(--laguna);clip-path:inset(50% 0 0 0);transform:skewX(-7deg) translateX(.03em);opacity:.92}
.js-anim .vl-pod{animation:rjab 4.5s ease-in-out infinite alternate}
@keyframes rjab{to{transform:skewX(5deg) translateX(-.02em) scaleY(1.03)}}
.hero-niz{position:absolute;left:var(--pole);bottom:clamp(60px,9svh,110px);width:min(560px,46vw);z-index:3}
.hero-fraza{font:700 clamp(22px,2.3vw,34px)/1.2 var(--zag);letter-spacing:-.02em}
.hero-pod{margin-top:16px;font-size:17px;opacity:.85;max-width:480px}
.knopki{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.illyum{position:absolute;z-index:4;right:var(--pole);top:calc(-1 * min(14vw,240px));width:min(31vw,520px)}
.illyum-okno{position:relative;aspect-ratio:1;border-radius:50%;overflow:hidden;background:#0B1452 url(video/illyuminator.jpg) center/cover;box-shadow:0 0 0 14px #E8EEF2,0 0 0 16px #B7C3CC,0 0 0 28px rgba(232,238,242,.35),0 40px 90px -20px rgba(4,8,36,.75)}
.illyum-okno video{width:100%;height:100%;object-fit:cover}
.illyum-okno::after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(60% 50% at 30% 22%,rgba(255,255,255,.28),transparent 60%);pointer-events:none}
.illyum figcaption{margin-top:40px;text-align:right;font:500 12px/1.4 var(--mono);letter-spacing:.06em;opacity:.75}
.pechat{position:absolute;left:-34px;top:-10px;width:118px;height:118px;filter:drop-shadow(0 12px 18px rgba(4,8,36,.35))}
.js-anim .pechat textPath{animation:none}
.pechat text{font:700 9.6px var(--mono);letter-spacing:.14em;fill:#fff}
.pechat .pechat-c{font:800 22px var(--zag);letter-spacing:-.02em}
.puzyri i{position:absolute;bottom:-20px;width:10px;height:10px;border-radius:50%;border:1.5px solid rgba(242,251,255,.55);opacity:0}
.puzyri i:nth-child(1){left:8%}.puzyri i:nth-child(2){left:22%;width:6px;height:6px;animation-delay:2s!important}.puzyri i:nth-child(3){left:41%;animation-delay:4s!important}.puzyri i:nth-child(4){left:57%;width:14px;height:14px;animation-delay:1s!important}.puzyri i:nth-child(5){left:63%;width:7px;height:7px;animation-delay:5s!important}.puzyri i:nth-child(6){left:88%;animation-delay:3s!important}.puzyri i:nth-child(7){left:94%;width:5px;height:5px;animation-delay:6s!important}
.js-anim .puzyri i{animation:puzyr 9s ease-in infinite}
@keyframes puzyr{0%{transform:translateY(0);opacity:0}15%{opacity:.9}100%{transform:translateY(-52svh) translateX(14px);opacity:0}}

/* ── разделы: общий каркас ── */
.sek{position:relative;padding:clamp(80px,11vw,150px) var(--pole) clamp(80px,10vw,140px) calc(var(--pole) + 70px);color:var(--tekst-sekcii)}
.vnutri{max-width:var(--shir);margin:0 auto}
.metka{display:inline-flex;align-items:center;gap:10px;font:600 12px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;opacity:.75}
.metka::before{content:"";width:34px;height:2px;background:var(--buy)}
.zag{margin-top:18px;font-size:clamp(34px,5.4vw,82px)}
.lid{margin-top:22px;max-width:720px;font-size:clamp(17px,1.5vw,20px);opacity:.88}
.js-anim [data-poyav]{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s ease;transition-delay:var(--zaderzhka,0ms)}
.js-anim [data-poyav].vidno{opacity:1;transform:none}
.cena-net{font-family:var(--mono);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--buy)}

/* ── команда ── */
.komanda .vnutri{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,5vw,80px);align-items:start}
.komanda .lid{font:600 clamp(20px,2vw,28px)/1.35 var(--zag);letter-spacing:-.015em;opacity:1;max-width:none}
.lyudi{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
.chel{padding:24px;border-radius:24px;background:rgba(255,255,255,.55);border:1px solid rgba(7,16,51,.08)}
.chel-krug{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--ultra);color:#fff;font:800 22px var(--zag)}
.chel h3{margin-top:16px;font-size:20px}
.chel .rol{margin-top:6px;font:600 12px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ultra)}
.chel p{margin-top:12px;font-size:15px;opacity:.85}
.chel a{display:inline-block;margin-top:14px;font:700 16px var(--mono);color:var(--chernila);text-decoration:none;border-bottom:2px solid var(--buy)}
.sertifikat{position:relative;transform:rotate(2.2deg);background:#fff;padding:12px;border-radius:14px;box-shadow:0 30px 60px -28px rgba(7,16,51,.5);cursor:zoom-in}
.sertifikat img{border-radius:6px;width:100%}
.sertifikat figcaption{margin-top:10px;font:500 12px/1.4 var(--mono);letter-spacing:.04em;color:#46507A}
.cifry{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);margin-top:30px;border-top:2px solid rgba(7,16,51,.14)}
.cifra{padding:26px 22px 0 0}
.cifra + .cifra{padding-left:22px;border-left:1px solid rgba(7,16,51,.14)}
.cifra b{display:block;white-space:nowrap;font:800 clamp(34px,4.2vw,62px)/1 var(--zag);letter-spacing:-.04em;color:var(--ultra)}
.cifra span{display:block;margin-top:10px;font-size:14px;opacity:.8;max-width:220px}

/* ── первое погружение ── */
.pervoe .vnutri{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);align-items:center}
.pervoe-tekst{position:relative}
.ogromnaya{position:absolute;right:-10px;top:-70px;font:800 clamp(140px,18vw,280px)/1 var(--zag);letter-spacing:-.06em;color:transparent;-webkit-text-stroke:2px rgba(5,22,58,.16);pointer-events:none;z-index:0}
.pervoe blockquote{position:relative;z-index:1;margin:28px 0 0;font:700 clamp(22px,2.5vw,36px)/1.25 var(--zag);letter-spacing:-.02em}
.pervoe blockquote::before{content:"«";color:var(--buy)}
.pervoe blockquote::after{content:"»";color:var(--buy)}
.kto{margin-top:14px;font:500 13px/1.4 var(--mono);opacity:.75}
.shagi{position:relative;z-index:1;margin:40px 0 0;padding:0;list-style:none;counter-reset:sh}
.shagi li{position:relative;padding:0 0 22px 64px;counter-increment:sh}
.shagi li::before{content:"0" counter(sh);position:absolute;left:0;top:-2px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--chernila);color:var(--laguna);font:700 13px var(--mono)}
.shagi li::after{content:"";position:absolute;left:21px;top:46px;bottom:4px;border-left:2px dashed rgba(5,22,58,.3)}
.shagi li:last-child::after{display:none}
.shagi b{display:block;font:700 17px/1.3 var(--zag)}
.shagi span{display:block;margin-top:4px;font-size:15px;opacity:.85}
.cena-plashka{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:10px;padding:18px 22px;border-radius:20px;background:var(--chernila);color:var(--pena)}
.cena-plashka b{font:800 26px var(--zag)}
.cena-plashka span{font-size:14px;opacity:.85;flex:1;min-width:180px}
.kollazh{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:14px;height:min(78vh,720px)}
.kollazh img{width:100%;height:100%;object-fit:cover;border-radius:22px;cursor:zoom-in}
.kollazh img:first-child{grid-row:1/3}

/* ── курсы ── */
.kursy .vnutri{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,80px)}
.prichiny{margin:40px 0 0;padding:0;list-style:none}
.prichiny li{display:grid;grid-template-columns:70px 1fr;gap:10px;padding:22px 0;border-top:1px solid rgba(242,251,255,.22)}
.prichiny li > i{font:700 15px/1.4 var(--mono);font-style:normal;color:#FFD3BF}
.prichiny b{display:block;font:700 19px/1.3 var(--zag)}
.prichiny span{display:block;margin-top:6px;opacity:.88;font-size:15.5px}
.kursy-foto{position:sticky;top:110px}
.kursy-foto img{border-radius:28px;width:100%;aspect-ratio:4/5;object-fit:cover;cursor:zoom-in}
.kursy-foto figure + figure{margin:-90px 0 0 -60px;width:62%;transform:rotate(-3deg)}
.kursy-foto figure + figure img{aspect-ratio:3/4;border:8px solid #F2FBFF;border-radius:18px}
.kursy-foto figcaption{margin-top:10px;font:500 12px/1.4 var(--mono);opacity:.85}
.spisok{grid-column:1/-1;margin-top:60px;border-radius:30px;background:rgba(4,8,36,.22);padding:clamp(18px,3vw,36px)}
.spisok h3{font-size:clamp(22px,2.4vw,32px);margin-bottom:12px}
.kurs{display:grid;grid-template-columns:minmax(200px,1.1fr) 2fr auto;gap:24px;align-items:baseline;padding:20px 4px;border-top:1px solid rgba(242,251,255,.18)}
.kurs b{font:700 18px/1.3 var(--zag)}
.kurs span{opacity:.88;font-size:15.5px}
.kurs em{font-style:normal;font:700 17px var(--mono);white-space:nowrap}
.kurs em.cena-net{font-size:12px;color:#FFD3BF}

/* ── чёрное море ── */
.more-shapka{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);align-items:end}
.more blockquote{margin:0;font:600 clamp(20px,2.2vw,30px)/1.3 var(--zag);letter-spacing:-.015em;padding-left:28px;border-left:4px solid var(--buy)}
.more .kto{opacity:.75}
.lenta-blok{position:relative;margin-top:50px}
.lenta{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:18px;scrollbar-width:none;max-width:100%}
.lenta::-webkit-scrollbar{display:none}
.mesto{flex:0 0 min(400px,78vw);scroll-snap-align:start;position:relative;border-radius:26px;overflow:hidden;aspect-ratio:3/4;background:#0B1452}
.mesto img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}
.mesto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(4,8,36,.88));pointer-events:none}
.mesto-t{position:absolute;left:22px;right:22px;bottom:22px;z-index:1;pointer-events:none;color:#F2FBFF}
.mesto-t h3{font-size:22px}
.mesto-t p{margin-top:8px;font-size:14.5px;opacity:.9}
.glub-znak{position:absolute;z-index:1;top:18px;right:18px;padding:8px 12px;border-radius:999px;background:var(--buy);color:#fff;font:700 14px var(--mono)}
.lenta-upr{display:flex;gap:10px;margin-top:12px}
.lenta-upr button{width:52px;height:52px;border-radius:50%;border:2px solid rgba(242,251,255,.45);background:transparent;color:inherit;font-size:22px}
.lenta-upr button:hover{background:rgba(242,251,255,.12)}
.v-nachale [data-lenta-nazad],.v-konce [data-lenta-vpered]{opacity:.35}

/* ── ролики-истории ── */
.kino .vnutri{display:grid;grid-template-columns:auto 1fr;gap:clamp(30px,6vw,100px);align-items:center}
.istorii{position:relative;width:min(380px,82vw);aspect-ratio:9/16;border-radius:30px;overflow:hidden;background:#0B1452;box-shadow:0 0 0 10px rgba(242,251,255,.08),0 40px 80px -30px rgba(0,0,0,.7)}
.istoriya{position:absolute;inset:0;opacity:0;transition:opacity .5s}
.istoriya.tut{opacity:1}
.bez-anim .istoriya:first-child{opacity:1}
.istoriya video{width:100%;height:100%;object-fit:cover}
.polosy{position:absolute;z-index:2;left:14px;right:14px;top:14px;display:flex;gap:6px}
.polosy i{flex:1;height:3px;border-radius:3px;background:rgba(255,255,255,.35);overflow:hidden;position:relative}
.polosy i::after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;transform:scaleX(var(--dolya,0))}
.ist-shagi{margin:36px 0 0;padding:0;list-style:none}
.ist-shagi li{display:flex;gap:18px;align-items:baseline;padding:20px 0;border-top:1px solid rgba(242,251,255,.18);cursor:pointer;opacity:.6;transition:opacity .3s}
.ist-shagi li.tut,.ist-shagi li:hover{opacity:1}
.ist-shagi i{font:700 14px var(--mono);font-style:normal;color:var(--buy)}
.ist-shagi b{display:block;font:700 22px/1.2 var(--zag)}
.ist-shagi span{display:block;margin-top:6px;font-size:15px;opacity:.85}

/* ── лагерь ── */
.lager .vnutri{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px)}
.lager .pod{margin-top:12px;font:600 14px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#FFD3BF}
.smeny{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}
.smena{position:relative;padding:16px 16px 14px;border-radius:16px;background:rgba(242,251,255,.08);border:1px dashed rgba(242,251,255,.3)}
.smena small{display:block;font:600 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;opacity:.75}
.smena b{display:block;margin-top:6px;font:700 16px/1.25 var(--zag)}
.smena.seychas{background:var(--buy);border-color:var(--buy)}
.smena.seychas::after{content:"идёт сейчас";position:absolute;right:10px;top:-10px;padding:3px 8px;border-radius:99px;background:#fff;color:var(--buy);font:700 12px var(--mono);letter-spacing:.06em;text-transform:uppercase}
.sled{margin-top:20px;font:700 clamp(18px,1.8vw,24px)/1.3 var(--zag)}
.marshrut{margin-top:8px;font:500 14px/1.5 var(--mono);opacity:.85}
.baza{margin-top:30px;padding:24px;border-radius:24px;background:var(--pena);color:var(--chernila)}
.baza p{font-size:16px}
.baza .knopka{margin-top:16px;min-height:46px;font-size:14px}
.lager-foto{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:start}
.lager-foto img{width:100%;border-radius:22px;object-fit:cover;aspect-ratio:3/4;cursor:zoom-in}
.lager-foto img:first-child{grid-column:1/-1;aspect-ratio:16/10}
.lager blockquote{grid-column:1/-1;margin:0;padding:22px 26px;border-radius:22px;background:rgba(255,106,44,.14);font:600 18px/1.4 var(--zag)}

/* ── экспедиции ── */
.poezdki{margin-top:56px;display:grid;gap:26px}
.poezdka{display:grid;grid-template-columns:1.05fr 1fr;border-radius:32px;overflow:hidden;background:rgba(242,251,255,.06);border:1px solid rgba(242,251,255,.1)}
.poezdka:nth-child(even) .poezdka-foto{order:2}
.poezdka-foto{position:relative;min-height:340px}
.poezdka-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;cursor:zoom-in}
.poezdka-t{padding:clamp(24px,3.4vw,46px)}
.poezdka .daty{font:700 14px var(--mono);letter-spacing:.06em;color:#FFD3BF}
.poezdka h3{margin-top:12px;font-size:clamp(30px,3.6vw,52px)}
.poezdka h3 small{display:block;margin-top:6px;font:600 15px/1.3 var(--tekst);letter-spacing:0;opacity:.75}
.poezdka p{margin-top:16px;opacity:.9;font-size:16px}
.cena-krupno{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-top:22px}
.cena-krupno b{font:800 clamp(30px,3.4vw,46px)/1 var(--zag);color:var(--buy)}
.cena-krupno span{font-size:14px;opacity:.8}
.cena-krupno.net b{font:700 14px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#FFD3BF}
.status{display:inline-block;margin-top:18px;padding:7px 12px;border-radius:99px;background:rgba(255,106,44,.18);color:#FFB08C;font:700 12px var(--mono);letter-spacing:.06em;text-transform:uppercase}
.vhodit{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px;font-size:14px}
.vhodit h4{margin:0 0 8px;font:700 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;opacity:.75}
.vhodit ul{margin:0;padding:0;list-style:none}
.vhodit li{padding:6px 0 6px 20px;position:relative;opacity:.9}
.vhodit li::before{content:"+";position:absolute;left:0;color:var(--biryuza);font-weight:800}
.vhodit div + div li::before{content:"–";color:#FF9C73}
.galereya-zag{margin-top:90px;font-size:clamp(24px,2.6vw,36px)}
.foto-lenta .kadr{flex:0 0 min(560px,82vw);height:min(52vh,420px);scroll-snap-align:start;border-radius:22px;overflow:hidden;position:relative}
.foto-lenta .kadr img{height:100%;width:100%;object-fit:cover;cursor:zoom-in}
.foto-lenta .kadr span{position:absolute;left:14px;bottom:12px;padding:6px 10px;border-radius:99px;background:rgba(4,8,36,.7);font:500 12px var(--mono)}

/* ── клуб ── */
.sobytiya{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:50px}
.sobytie{border-radius:24px;overflow:hidden;background:rgba(242,251,255,.06);border:1px solid rgba(242,251,255,.1)}
.sobytie img{width:100%;aspect-ratio:4/5;object-fit:cover;cursor:zoom-in}
.sobytie div{padding:20px}
.sobytie small{font:700 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--buy)}
.sobytie h3{margin-top:8px;font-size:18px;line-height:1.2}
.sobytie p{margin-top:10px;font-size:14.5px;opacity:.85}

/* ── отзывы ── */
.otzyvy-shapka{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:30px}
.reyting{display:flex;align-items:center;gap:18px}
.reyting b{font:800 clamp(64px,8vw,120px)/1 var(--zag);letter-spacing:-.05em;color:var(--buy)}
.reyting span{font:500 13px/1.5 var(--mono);opacity:.8}
.reyting a{display:block;margin-top:6px;color:#FFB08C}
.zvezdy{display:block;color:var(--buy);letter-spacing:.1em;font-size:18px}
.otzyvy-kolonki{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start;margin-top:50px}
.otzyv{margin:0;padding:26px;border-radius:24px;background:rgba(242,251,255,.06);border:1px solid rgba(242,251,255,.1)}
.otzyv p{font-size:15.5px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}
.otzyv footer{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid rgba(242,251,255,.12);font:500 12px var(--mono);opacity:.85}
.otzyv footer b{font-family:var(--tekst);font-size:14px}

/* ── запись: подводная табличка ── */
.zapis .vnutri{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,5vw,80px);align-items:start}
.tablichka{position:relative;padding:clamp(24px,3.5vw,44px);border-radius:34px;background:linear-gradient(160deg,#F7FAFB,#E4EBEF);color:var(--chernila);box-shadow:0 50px 100px -40px rgba(0,0,0,.8),inset 0 0 0 1px rgba(255,255,255,.8)}
.tablichka::before,.tablichka::after{content:"";position:absolute;top:18px;width:14px;height:14px;border-radius:50%;background:var(--bezdna);box-shadow:inset 0 2px 3px rgba(0,0,0,.6)}
.tablichka::before{left:18px}.tablichka::after{right:18px}
.tablichka label,.tablichka .pole-zag{display:block;margin:20px 0 8px;font:700 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#46507A}
.tablichka input,.tablichka textarea{width:100%;padding:14px 16px;border:2px solid #C9D3DB;border-radius:14px;background:#fff;font:500 16px var(--tekst);color:var(--chernila)}
.tablichka input:focus,.tablichka textarea:focus{outline:none;border-color:var(--ultra)}
.tablichka textarea{min-height:90px;resize:vertical}
.chipy{display:flex;flex-wrap:wrap;gap:8px}
.chipy input{position:absolute;opacity:0;width:1px;height:1px}
.chipy label{margin:0;padding:11px 15px;border-radius:99px;border:2px solid #C9D3DB;background:#fff;font:600 14px var(--tekst);letter-spacing:0;text-transform:none;color:var(--chernila);cursor:pointer}
.chipy input:checked + label{background:var(--ultra);border-color:var(--ultra);color:#fff}
.dva{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.tablichka .knopka{width:100%;margin-top:26px;min-height:58px;font-size:16px}
.forma-otvet{margin-top:14px;font-weight:700;color:var(--ultra)}
.kontakty{display:grid;gap:12px;margin-top:36px}
.kontakt{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;border-radius:20px;background:rgba(242,251,255,.06);border:1px solid rgba(242,251,255,.12);text-decoration:none}
.kontakt:hover{border-color:var(--buy)}
.kontakt small{display:block;font:600 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;opacity:.7}
.kontakt b{display:block;margin-top:4px;font:700 17px var(--tekst)}
.kontakt i{font-style:normal;color:var(--buy);font-size:20px}

/* ── финал: луч фонаря ── */
.final{overflow:hidden;padding-top:clamp(60px,8vw,110px)}
.final::before{content:"";position:absolute;left:50%;top:-10%;width:120vw;height:120%;transform:translateX(-50%);background:conic-gradient(from 180deg at 50% 0%,transparent 160deg,rgba(189,242,236,.13) 175deg,rgba(189,242,236,.2) 180deg,rgba(189,242,236,.13) 185deg,transparent 200deg);pointer-events:none}
.final .vnutri{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);align-items:end}
.final h2{font-size:clamp(54px,9vw,150px);letter-spacing:-.05em}
.final p{margin-top:20px;max-width:520px;font-size:18px;opacity:.88}
.final .knopki{margin-top:30px}
.karta{position:relative;border-radius:28px;overflow:hidden;aspect-ratio:4/3;background:#0B1452}
.karta iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.85)}
.karta-podpis{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:14px;font:500 13px var(--mono);opacity:.85}
.karta-podpis a{color:#FFB08C}
.podval{padding:34px var(--pole) 110px calc(var(--pole) + 70px);background:var(--bezdna);color:rgba(242,251,255,.7);font:500 13px/1.6 var(--mono)}
.podval .vnutri{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px}
.podval a{color:inherit}
.mob-bar{display:none}

/* ── лупа ── */
#lupa{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:rgba(4,8,36,.94)}
#lupa[hidden]{display:none}
#lupa figure{max-width:90vw;max-height:88vh;text-align:center}
#lupa img{max-width:90vw;max-height:80vh;margin:0 auto;border-radius:10px}
#lupa figcaption{display:flex;justify-content:center;gap:16px;margin-top:12px;color:var(--pena);font:500 14px var(--mono)}
.lupa-x,.lupa-str{position:absolute;border:0;background:rgba(242,251,255,.12);color:#fff;border-radius:50%;width:54px;height:54px;font-size:28px;line-height:1}
.lupa-x{top:18px;right:18px}.lupa-l{left:18px;top:50%}.lupa-p{right:18px;top:50%}

/* ── планшет ── */
@media (max-width:1100px){
  .menu{gap:14px}.menu a{font-size:13px}
  .sobytiya{grid-template-columns:1fr 1fr}
  .otzyvy-kolonki{grid-template-columns:1fr 1fr}
  .illyum{width:min(36vw,440px)}
}
/* ── телефон ── */
@media (max-width:900px){
  body{font-size:16px}
  .shapka{height:64px;gap:12px}
  .hero{margin-top:-64px}
  .znak img{width:38px;height:38px}
  .burger{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(36,48,232,.12);padding:0 12px}
  .shapka.skolzit .burger{background:rgba(242,251,255,.12)}
  .burger span{display:block;height:2px;background:currentColor;border-radius:2px}
  .menu{position:fixed;left:0;right:0;top:64px;flex-direction:column;align-items:stretch;gap:0;padding:10px 24px 24px;background:rgba(4,8,36,.97);color:var(--pena);transform:translateY(-8px);opacity:0;visibility:hidden;transition:.25s}
  .menu.otkryto{opacity:1;visibility:visible;transform:none}
  .menu a{font-size:18px;padding:14px 0;border-bottom:1px solid rgba(242,251,255,.1)}
  .menu-tel{display:block;color:var(--buy)}
  .knopka-sh{display:none}
  .mini-glub{display:flex;align-items:baseline;gap:4px;padding:8px 12px;border-radius:99px;background:rgba(36,48,232,.1);font:700 14px var(--mono);font-variant-numeric:tabular-nums}
  .shapka.skolzit .mini-glub{background:rgba(242,251,255,.1)}
  .mini-glub i{font-style:normal;color:var(--buy);font-size:12px}
  .mini-glub span{font-size:12px;opacity:.7}
  .glubinomer{display:none}
  .sek{padding:76px 20px 80px}
  .podval{padding:30px 20px 110px}
  .hero{--vl:40svh;min-height:auto;overflow:hidden}
  .nebo{position:relative;height:var(--vl)}
  .hero-nadpis{left:20px;right:20px;top:calc(64px + 4svh);font-size:12px}
  .znak small,.gl-ekran small,.smena small,.sobytie small,.kontakt small,.cena-net{font-size:12px}
  .volna{width:300%;height:14px;top:calc(var(--vl) - 6px)}
  .vaterlin{left:16px;font-size:clamp(40px,11.6vw,64px)}
  .voda{position:relative;top:0;padding:calc(6vw + 44px) 20px 56px}
  .illyum{position:relative;right:auto;top:auto;width:72vw;margin:0 auto}
  .illyum-okno{box-shadow:0 0 0 9px #E8EEF2,0 0 0 11px #B7C3CC,0 0 0 18px rgba(232,238,242,.35),0 30px 60px -20px rgba(4,8,36,.75)}
  .illyum figcaption{text-align:center;margin-top:28px}
  .pechat{width:92px;height:92px;left:-14px;top:-6px}
  .hero-niz{position:relative;left:auto;bottom:auto;width:auto;margin-top:26px}
  .knopki .knopka{flex:1 1 100%}
  .komanda .vnutri,.pervoe .vnutri,.kursy .vnutri,.kino .vnutri,.lager .vnutri,.zapis .vnutri,.final .vnutri,.more-shapka{grid-template-columns:1fr}
  .lyudi{grid-template-columns:1fr}
  .cifry{grid-template-columns:1fr 1fr}
  .cifra{padding:22px 12px 22px 0}
  .cifra + .cifra{padding-left:12px}
  .cifra:nth-child(3){padding-left:0;border-left:0}
  .cifra:nth-child(n+3){border-top:1px solid rgba(7,16,51,.14)}
  .ogromnaya{top:-40px;font-size:120px}
  .kollazh{height:auto;grid-template-rows:auto}
  .kollazh img{aspect-ratio:3/4;height:auto}
  .kollazh img:first-child{grid-row:auto;grid-column:1/-1;aspect-ratio:4/5}
  .kursy-foto{position:relative;top:0}
  .kursy-foto figure + figure{margin:-60px 0 0 auto;width:58%}
  .kurs{grid-template-columns:1fr;gap:6px}
  .istorii{margin:0 auto}
  .smeny{grid-template-columns:1fr 1fr}
  .poezdka{grid-template-columns:1fr}
  .poezdka:nth-child(even) .poezdka-foto{order:0}
  .poezdka-foto{min-height:0;aspect-ratio:4/3}
  .vhodit{grid-template-columns:1fr}
  .sobytiya{grid-template-columns:1fr}
  .otzyvy-kolonki{grid-template-columns:1fr}
  .dva{grid-template-columns:1fr}
  .final h2{font-size:clamp(46px,14vw,80px)}
  .mob-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:45;display:flex;gap:10px;padding:8px;border-radius:99px;background:rgba(4,8,36,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
  .mob-bar .knopka{flex:1;min-height:50px}
  .mob-tel{width:50px;height:50px;flex:0 0 50px;border-radius:50%;display:grid;place-items:center;background:var(--pena);color:var(--ultra);text-decoration:none;font-size:20px}
  .lupa-l,.lupa-p{top:auto;bottom:18px}
}
