
/* ============================ FONTS ============================ */
@font-face{
  font-family:'Bebas Neue Pro';
  src:url('fonts/BebasNeuePro-Bold.ttf') format('truetype');
  font-weight:700; font-style:normal; font-display:swap;
}
/* Inter — самохост (переменный вес 400–700, сабсеты по unicode-range), без Google CDN */
@font-face{font-family:'Inter';src:url('fonts/Inter-cyrillic.woff2') format('woff2');
  font-weight:400 700;font-display:swap;
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';src:url('fonts/Inter-cyrillic-ext.woff2') format('woff2');
  font-weight:400 700;font-display:swap;
  unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Inter';src:url('fonts/Inter-latin.woff2') format('woff2');
  font-weight:400 700;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+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';src:url('fonts/Inter-latin-ext.woff2') format('woff2');
  font-weight:400 700;font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ============================ TOKENS ============================ */
:root{
  --orange:#EC592A;
  --orange-dark:#cf4a20;
  --orange-soft:rgba(236,89,42,.13);
  --cream:#F0EFEA;
  --cream-2:#E7E5DD;
  --cream-line:#DAD7CD;
  --dark:#131211;
  --dark-2:#1b1a18;
  --dark-3:#222019;
  --dark-line:rgba(240,239,234,.12);
  --ink:#131211;
  --ink-soft:#54514b;
  --ink-mute:#7d7a72;
  --on-dark:#F0EFEA;
  --on-dark-soft:rgba(240,239,234,.68);
  --on-dark-mute:rgba(240,239,234,.42);
  --maxw:1080px;
  --readw:720px;
  --fs-read:17px;   /* типографика уроков платформы: 17px/1.7 */
  --lh-read:1.7;
  /* радиусы по DESIGN.md: md 8 / lg 12 / xl 16 */
  --r-sm:8px;
  --r-md:12px;
  --r-lg:16px;
  /* единые размеры текста */
  --fs-small:.85rem;                       /* всё мелкое: подписи, примечания, мета */
  --fs-body:1rem;                          /* основной текст */
  --fs-h3:clamp(1.35rem,2.3vw,1.65rem);    /* заголовки 3-го порядка (карточки, FAQ) */
}

/* ============================ RESET ============================ */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{font-size:clamp(15.5px,.38vw + 14px,17px);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body{max-width:100%;overflow-x:clip}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--dark);          /* база сайта тёмная; светлые блоки — панели поверх */
  color:var(--ink);
  line-height:1.6;font-weight:400;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--orange);color:#fff}

/* ============================ LAYOUT ============================ */
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(20px,5vw,40px)}
.read{max-width:var(--readw);margin-inline:auto}
section{position:relative}
.s-pad{padding-block:clamp(56px,9vw,100px)}
.s-dark{background:var(--dark);color:var(--on-dark)}
.s-light{background:var(--cream);color:var(--ink)}

/* ============================ TYPE ============================ */
.bebas{font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;letter-spacing:-.02em;line-height:.96;text-transform:uppercase}
.eyebrow{
  display:inline-block;
  font-family:'Inter',sans-serif;font-weight:700;font-size:.72rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--orange);
}
h2.h-sec{
  font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;
  font-size:clamp(1.9rem,4.4vw,2.9rem);line-height:.98;letter-spacing:-.02em;
  text-transform:uppercase;margin-top:.45rem;
}
.lead{font-size:clamp(1rem,1.1vw,1.1rem);line-height:1.6}
.muted-d{color:var(--on-dark-soft)}
.muted-l{color:var(--ink-soft)}

/* ============================ BUTTON (по DESIGN.md — компактная, не «таблетка») ============================ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-family:'Inter',sans-serif;font-weight:600;font-size:.95rem;letter-spacing:.01em;
  color:#fff;background:var(--orange);
  padding:13px 24px;border-radius:var(--r-md);
  border:none;cursor:pointer;text-align:center;
  box-shadow:0 6px 18px -8px rgba(236,89,42,.55);
  transition:transform .16s ease, background .16s ease;
}
.btn:hover{transform:translateY(-1px);background:var(--orange-dark)}
.btn:active{transform:translateY(0)}
.btn .tg{width:1.05em;height:1.05em;flex:0 0 auto}
.btn-meta{margin-top:.85rem;font-size:var(--fs-small);letter-spacing:.01em;line-height:1.5}
.btn-meta span{white-space:nowrap}
.btn-meta.on-dark{color:var(--on-dark-mute)}
.btn-meta.on-light{color:var(--ink-mute)}

/* ============================ SCROLL CHEVRON (тонкая стрелка) ============================ */
.chev{display:flex;justify-content:center;margin-top:clamp(26px,4vw,40px);cursor:pointer;padding:6px 16px}
.chev i{width:14px;height:14px;border-right:1.5px solid var(--on-dark-mute);border-bottom:1.5px solid var(--on-dark-mute);transform:rotate(45deg);display:block;animation:bob 2s ease-in-out infinite}
@keyframes bob{0%,100%{transform:rotate(45deg) translate(0,0);opacity:.55}50%{transform:rotate(45deg) translate(3px,3px);opacity:1}}

