:root{--sky1:#fbe7d4;--sky2:#f5d2c4;--sky3:#dcd5f2;--sky4:#cfe3f1;--glowA:#ffb187;--glowB:#a9b8ff;--ink:#26202e;--ink2:#554b60;--glass:rgba(255,255,255,.5);--glassLine:rgba(255,255,255,.8);--accent:#a8431f;--accentText:#8a3417;--accentInk:#fff;--dropTop:#fffaf3;--dropMid:#ffd3a8;--dropLow:#ef8f5f;--dropCore:#fffdf7;--dropCoreHalo:#ffe6c2;--glint:#fff;--cardShadow:rgba(40,20,60,.45);--r:14px;--shapka:68px;color-scheme:light}
:root[data-time="den"]{--sky1:#fdf3e6;--sky2:#f3e3d6;--sky3:#dfe3f6;--sky4:#d4ecf4;--glowA:#ffc79e;--glowB:#b5c9ff}
:root[data-time="vecher"]{--sky1:#f8d9c9;--sky2:#eab6b0;--sky3:#c9b7e2;--sky4:#a9b6dd;--glowA:#ff9a76;--glowB:#9a8ce0;--ink2:#4a4054;--accent:#9a3b1b;--accentText:#7a2c12}
:root[data-theme="noch"]{--sky1:#1e1a2e;--sky2:#251f3a;--sky3:#1a2036;--sky4:#141a28;--glowA:#a8573e;--glowB:#4b4f9c;--ink:#f1ecf8;--ink2:#b9b0c9;--glass:rgba(40,34,60,.62);--glassLine:rgba(255,255,255,.14);--accent:#ffb07f;--accentText:#ffb07f;--accentInk:#26170f;--dropTop:#fff3e2;--dropMid:#ffb784;--dropLow:#d9653a;color-scheme:dark}
@media (prefers-color-scheme:dark){:root:not([data-theme]){--sky1:#1e1a2e;--sky2:#251f3a;--sky3:#1a2036;--sky4:#141a28;--glowA:#a8573e;--glowB:#4b4f9c;--ink:#f1ecf8;--ink2:#b9b0c9;--glass:rgba(40,34,60,.62);--glassLine:rgba(255,255,255,.14);--accent:#ffb07f;--accentText:#ffb07f;--accentInk:#26170f;--dropTop:#fff3e2;--dropMid:#ffb784;--dropLow:#d9653a;color-scheme:dark}}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; color:var(--ink); background:var(--sky1);
  font:400 17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  transition:background-color .8s ease,color .8s ease;
}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;z-index:9;background:var(--accent);color:var(--accentInk);padding:8px 12px;border-radius:10px}
#main,.razdel[id]{scroll-margin-top:calc(var(--shapka) + 12px)}
#main:focus{outline:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

.sky{position:fixed;inset:0;z-index:-1;overflow:hidden;
  background:linear-gradient(165deg,var(--sky1) 0%,var(--sky2) 34%,var(--sky3) 68%,var(--sky4) 100%);
  transition:background .8s ease}
.sky i{position:absolute;border-radius:50%;filter:blur(44px);opacity:.7;will-change:transform}
.sky .a{width:56vmax;height:56vmax;left:22vw;top:30vh;background:radial-gradient(circle,var(--glowA),transparent 66%);animation:plyt 24s ease-in-out infinite alternate}
.sky .b{width:66vmax;height:66vmax;right:-26vmax;top:-12vmax;background:radial-gradient(circle,var(--glowB),transparent 64%);animation:plyt 48s ease-in-out infinite alternate-reverse}
@keyframes plyt{to{transform:translate3d(3vmax,2vmax,0) scale(1.06)}}
.grain{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.06;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
:root[data-theme="noch"] .grain{mix-blend-mode:soft-light;opacity:.05}

.top{position:sticky;top:0;z-index:5;padding:max(14px,env(safe-area-inset-top)) clamp(16px,4vw,40px) 14px;
  display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);
  background:linear-gradient(to bottom,color-mix(in srgb,var(--sky1) 82%,transparent),color-mix(in srgb,var(--sky1) 30%,transparent))}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:600;font-size:19px;letter-spacing:.01em}
.brand svg{width:22px;height:28px}
.nav{display:flex;gap:clamp(14px,2.4vw,30px);margin-left:auto;font-size:15px}
.nav a{text-decoration:none;color:var(--ink2);transition:color .2s}
.nav a:hover{color:var(--ink)}
.tumbler{flex:none;width:44px;height:44px;padding:2px;border:0;background:none;color:var(--ink);cursor:pointer;display:grid;place-items:center}
.tumbler span{width:40px;height:40px;border-radius:12px;border:1px solid var(--glassLine);background:var(--glass);display:grid;place-items:center}
.tumbler svg{width:20px;height:20px}
@media (max-width:720px){
  .top{position:relative}
  .tumbler{margin-left:auto}
    .nav{order:3;width:100%;margin:0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 18px}
  .nav a{padding:12px 0;color:var(--ink);font-size:15px;line-height:20px}
}

.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 22px;border-radius:var(--r);text-decoration:none;
  font-weight:600;font-size:16px;transition:transform .2s ease,box-shadow .2s ease,background .2s}
.btn.main{background:var(--accent);color:var(--accentInk);box-shadow:0 10px 30px -12px color-mix(in srgb,var(--accent) 80%,transparent)}
.btn.main:hover{transform:translateY(-2px);box-shadow:0 16px 36px -14px color-mix(in srgb,var(--accent) 90%,transparent)}
.btn.glass{background:var(--glass);border:1px solid var(--glassLine)}
.btn.glass:hover{transform:translateY(-2px)}
.btn svg{width:18px;height:18px}

.razdel{max-width:1280px;margin:0 auto;padding:clamp(48px,8vw,110px) clamp(16px,5vw,72px)}
.razdel h2{margin:0 0 10px;font-size:clamp(30px,5vw,54px);font-weight:700;letter-spacing:-.02em;line-height:1.05}
.razdel .pod{margin:0 0 34px;color:var(--ink2);font-size:clamp(16px,1.9vw,19px);max-width:36em}
.kartochki{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}
.k{position:relative;padding:26px;border-radius:22px;background:var(--glass);border:1px solid var(--glassLine);overflow:hidden;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.k:hover{transform:translateY(-4px);box-shadow:0 24px 50px -30px var(--cardShadow)}
.k>*{position:relative}
.k .metka{display:inline-block;font-size:13px;padding:3px 9px;border-radius:8px;border:1px solid var(--glassLine);color:var(--ink);background:var(--glass);margin:0 72px 14px 0}
.k h3{margin:0 0 8px;font-size:24px;font-weight:700;letter-spacing:-.01em}
.k p{margin:0;color:var(--ink2)}
.k .vygoda{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--glassLine);color:var(--ink)}
.k .vygoda b{color:var(--accentText);font-weight:600}
.k .vygoda-zag{margin:16px 0 8px;color:var(--accentText);font-weight:600;font-size:15px}
.k .vygody{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.k .vygody li{position:relative;padding-left:20px;color:var(--ink)}
.k .vygody li::before{content:"";position:absolute;left:3px;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--accentText)}
.k .znak{position:absolute;right:16px;top:16px;width:46px;opacity:.85}
.k.skoro{background:transparent;border-style:dashed}
.dalee{margin:26px 0 0}
.podzag{margin:38px 0 16px;font-size:22px;font-weight:700;letter-spacing:-.01em}
.razdel h1.zagolovok{font-size:clamp(34px,6vw,64px);line-height:1.05;margin:0 0 10px}
.k .nomer{display:block;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--accentText);margin-bottom:10px;font-weight:600}

.hero{min-height:calc(100svh - var(--shapka));display:grid;grid-template-columns:1.1fr .9fr;align-items:center;
  gap:clamp(16px,4vw,56px);padding:clamp(8px,3vw,32px) clamp(16px,5vw,72px) clamp(56px,8vw,96px);max-width:1280px;margin:0 auto}
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink2);margin:0 0 18px;
  padding:6px 12px;border-radius:10px;background:var(--glass);border:1px solid var(--glassLine)}
