@font-face{
  font-family:'Science Gothic';
  src:url('/fonts/science-gothic-latin.woff2') format('woff2');
  font-style:normal;
  font-weight:100 300;
  font-stretch:50% 200%;
  font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-21FF,U+2212,U+2215,U+2264,U+25A0,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Science Gothic';
  src:url('/fonts/science-gothic-cyrillic.woff2') format('woff2');
  font-style:normal;
  font-weight:100 300;
  font-stretch:50% 200%;
  font-display:swap;
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* Shared tokens + chrome for every page (landing, playground, builder, docs). */
/* lenis.css 1.3.26 */
html.lenis,html.lenis body{height:auto}
.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip;scrollbar-gutter:stable}
.lenis [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-smooth iframe{pointer-events:none}

:root{
  /* colors */
  --black:#000; /* page and card background */
  --white:#fff; /* text and light surface */
  --accent:#c8392b; /* CTA and verdict red */
  --line:rgba(255,255,255,.16); /* dark-surface separators */
  --line-dark:rgba(0,0,0,.16); /* light-surface separators */
  /* layout */
  --pad:clamp(20px,5vw,72px); /* responsive page gutter */
  --max:1440px; /* maximum content width */
  --header:72px; /* fixed header height */
  /* motion */
  --ease:cubic-bezier(.7,0,.2,1); /* in-out reveal easing */
  --ease-out:cubic-bezier(.16,1,.3,1); /* decelerating reveal easing */
  /* corners */
  --r:2px; /* small component corner radius */
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{background:var(--black);color:var(--white);-webkit-text-size-adjust:100%;overflow-x:clip}
body{
  font-family:"Science Gothic",system-ui,sans-serif;font-weight:300;font-variation-settings:"wdth" 100;
  font-size:clamp(15px,1.05vw,17px);line-height:1.6;letter-spacing:.01em;
  background:var(--black);color:var(--white);overflow-x:clip;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  hyphens:manual;-webkit-hyphens:manual;word-break:normal;overflow-wrap:normal;
}
img{display:block;max-width:100%;height:auto;user-select:none;-webkit-user-drag:none}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:1px solid var(--accent);outline-offset:4px}
.nw{white-space:nowrap}
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--pad)}
.hero h1{
  font-size:clamp(28px,10.4vw,176px);font-weight:200;letter-spacing:.02em;line-height:.92;white-space:nowrap;
  font-variation-settings:"wdth" 92;
}
h1,h2,h3{font-weight:200;line-height:1.02;letter-spacing:-.01em;text-wrap:balance}
.label{font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:300;line-height:1.4}
.h2{font-size:clamp(32px,5.2vw,84px);font-variation-settings:"wdth" 90}
.lead{font-size:clamp(16px,1.35vw,21px);line-height:1.55;max-width:46ch;text-wrap:pretty}

/* ---------- buttons ---------- */
.btn{
  position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;
  min-height:56px;padding:0 28px;border-radius:var(--r);border:1px solid var(--white);
  font-size:13px;letter-spacing:.2em;text-transform:uppercase;font-weight:300;white-space:nowrap;
  transition:color .5s var(--ease),border-color .5s var(--ease);
}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;transform:scaleY(0);transform-origin:50% 0;transition:transform .6s var(--ease)}
.btn:hover::before,.btn:focus-visible::before{transform:scaleY(1);transform-origin:50% 100%}
.btn--solid{background:var(--white);color:var(--black)}
.btn--solid::before{background:var(--accent)}
.btn--solid:hover,.btn--solid:focus-visible{border-color:var(--accent);color:var(--black)}
.btn--ghost{color:var(--white)}
.btn--ghost::before{background:var(--white)}
.btn--ghost:hover,.btn--ghost:focus-visible{color:var(--black)}
.on-light .btn--solid{background:var(--black);color:var(--white);border-color:var(--black)}
.on-light .btn--solid:hover{color:var(--black);border-color:var(--accent)}
.on-light .btn--ghost{color:var(--black);border-color:var(--black)}
.on-light .btn--ghost::before{background:var(--black)}
.on-light .btn--ghost:hover{color:var(--white)}
.btn-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(100%,520px)}
.btn-row .btn{width:100%;padding:0 12px}
@media (max-width:519px){.btn{font-size:12px;letter-spacing:.12em;font-variation-settings:"wdth" 72}.label{letter-spacing:.16em}}
@media (max-width:339px){.btn-row{grid-template-columns:1fr}}