/* ============================ HERO ============================ */
.hero{
  position:relative;min-height:100vh;min-height:100svh;
  display:flex;flex-direction:column;
  text-align:center;overflow:hidden;background:var(--dark);
}
.hero::before{ /* свечение за фигурой — мягкое, вертикальное; медленно «дышит» */
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(80% 50% at 50% 38%,rgba(236,89,42,.20) 0%,rgba(236,89,42,.09) 38%,transparent 72%);
  animation:breathe 18s ease-in-out infinite;
}
@keyframes breathe{0%,100%{opacity:.82;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}
.hero::after,.metrics::after,.tq::after,.fx::after,.month::after,.final::after{ /* плёночное зерно поверх тёмной сцены (инлайн-SVG, ~3.5%) */
  content:"";position:absolute;inset:0;z-index:5;pointer-events:none;opacity:.035;
  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='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
@media (min-width:861px){
  .hero::before{ /* десктоп: вертикальный овал, крупнее и мягче */
    background:radial-gradient(34% 70% at 50% 35%,rgba(236,89,42,.17) 0%,rgba(236,89,42,.07) 44%,transparent 82%);
  }
}
.hero-top{position:relative;z-index:3;padding:clamp(18px,3.4vh,30px) 20px clamp(12px,2.2vh,20px)}
.pill{
  display:inline-flex;align-items:center;gap:.55em;
  font-weight:700;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--on-dark);
  padding:.55em 1.15em;border-radius:999px;
  border:1px solid var(--dark-line);background:rgba(240,239,234,.05);backdrop-filter:blur(4px);
}
.pill .dot{width:.45em;height:.45em;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px var(--orange-soft)}
.hero-figure{
  position:relative;z-index:1;flex:1;min-height:clamp(360px,50vh,560px);
  display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;
}
.hero-fig-img{ /* фигура отдельной картинкой: размер по ширине (стабильно при скролле),
                  маска растворяет НИЗ самой фигуры → край не виден на любом экране */
  position:absolute;left:50%;top:clamp(18px,6vw,42px);transform:translateX(-50%);z-index:1;pointer-events:none;
  width:min(100vw,580px);height:auto;
  -webkit-mask-image:linear-gradient(to bottom,#000 50%,transparent 86%);
  mask-image:linear-gradient(to bottom,#000 50%,transparent 86%);
}
.hero-content{position:relative;z-index:2;padding:0 clamp(20px,5vw,40px) clamp(12px,2vh,22px)}
.hero-content::before{ /* скрим: мягкое затемнение фигуры под текстом, переходит в фон */
  content:"";position:absolute;left:0;right:0;bottom:0;z-index:-1;pointer-events:none;
  top:calc(-1*clamp(100px,18vh,170px));
  background:linear-gradient(to bottom,rgba(19,18,17,0) 0%,rgba(19,18,17,.72) 36%,var(--dark) 80%);
}
.hero-title{ /* маст-хед: SOLO за фигурой, голова перекрывает только НИЗ букв (~40%) */
  position:absolute;left:50%;transform:translateX(-50%);top:0;z-index:0;
  font-size:clamp(6.5rem,34vw,15rem);line-height:.8;white-space:nowrap;
  background:linear-gradient(180deg,#fff 0%,var(--cream) 58%,rgba(240,239,234,.55) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
/* каскадный вход: фигура+пилюля сразу → SOLO выплывает ИЗ-ЗА фигуры → оффер → роли → CTA → шеврон */
@keyframes heroIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes heroInTitle{from{opacity:0;transform:translate(-50%,30px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes heroFig{from{opacity:0}to{opacity:1}}
.hero-fig-img{animation:heroFig .6s ease-out both}
.hero-top{animation:heroIn .6s .05s cubic-bezier(.22,.61,.36,1) both}
.hero-title{animation:heroInTitle .9s .35s cubic-bezier(.22,.61,.36,1) both}
.hero-sub{animation:heroIn .7s .6s cubic-bezier(.22,.61,.36,1) both}
.hero-roles{animation:heroIn .7s .72s cubic-bezier(.22,.61,.36,1) both}
.hero-cta{animation:heroIn .7s .85s cubic-bezier(.22,.61,.36,1) both}
.hero .chev{animation:heroIn .7s 1s cubic-bezier(.22,.61,.36,1) both}
.hero-sub{
  font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;
  font-size:clamp(1.85rem,5.5vw,2.55rem);line-height:1.02;letter-spacing:-.01em;
  text-transform:uppercase;max-width:33rem;margin:.45em auto 0;color:var(--on-dark);
  text-shadow:0 2px 16px rgba(0,0,0,.5);
}
.hero-sub b{color:var(--on-dark)}
.hero-roles{ /* утверждённый подзаголовок с пятью ролями — тонкая строка под Bebas-оффером */
  font-size:clamp(1rem,1.1vw,1.06rem);line-height:1.55;color:var(--on-dark-soft);
  max-width:36rem;margin:.9em auto 0;text-shadow:0 1px 12px rgba(0,0,0,.5);
}
.hero-cta{margin-top:clamp(16px,2.4vh,24px);display:flex;flex-direction:column;align-items:center}
.hero .chev{margin-top:clamp(16px,2.2vh,24px)}
/* ---- десктоп: та же центральная композиция, фигура почти во весь рост, SOLO-мастхед гигантский ---- */
@media (min-width:861px){
  .hero-fig-img{width:auto;height:min(105.6vh,984px);top:clamp(0px,1.5vh,14px)}
  .hero-title{font-size:clamp(7rem,13vw,14rem)}
}

/* ============================ METRICS (полоса живых цифр — продолжение hero-сцены) ============================ */
.metrics{position:relative;padding:clamp(6px,1.5vh,18px) 0 clamp(48px,8vh,92px)}
.m-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(30px,5vh,44px) clamp(18px,4vw,28px)}
.m-tile{text-align:center}
.m-num{font-weight:700;font-size:clamp(3.4rem,9vw,4.8rem);line-height:.9;letter-spacing:.01em;
  background:linear-gradient(180deg,#fff 0%,var(--cream) 62%,rgba(240,239,234,.7) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.m-num .m-suf{font-style:normal;font-size:.5em;color:var(--orange);-webkit-text-fill-color:var(--orange);margin-left:.06em}
.m-cap{margin-top:.55em}
.m-cap b{display:block;font-size:clamp(.92rem,1vw,1rem);font-weight:700;color:var(--on-dark)}
.m-cap span{display:block;margin-top:.3em;font-size:.8rem;line-height:1.45;color:var(--on-dark-mute)}
@media (min-width:861px){
  .m-grid{grid-template-columns:repeat(4,1fr);gap:0 clamp(14px,2vw,26px)}
  .m-tile{padding:0 clamp(8px,1.2vw,18px)}
  .m-tile+.m-tile{border-left:1px solid var(--dark-line)}
}

/* ============================ VIDEO / BEHIND-CURTAIN (молочный, экскурсия) ============================ */
.video-head{text-align:center;margin-bottom:clamp(26px,4vw,42px)}
.bc-lead{max-width:var(--readw);margin:1.15em auto 0;font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink-soft)}
.bc-lead b{color:var(--ink);font-weight:700}
.bc .video-frame{max-width:920px;margin:clamp(28px,4.5vw,48px) auto 0;border-color:var(--cream-line);box-shadow:0 32px 64px -38px rgba(19,18,17,.45)}
.video-pill{ /* таблетка-CTA по центру низа обложки (не закрывает лицо) */
  position:absolute;left:0;right:0;bottom:clamp(14px,2.5vw,24px);margin-inline:auto;width:max-content;z-index:2;
  display:inline-flex;align-items:center;gap:.55em;
  font-size:clamp(.88rem,1vw,.95rem);font-weight:600;color:#fff;
  background:var(--orange);
  padding:.7em 1.35em;border-radius:999px;pointer-events:none;
  box-shadow:0 10px 26px -10px rgba(236,89,42,.65);
  transition:transform .16s ease,background .16s ease;
}
.video-pill svg{width:1.7em;height:1.7em;flex:0 0 auto;margin-left:-.2em}
.video-play:hover .video-pill{transform:translateY(-2px);background:var(--orange-dark)}
.video-frame{
  position:relative;width:100%;aspect-ratio:16/9;
  border-radius:var(--r-lg);overflow:hidden;isolation:isolate;
  border:1px solid var(--dark-line);
  box-shadow:0 30px 60px -34px rgba(0,0,0,.7);
  background:#000;
}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-play{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;cursor:pointer;background:#000;display:block}
.video-play img{width:100%;height:100%;object-fit:cover;display:block}
.play-btn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:clamp(62px,8vw,82px);height:clamp(62px,8vw,82px);border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;box-shadow:0 12px 32px -8px rgba(236,89,42,.6);transition:transform .16s ease}
.video-play:hover .play-btn{transform:translate(-50%,-50%) scale(1.06)}
.play-btn svg{width:38%;height:38%;margin-left:7%}

/* ============================ PAIN (editorial 01–04, молочный — начало зоны чтения) ============================ */
.pain-sec{position:relative;padding:clamp(56px,10vh,110px) 0 clamp(50px,9vh,100px)}
.pain-sec .sec-head{text-align:center;margin-inline:auto}
.pain-list{max-width:820px;margin:clamp(34px,5vw,54px) auto 0;display:flex;flex-direction:column;gap:clamp(26px,3.5vw,42px)}
.pain{display:grid;grid-template-columns:auto 1fr;gap:clamp(16px,3.5vw,34px);align-items:start}
.pain-num{font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;font-size:clamp(2.9rem,6vw,4.2rem);line-height:.8;color:var(--orange);padding-top:.04em;min-width:2ch;text-align:right}
.pain h3{font-size:clamp(1.08rem,2vw,1.3rem);font-weight:700;line-height:1.3;margin-bottom:.5em;letter-spacing:-.01em;color:var(--ink)}
.pain p{color:var(--ink-soft);font-size:var(--fs-read);line-height:var(--lh-read);max-width:60ch}
.pain + .pain{border-top:1px solid var(--cream-line);padding-top:clamp(26px,3.5vw,42px)}

/* ============================ TURN-QUOTE (интермедия: выделенная мысль) ============================ */
.tq{position:relative;padding:clamp(60px,11vh,128px) 0}
.tq-quote{max-width:880px;margin:0 auto;text-align:center}
.tq-line{display:block;width:44px;height:3px;border-radius:2px;background:var(--orange);margin:0 auto clamp(20px,3vw,30px)}
.tq-big{font-size:clamp(1.8rem,4vw,3rem);line-height:1.06;color:var(--on-dark)}
.tq-big em{font-style:normal;color:var(--orange)}
.tq-sub{margin-top:1.1em;font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.5;font-weight:500;color:var(--on-dark-soft)}

/* ============================ NEURO-TEAM (светлый: вводка → формула-сигнатура → роли bento) ============================ */
.nt-intro{max-width:var(--readw);margin:clamp(26px,4vw,42px) auto 0;font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink-soft)}
.nt-intro p+p{margin-top:1em}
.nt-intro b{color:var(--ink)}
/* формула — отдельная чёрная сцена: заголовок + формула-чипы */
.fx{position:relative;padding:clamp(60px,10vh,120px) 0;text-align:center}
.fx .sec-head{margin-inline:auto;margin-bottom:0;text-align:center}
.fx-formula{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.55em .6em;margin-top:clamp(28px,4.5vw,44px)}
.fx-res{font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(1.35rem,2.7vw,2.1rem);color:var(--orange)}
.fx-sign{font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:clamp(1.35rem,2.7vw,2.1rem);color:var(--on-dark-soft);padding:0 .1em}
.fx-chip{font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.01em;
  font-size:clamp(1.25rem,2.6vw,2rem);line-height:1;color:var(--on-dark);
  padding:.38em .75em;border:1.5px solid var(--dark-line);border-radius:var(--r-md);background:rgba(240,239,234,.045)}
.fx-x{font-style:normal;font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:clamp(1.15rem,2.2vw,1.7rem);color:var(--orange)}
.fx-note{margin-top:clamp(22px,3.2vw,32px);max-width:640px;margin-inline:auto;font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.6;color:var(--on-dark-soft)}
.fx-note b{color:var(--on-dark)}
.fx-role{margin-top:clamp(28px,4.5vw,44px);max-width:680px;margin-inline:auto;
  background:var(--cream);color:var(--ink-soft);border-radius:var(--r-lg);
  padding:clamp(22px,3vw,32px) clamp(22px,3.5vw,42px);
  font-size:clamp(1.02rem,1.25vw,1.12rem);line-height:1.65}
.fx-role b{color:var(--ink)}
/* полноценный девайдер на стыке двух молочных блоков — ровно по центру воздуха, цвет как у остальных hairline */
.sec-divider{display:flex;justify-content:center;background:var(--cream);padding:0 clamp(20px,5vw,40px)}
.sec-divider span{width:min(820px,100%);height:1px;background:var(--cream-line)}
.roles-lead{max-width:var(--readw);margin:clamp(26px,4vw,42px) auto 0;text-align:center;font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink);font-weight:700}
.roles-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(12px,1.6vw,18px);margin-top:clamp(22px,3vw,32px)}
.role{grid-column:span 2;background:#fff;border:1px solid var(--cream-line);border-radius:var(--r-md);
  padding:clamp(22px,2.6vw,30px);display:flex;flex-direction:column;gap:.55em}
.role:nth-child(4),.role:nth-child(5){grid-column:span 3}
.role-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35em}
.role-ico{width:48px;height:48px;border-radius:12px;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center;flex:0 0 auto}
.role-ico svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.role-num{font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;font-size:clamp(1.9rem,3.2vw,2.6rem);line-height:.85;color:var(--orange);letter-spacing:.02em}
.role h3{font-size:clamp(1.05rem,1.6vw,1.2rem);font-weight:700;line-height:1.25;color:var(--ink)}
.role p{font-size:.95rem;line-height:1.6;color:var(--ink-soft)}
.nt-note{max-width:var(--readw);margin:clamp(26px,4vw,42px) auto 0;text-align:center;
  font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink-soft)}
@media (max-width:860px){
  .roles-grid{grid-template-columns:1fr 1fr}
  .role,.role:nth-child(4),.role:nth-child(5){grid-column:auto}
}
@media (max-width:620px){ .roles-grid{grid-template-columns:1fr} }

/* ============================ INSIDE (светлый: степпер «путь по шагам») ============================ */
.steps{max-width:760px;margin:clamp(30px,4.5vw,50px) auto 0;list-style:none;padding:0}
.step{position:relative;display:grid;grid-template-columns:auto 1fr;gap:clamp(14px,2.6vw,26px);padding-bottom:clamp(22px,3.2vw,36px)}
.step::before{content:"";position:absolute;left:19px;top:44px;bottom:2px;width:2px;background:var(--cream-line)}
.step:last-child::before{display:none}
.step-dot{width:40px;height:40px;border-radius:50%;background:var(--orange);color:#fff;
  display:grid;place-items:center;font-size:1.15rem;position:relative;z-index:1;letter-spacing:0}
.step-top{display:flex;align-items:center;gap:.7em;flex-wrap:wrap;padding-top:.45em}
.step-top h3{font-size:clamp(1.08rem,1.7vw,1.25rem);font-weight:700;line-height:1.2;color:var(--ink)}
.step-count{font-size:.8rem;font-weight:600;color:var(--orange);background:var(--orange-soft);padding:.28em .75em;border-radius:999px;white-space:nowrap}
.step-body p{margin-top:.4em;font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink-soft);max-width:56ch}
.plus-list{max-width:760px;margin:clamp(4px,.8vw,8px) auto 0;display:flex;flex-direction:column;gap:clamp(18px,2.4vw,26px)}
.plus{display:grid;grid-template-columns:auto 1fr;gap:clamp(14px,2.6vw,26px);align-items:start}
.plus-mark{width:40px;height:40px;border-radius:50%;border:2px solid var(--orange);color:var(--orange);
  display:grid;place-items:center;font-size:1.35rem;line-height:1}
.plus-body b{display:block;padding-top:.35em;font-size:1.05rem;color:var(--ink)}
.plus-body p{margin-top:.3em;font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink-soft);max-width:56ch}
.reprise{margin-top:clamp(32px,5vw,52px);text-align:center;font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink-soft)}
.reprise a{color:var(--orange);font-weight:600;border-bottom:1px solid rgba(236,89,42,.35);transition:border-color .16s ease}
.reprise a:hover{border-color:var(--orange)}