.kicker b{width:7px;height:7px;border-radius:50%;background:var(--accent)}
h1{margin:0;font-weight:700;letter-spacing:-.025em;line-height:1.02;font-size:clamp(42px,8.4vw,96px)}
h1 span{display:block;color:var(--accent)}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  h1 span{color:transparent;background:linear-gradient(100deg,var(--ink) 0%,var(--accent) 55%,var(--accent) 100%);-webkit-background-clip:text;background-clip:text}
}
@media (forced-colors:active){h1 span{background:none;color:CanvasText;-webkit-text-fill-color:currentColor}}
.lead{margin:22px 0 32px;max-width:32em;font-size:clamp(17px,2.1vw,21px);line-height:1.55;color:var(--ink2)}
.lead b{color:var(--ink);font-weight:600}
.cta{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:860px){
  .hero{grid-template-columns:1fr;text-align:left;min-height:auto;padding-top:4px}
}
.niz{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);color:var(--ink2);font-size:14px;letter-spacing:.06em;text-transform:uppercase;
  display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none}
.niz i{width:1px;height:34px;background:linear-gradient(var(--ink2),transparent)}
.wrapHero{position:relative}
@media (max-width:860px){.niz{display:none}}

.drop{position:relative;justify-self:center;width:min(100%,460px);aspect-ratio:1;display:grid;place-items:center}
.drop .halo{position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle at 50% 58%,color-mix(in srgb,var(--glowA) 85%,transparent),transparent 62%);
  filter:blur(18px);animation:dyh 6s ease-in-out infinite}