/* ---------- header ---------- */
.header{
  position:fixed;inset:0 0 auto 0;z-index:50;height:var(--header);
  background:transparent;border-bottom:1px solid transparent;
  transition:background-color .5s ease,border-color .5s ease;
}
.header.solid{background:var(--black);border-color:var(--line)}
.header .wrap{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.logo{font-size:15px;letter-spacing:.32em;font-weight:300;white-space:nowrap;justify-self:start}
.nav{display:flex;gap:clamp(18px,2.4vw,40px)}
.nav a,.menu-links a{position:relative;font-size:12px;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap;padding:8px 0}
.nav a::after{
  content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--accent);
  transform:scaleX(0);transform-origin:100% 50%;transition:transform .6s var(--ease);
}
.nav a:hover::after,.nav a.active::after{transform:scaleX(1);transform-origin:0 50%}
.header-cta{min-height:44px;padding:0 22px;font-size:12px}
.header-end{justify-self:end;display:flex;align-items:center;gap:20px}
.lang{display:flex;gap:14px}
.lang a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;letter-spacing:.22em;opacity:.45;transition:opacity .3s ease}
.lang a:hover,.lang a[aria-current]{opacity:1}
.menu .lang{flex:1;align-items:flex-start}
.burger{display:none;justify-self:end;width:44px;height:44px;position:relative}
.burger i{position:absolute;left:10px;right:10px;height:1px;background:var(--white);transition:transform .5s var(--ease),top .5s var(--ease)}
.burger i:nth-child(1){top:18px}.burger i:nth-child(2){top:25px}
.menu-open .burger i:nth-child(1){top:21.5px;transform:rotate(45deg)}
.menu-open .burger i:nth-child(2){top:21.5px;transform:rotate(-45deg)}
.menu{
  position:fixed;inset:0;z-index:40;background:var(--black);padding:calc(var(--header) + 24px) var(--pad) var(--pad);
  display:flex;flex-direction:column;justify-content:space-between;gap:32px;
  clip-path:inset(0 0 100% 0);transition:clip-path .7s var(--ease);visibility:hidden;
}
.menu-open .menu{clip-path:inset(0 0 0 0);visibility:visible}
.menu-links{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.menu-links a{font-size:clamp(20px,6vw,32px);letter-spacing:.12em;padding:18px 0;border-bottom:1px solid var(--line);
  opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .7s var(--ease-out)}
.menu-open .menu-links a{opacity:1;transform:none}
.menu-open .menu-links a:nth-child(2){transition-delay:.05s}.menu-open .menu-links a:nth-child(3){transition-delay:.1s}
.menu-open .menu-links a:nth-child(4){transition-delay:.15s}.menu-open .menu-links a:nth-child(5){transition-delay:.2s}
.menu .btn-row{width:100%}
@media (max-width:1151px){
  .nav,.header-end{display:none}
  .header .wrap{grid-template-columns:1fr auto}
  .burger{display:block}
}
@media (max-width:1343px){
  html[lang=ru] :is(.nav,.header-end){display:none}
  html[lang=ru] .header .wrap{grid-template-columns:1fr auto}
  html[lang=ru] .burger{display:block}
}

.onair-chip{
  display:flex;align-items:center;gap:14px;padding:10px 16px;background:var(--black);border:1px solid var(--line);border-radius:var(--r);
  font-size:11px;letter-spacing:.26em;text-transform:uppercase;white-space:nowrap
}

.btn[hidden]{display:none}
.btn--chip{min-height:40px;padding:0 18px;font-size:11px;letter-spacing:.26em;background:var(--black)}
.btn--chip[aria-pressed="true"]::before{transform:scaleY(1);transform-origin:50% 100%;background:var(--accent)}
.btn--chip[aria-pressed="true"]{border-color:var(--accent);color:var(--black)}

.onair-chip b{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{opacity:.25}}

.tuber{position:relative;aspect-ratio:584/737;will-change:transform}
.tuber img,.tuber canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;visibility:hidden}
.tuber img.on,.tuber canvas.on{visibility:visible}

/* ---------- sections ---------- */
.section{padding-block:clamp(88px,13vw,180px)}
section[id]{scroll-margin-top:var(--header)}
.sec-head{display:grid;grid-template-columns:1fr;justify-items:center;text-align:center;gap:22px;margin-bottom:clamp(48px,7vw,96px)}
.sec-head .lead{margin-inline:auto}

/* ---------- final ---------- */
.final{text-align:center;
  background:radial-gradient(60% 70% at 50% 100%,rgba(255,255,255,.11),transparent 72%),var(--black)}
.final .wrap{display:flex;flex-direction:column;align-items:center;gap:clamp(24px,3vw,40px)}
.final h2{font-size:clamp(34px,6.4vw,112px);font-variation-settings:"wdth" 90;max-width:16ch}
.footer{border-top:1px solid var(--line)}
.footer .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding-block:32px}
.footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px clamp(18px,3vw,40px)}
.footer nav a{position:relative;font-size:12px;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;padding:6px 0}
.footer nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:100% 50%;transition:transform .6s var(--ease)}
.footer nav a:hover::after{transform:scaleX(1);transform-origin:0 50%}
.footer small{justify-self:end;font-size:12px;letter-spacing:.14em;white-space:nowrap}
@media (max-width:767px){.footer .wrap{grid-template-columns:1fr;justify-items:center;text-align:center}.footer small{justify-self:center}}

/* ---------- reveal ---------- */
.js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform 1.1s var(--ease-out);transition-delay:var(--d,0s)}
.js [data-reveal].in{opacity:1;transform:none}
.js [data-mask]{overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.js [data-mask] .mask-in{display:inline-block;transform:translateY(110%);transition:transform 1.2s var(--ease);transition-delay:var(--d,0s)}
.js [data-mask].in .mask-in{transform:none}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