/* ============================ WINS (светлый: живая marquee-лента побед из showcase API) ============================ */
.wins{overflow:hidden}
.marquee{margin-top:clamp(30px,4.5vw,50px);overflow:hidden;position:relative}
.marquee::before,.marquee::after{ /* растворение краёв ленты */
  content:"";position:absolute;top:0;bottom:0;width:clamp(24px,6vw,90px);z-index:2;pointer-events:none}
.marquee::before{left:0;background:linear-gradient(to right,var(--cream),transparent)}
.marquee::after{right:0;background:linear-gradient(to left,var(--cream),transparent)}
.marquee{cursor:grab;touch-action:pan-y}
.marquee.dragging{cursor:grabbing}
.marquee-track{display:flex;gap:clamp(12px,1.6vw,18px);width:max-content;will-change:transform}
.marquee.static{overflow-x:auto;-webkit-overflow-scrolling:touch;cursor:auto;touch-action:pan-x}
.wcard{width:clamp(300px,26vw,370px);flex:0 0 auto;background:#fff;border:1px solid var(--cream-line);border-radius:var(--r-md);
  padding:clamp(18px,2vw,24px);display:flex;flex-direction:column;gap:.8em}
.wcard-head{display:flex;align-items:center;gap:.7em}
.wcard-ava{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:var(--orange-soft);
  color:var(--orange);display:grid;place-items:center;font-weight:700;font-size:.9rem}