.drop svg{position:relative;width:70%;height:auto;filter:drop-shadow(0 30px 40px color-mix(in srgb,var(--dropLow) 35%,transparent));
  transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.drop .dyshit{transform-box:fill-box;transform-origin:50% 75%;animation:dyh 6s ease-in-out infinite}
@keyframes dyh{50%{transform:scale(1.035)}}
.drop .plamya{transform-box:fill-box;transform-origin:50% 100%;animation:plamya 6s ease-in-out infinite}
@keyframes plamya{50%{transform:scaleY(1.07) translateY(-2%)}}
@media (max-width:860px){
  .drop{order:-1;width:min(60vw,260px);margin-bottom:-8px}
}
@media (max-width:600px){.drop{width:170px;margin:0 auto -14px}}

.stack{list-style:none;margin:0 0 40px;padding:0;display:grid;gap:22px;max-width:780px}
.sloy{position:relative;display:grid;gap:4px;padding:18px 22px;border-radius:18px;background:var(--glass);border:1px solid var(--glassLine)}
.sloy b{font-size:20px;font-weight:700;letter-spacing:-.01em}
.sloy span{color:var(--ink2);font-size:16px}
.sloy:nth-child(1){margin:0 14%}
.sloy:nth-child(2){margin:0 7%}
.sloy:not(:last-child)::after{content:"";position:absolute;left:50%;bottom:-17px;width:2px;height:12px;background:var(--accentText);opacity:.6;transform:translateX(-50%)}
.sloy.osnova{border:1.5px solid var(--accent)}
.sloy.osnova b{color:var(--accentText)}
@media (max-width:600px){.sloy:nth-child(1){margin:0 8%}.sloy:nth-child(2){margin:0 4%}}

.svyaz .adres{margin:14px 0 0;color:var(--ink2);font-size:15px;user-select:all}

footer{max-width:1280px;margin:0 auto;padding:30px clamp(16px,5vw,72px) max(30px,env(safe-area-inset-bottom));color:var(--ink2);font-size:15px;
  display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center}
footer nav{display:flex;flex-wrap:wrap;gap:8px 20px}
footer nav a{text-decoration:none}
footer nav a:hover{color:var(--ink)}