.wcard-name{font-weight:700;font-size:.98rem;line-height:1.2;color:var(--ink)}
.wcard-niche{font-size:.8rem;color:var(--ink-mute);margin-top:.15em}
.wcard-text{font-size:.92rem;line-height:1.55;color:var(--ink-soft);
  display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.wcard-foot{margin-top:auto;display:flex;align-items:center;gap:.6em;flex-wrap:wrap;font-size:.78rem;color:var(--ink-mute)}
.wcard-kind{font-weight:700;color:var(--orange);background:var(--orange-soft);padding:.25em .7em;border-radius:999px}
.wcard-nps{font-weight:600;color:var(--ink-soft)}
.wcard-mod{width:100%;color:var(--ink-mute)} /* модуль — отдельной строкой в футере карточки */

/* ============================ MONTH (сигнатура «1 из 5» + компактные строки ролей) ============================ */
.month-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.month-split .sec-head{text-align:left;margin-bottom:0}
.month-sig-cap{margin-top:1.1em;font-size:var(--fs-read);line-height:var(--lh-read);color:var(--on-dark-soft)}
.month-sig-cap b{color:var(--on-dark)}
.month-curator{margin-top:clamp(18px,2.6vw,28px);display:flex;gap:.85em;align-items:flex-start;
  background:var(--cream);border-radius:var(--r-md);padding:clamp(16px,2vw,22px);
  font-size:.95rem;line-height:1.55;color:var(--ink-soft)}
.month-curator b{color:var(--ink)}
.mc-ico{width:38px;height:38px;border-radius:10px;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center;flex:0 0 auto}
.mc-ico svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mrows{list-style:none;padding:0;margin:0}
.mrows li{display:grid;grid-template-columns:auto 1fr;gap:.85em;align-items:start;padding:clamp(13px,1.8vw,17px) 0}
.mrows li+li{border-top:1px solid var(--dark-line)}
.mcheck{width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;margin-top:.1em}
.mcheck svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.mrows p{font-size:var(--fs-read);line-height:1.55;color:var(--on-dark-soft)}
.mrows b{color:var(--on-dark)}
@media (max-width:860px){ /* мобайл: центр, сигнатура как якорь, минимум текста */
  .month-split{grid-template-columns:1fr;gap:clamp(22px,5vw,34px)}
  .month-split .sec-head{text-align:center}
  .month-sig-cap{text-align:center;margin-inline:auto}
  .month-curator{margin-inline:auto;max-width:none;text-align:left}
}

/* ============================ AUTHOR (кругляш, без карточки) ============================ */
.author-plain{text-align:center;margin-top:clamp(10px,2.4vw,30px)}
.author-ava{display:block;width:clamp(140px,16vw,180px);aspect-ratio:1/1;border-radius:50%;overflow:hidden;
  background:#0b0808; /* цвет фона фото — «дорисовывает» кадр при сдвигах */
  margin:0 auto clamp(20px,3vw,30px);border:4px solid #fff;box-shadow:0 16px 40px -20px rgba(19,18,17,.45)}
.author-ava img{width:100%;height:100%;object-fit:cover;object-position:60% 0%;transform:translateY(1%) scale(1.24);transform-origin:60% 0%}
.author-text{max-width:var(--readw);margin:clamp(18px,2.6vw,28px) auto 0;font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink-soft)}
.author-text p+p{margin-top:1em}
.author-text .accent{color:var(--ink);font-weight:600}

/* ============================ PRICE (молочный, развилка «рынок vs клуб») ============================ */
.pb-split{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(24px,4vw,52px);align-items:start;margin-top:clamp(30px,4.5vw,46px)}
.pb-col-club{background:#fff;border:1px solid var(--cream-line);border-radius:var(--r-lg);padding:clamp(22px,3vw,38px)}
.pb-col h3{font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:16px}
.pb-mrow{display:flex;justify-content:space-between;gap:1em;padding:12px 0;border-bottom:1px solid var(--cream-line);font-size:var(--fs-read)}
.pb-mrow b{font-weight:600;color:var(--ink-soft)}
.pb-mrow .pb-mv{display:flex;flex-direction:column;align-items:flex-end;white-space:nowrap;color:var(--ink-mute);font-variant-numeric:tabular-nums}
.pb-mv em{font-style:normal;font-size:.78rem;color:var(--ink-mute);opacity:.85;margin-top:2px}
.pb-mtotal{padding-top:14px;font-size:.95rem;color:var(--ink-mute);font-style:italic}
.pb-price{font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;line-height:.88;color:var(--ink);
  font-size:clamp(3.6rem,7vw,5.4rem);font-variant-numeric:tabular-nums}
.pb-price i{font-style:normal;color:var(--orange)}
.pb-per{font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;font-size:clamp(1.1rem,1.8vw,1.4rem);color:var(--ink-mute);text-transform:uppercase;letter-spacing:.04em}
.pb-list{margin-top:20px;display:flex;flex-direction:column;gap:11px}
.pb-list div{display:flex;gap:.7em;align-items:flex-start;font-size:var(--fs-read);line-height:1.55;color:var(--ink-soft)}
.pb-cta{margin-top:26px;display:flex;flex-direction:column;align-items:stretch;text-align:center}
.pb-cta .btn{width:100%}
.pb-fixline{display:flex;gap:.85em;align-items:center;margin-top:clamp(18px,2.6vw,26px);color:var(--ink-soft);font-size:.92rem;line-height:1.55;text-align:left;border:1px solid var(--cream-line);border-radius:var(--r-md);padding:14px 16px}
.pb-fixline b{color:var(--ink)}
.pb-lock{width:38px;height:38px;border-radius:10px;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center;flex:0 0 auto}
.pb-lock svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pb-note{margin-top:16px;font-size:.85rem;line-height:1.55;color:var(--ink-mute)}
@media (max-width:860px){ /* мобайл: как на десктопе — рынок первым без карточки, клуб белой карточкой */
  .pb-split{grid-template-columns:1fr;gap:clamp(30px,7vw,44px)}
  .pb-list div{font-size:.95rem;line-height:1.5}
  .pb-mrow{font-size:.95rem}
  .pb-mtotal{font-size:.88rem}
}

/* ============================ FAQ (светлый аккордеон на hairline) ============================ */
.faq-list{max-width:var(--readw);margin:clamp(28px,4vw,44px) auto 0}
.fq{border-bottom:1px solid var(--cream-line)}
.fq summary{display:flex;justify-content:space-between;align-items:center;gap:1em;cursor:pointer;list-style:none;
  padding:clamp(16px,2.2vw,20px) 0;font-weight:700;font-size:var(--fs-read);line-height:1.4;color:var(--ink)}
.fq summary::-webkit-details-marker{display:none}
.fq-x{position:relative;width:22px;height:22px;flex:0 0 auto;transition:transform .25s ease}
.fq-x::before,.fq-x::after{content:"";position:absolute;left:50%;top:50%;background:var(--orange);border-radius:1px;transform:translate(-50%,-50%)}
.fq-x::before{width:14px;height:2px}
.fq-x::after{width:2px;height:14px}
.fq[open] .fq-x{transform:rotate(45deg)}
.fq-a{padding:0 0 clamp(16px,2.2vw,22px);font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink-soft);max-width:62ch}

/* ============================ SCROLL REVEAL (общий механизм; JS не включает при reduced-motion) ============================ */
.rv{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,.61,.36,1)}
.rv.in{opacity:1;transform:none}

/* ============================ SECTION HEAD ============================ */
.sec-head{max-width:var(--readw);margin-bottom:clamp(30px,4.5vw,50px)}
.sec-head .lead{margin-top:.9rem;color:var(--ink-soft)}
.sec-head.center{text-align:center;margin-inline:auto}

/* ============================ DEPARTMENTS ============================ */
.dept-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,1.6vw,18px)}
.dept{
  background:var(--dark);color:var(--on-dark);
  border-radius:var(--r-md);padding:clamp(24px,2.8vw,34px);
  position:relative;overflow:hidden;
}
.dept-head{display:flex;align-items:baseline;gap:.6em;margin-bottom:.7em}
.dept .num{font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:clamp(2.1rem,3.4vw,2.7rem);line-height:.8;color:var(--orange);letter-spacing:.02em}
.dept h3{font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:var(--fs-h3);font-weight:700;letter-spacing:-.01em;line-height:1;text-transform:uppercase}
.dept-benefit{color:var(--on-dark);font-weight:600;font-size:var(--fs-body);line-height:1.35;margin-bottom:1em}
.dept-list{list-style:none;display:flex;flex-direction:column;gap:.6em}
.dept-list li{position:relative;padding-left:1.15em;color:var(--on-dark-soft);font-size:.95rem;line-height:1.4}
.dept-list li::before{content:"";position:absolute;left:0;top:.55em;width:.38em;height:.38em;border-radius:50%;background:var(--orange)}
.dept .hl{color:#fff;font-weight:700}
.dept.wide{grid-column:1 / -1}
.dept.wide .dept-list{display:grid;grid-template-columns:1fr 1fr;gap:.6em 1.6em}

/* ============================ PLATFORM ============================ */
.split{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(28px,5vw,60px);align-items:center}
.platform-shot{border-radius:var(--r-md);overflow:hidden;border:1px solid var(--cream-line);box-shadow:0 30px 56px -34px rgba(19,18,17,.4)}
.feat-row{display:flex;flex-direction:column;gap:1em;margin-top:1.5em}
.feat{display:grid;grid-template-columns:auto 1fr;gap:.8em;align-items:start}
.feat .ic{width:1.5em;height:1.5em;border-radius:7px;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center;font-weight:800;flex:0 0 auto;margin-top:.1em;font-size:.95rem}
.feat b{font-weight:700}
.feat span{color:var(--ink-soft)}

/* ============================ MEMBERS ============================ */
.counter-big{
  display:flex;align-items:center;gap:clamp(18px,2.8vw,30px);
  width:fit-content;max-width:100%;
  background:var(--dark);color:var(--on-dark);
  border:1px solid var(--dark-line);border-radius:var(--r-lg);
  padding:clamp(20px,2.6vw,28px) clamp(24px,3.2vw,38px);
  margin:clamp(26px,4vw,42px) 0 clamp(30px,4vw,44px);
  position:relative;overflow:hidden;
}
.cb-num{position:relative;z-index:1;font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:clamp(4.2rem,13vw,6.4rem);line-height:.76;color:var(--cream);letter-spacing:.01em}
.cb-side{position:relative;z-index:1;display:flex;flex-direction:column;gap:.3em;text-align:left;padding-left:clamp(18px,2.8vw,30px);border-left:1px solid var(--dark-line)}
.cb-line{display:flex;align-items:center;gap:.5em;font-weight:700;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.15;color:var(--cream)}
.cb-note{color:var(--on-dark-soft);font-size:var(--fs-small);max-width:34ch}
.cb-live{position:relative;width:.6em;height:.6em;flex:0 0 auto}
.cb-live::before,.cb-live::after{content:"";position:absolute;inset:0;border-radius:50%;background:#2bd14a;box-shadow:0 0 8px rgba(43,209,74,.7)}
.cb-live::after{animation:ping 1.9s cubic-bezier(0,0,.2,1) infinite;box-shadow:none}
@keyframes ping{0%{transform:scale(1);opacity:.7}80%,100%{transform:scale(2.6);opacity:0}}
.mem-group-t{font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;font-size:clamp(1.55rem,5vw,2rem);margin:clamp(26px,3vw,38px) 0 1.05em;letter-spacing:-.01em;text-transform:uppercase}
.mem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,18px)}
.mem{background:#fff;border:1px solid var(--cream-line);border-radius:var(--r-md);padding:clamp(20px,2.2vw,26px);display:flex;flex-direction:column;gap:.85em}
.mem-top{display:flex;align-items:center;gap:.75em}
.ava{width:54px;height:54px;border-radius:50%;flex:0 0 auto;overflow:hidden;display:grid;place-items:center;font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:1.4rem;color:#fff;box-shadow:0 0 0 3px var(--cream),0 0 0 4px var(--cream-line)}
.ava img{width:100%;height:100%;object-fit:cover}
.mem-name{font-weight:700;line-height:1.15}
.mem-niche{font-size:var(--fs-small);color:var(--ink-mute);line-height:1.3}
.mem p{font-size:var(--fs-body);color:var(--ink-soft);line-height:1.55}

/* ============================ PRICING ============================ */
.price{
  max-width:880px;margin-inline:auto;
  background:var(--dark);color:var(--on-dark);
  border-radius:var(--r-lg);padding:clamp(36px,5vw,60px) clamp(26px,4vw,48px) clamp(30px,4.5vw,52px);
  position:relative;overflow:hidden;
  box-shadow:0 30px 64px -40px rgba(19,18,17,.45);
}
.price-top{position:relative;z-index:2;display:flex;flex-wrap:wrap;align-items:baseline;gap:.4em .7em;padding-bottom:clamp(24px,3vw,32px);border-bottom:1px solid var(--dark-line)}
.price-num{font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:clamp(3.6rem,9vw,5.2rem);line-height:.82;letter-spacing:.005em}
.price-per{font-size:1rem;color:var(--on-dark-soft);font-weight:500}
.price-tagline{width:100%;color:var(--on-dark-soft);font-size:var(--fs-small);margin-top:.2em}
.incl{position:relative;z-index:2;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.6em;margin:clamp(24px,3.2vw,34px) 0}
.incl li{display:grid;grid-template-columns:auto 1fr;gap:.6em;align-items:start;color:var(--on-dark-soft);font-size:.92rem;line-height:1.4;background:rgba(240,239,234,.04);border:1px solid var(--dark-line);border-radius:var(--r-md);padding:.85em 1em}
.incl li svg{width:1.1em;height:1.1em;color:var(--orange);flex:0 0 auto;margin-top:.12em}
.price-chips{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:.5em;margin-bottom:clamp(20px,2.6vw,26px)}
.chip{display:inline-flex;align-items:center;gap:.4em;font-size:var(--fs-small);color:var(--on-dark);background:rgba(240,239,234,.06);border:1px solid var(--dark-line);border-radius:999px;padding:.4em .85em}
.chip::before{content:"";width:.38em;height:.38em;border-radius:50%;background:var(--orange);flex:0 0 auto}
.price-foot{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:.7em}
.price .btn{width:100%}
.price-note{font-size:var(--fs-small);color:var(--on-dark-mute)}

/* ============================ FAQ ============================ */
.faq{max-width:var(--readw);margin-inline:auto;margin-top:clamp(28px,4vw,44px)}
details.qa{border-bottom:1px solid var(--cream-line)}
details.qa summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;gap:1em;
  padding:clamp(18px,2.4vw,24px) 0;
  font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;
  font-size:var(--fs-h3);letter-spacing:0;line-height:1.08;text-transform:uppercase;
}
details.qa summary::-webkit-details-marker{display:none}
.qa .sign{flex:0 0 auto;width:1.3em;height:1.3em;position:relative}
.qa .sign::before,.qa .sign::after{content:"";position:absolute;background:var(--orange);border-radius:2px;left:50%;top:50%;transform:translate(-50%,-50%)}
.qa .sign::before{width:1em;height:2px}
.qa .sign::after{width:2px;height:1em;transition:transform .25s ease}
details[open] .sign::after{transform:translate(-50%,-50%) scaleY(0)}
.qa .ans{padding:0 0 clamp(20px,2.4vw,24px);color:var(--ink-soft);font-size:1rem;max-width:62ch}

/* ============================ AUTHOR ============================ */
.author-card{background:#fff;border:1px solid var(--cream-line);border-radius:var(--r-lg);overflow:hidden;display:grid;grid-template-columns:1fr 1.1fr;align-items:stretch}
.author-img{position:relative;min-height:100%}
.author-img img{width:100%;height:100%;object-fit:cover;object-position:center top}
.author-body{padding:clamp(26px,3.6vw,48px)}
.author-body h2{margin-bottom:.9rem}
.author-body p{color:var(--ink-soft);font-size:1rem}
.author-body p + p{margin-top:.9em}
.author-body .accent{color:var(--ink);font-weight:600}

/* ============================ FINAL ============================ */
.final{text-align:center}
.final .eyebrow{margin-bottom:clamp(14px,2vw,20px)}
.final h2{font-size:clamp(1.9rem,4.4vw,2.9rem)}
.final p{max-width:36ch;margin:1.2em auto 0;color:var(--on-dark-soft);font-size:clamp(1rem,1.4vw,1.15rem)}
.final p b{color:var(--on-dark)}
.final .cta{margin-top:clamp(26px,4vw,38px);display:flex;flex-direction:column;align-items:center}

/* финал: тёплое свечение снизу — эхо hero, замыкает страницу */
.final{position:relative;overflow:hidden}
.final::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(48% 52% at 50% 66%,rgba(236,89,42,.14) 0%,rgba(236,89,42,.05) 48%,transparent 76%);
  animation:breathe 18s ease-in-out infinite}
.final .wrap{position:relative;z-index:1}

/* ============================ FOOTER ============================ */
.footer{background:var(--dark);color:var(--on-dark-soft);padding-block:clamp(40px,6vw,64px);border-top:1px solid var(--dark-line)}
.footer-top{display:flex;flex-wrap:wrap;gap:1.6em 2.4em;align-items:flex-start;justify-content:space-between;padding-bottom:clamp(24px,3vw,34px);border-bottom:1px solid var(--dark-line)}
.footer-brand{font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:1.5rem;color:var(--on-dark);letter-spacing:.03em}
.footer-tag{margin-top:.5em;font-size:var(--fs-small);color:var(--on-dark-mute);max-width:30ch}
.footer-links{display:flex;flex-direction:column;gap:.6em;font-size:var(--fs-small)}
.footer-links a:hover{color:var(--orange)}
.footer-req{display:grid;grid-template-columns:repeat(3,1fr);gap:1em 1.8em;margin:clamp(22px,3vw,30px) 0}
.footer-req dt{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--on-dark-mute);margin-bottom:.25em}
.footer-req dd{font-size:var(--fs-small);color:var(--on-dark);line-height:1.4;word-break:break-word}
.footer-req dd a:hover{color:var(--orange)}
.footer-legal{font-size:var(--fs-small);color:var(--on-dark-mute);border-top:1px solid var(--dark-line);padding-top:1.3em}
@media (max-width:680px){ .footer-req{grid-template-columns:1fr 1fr} }
@media (max-width:440px){ .footer-req{grid-template-columns:1fr} }

/* ============================ ADDED: month / guarantee / why-now ============================ */
/* «Что у тебя будет через месяц» — сетка карточек-результатов (canvas + hairline по DESIGN.md) */
.month-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,1.6vw,18px)}
.res{background:#fff;border:1px solid var(--cream-line);border-radius:var(--r-md);padding:clamp(22px,2.6vw,30px);display:flex;flex-direction:column;gap:.85em;transition:border-color .16s ease, transform .16s ease}
.res:hover{border-color:var(--orange);transform:translateY(-2px)}
.res-n{width:2.1em;height:2.1em;border-radius:9px;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center;font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:1.5rem;line-height:1;flex:0 0 auto}
.res p{font-size:1rem;line-height:1.5;color:var(--ink-soft)}
.res p b{color:var(--ink);font-weight:700}
.month-note{max-width:var(--readw);margin:clamp(22px,2.8vw,30px) auto 0;text-align:center;color:var(--ink-mute);font-size:var(--fs-small)}
@media (max-width:620px){ .month-grid{grid-template-columns:1fr} }

/* «Гарантия 30 дней» — тёмный премиум-баннер во всю ширину (эхо counter-big) */
.guarantee{display:flex;align-items:center;gap:clamp(20px,3vw,42px);background:var(--dark);color:var(--on-dark);border:1px solid var(--dark-line);border-radius:var(--r-lg);padding:clamp(28px,3.6vw,44px) clamp(26px,3.8vw,52px);position:relative;overflow:hidden}
.g-num{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;flex:0 0 auto;line-height:.8}
.g-num b{font-family:'Bebas Neue Pro',Impact,sans-serif;font-weight:700;font-size:clamp(3.8rem,9vw,5.6rem);color:var(--orange);letter-spacing:.01em}
.g-num span{font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--on-dark-soft);margin-top:.55em}
.g-body{position:relative;z-index:1;padding-left:clamp(20px,3vw,42px);border-left:1px solid var(--dark-line)}
.g-t{font-family:'Bebas Neue Pro',Impact,sans-serif;font-size:clamp(1.5rem,3vw,2rem);text-transform:uppercase;letter-spacing:-.01em;line-height:1;margin-bottom:.5em;color:var(--on-dark)}
.g-body p{color:var(--on-dark-soft);font-size:1rem;line-height:1.55;max-width:56ch}
@media (max-width:560px){ .guarantee{flex-direction:column;text-align:center;gap:1em} .g-body{padding-left:0;border-left:0;border-top:1px solid var(--dark-line);padding-top:1.1em} }

/* «Почему сейчас» — нейтральная карточка над ценой (canvas + hairline, без оранжевого) */
.why-now{display:flex;align-items:flex-start;gap:.85em;max-width:880px;margin:0 auto clamp(16px,2vw,22px);background:#fff;border:1px solid var(--cream-line);border-radius:var(--r-md);padding:clamp(15px,1.9vw,19px) clamp(17px,2.1vw,22px)}
.why-now-ic{flex:0 0 auto;width:1.5em;height:1.5em;color:var(--ink-mute);margin-top:.05em}
.why-now p{color:var(--ink-soft);font-size:var(--fs-small);line-height:1.55}
.why-now p b{color:var(--ink);font-weight:700}

/* ============================ RESPONSIVE ============================ */
@media (max-width:860px){
  .split{grid-template-columns:1fr;gap:clamp(24px,6vw,38px)}
  .split .platform-shot{order:2}
  .author-card{grid-template-columns:1fr}
  .author-img{aspect-ratio:1/1;min-height:0;order:-1}
  .incl{grid-template-columns:1fr}
}
@media (max-width:620px){
  .dept-grid{grid-template-columns:1fr}
  .dept.wide{grid-column:auto}
  .dept.wide .dept-list{grid-template-columns:1fr}
  .mem-grid{grid-template-columns:1fr}
  .pain{grid-template-columns:1fr;gap:.45em}
  .pain-num{text-align:left;min-width:0}
  .video-pill{font-size:.74rem;padding:.62em 1.1em}
  .price-top{justify-content:flex-start}
  .footer-in{flex-direction:column;align-items:flex-start;gap:1.2em}
}
/* горизонтальный телефон / очень низкий вьюпорт: убираем фигуру (иначе текст ложится на лицо) */
@media (orientation:landscape) and (max-height:560px){
  .hero-fig-img{display:none}
  .hero-figure{min-height:0;justify-content:center}
  .hero-content{padding-top:clamp(8px,2vh,16px)}
  .hero-title{position:static;transform:none;white-space:normal;font-size:clamp(3.5rem,16vh,6rem);animation-name:heroIn}
}

/* ============================ NEURO-WIDGET (кругляш + чат с нейро-ассистентом) ============================ */
.nw-launch{position:fixed;right:clamp(14px,2.5vw,26px);bottom:clamp(14px,2.5vw,26px);z-index:200;
  display:flex;align-items:center;gap:10px;border:none;background:none;cursor:pointer;padding:0;
  transform:translateZ(0);will-change:transform} /* свой слой — не перерисовывает контент при скролле на iOS */
.nw-label{font-family:'Inter',sans-serif;font-weight:600;font-size:.85rem;color:var(--on-dark);
  background:rgba(19,18,17,.92);border:1px solid var(--dark-line);padding:.55em 1em;border-radius:999px;
  box-shadow:0 10px 30px -12px rgba(0,0,0,.5)}
.nw-ball{width:58px;height:58px;border-radius:50%;overflow:hidden;border:2px solid var(--orange);background:var(--orange);
  box-shadow:0 12px 32px -10px rgba(236,89,42,.65);transition:transform .16s ease}
.nw-ball img{width:100%;height:100%;object-fit:cover;display:block}
.nw-launch:hover .nw-ball{transform:translateY(-2px)}
.nw-nudge{position:fixed;right:clamp(14px,2.5vw,26px);bottom:calc(clamp(14px,2.5vw,26px) + 74px);z-index:200;
  max-width:260px;background:#fff;color:var(--ink);border:1px solid var(--cream-line);border-radius:14px 14px 4px 14px;
  padding:14px 34px 14px 16px;font-size:.92rem;line-height:1.5;box-shadow:0 18px 44px -18px rgba(19,18,17,.45);cursor:pointer}
.nw-nudge button{position:absolute;top:6px;right:6px;width:24px;height:24px;border:none;background:none;cursor:pointer;color:var(--ink-mute);font-size:1rem;line-height:1}
.nw-panel{position:fixed;right:clamp(12px,2.5vw,26px);bottom:clamp(12px,2.5vw,26px);z-index:210;
  width:min(378px,calc(100vw - 24px));height:min(560px,calc(100vh - 90px));
  background:#fff;border:1px solid var(--cream-line);border-radius:var(--r-lg);overflow:hidden;
  display:flex;flex-direction:column;box-shadow:0 30px 80px -30px rgba(19,18,17,.55)}
.nw-head{display:flex;align-items:center;gap:.7em;background:var(--dark);color:var(--on-dark);padding:14px 16px}
.nw-head-ava{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:0 0 auto;border:2px solid rgba(236,89,42,.6)}
.nw-head b{font-size:.95rem;font-weight:600}
.nw-head span{font-size:.75rem;color:var(--on-dark-mute)}
.nw-close{margin-left:auto;width:30px;height:30px;border:none;background:none;color:var(--on-dark-mute);cursor:pointer;font-size:1.25rem;line-height:1}
.nw-close:hover{color:var(--on-dark)}
.nw-msgs{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--cream)}
.nw-m{max-width:86%;padding:10px 14px;border-radius:14px;font-size:.92rem;line-height:1.5;overflow-wrap:break-word}
.nw-m.a{align-self:flex-start;background:#fff;border:1px solid var(--cream-line);color:var(--ink-soft);border-bottom-left-radius:4px}
.nw-m.u{align-self:flex-end;background:var(--orange);color:#fff;border-bottom-right-radius:4px}
.nw-m p{margin:0}
.nw-m p+p{margin-top:.6em}
.nw-m a{color:var(--orange);font-weight:600;text-decoration:underline}
.nw-m.u a{color:#fff}
.nw-typing{align-self:flex-start;color:var(--ink-mute);font-size:1.1rem;letter-spacing:.15em;padding:4px 14px;animation:nwPulse 1.2s ease-in-out infinite}
@keyframes nwPulse{0%,100%{opacity:.35}50%{opacity:1}}
.nw-quick{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 10px;background:var(--cream)}
.nw-quick button{font-family:'Inter',sans-serif;font-size:.8rem;font-weight:600;color:var(--ink-soft);
  background:#fff;border:1px solid var(--cream-line);border-radius:999px;padding:.5em .95em;cursor:pointer}
.nw-quick button:hover{border-color:var(--orange);color:var(--orange)}
.nw-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--cream-line);background:#fff}
.nw-input input{flex:1;border:1px solid var(--cream-line);border-radius:10px;padding:10px 12px;
  font-family:'Inter',sans-serif;font-size:16px;color:var(--ink);background:var(--cream);outline:none}
.nw-input input:focus{border-color:var(--orange)}
.nw-send{width:44px;height:44px;border:none;border-radius:10px;background:var(--orange);color:#fff;cursor:pointer;display:grid;place-items:center}
.nw-send:disabled{opacity:.5;cursor:default}
.nw-send svg{width:20px;height:20px;fill:currentColor}
@media (max-width:620px){ /* мобайл: чат во весь экран, как шторка мессенджера */
  .nw-panel{inset:0;right:0;bottom:0;width:100%;height:100dvh;max-height:none;border-radius:0;border:none}
}
[hidden]{display:none !important}

@media (hover:none){ .btn:hover{transform:none} }
@media (prefers-reduced-motion:reduce){ *{animation:none !important;scroll-behavior:auto !important;transition:none !important} }
