:root{
    --bordo:#1F1E1D;        /* тёплый тёмный — заголовки/тёмные элементы (Claude ink) */
    --bordo-deep:#262522;   /* тёмные секции */
    --black:#1a1714;        /* фон тёмных секций (тёплый espresso) */
    --red:#D97757;          /* Claude orange — главный акцент */
    --red-soft:#E08A6A;
    --cream:#F0EEE6;        /* Claude ivory — основной фон */
    --cream-2:#E8E5DA;
    --rose:#E0A07A;         /* тёплый персик — акцент на тёмном */
    --rose-soft:#F1CDB6;
    --ink:#1F1E1D;
    --muted:#83807A;
    --line:rgba(31,30,29,.12);
    --display:'Fraunces','Newsreader',Georgia,serif;
    --serif:'Newsreader','Lora',Georgia,'Times New Roman',serif;
    --sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
    --mono:'JetBrains Mono','IBM Plex Mono',ui-monospace,SFMono-Regular,monospace;
    --maxw:1100px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth;background:#1a1714}
  body{
    font-family:var(--sans);
    background:var(--cream);
    color:var(--ink);
    line-height:1.65;
    font-size:17px;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
  .narrow{max-width:760px;margin-left:auto;margin-right:auto}
  .center{text-align:center}
  h1,h2,h3,h4{font-family:var(--display);line-height:1.08;font-weight:400;letter-spacing:-0.015em}
  h2{font-size:clamp(34px,5vw,56px);color:var(--bordo)}
  h2 em, .it{font-style:italic}
  h3{font-size:22px;font-family:var(--display);font-weight:500;color:var(--bordo)}
  p{margin:0 0 18px}
  a{color:inherit;text-decoration:none}
  section{padding:110px 0;position:relative}
  .eyebrow{
    font-family:var(--sans);font-weight:500;letter-spacing:.22em;
    text-transform:uppercase;font-size:11px;
    color:var(--red);margin-bottom:22px;display:inline-block;
  }
  .eyebrow::before{content:"// ";opacity:.5}
  .lead{font-size:19px;color:var(--muted);font-weight:300;line-height:1.6;margin-bottom:0}

  /* ── Liquid-glass (адаптировано для светлых и тёмных фонов) ── */
  .glass{
    background:rgba(255,255,255,0.04);
    background-blend-mode:luminosity;
    backdrop-filter:blur(14px) saturate(1.2);
    -webkit-backdrop-filter:blur(14px) saturate(1.2);
    box-shadow:inset 0 1px 1px rgba(255,255,255,0.12);
    position:relative;overflow:hidden;
  }
  .glass::before{
    content:"";position:absolute;inset:0;border-radius:inherit;padding:1.2px;
    background:linear-gradient(180deg,
      rgba(255,255,255,0.55) 0%,
      rgba(255,255,255,0.18) 22%,
      rgba(255,255,255,0) 45%,
      rgba(255,255,255,0) 55%,
      rgba(255,255,255,0.18) 78%,
      rgba(255,255,255,0.55) 100%);
    -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
  }
  .glass-strong{
    background:rgba(255,255,255,0.06);
    backdrop-filter:blur(40px) saturate(1.3);
    -webkit-backdrop-filter:blur(40px) saturate(1.3);
    box-shadow:4px 4px 14px rgba(0,0,0,0.18), inset 0 1px 1px rgba(255,255,255,0.18);
    position:relative;overflow:hidden;
  }
  .glass-strong::before{
    content:"";position:absolute;inset:0;border-radius:inherit;padding:1.4px;
    background:linear-gradient(180deg,
      rgba(255,255,255,0.65) 0%,
      rgba(255,255,255,0.22) 20%,
      rgba(255,255,255,0) 50%,
      rgba(255,255,255,0.22) 80%,
      rgba(255,255,255,0.65) 100%);
    -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
  }

  /* ── Кнопки ── */
  .btn{
    display:inline-flex;align-items:center;gap:10px;
    font-family:var(--sans);font-weight:500;font-size:15px;
    padding:14px 28px;border-radius:999px;
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
    border:none;cursor:pointer;letter-spacing:.005em;line-height:1;
  }
  .btn-light{background:#fff;color:var(--bordo-deep)}
  .btn-light:hover{transform:translateY(-1px) scale(1.02);box-shadow:0 0 32px 4px rgba(255,255,255,0.18)}
  .btn-red{background:var(--red);color:#fff;box-shadow:0 12px 30px -10px rgba(217,119,87,.55)}
  .btn-red:hover{background:var(--red-soft);transform:translateY(-1px);box-shadow:0 16px 40px -10px rgba(217,119,87,.7)}
  .btn-glass{color:#fff;padding:14px 26px}
  .btn-glass:hover{transform:translateY(-1px);box-shadow:0 0 28px 2px rgba(217,119,87,0.22), inset 0 1px 1px rgba(255,255,255,0.18)}
  .arrow{width:14px;height:14px;flex:0 0 auto}

  /* ═══════════ HERO ═══════════ */
  .hero{
    position:relative;height:100vh;min-height:600px;max-height:100vh;
    background:var(--black);color:#fff;
    padding:0;overflow:hidden;
    isolation:isolate;
  }
  .hero-bg{
    position:absolute;inset:-6%;z-index:0;
    will-change:transform;
  }
  .hero-bg picture, .hero-bg img, .hero-bg video{
    width:100%;height:100%;object-fit:cover;object-position:center top;
    display:block;
  }
  .hero-bg::after{
    /* Кинематографические вкладыши: тёплая виньетка снизу + лёгкое затемнение сверху для контраста с навигацией */
    content:"";position:absolute;inset:0;pointer-events:none;
    background:
      linear-gradient(180deg, rgba(26,23,20,.55) 0%, rgba(26,23,20,0) 22%, rgba(26,23,20,0) 42%, rgba(26,23,20,.85) 88%, #1a1714 100%),
      radial-gradient(60% 80% at 50% 35%, rgba(0,0,0,0) 0%, rgba(26,23,20,0.45) 100%);
  }
  .hero-blend{
    height:120px;margin-top:-1px;position:relative;z-index:2;
    background:linear-gradient(180deg, #1a1714 0%, #201c18 30%, var(--bg) 100%);
  }
  .hero-grain{
    position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.10;mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/></svg>");
  }

  /* Навигация */
  .nav{
    position:absolute;top:24px;left:0;right:0;z-index:50;
    padding:0 36px;display:flex;align-items:center;justify-content:center;
    pointer-events:none;
  }
  .nav > * {pointer-events:auto}
  .wordmark{
    color:#fff;font-family:var(--display);font-style:italic;font-size:24px;
    letter-spacing:-.01em;text-shadow:0 2px 14px rgba(0,0,0,.4);
  }
  .wordmark sup{font-family:var(--sans);font-style:normal;font-size:9px;font-weight:500;
    letter-spacing:.18em;margin-left:6px;vertical-align:super;opacity:.7}
  .nav-pill{
    display:flex;align-items:center;gap:2px;
    padding:6px;border-radius:999px;
  }
  .nav-pill a{
    color:rgba(255,255,255,0.85);font-size:11px;font-weight:500;
    letter-spacing:.16em;text-transform:uppercase;
    padding:8px 16px;border-radius:999px;transition:color .2s, background .2s;
  }
  .nav-pill a:hover{color:#fff;background:rgba(255,255,255,0.06)}
  .nav-cta{
    color:#fff;font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;
    padding:10px 18px;border-radius:999px;
  }

  /* Hero content layout */
  .hero-inner{
    position:relative;z-index:10;
    height:100vh;display:flex;flex-direction:column;
    align-items:center;text-align:center;
    padding:90px 32px 50px;
  }
  .hero-top{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;max-width:920px;width:100%;padding-bottom:28px}
  .hero-bottom{display:flex;flex-direction:column;align-items:center;gap:0;width:100%}
  .hero-badge{
    align-self:center;display:inline-flex;align-items:center;gap:10px;
    padding:5px 16px 5px 5px;border-radius:999px;margin-bottom:22px;
    font-size:12px;color:rgba(255,255,255,0.92);
  }
  .hero-badge .pill{
    background:#fff;color:var(--bordo-deep);font-weight:600;font-size:10.5px;
    letter-spacing:.10em;text-transform:uppercase;
    padding:6px 11px;border-radius:999px;line-height:1;
  }
  .hero h1{
    color:#fff;
    font-family:var(--display);font-style:italic;font-weight:400;
    font-size:clamp(32px,4.4vw,62px);line-height:1.05;letter-spacing:-0.02em;
    margin:0 auto;
  }
  .hero h1 .soft{color:rgba(255,255,255,0.55);font-style:italic}
  .hero h1 .accent{color:var(--rose);font-style:italic;display:inline-block;
    text-shadow:0 0 40px rgba(217,119,87,0.4)}

  .hero-sub{
    margin:22px auto 0;max-width:620px;font-size:15px;line-height:1.55;
    color:rgba(255,255,255,0.85);font-weight:300;
  }
  .hero-sub b{color:#fff;font-weight:500}
  .hero-disclosure{
    margin:10px auto 0;max-width:540px;font-size:13.5px;line-height:1.5;
    color:var(--rose);font-style:italic;font-family:var(--display);
  }

  .hero-cta{display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:0}
  .hero-meta{
    display:flex;gap:28px;flex-wrap:wrap;justify-content:center;margin-top:18px;
    font-size:13px;color:rgba(255,255,255,0.75);
  }
  .hero-meta .item{display:flex;align-items:baseline;gap:8px}
  .hero-meta b{
    color:#fff;font-family:var(--display);font-style:italic;font-weight:500;
    font-size:22px;line-height:1;letter-spacing:-.01em;
  }

  .hero-footer{
    margin-top:auto;padding-top:14px;display:flex;align-items:center;justify-content:flex-end;
    gap:24px;flex-wrap:wrap;
  }
  @media (max-height: 760px){
    .hero-inner{padding:74px 32px 56px}
    .hero h1{font-size:clamp(26px,3.8vw,42px);line-height:1.08}
    .hero-badge{margin-bottom:14px}
    .hero-sub{margin:14px auto 0;font-size:13.5px}
    .hero-disclosure{margin:6px auto 0;font-size:12px}
    .hero-meta{margin-top:12px;font-size:12px;gap:22px}
    .hero-blend{height:80px}
  }
  @media (max-height: 620px){
    .hero-inner{padding:64px 28px 40px}
    .hero h1{font-size:clamp(22px,3.4vw,34px)}
    .hero-sub{font-size:12.5px;margin-top:10px}
    .hero-disclosure{display:none}
    .hero-meta{margin-top:10px;font-size:11.5px}
  }
  .hero-secure{
    display:inline-flex;align-items:center;gap:9px;color:rgba(255,255,255,0.7);
    font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;
  }
  .scroll-hint{
    color:rgba(255,255,255,0.5);font-size:10.5px;letter-spacing:.22em;
    text-transform:uppercase;display:inline-flex;align-items:center;gap:10px;
  }
  .scroll-hint::after{
    content:"";width:46px;height:1px;background:linear-gradient(90deg,rgba(255,255,255,.5),rgba(255,255,255,0));
    animation:scrollPulse 2.4s ease-in-out infinite;
  }
  @keyframes scrollPulse{
    0%,100%{transform:translateX(0);opacity:.4}
    50%{transform:translateX(8px);opacity:1}
  }

  /* BlurText word reveal */
  .blur-word{
    display:inline-block;margin-right:.22em;
    opacity:0;filter:blur(12px);transform:translateY(28px);
    transition:opacity .9s cubic-bezier(.2,.7,.2,1), filter .9s cubic-bezier(.2,.7,.2,1), transform .9s cubic-bezier(.2,.7,.2,1);
  }
  .blur-word.in{opacity:1;filter:blur(0);transform:translateY(0)}

  .fade-up{opacity:0;transform:translateY(20px);transition:opacity .9s ease, transform .9s ease}
  .fade-up.in{opacity:1;transform:translateY(0)}

  /* ═══════════ RECOGNIZE ═══════════ */
  .recognize{background:var(--cream)}
  .recognize h2{font-size:clamp(38px,5.6vw,68px);line-height:1.08;letter-spacing:-0.02em}
  .recognize .lead{font-size:16px;color:rgba(31,30,29,.65);line-height:1.55}
  .why h2{font-size:clamp(38px,5.6vw,68px);line-height:1.08;letter-spacing:-0.02em}
  .why .lead{font-size:16px;color:rgba(31,30,29,.65)}
  .program h2{font-size:clamp(38px,5.6vw,68px);line-height:1.08;letter-spacing:-0.02em}
  .program .lead{font-size:16px;color:rgba(31,30,29,.65)}
  .reviews h2{font-size:clamp(38px,5.6vw,68px) !important;line-height:1.08 !important}
  .gen h2{font-size:clamp(34px,4.8vw,58px);line-height:1.12;letter-spacing:-0.02em}
  .final h2{font-size:clamp(38px,5.4vw,64px);line-height:1.1;letter-spacing:-0.02em}
  @media (max-width:780px){
    .recognize h2,.why h2,.program h2,.reviews h2,.gen h2,.final h2{font-size:clamp(28px,7vw,38px) !important;line-height:1.12 !important}
    .recognize .lead,.why .lead,.program .lead{font-size:15px}
  }
  .empty-line{
    font-family:var(--display);font-style:italic;font-size:24px;line-height:1.5;
    color:var(--bordo);max-width:680px;margin:30px auto 0;text-align:center;
  }
  .masks{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:64px 0 0}
  .mask-card{
    position:relative;border-radius:20px;overflow:hidden;
    background:linear-gradient(180deg,#2a2420 0%,#201c18 100%);
    color:#fff;aspect-ratio:3/4;
    box-shadow:0 30px 60px -34px rgba(31,30,29,.5);
    transition:transform .35s ease, box-shadow .35s ease;
    isolation:isolate;
  }
  .mask-card:hover{transform:translateY(-6px);box-shadow:0 40px 80px -34px rgba(31,30,29,.55)}
  /* фото-слот: можно заменить .mask-photo на тег картинки */
  .mask-photo{
    position:absolute;inset:0;z-index:0;
    background:
      radial-gradient(60% 40% at 50% 35%,rgba(217,119,87,.30),transparent 70%),
      linear-gradient(160deg,#4a3b32,#201c18);
  }
  .mask-photo::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(26,23,20,0) 35%,rgba(26,23,20,.85) 100%);
    z-index:1;
  }
  .mask-photo img{
    position:absolute;inset:0;width:100%;height:100%;
    object-fit:cover;object-position:center top;display:block;
  }
  .mask-photo .ph{
    position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);
    text-align:center;color:var(--rose-soft);font-size:11px;letter-spacing:.16em;
    text-transform:uppercase;font-weight:500;opacity:.65;
    border:1px dashed rgba(217,119,87,.4);border-radius:10px;padding:14px 18px;
    max-width:80%;line-height:1.5;
  }
  .mask-photo .ph b{display:block;color:#fff;font-family:var(--display);
    font-style:italic;font-size:14px;font-weight:500;letter-spacing:0;
    text-transform:none;margin-bottom:6px;opacity:.9}
  .mask-card .mc-num{
    position:absolute;top:18px;left:20px;z-index:2;
    font-family:var(--display);font-style:italic;font-size:13px;color:var(--rose);
    letter-spacing:.04em;opacity:.85;
  }
  .mask-card .mc-num::before{content:"";display:inline-block;width:18px;height:1px;
    background:var(--rose);vertical-align:middle;margin-right:8px;opacity:.7}
  .mask-card .mc-content{
    position:absolute;left:22px;right:22px;bottom:22px;z-index:2;
  }
  .mask-card h3{
    color:#fff;font-family:var(--display);font-style:italic;font-weight:500;
    font-size:26px;line-height:1;margin-bottom:10px;letter-spacing:-.01em;
  }
  .mask-card p{
    font-size:13.5px;color:rgba(255,255,255,0.78);margin:0;
    line-height:1.5;font-weight:300;font-style:italic;font-family:var(--display);
  }

  /* «Под маской — одно и то же» — кинематографичный баннер */
  .masks-banner{
    margin:68px auto 0;max-width:880px;text-align:center;
    position:relative;padding:46px 32px;
  }
  .masks-banner::before, .masks-banner::after{
    content:"";position:absolute;left:50%;transform:translateX(-50%);
    width:34%;height:1px;background:linear-gradient(90deg,transparent,var(--red),transparent);
  }
  .masks-banner::before{top:0}
  .masks-banner::after{bottom:0}
  .masks-banner .small{
    font-family:var(--sans);font-size:11px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--red);font-weight:500;margin-bottom:18px;
  }
  .masks-banner h3{
    font-family:var(--display);font-style:italic;font-weight:400;
    font-size:clamp(28px,3.6vw,42px);line-height:1.15;color:var(--bordo);
    letter-spacing:-.015em;
  }
  .masks-banner h3 b{color:var(--red);font-style:italic;font-weight:500}

  .symptoms{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;margin-top:48px}
  .symptom{
    display:flex;gap:16px;align-items:flex-start;
    background:#fff;border:1px solid var(--line);border-radius:14px;
    padding:20px 24px;font-size:15.5px;line-height:1.5;font-weight:300;
    transition:transform .25s, box-shadow .25s, border-color .25s;
  }
  .symptom:hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(31,30,29,.25);border-color:rgba(217,119,87,.25)}
  .symptom .idx{
    flex:0 0 auto;font-family:var(--display);font-style:italic;font-size:18px;
    color:var(--red);font-weight:500;line-height:1;margin-top:3px;
    min-width:24px;
  }

  .recognize-note{
    margin-top:48px;background:var(--bordo);color:var(--cream);
    border-radius:22px;padding:42px 44px;
    font-family:var(--display);font-style:italic;font-size:21px;
    line-height:1.55;font-weight:400;position:relative;overflow:hidden;
  }
  .recognize-note b{color:var(--rose);font-style:normal;font-weight:500;font-family:var(--sans)}
  .recognize-note::before{
    content:"";position:absolute;top:-50%;right:-20%;width:60%;height:200%;
    background:radial-gradient(closest-side,rgba(217,119,87,.18),transparent);
    pointer-events:none;
  }

  /* ═══════════ WHY (LAYERS DIAGRAM) ═══════════ */
  .why{background:var(--cream-2)}
  .layers-diagram{
    margin-top:64px;display:grid;
    grid-template-columns:80px 1fr;gap:30px;
    max-width:920px;margin-left:auto;margin-right:auto;
  }
  .ld-axis{
    position:relative;display:flex;flex-direction:column;
    align-items:flex-end;padding-top:14px;
  }
  .ld-axis .axis-line{
    position:absolute;top:30px;bottom:30px;right:20px;width:1px;
    background:linear-gradient(180deg,
      rgba(217,119,87,0.15) 0%,
      var(--red) 50%,
      rgba(217,119,87,0.4) 100%);
  }
  .ld-axis .axis-line::before, .ld-axis .axis-line::after{
    content:"";position:absolute;left:-3px;width:7px;height:7px;border-radius:50%;
  }
  .ld-axis .axis-line::before{top:-4px;background:var(--rose)}
  .ld-axis .axis-line::after{bottom:-4px;background:var(--red)}
  .ld-axis .ax-lbl{
    position:absolute;right:30px;font-family:var(--display);font-style:italic;
    font-size:13px;color:var(--muted);white-space:nowrap;
  }
  .ld-axis .ax-top{top:24px}
  .ld-axis .ax-bot{bottom:24px;color:var(--red)}

  .ld-layers{display:flex;flex-direction:column;gap:14px;position:relative}
  .ld-layer{
    background:#fff;border:1px solid var(--line);border-radius:18px;
    padding:28px 32px;display:grid;grid-template-columns:auto 1fr auto;
    gap:24px;align-items:center;position:relative;
    transition:transform .25s ease;
  }
  .ld-layer:hover{transform:translateX(4px)}
  .ld-num{
    font-family:var(--display);font-style:italic;font-size:48px;
    color:var(--rose);font-weight:500;line-height:.85;letter-spacing:-.03em;
    min-width:64px;
  }
  .ld-body .step{
    font-family:var(--sans);font-size:10.5px;color:var(--red);font-weight:600;
    letter-spacing:.18em;text-transform:uppercase;margin-bottom:6px;
  }
  .ld-body h3{
    font-family:var(--display);font-style:italic;font-size:24px;
    color:var(--bordo);margin-bottom:6px;font-weight:500;letter-spacing:-.01em;
  }
  .ld-body p{font-size:14.5px;color:var(--muted);margin:0;line-height:1.55;font-weight:300;max-width:54ch}
  .ld-status{
    font-family:var(--display);font-style:italic;font-size:14px;
    color:var(--muted);text-align:right;white-space:nowrap;
  }
  .ld-status .x{color:#c89a7a;font-size:18px;margin-right:6px;font-style:normal;vertical-align:-1px}
  .ld-status .v{color:var(--red);font-size:18px;margin-right:6px;font-style:normal;vertical-align:-1px;font-weight:600}

  .ld-layer.key{
    background:linear-gradient(135deg,var(--bordo) 0%,var(--bordo-deep) 100%);
    border-color:var(--bordo);color:var(--cream);
    box-shadow:0 30px 60px -36px rgba(31,30,29,.6);
  }
  .ld-layer.key .ld-num{color:var(--rose)}
  .ld-layer.key .ld-body h3{color:#fff}
  .ld-layer.key .ld-body .step{color:var(--rose)}
  .ld-layer.key .ld-body p{color:var(--rose-soft)}
  .ld-layer.key .ld-status{color:var(--rose-soft)}

  .ld-layer.deep{
    background:linear-gradient(135deg,#fff 0%,#FAF6EF 100%);
    border-color:rgba(217,119,87,0.25);
  }
  .ld-layer.deep .ld-num{color:var(--red)}
  .ld-layer.deep::before{
    content:"";position:absolute;left:-1px;top:-1px;bottom:-1px;width:4px;
    background:linear-gradient(180deg,var(--rose),var(--red));
    border-radius:18px 0 0 18px;
  }

  .formula{
    margin-top:42px;background:#fff;border:1px solid var(--line);border-radius:18px;
    padding:30px 34px;font-family:var(--display);font-style:italic;font-size:19px;
    line-height:1.6;color:var(--bordo);font-weight:400;
  }
  .formula b{color:var(--red);font-style:normal;font-family:var(--sans);font-weight:500}

  /* ═══════════ AUTHOR ═══════════ */
  .author{
    background:linear-gradient(180deg,#201c18 0%,var(--bordo-deep) 100%);
    color:var(--cream);position:relative;overflow:hidden;padding:0;
  }
  /* ═══ AUTHOR ═══
     DESKTOP: фото слева (полностью видно), весь текст справа.
     MOBILE:  overlay — фото целиком + накладки с насыщенным градиентом сверху/снизу. */
  .author{background:#1a1714;padding:80px 0}
  .author-frame{
    max-width:1100px;margin:0 auto;padding:0 32px;
    display:grid;grid-template-columns:auto 1fr;align-items:stretch;gap:48px;
  }
  .author-photo{
    position:relative;width:420px;aspect-ratio:2/3;
    border-radius:24px;overflow:hidden;
    box-shadow:0 30px 60px -34px rgba(31,30,29,.55);
  }
  .author-img{
    position:absolute;inset:0;width:100%;height:100%;
    object-fit:cover;object-position:center;display:block;
  }
  .author-text{
    display:flex;flex-direction:column;justify-content:center;gap:36px;
    padding:0;color:#fff;
  }
  .author-main{display:flex;flex-direction:column;gap:20px}
  .author-eyebrow{display:block}
  .author-eyebrow{
    font-family:var(--sans);font-size:11px;font-weight:700;
    letter-spacing:.22em;text-transform:uppercase;color:var(--rose);opacity:.9;
  }
  .author-main h2{
    color:#fff;font-family:var(--display);font-style:italic;font-weight:400;
    font-size:clamp(40px,4.6vw,64px);line-height:1.02;letter-spacing:-.02em;
    margin:14px 0 20px;
  }
  .author-main h2 em{color:var(--rose);font-style:italic}
  .author-main .role{
    font-family:var(--display);font-style:italic;font-size:16px;
    color:rgba(255,255,255,.78);line-height:1.6;max-width:46ch;
  }
  .author-main .role .sep{color:var(--rose);margin:0 4px;opacity:.6}
  .author-main .quote{
    font-family:var(--display);font-style:italic;
    font-size:clamp(20px,2vw,24px);line-height:1.5;color:#fff;
    max-width:46ch;margin:0;padding-left:18px;border-left:2px solid var(--red);
  }

  /* MOBILE: переключаемся на overlay-режим */
  @media (max-width:780px){
    .author{padding:0}
    .author-frame{
      grid-template-columns:1fr;gap:0;
      max-width:100%;padding:0;
      position:relative;
    }
    .author-photo{
      width:100%;aspect-ratio:2/3;border-radius:0;
      box-shadow:none;
    }
    .author-text{
      position:absolute;inset:0;z-index:2;padding:0;
      display:flex;flex-direction:column;justify-content:space-between;
      pointer-events:none;
    }
    .author-top, .author-bottom{pointer-events:auto}
    .author-top{
      padding:38px 22px 100px;
      background:linear-gradient(180deg,
        rgba(26,23,20,.96) 0%,
        rgba(26,23,20,.90) 35%,
        rgba(26,23,20,.55) 70%,
        rgba(26,23,20,0) 100%);
    }
    .author-bottom{
      padding:100px 22px 32px;
      background:linear-gradient(0deg,
        rgba(26,23,20,.96) 0%,
        rgba(26,23,20,.90) 35%,
        rgba(26,23,20,.55) 70%,
        rgba(26,23,20,0) 100%);
    }
    .author-main h2{font-size:36px;margin:10px 0 14px}
    .author-main .role{font-size:13.5px;line-height:1.55}
    .author-main .quote{font-size:18px;padding-left:14px}
  }
  .a-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:0;max-width:440px}
  .a-stat{
    padding:18px 20px;border-radius:14px;color:#fff;
    background:rgba(255,255,255,0.04);
    border:1px solid rgba(255,255,255,0.08);
  }
  .a-stat b{
    display:block;font-family:var(--display);font-style:italic;font-size:30px;
    font-weight:500;color:#fff;line-height:1;letter-spacing:-.01em;margin-bottom:6px;
  }
  .a-stat span{font-size:12px;color:var(--rose-soft);letter-spacing:.04em;font-weight:300}

  .author-regalia{
    margin-top:32px;padding-top:26px;border-top:1px solid rgba(217,119,87,.18);
    font-size:13.5px;line-height:1.7;color:rgba(255,255,255,0.7);font-weight:300;
    max-width:54ch;
  }
  .author-regalia .sep{color:var(--rose);margin:0 6px;opacity:.7}

  /* ═══════════ MODULES ═══════════ */
  .program{background:var(--cream-2)}
  .modules{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:60px}

  /* фото-слот-карточка (ключевые модули) */
  .module-hero{
    grid-column:span 6;display:flex;flex-direction:column;
    border-radius:24px;overflow:hidden;color:#fff;
    background:linear-gradient(180deg,#201c18 0%,#1a1714 100%);
    box-shadow:0 30px 60px -34px rgba(31,30,29,.45);
    isolation:isolate;
  }
  .module-hero .mh-photo{
    position:relative;height:380px;flex-shrink:0;
    background:
      radial-gradient(60% 50% at 50% 35%,rgba(217,119,87,.32),transparent 70%),
      linear-gradient(135deg,#4a3b32 0%,#2a2420 60%,#1a1714 100%);
    background-size:cover;background-position:center;background-repeat:no-repeat;
  }
  .module-hero.day-stabilization .mh-photo{background-image:url("https://static.tildacdn.com/tild6533-6664-4465-b065-623365376634/day-01-stabilization.jpg")}
  .module-hero.day-grief .mh-photo{background-image:url("https://static.tildacdn.com/tild3639-6261-4164-b234-623331326537/day-02-grief.jpg")}
  .module-hero.day-skills .mh-photo{background-image:url("https://static.tildacdn.com/tild6438-3862-4366-a531-353463346538/day-03-skills.jpg")}
  .module-hero .mh-photo::after{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(180deg, rgba(26,23,20,0) 25%, rgba(26,23,20,.55) 65%, #201c18 100%);
  }
  .module-hero .ph-tag{
    position:absolute;top:22px;right:22px;z-index:2;
    font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
    color:var(--rose-soft);font-weight:500;
    border:1px dashed rgba(217,119,87,.4);padding:6px 12px;border-radius:999px;
    background:rgba(26,23,20,.35);
  }
  .module-hero .mh-headline{
    position:absolute;left:0;right:0;bottom:28px;padding:0 36px;z-index:2;
  }
  .module-hero .mh-headline .m-tag{
    display:inline-block;font-family:var(--sans);font-size:11px;letter-spacing:.18em;
    text-transform:uppercase;color:var(--rose);font-weight:600;
    background:rgba(26,23,20,.55);padding:6px 12px;border-radius:999px;
    margin-bottom:14px;backdrop-filter:blur(6px);
  }
  .module-hero .mh-headline h3{
    font-family:var(--display);font-style:italic;font-weight:500;
    font-size:clamp(30px,3.6vw,44px);color:#fff;line-height:1.04;
    letter-spacing:-.02em;margin:0;max-width:18ch;
    text-shadow:0 2px 14px rgba(0,0,0,.35);
  }
  .module-hero .mh-date{
    margin-top:12px;font-family:var(--sans);font-weight:600;
    color:var(--rose);font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;
    text-shadow:0 2px 10px rgba(0,0,0,.4);
  }
  .module-hero .mh-body{
    padding:30px 36px 38px;background:linear-gradient(180deg,#201c18 0%,#1a1714 100%);
  }
  .module-hero .mh-emo{
    font-family:var(--display);font-style:italic;
    color:rgba(255,255,255,0.72);font-size:16px;line-height:1.55;
    margin:0 0 20px;font-weight:400;
  }
  .module-hero .mh-bullets{
    list-style:none;padding:0;margin:0;display:grid;gap:11px;
  }
  .module-hero .mh-bullets li{
    font-size:14.5px;line-height:1.55;color:rgba(255,255,255,0.86);font-weight:300;
    padding-left:22px;position:relative;
  }
  .module-hero .mh-bullets li::before{
    content:"";position:absolute;left:0;top:11px;width:12px;height:1.5px;
    background:var(--rose);border-radius:1px;
  }
  .module-hero .mh-result{
    margin-top:22px;padding:16px 20px;
    background:linear-gradient(135deg,rgba(217,119,87,.18) 0%,rgba(217,119,87,.08) 100%);
    border-left:2px solid var(--accent);border-radius:4px 12px 12px 4px;
    font-family:var(--sans);font-style:normal;
    color:rgba(255,255,255,0.92);font-size:14.5px;line-height:1.6;font-weight:300;
  }
  .module-hero .mh-result b{
    display:block;color:var(--rose);
    font-family:var(--sans);font-style:normal;font-weight:600;
    font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;
    margin-bottom:6px;
  }

  /* компактные модули (1–3, 5) */
  .module-mini{
    grid-column:span 2;
    background:#fff;border:1px solid var(--line);border-radius:20px;
    padding:30px 28px;position:relative;transition:transform .25s, box-shadow .25s;
    display:flex;flex-direction:column;
  }
  .module-mini:hover{transform:translateY(-4px);box-shadow:0 28px 56px -32px rgba(31,30,29,.35)}
  .module-mini .mm-num{
    font-family:var(--display);font-style:italic;font-size:42px;color:var(--rose);
    font-weight:500;line-height:.85;margin-bottom:18px;letter-spacing:-.03em;opacity:.7;
  }
  .module-mini h3{
    font-family:var(--display);font-style:italic;font-weight:500;
    font-size:21px;color:var(--bordo);line-height:1.15;letter-spacing:-.01em;margin-bottom:10px;
  }
  .module-mini p{font-size:14.5px;color:var(--muted);line-height:1.55;font-weight:300;margin:0}

  /* финальный гипноз — отдельная кинематографичная карточка */
  .module-final{
    grid-column:span 6;border-radius:24px;overflow:hidden;
    color:#fff;position:relative;padding:54px;
    min-height:360px;display:flex;align-items:flex-end;
    background:
      linear-gradient(110deg,rgba(26,23,20,.9) 0%,rgba(26,23,20,.72) 42%,rgba(26,23,20,.2) 74%,rgba(26,23,20,.08) 100%),
      url("https://static.tildacdn.com/tild6262-6332-4630-b963-343261326135/final-hypnosis-inner.jpg") center right/cover no-repeat;
    box-shadow:0 34px 72px -38px rgba(31,30,29,.58);
  }
  .module-final::before{
    content:"";position:absolute;inset:0;
    background:
      radial-gradient(42% 70% at 82% 48%,rgba(217,119,87,.16),transparent 72%),
      linear-gradient(180deg,rgba(26,23,20,0) 48%,rgba(26,23,20,.58) 100%);
    pointer-events:none;
  }
  .module-final > div{
    position:relative;z-index:2;max-width:640px;
  }
  .module-final h3{
    font-family:var(--display);font-style:italic;font-size:clamp(30px,3.6vw,44px);font-weight:500;
    color:#fff;margin-bottom:8px;line-height:1.1;letter-spacing:-.01em;
    max-width:14ch;text-shadow:0 2px 16px rgba(0,0,0,.36);
  }
  .module-final p{font-size:15.5px;color:rgba(255,255,255,.84);line-height:1.58;font-weight:300;margin:0;max-width:54ch}
  .module-final .mf-desc{
    font-family:var(--display);font-style:italic;
    color:rgba(255,255,255,0.62);font-size:14.5px;line-height:1.55;
    margin-top:6px;max-width:48ch;
  }
  .module-final h3 em{color:var(--rose);font-style:italic}
  /* сквозное сопровождение */
  .module-thru{
    grid-column:span 6;
    background:linear-gradient(120deg,var(--rose-soft) 0%,#f4e3e4 60%,#fff 100%);
    border-radius:24px;padding:34px 44px;
    display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;
  }
  .module-thru h3{
    font-family:var(--display);font-style:italic;color:var(--bordo);
    font-size:24px;font-weight:500;margin-bottom:6px;letter-spacing:-.01em;
  }
  .module-thru p{color:var(--ink);font-size:14.5px;line-height:1.55;font-weight:300;margin:0;max-width:62ch}
  .module-thru .mt-pills{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
  .module-thru .mt-pill{
    background:rgba(255,255,255,0.7);padding:8px 14px;border-radius:999px;
    font-size:12px;font-weight:500;color:var(--bordo);letter-spacing:.04em;
  }

  .m-tag{
    display:inline-block;font-family:var(--sans);font-weight:500;font-size:10.5px;
    letter-spacing:.16em;text-transform:uppercase;color:var(--red);
    background:var(--rose-soft);padding:6px 14px;border-radius:999px;margin-bottom:18px;
    align-self:flex-start;
  }
  .module-hero .m-tag{background:var(--red);color:#fff}
  .module-final .m-tag{background:var(--red);color:#fff}

  /* ═══════════ TARIFFS ═══════════ */
  .tariffs{
    background:linear-gradient(180deg,var(--bordo-deep) 0%,#201c18 100%);
    color:var(--cream);position:relative;overflow:hidden;
  }
  .tariffs::before{
    content:"";position:absolute;top:0;left:50%;width:140%;height:60%;
    transform:translateX(-50%);
    background:radial-gradient(closest-side,rgba(217,119,87,.14),transparent);
    pointer-events:none;
  }
  .tariffs h2{color:#fff}
  .tariffs .lead{color:var(--rose-soft)}
  .tariff-timer{
    display:inline-flex;align-items:center;gap:14px;margin-top:26px;
    padding:12px 26px;border-radius:999px;
    background:rgba(217,119,87,.18);border:1px solid rgba(217,119,87,.32);
  }
  .tariff-timer .tt-label{
    font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;
    color:var(--rose-soft);font-weight:600;
  }
  .tariff-timer .tt-value{
    font-family:var(--display);font-style:italic;font-size:24px;
    color:#fff;letter-spacing:.05em;line-height:1;
  }
  .tariff-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px;position:relative;align-items:stretch}
  .tariff{
    background:rgba(255,255,255,0.04);
    border-radius:24px;padding:38px 36px 36px;
    display:flex;flex-direction:column;
    position:relative;overflow:hidden;
  }
  .tariff.pro{
    background:
      radial-gradient(120% 80% at 100% 0%,rgba(217,119,87,0.22) 0%,transparent 55%),
      rgba(255,255,255,0.06);
    box-shadow:0 0 0 1px rgba(217,119,87,0.4), 0 30px 80px -30px rgba(217,119,87,0.35);
  }
  .t-head{
    display:flex;align-items:center;justify-content:space-between;gap:14px;
    margin-bottom:8px;
  }
  .t-badge{
    font-family:var(--sans);font-weight:500;font-size:10px;letter-spacing:.16em;
    text-transform:uppercase;padding:6px 12px;border-radius:999px;
    background:rgba(255,255,255,0.08);color:var(--rose-soft);
    border:1px solid rgba(255,255,255,0.08);white-space:nowrap;
  }
  .t-badge.personal,.t-badge.pro{
    position:absolute;top:18px;right:18px;z-index:3;
    display:inline-flex;align-items:center;gap:7px;
    font-size:9.5px;padding:7px 13px;
  }
  .t-badge.personal{
    background:rgba(217,119,87,0.2);color:var(--rose-soft);
    border:1px solid rgba(217,119,87,0.32);
  }
  .t-badge.pro{
    background:var(--red);color:#fff;border-color:transparent;
    box-shadow:0 0 24px 0 rgba(217,119,87,0.55);
  }
  .t-badge.personal svg,.t-badge.pro svg{width:11px;height:11px;flex-shrink:0}
  .tariff,.tariff.pro{padding-top:60px}
  .tariff .t-head{padding-right:0;flex-wrap:wrap}
  .tariff .t-name{
    font-family:var(--display);font-style:italic;font-size:32px;color:#fff;
    font-weight:500;letter-spacing:-.015em;line-height:1;
  }
  .tariff .t-for{
    font-size:14px;color:var(--rose-soft);margin:18px 0 24px;min-height:46px;
    font-weight:300;line-height:1.5;
  }
  .tariff .t-price{
    font-family:var(--display);font-style:italic;font-size:42px;color:#fff;
    font-weight:500;line-height:1;letter-spacing:-.015em;
    padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,0.08);
    display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;
  }
  .tariff .t-price .t-old{
    font-family:var(--display);font-style:italic;font-size:24px;
    color:rgba(255,255,255,0.35);text-decoration:line-through;
    text-decoration-color:rgba(217,119,87,0.6);text-decoration-thickness:2px;
    font-weight:400;font-style:italic;margin:0;
  }
  .tariff ul{list-style:none;margin:24px 0 32px;display:grid;gap:14px}
  .tariff li{
    position:relative;padding-left:28px;font-size:15px;line-height:1.5;
    color:rgba(255,255,255,0.9);font-weight:300;
  }
  .tariff li::before{
    content:"";position:absolute;left:0;top:7px;width:14px;height:1.5px;
    background:var(--rose);border-radius:1px;
  }
  .tariff.pro li.highlight::before{background:var(--red);height:2px;top:6.5px}
  .tariff li b{color:#fff;font-weight:500}
  .tariff .btn{width:100%;justify-content:center;margin-top:auto}
  .pay-safety{
    margin-top:48px;display:flex;gap:30px;flex-wrap:wrap;justify-content:center;
    font-size:13px;color:var(--rose-soft);font-weight:300;
  }
  .pay-safety span{display:flex;align-items:center;gap:9px}
  .pay-safety b{color:#fff;font-weight:500;font-family:var(--display);font-style:italic;font-size:16px}

  /* ═══════════ PROOF ═══════════ */
  .proof{background:var(--cream)}
  .proof-stats{
    display:flex;gap:50px;flex-wrap:wrap;justify-content:center;
    margin:50px 0 56px;text-align:center;
  }
  .proof-stats .num{font-family:var(--display);font-style:italic;font-size:54px;color:var(--bordo);font-weight:500;line-height:1;letter-spacing:-.02em}
  .proof-stats .lbl{font-size:12px;color:var(--muted);margin-top:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
  .video-frame{
    aspect-ratio:16/9;border-radius:20px;
    background:linear-gradient(150deg,#4a3b32,#2a2420);
    display:flex;align-items:center;justify-content:center;
    margin-bottom:56px;position:relative;overflow:hidden;
    box-shadow:0 40px 80px -40px rgba(31,30,29,.55);
  }
  .video-frame::before{
    content:"";position:absolute;inset:0;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/></svg>");
    opacity:.10;mix-blend-mode:overlay;
  }
  .video-frame .play{
    position:relative;z-index:1;width:88px;height:88px;border-radius:50%;
    color:#fff;display:flex;align-items:center;justify-content:center;
  }
  .video-frame .play::after{
    content:"";border-left:24px solid #fff;border-top:14px solid transparent;
    border-bottom:14px solid transparent;margin-left:6px;
  }
  .vf-cap{
    position:absolute;bottom:22px;left:28px;right:28px;color:var(--rose-soft);
    font-size:13px;font-family:var(--display);font-style:italic;z-index:1;
  }
  .voices{columns:3;column-gap:20px;margin-top:0}
  .voice{
    break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;
    background:#fff;border:1px solid var(--line);border-radius:16px;
    padding:24px 26px;margin:0 0 20px;font-size:15px;line-height:1.6;
    font-family:var(--display);font-style:italic;font-weight:400;color:var(--ink);
    display:inline-block;width:100%;
  }
  .voice::before{
    content:"„";font-family:var(--display);font-size:54px;color:var(--rose);
    line-height:0;display:block;height:24px;font-style:italic;
  }
  .voice .from{
    display:block;margin-top:14px;font-size:11px;color:var(--muted);
    letter-spacing:.14em;text-transform:uppercase;font-style:normal;font-family:var(--sans);font-weight:500;
  }

  /* ═══════════ FAQ ═══════════ */
  .faq-sec{background:var(--cream-2)}
  .faq{max-width:780px;margin:54px auto 0}
  details{
    background:#fff;border:1px solid var(--line);border-radius:16px;
    margin-bottom:14px;overflow:hidden;transition:box-shadow .25s;
  }
  details[open]{box-shadow:0 18px 40px -28px rgba(31,30,29,.35)}
  summary{
    list-style:none;cursor:pointer;padding:26px 60px 26px 30px;
    font-family:var(--display);font-style:italic;font-size:20px;
    color:var(--bordo);position:relative;font-weight:500;
  }
  summary::-webkit-details-marker{display:none}
  summary::after{
    content:"+";position:absolute;right:30px;top:50%;transform:translateY(-50%);
    font-size:24px;color:var(--red);font-family:var(--sans);transition:transform .25s;
    font-style:normal;font-weight:300;
  }
  details[open] summary::after{content:"−"}
  details .ans{padding:0 30px 28px;color:var(--muted);font-size:15.5px;line-height:1.65;font-weight:300}
  details .ans b{color:var(--bordo);font-weight:500}

  /* ═══════════ GENERATIONAL ═══════════ */
  .gen{
    background:linear-gradient(180deg,#201c18 0%,var(--bordo-deep) 50%,#201c18 100%);
    color:var(--cream);text-align:center;position:relative;overflow:hidden;
  }
  .gen::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(60% 40% at 50% 50%,rgba(217,119,87,.12),transparent);
    pointer-events:none;
  }
  .gen h2{
    color:#fff;font-size:clamp(34px,5vw,58px);max-width:880px;margin:0 auto;
    font-style:italic;
  }
  .gen-quote{
    font-family:var(--display);font-style:italic;font-size:clamp(20px,2.5vw,26px);
    line-height:1.55;color:var(--rose-soft);max-width:760px;margin:36px auto 0;font-weight:400;
  }
  .gen-quote b{color:#fff;font-style:normal;font-family:var(--sans);font-weight:500;
    background:linear-gradient(180deg,#fff 70%,var(--rose) 70%);
    background-clip:text;-webkit-background-clip:text;
    padding-bottom:2px;
  }

  /* ═══════════ FINAL ═══════════ */
  .final{background:var(--cream);text-align:center}
  .final h2{font-size:clamp(32px,4.8vw,50px);max-width:820px;margin:0 auto 22px;font-style:italic}
  .final .lead{max-width:620px;margin:0 auto 40px}
  .final .micro{
    display:flex;gap:14px 32px;flex-wrap:wrap;justify-content:center;
    margin-top:48px;font-size:13px;color:var(--muted);font-weight:300;
  }
  .final .micro span{display:flex;align-items:center;gap:8px}
  .final .micro span::before{
    content:"";display:inline-block;width:14px;height:1.5px;background:var(--red);border-radius:1px;
  }

  footer{
    background:var(--black);color:rgba(255,255,255,.6);
    padding:64px 28px 28px;font-size:13px;font-weight:300;line-height:1.6;
  }
  footer .foot-wrap{max-width:1200px;margin:0 auto}
  footer .foot-top{
    display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;
    padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.08);
  }
  footer .foot-brand b{color:#fff;font-family:var(--display);font-style:italic;font-weight:500;font-size:20px;display:block;margin-bottom:8px}
  footer .foot-brand .tagline{color:rgba(255,255,255,.55);font-size:12.5px;max-width:280px;line-height:1.55}
  footer .foot-col h4{color:#fff;font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}
  footer .foot-col a, footer .foot-col p{
    color:rgba(255,255,255,.72);text-decoration:none;
    display:block;margin-bottom:6px;font-size:13px;
  }
  footer .foot-col a:hover{color:#fff}
  footer .soc{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.06);color:#fff;font-size:12px;margin-top:8px;transition:background .2s}
  footer .soc:hover{background:rgba(255,255,255,.12)}
  footer .foot-links{
    display:flex;flex-wrap:wrap;gap:10px 22px;
    padding:22px 0;border-bottom:1px solid rgba(255,255,255,.08);
  }
  footer .foot-links a{color:rgba(255,255,255,.55);font-size:12px;text-decoration:none}
  footer .foot-links a:hover{color:#fff}
  footer .foot-legal{
    padding-top:22px;color:rgba(255,255,255,.42);font-size:11.5px;
    display:grid;grid-template-columns:1fr auto;gap:14px 30px;
  }
  footer .foot-legal-info{display:flex;flex-wrap:wrap;gap:6px 18px}
  footer .foot-copy{text-align:right;color:rgba(255,255,255,.55)}
  @media (max-width:780px){
    footer .foot-top{grid-template-columns:1fr;gap:28px}
    footer .foot-legal{grid-template-columns:1fr}
    footer .foot-copy{text-align:left}
  }

  /* Sticky CTA — одиночная кнопка */
  .sticky{
    position:fixed;right:20px;bottom:20px;z-index:50;
    transform:translateY(140%) scale(.96);opacity:0;
    transition:transform .35s ease, opacity .35s ease;
    pointer-events:none;
  }
  .sticky.show{transform:translateY(0) scale(1);opacity:1;pointer-events:auto}
  .sticky .btn{
    padding:16px 28px;font-size:14px;
    box-shadow:0 18px 50px -10px rgba(217,119,87,0.55), 0 2px 8px rgba(0,0,0,0.15);
    background:var(--red);color:#fff;
  }
  .sticky .btn:hover{background:var(--red-soft);transform:translateY(-2px)}

  /* ═══════════ Responsive ═══════════ */
  @media (max-width:1100px){
    .voices{columns:2}
  }
  @media (max-width:900px){
    section{padding:80px 0}
    .wrap{padding:0 22px}
    .nav{padding:0 18px;top:14px}
    .nav-pill{display:none}
    .nav-cta{padding:9px 14px;font-size:10.5px}
    .wordmark{font-size:20px}
    .hero-inner{padding:120px 22px 100px}
    .hero h1{font-size:clamp(40px,9vw,64px)}
    .masks{grid-template-columns:repeat(2,1fr);gap:14px}
    .masks-banner{padding:36px 18px}
    .symptoms{grid-template-columns:1fr}

    /* layers diagram */
    .layers-diagram{grid-template-columns:1fr;gap:0}
    .ld-axis{display:none}
    .ld-layer{grid-template-columns:auto 1fr;gap:18px;padding:22px 22px}
    .ld-num{font-size:34px;min-width:48px}
    .ld-body h3{font-size:20px}
    .ld-status{display:none}

    /* author */
    .author-stage{grid-template-columns:1fr;min-height:auto}
    .author-photo{min-height:0;aspect-ratio:2/3;width:100%;position:relative}
    .author-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 18%}
    .author-content{padding-top:44px!important}
    .author-content{padding:60px 26px 70px}
    .a-stats{grid-template-columns:1fr 1fr;max-width:none}

    /* modules */
    .modules{grid-template-columns:1fr;gap:14px}
    .module-hero,.module-final,.module-thru,.module-mini{grid-column:span 1 !important}
    .module-hero{min-height:280px}
    .module-hero .mh-photo{background-position:68% center}
    .module-hero .mh-inner{padding:36px 26px;min-height:280px}
    .module-hero .ph-tag{font-size:9.5px;padding:5px 10px;top:16px;right:16px}
    .module-final,.module-thru{padding:28px 26px;grid-template-columns:1fr;gap:18px}
    .module-final{min-height:430px;background-position:64% center;padding-top:120px}
    .module-final p{font-size:14.5px}
    .module-thru .mt-pills{gap:8px}

    /* tariffs */
    .tariff-grid{grid-template-columns:1fr}
    .tariff,.tariff.pro{padding:30px 24px}
    /* Шильдики на мобильном — в потоке над названием, без наезжания */
    .t-badge.personal,.t-badge.pro{position:static;align-self:flex-start;font-size:9.5px}
    .t-head{flex-direction:column-reverse;align-items:flex-start;gap:14px}
    .tariff .t-name{font-size:28px}
    .tariff .t-price{font-size:34px}
    .tariff-timer{margin-top:20px;padding:10px 18px;gap:10px}
    .tariff-timer .tt-value{font-size:20px}
    .tariff-timer .tt-label{font-size:10.5px}

    /* voices */
    .voices{columns:1}

    /* misc */
    .recognize-note{padding:28px 24px;font-size:18px}
    .formula{padding:24px 22px;font-size:17px}
    .sticky{right:14px;bottom:14px}
    .sticky .btn{padding:14px 22px;font-size:13px}
    .hero-meta{gap:16px}
    .hero-meta b{font-size:18px}
    .hero-footer{margin-top:34px}
    .scroll-hint{display:none}
    .proof-stats{gap:30px}
    .proof-stats .num{font-size:42px}
    .gen h2,.final h2{font-size:clamp(28px,7vw,40px)}
    .voice{font-size:14.5px;padding:22px 22px}
    summary{font-size:17px;padding:22px 50px 22px 22px}
    details .ans{padding:0 22px 24px}
  }
  @media (max-width:560px){
    .masks{grid-template-columns:1fr 1fr}
    .mask-card h3{font-size:22px}
    .mask-card p{font-size:12.5px}
    .a-stats{grid-template-columns:1fr}
  }

  @media (prefers-reduced-motion: reduce){
    .blur-word,.fade-up{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}
    .scroll-hint::after{animation:none}
  }

  /* ═══ Новый hero: имя интенсива большими буквами ═══ */
  .hero-eyebrow{
    font-family:var(--sans);font-size:11.5px;font-weight:600;
    letter-spacing:.32em;text-transform:uppercase;color:var(--rose);
    margin-bottom:24px;opacity:.85;
  }
  .hero-title{
    color:#fff;font-family:var(--display);font-weight:400;
    font-size:clamp(52px,10vw,144px);line-height:0.95;
    letter-spacing:-0.035em;margin:0;
  }
  .hero-title em{
    color:var(--rose);font-style:italic;display:inline-block;
    font-size:1em;
    text-shadow:0 0 60px rgba(217,119,87,0.35);
  }
  .hero-descriptor{
    margin:38px auto 0;max-width:580px;font-size:15px;line-height:1.55;
    color:rgba(255,255,255,0.75);font-weight:300;
  }
  .hero-descriptor b{color:#fff;font-weight:500}
  @media (max-height:760px){
    .hero-eyebrow{margin-bottom:14px;font-size:10.5px;letter-spacing:.26em}
    .hero-title{font-size:clamp(40px,7.6vw,90px);line-height:0.96}
    .hero-descriptor{margin-top:20px;font-size:14.5px;line-height:1.5}
  }
  @media (max-height:620px){
    .hero-eyebrow{margin-bottom:10px;font-size:9.5px}
    .hero-title{font-size:clamp(32px,6vw,64px)}
    .hero-descriptor{margin-top:14px;font-size:13px}
  }

  /* ═══ Hero-вариант с иллюстрацией: текст слева, профиль справа ═══ */
  .hero--illustr .hero-bg img{object-position:center center}
  .hero--illustr .hero-bg::after{
    background:
      linear-gradient(90deg, rgba(20,17,14,.95) 0%, rgba(20,17,14,.84) 30%, rgba(20,17,14,.34) 60%, rgba(20,17,14,0) 84%),
      linear-gradient(180deg, rgba(20,17,14,.5) 0%, rgba(20,17,14,0) 26%, rgba(20,17,14,0) 58%, rgba(20,17,14,.85) 100%);
  }
  .hero--illustr .hero-inner{align-items:flex-start;text-align:left}
  .hero--illustr .hero-top{align-items:flex-start;max-width:680px}
  .hero--illustr .hero-bottom{align-items:flex-start}
  .hero--illustr .hero-title{font-size:clamp(34px,4.6vw,64px);line-height:1.06;white-space:nowrap}
  .hero--illustr .hero-top{max-width:760px}
  .hero--illustr .hero-descriptor{margin-left:0;margin-right:0;max-width:520px}
  .hero--illustr .hero-meta{justify-content:flex-start;text-align:left}
  .hero-author{display:inline-flex;align-items:center;gap:13px;margin-bottom:22px}
  .hero-author img{
    width:48px;height:48px;border-radius:50%;object-fit:cover;object-position:50% 12%;
    border:1.5px solid rgba(224,160,122,.55);flex-shrink:0;
    box-shadow:0 4px 18px rgba(0,0,0,.4);
  }
  .hero-author .hero-eyebrow{margin-bottom:0}
  @media (max-width:900px){
    .hero--illustr .hero-top{max-width:100%}
    .hero--illustr .hero-descriptor{max-width:100%}
    .hero--illustr .hero-bg img{object-position:72% center}
    .hero--illustr .hero-title{white-space:normal;font-size:clamp(26px,6.4vw,42px)}
  }

  /* ═══ NAV: логотип МУИП по центру (стиль БХ) ═══ */
  .nav--logo{justify-content:center}
  .muip-logo{display:inline-flex;align-items:center;gap:13px;text-decoration:none;justify-content:center}
  .muip-logo-img{height:40px;width:auto;filter:drop-shadow(0 2px 10px rgba(0,0,0,.55))}
  .muip-logo-txt{font-family:var(--sans);font-size:10.5px;line-height:1.3;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.72);text-align:left;font-weight:500}
  @media (max-width:600px){
    .muip-logo-img{height:32px}
    .muip-logo-txt{font-size:8.5px;letter-spacing:.1em}
  }

  /* ═══ HERO --ai: текст СЛЕВА (десктоп), иллюстрация справа ═══ */
  .hero--ai .hero-bg img{object-position:right center}
  .hero--ai .hero-inner{padding-bottom:100px;align-items:flex-start;text-align:left;max-width:1156px;margin-left:auto;margin-right:auto;padding-left:28px;padding-right:28px}
  .hero--ai .hero-bg::after{
    background:
      linear-gradient(90deg, rgba(20,17,14,.95) 0%, rgba(20,17,14,.82) 34%, rgba(20,17,14,.32) 62%, rgba(20,17,14,0) 86%),
      linear-gradient(180deg, rgba(20,17,14,.5) 0%, rgba(20,17,14,.06) 26%, rgba(20,17,14,.06) 56%, rgba(20,17,14,.9) 100%);
  }
  .hero--ai .hero-top{align-items:flex-start;max-width:640px}
  .hero--ai .hero-bottom{align-items:flex-start;width:100%}
  .hero--ai .hero-author{align-self:flex-start;margin-bottom:20px}
  .hero.hero--ai .hero-title{
    font-family:var(--display)!important;font-weight:400;font-style:normal;
    font-size:clamp(48px,6.2vw,92px)!important;line-height:1.0;letter-spacing:-0.02em;
  }
  .hero--ai .hero-title em{font-style:italic;color:var(--rose);text-shadow:0 0 50px rgba(217,119,87,.3)}
  .hero--ai .hero-descriptor{margin:32px 0 0;max-width:500px}
  .hero--ai .hero-meta{justify-content:flex-start;text-align:left}
  .hero--ai .hero-cta{gap:14px;margin-top:8px;flex-wrap:wrap}
  .hero--ai .hero-cta .btn{padding:17px 30px;font-size:15px}
  .foot-logo{height:40px;width:auto;margin-bottom:14px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.45))}
  @media (max-width:900px){
    .hero.hero--ai .hero-title{font-size:clamp(32px,8vw,52px)!important;line-height:1.06}
    .hero--ai .hero-descriptor{font-size:14px;max-width:100%}
    .hero--ai .hero-top{max-width:100%;flex:0 0 auto;justify-content:flex-start;padding-top:8vh}
    .hero--ai .hero-inner{padding-bottom:70px!important;justify-content:flex-start}
    .hero--ai .hero-bg img{object-position:70% center}
  }

  /* ═══ Верхний бар при скролле: лого МУИП + кнопка ═══ */
  .top-bar .tb-logo-link{display:inline-flex;align-items:center;gap:11px;text-decoration:none}
  .top-bar .tb-logo-img{height:30px;width:auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}
  .top-bar .tb-logo-txt{font-family:var(--sans);font-size:9.5px;line-height:1.25;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.7);font-weight:500;max-width:210px}
  .top-bar .tb-cta{display:inline-flex;align-items:center;gap:8px}
  .top-bar .tb-cta svg{width:15px;height:15px}
  /* таймер до старта */
  .top-bar{transform:translateY(0)!important}   /* всегда виден сверху */
  .top-bar .tb-countdown{display:flex;flex-direction:column;align-items:center;gap:3px;line-height:1;margin:0 auto}
  .top-bar .tb-cd-label{font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}
  .top-bar .tb-cd-value{font-family:var(--display);font-style:italic;font-size:21px;color:#fff;letter-spacing:.03em;font-feature-settings:"tnum" 1}
  .nav--logo{display:none}   /* логотип теперь в верхнем баре */
  @media (max-width:700px){
    .top-bar{padding-left:14px;padding-right:14px;gap:10px}
    .top-bar .tb-logo-txt{display:none}
    .top-bar .tb-cd-label{font-size:8px;letter-spacing:.1em}
    .top-bar .tb-cd-value{font-size:16px}
    .top-bar .tb-cta{padding:10px 16px;font-size:12.5px}
  }

  /* ═══ Нижний бар — разделы (стиль БХ, палитра Claude) ═══ */
  .navbar-bottom{
    position:fixed;bottom:16px;left:0;right:0;z-index:60;
    display:flex;justify-content:center;padding:0 18px;pointer-events:none;
    transition:opacity .35s ease, transform .35s ease;
  }
  .navbar-bottom.tucked{opacity:0;transform:translateY(28px);pointer-events:none;}
  .nb-shell{
    pointer-events:auto;display:flex;align-items:center;justify-content:center;
    background:rgba(26,23,20,.92);border-radius:999px;
    backdrop-filter:blur(22px) saturate(1.3);-webkit-backdrop-filter:blur(22px) saturate(1.3);
    box-shadow:inset 0 1px 1px rgba(255,255,255,.1),0 16px 44px -18px rgba(0,0,0,.55);
  }
  .nb-pill{display:flex;align-items:center;gap:1px;padding:6px 8px}
  .nb-pill a{
    color:rgba(240,238,230,.85);font-family:var(--sans);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
    padding:9px 16px;border-radius:999px;text-decoration:none;white-space:nowrap;
    transition:color .2s,background .2s;
  }
  .nb-pill a:hover{color:#fff;background:rgba(255,255,255,.08)}

  /* ═══ КЕЙСЫ — бентогрид ═══ */
  .cases{background:#1a1714;color:#fff;padding:110px 0}
  .cases .narrow.center{max-width:760px;margin:0 auto;text-align:center}
  .cases .eyebrow{color:var(--rose)}
  .cases h2{color:#fff}
  .cases h2 em{font-style:italic;color:var(--rose)}
  .cases .lead{color:rgba(255,255,255,.62)}
  .cases .lead b{color:#fff;font-weight:600}
  .bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:158px;gap:14px;margin-top:52px}
  .tile{
    position:relative;border-radius:20px;overflow:hidden;
    background:#262522;border:1px solid rgba(255,255,255,.08);
    display:flex;flex-direction:column;justify-content:flex-end;
    padding:22px;text-decoration:none;color:#fff;
    transition:transform .25s ease,border-color .25s ease;
  }
  .tile:hover{transform:translateY(-3px);border-color:rgba(224,160,122,.4)}
  .tile--lg{grid-column:span 2;grid-row:span 2}
  .tile--wide{grid-column:span 2}
  .tile-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
  .tile--photo::after{content:"";position:absolute;inset:0;z-index:1;
    background:linear-gradient(180deg,rgba(20,17,14,.06) 0%,rgba(20,17,14,.35) 45%,rgba(20,17,14,.93) 100%)}
  .tile-body{position:relative;z-index:2}
  .tile-tag{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--rose);margin-bottom:8px}
  .tile-ico{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:12px;background:rgba(224,160,122,.14);color:var(--rose);margin-bottom:auto}
  .tile-ico svg{width:22px;height:22px;stroke-linecap:round;stroke-linejoin:round}
  .tile h3{font-family:var(--display);font-size:20px;color:#fff;margin:0 0 5px;line-height:1.12}
  .tile p{font-size:13px;line-height:1.42;color:rgba(255,255,255,.62);margin:0}
  .tile--text h3{margin-top:16px}
  @media (max-width:820px){
    .bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:152px}
    .tile--lg{grid-column:span 2;grid-row:span 2}
    .tile--wide{grid-column:span 2}
    .tile h3{font-size:18px}
  }
  @media (max-width:480px){
    .bento{gap:10px;grid-auto-rows:140px}
    .tile{padding:18px}
    .tile h3{font-size:17px}
    .tile p{font-size:12.5px}
  }
  /* ═══ Fix мобильной вёрстки recognize: заголовки карточек не вылезают ═══ */
  @media (max-width:780px){
    .recognize{padding-top:34px!important}
  }
  @media (max-width:560px){
    .recognize .mask-card h3{font-size:15.5px!important;overflow-wrap:break-word;hyphens:auto}
    .recognize .mask-card p{font-size:12px}
    .recognize .mask-card{padding:16px 14px}
    .recognize .masks-banner h3{font-size:19px}
  }

  /* лента иллюстраций (листается) */
  .cases-gallery-head{display:flex;justify-content:space-between;align-items:baseline;margin:44px 0 16px}
  .cases-gallery-head .cg-title{font-family:var(--display);font-size:22px;color:#fff}
  .cases-gallery-head .cg-hint{font-family:var(--mono);font-size:11px;color:var(--rose);letter-spacing:.1em;text-transform:uppercase}
  .cases-gallery{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px;scrollbar-width:thin}
  .cases-gallery::-webkit-scrollbar{height:6px}
  .cases-gallery::-webkit-scrollbar-track{background:transparent}
  .cases-gallery::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:3px}
  .cases-gallery img{height:230px;width:auto;border-radius:14px;flex:0 0 auto;object-fit:cover;border:1px solid rgba(255,255,255,.09)}
  @media (max-width:600px){
    .cases-gallery img{height:180px}
    .cases-gallery-head .cg-title{font-size:19px}
  }
  /* ═══ Кейсы — категории с листаемыми галереями ═══ */
  .case-cat{margin-top:46px}
  .case-cat-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px;gap:12px}
  .case-cat-title{font-family:var(--display);font-size:23px;color:#fff;line-height:1.15}
  .case-hint{font-family:var(--mono);font-size:11px;color:var(--rose);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;flex-shrink:0}
  .case-strip{
    display:flex;gap:14px;overflow-x:auto;padding-bottom:12px;scrollbar-width:thin;
    width:100vw;margin-left:calc(50% - 50vw);
    padding-left:max(22px, calc((100vw - 1100px) / 2 + 28px));padding-right:24px;
  }
  .case-strip::-webkit-scrollbar{height:6px}
  .case-strip::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:3px}
  .case-strip::-webkit-scrollbar-track{background:transparent}
  .case-strip img{height:300px;width:auto;border-radius:16px;flex:0 0 auto;object-fit:cover;border:1px solid rgba(255,255,255,.09);background:#262522}
  .case-strip--tall img{height:400px}
  .case-more{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:50px;padding-top:32px;border-top:1px solid rgba(255,255,255,.1)}
  .case-more .cm-lead{font-family:var(--display);font-style:italic;font-size:18px;color:rgba(255,255,255,.82);margin-right:6px}
  .case-more .cm-pill{font-family:var(--sans);font-size:13px;color:var(--rose);padding:8px 16px;border:1px solid rgba(224,160,122,.35);border-radius:999px;background:rgba(224,160,122,.08)}
  .case-more .cm-pill--accent{color:#fff;background:var(--red);border-color:transparent;font-weight:600}
  @media (max-width:600px){
    .case-cat-title{font-size:19px}
    .case-strip img{height:250px}
    .case-strip--tall img{height:340px}
    .case-more .cm-lead{font-size:16px}
  }

  /* ═══ INTRO — продолжение hero, тёмный фон ═══ */
  .intro{padding:120px 28px 120px;background:#1a1714;position:relative;color:#fff}
  .intro .narrow.center{max-width:980px;margin:0 auto;text-align:center}
  .intro-statement{
    font-family:var(--display);font-weight:400;
    font-size:clamp(36px,6vw,82px);line-height:1.08;letter-spacing:-0.025em;
    color:#fff;margin:0 auto;max-width:22ch;
  }
  .intro-statement em{font-style:italic;color:var(--rose)}
  .intro-sub{margin:42px auto 0;max-width:620px;font-size:15px;line-height:1.65;color:rgba(255,255,255,0.68);font-weight:300}
  .intro-sub b{color:#fff;font-weight:500}
  .intro-signature{
    margin:30px auto 0;font-family:var(--display);font-style:italic;
    font-size:17px;line-height:1.5;color:var(--rose);max-width:540px;opacity:.85;
  }
  @media (max-width:780px){
    .intro{padding:80px 22px 80px}
    .intro-statement{font-size:clamp(28px,7.6vw,42px)}
    .intro-sub{font-size:14.5px;margin-top:32px}
    .intro-signature{font-size:15.5px}
  }

  /* ═══ «Осторожно,» в hero-title + одиночная мета ═══ */
  .hero-title .warn{
    display:inline-block;color:var(--rose);font-style:italic;font-weight:400;
    font-size:1em;letter-spacing:-.035em;line-height:0.95;
  }
  .hero-meta .single-meta{
    font-family:var(--display);font-style:italic;
    font-size:13.5px;line-height:1.4;
    color:rgba(255,255,255,0.55);letter-spacing:.02em;
  }
  .hero-meta .single-meta em{color:var(--rose);font-style:italic;font-weight:500}
  @media (max-width:780px){
    .intro{padding:72px 22px 56px}
    .intro-statement{font-size:clamp(26px,5.6vw,38px)}
    .intro-sub{font-size:15.5px}
    .intro-signature{font-size:17px}
  }

  /* ═══ REVIEWS — слайдер отзывов ═══ */
  .reviews{padding:96px 0 110px;background:var(--bg)}
  .reviews .narrow.center{padding:0 28px;margin-bottom:52px;max-width:760px;margin-left:auto;margin-right:auto;text-align:center}
  .reviews .eyebrow{
    font-family:var(--sans);font-size:11px;font-weight:700;
    letter-spacing:.22em;text-transform:uppercase;color:var(--accent);
  }
  .reviews h2{
    font-family:var(--display);font-weight:400;
    font-size:clamp(30px,3.6vw,48px);line-height:1.12;letter-spacing:-0.02em;
    color:var(--deep);margin:14px 0 0;
  }
  .reviews h2 em{font-style:italic;color:var(--accent)}
  /* Слайдер отзывов: первая колонка выровнена по сетке сайта (28px от wrap-edge),
     дальше карточки натурально уходят за правый край экрана при скролле */
  .reviews-rail-wrap{position:relative;width:100vw;max-width:100%;margin:0;padding:0;overflow:hidden}
  .reviews-rail{
    display:flex;gap:22px;
    overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x mandatory;scroll-behavior:smooth;
    padding-top:18px;padding-bottom:36px;
    padding-left:max(28px, calc((100vw - 1100px) / 2 + 28px));
    padding-right:6px;
    scroll-padding-left:max(28px, calc((100vw - 1100px) / 2 + 28px));
    scrollbar-width:none;-ms-overflow-style:none;
  }
  .reviews-rail::-webkit-scrollbar{display:none}
  .rail-col{
    flex:0 0 auto;width:340px;display:flex;flex-direction:column;gap:18px;
    scroll-snap-align:start;
  }
  .rail-item{
    display:block;border-radius:14px;overflow:hidden;
    box-shadow:0 18px 42px -22px rgba(31,30,29,.30);
    background:#fff;line-height:0;
  }
  .rail-item img{display:block;width:100%;height:auto}
  .rs-arrow{
    position:absolute;top:50%;transform:translateY(-50%);z-index:10;
    width:50px;height:50px;border-radius:50%;border:none;
    background:#fff;color:var(--deep);font-size:30px;line-height:1;
    cursor:pointer;box-shadow:0 12px 28px -10px rgba(31,30,29,.4);
    display:flex;align-items:center;justify-content:center;padding-bottom:4px;
    font-family:var(--display);transition:transform .2s, background .2s, color .2s;
  }
  .rs-arrow:hover{background:var(--accent);color:#fff;transform:translateY(-50%) scale(1.06)}
  .rs-arrow:disabled{opacity:.3;cursor:default;background:#fff;color:var(--deep);transform:translateY(-50%)}
  .rs-prev{left:clamp(8px,2vw,24px)}.rs-next{right:clamp(8px,2vw,24px)}
  @media (max-width:780px){
    .reviews{padding:64px 0 80px}
    .reviews-rail-wrap{padding:0 18px}
    .rail-col{width:280px;gap:14px}
    .rs-arrow{width:42px;height:42px;font-size:24px}
    .rs-prev{left:-6px}.rs-next{right:-6px}
  }

  /* ═══ Sticky bottom-bar c таймером ═══ */
  .bottom-bar{
    position:fixed;left:0;right:0;bottom:0;z-index:60;
    background:rgba(26,23,20,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    border-top:1px solid rgba(217,119,87,.18);
    padding:14px 28px;
    display:flex;align-items:center;justify-content:center;gap:34px;flex-wrap:wrap;
    transform:translateY(120%);transition:transform .4s ease;
  }
  .bottom-bar.show{transform:translateY(0)}
  .bb-timer{display:flex;flex-direction:column;align-items:flex-start;gap:2px;line-height:1}
  .bb-timer-label{
    color:rgba(255,255,255,.55);font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;
  }
  .bb-timer-value{
    font-family:var(--display);font-style:italic;font-size:24px;color:#fff;
    letter-spacing:.06em;font-feature-settings:"tnum" 1;
  }
  .bb-cta{
    background:linear-gradient(135deg,#E08A6A 0%,#D97757 100%);
    color:#fff;padding:15px 32px;border-radius:999px;
    font-family:var(--sans);font-weight:700;font-size:15px;letter-spacing:.04em;
    text-decoration:none;display:inline-flex;align-items:center;gap:10px;
    box-shadow:0 18px 38px -10px rgba(208,56,78,.7), inset 0 0 0 1px rgba(255,255,255,.18);
    transition:transform .15s, box-shadow .15s, filter .15s;
  }
  .bb-cta:hover{filter:brightness(1.08)}
  .bb-cta svg{width:14px;height:14px}
  .bb-cta:hover{transform:translateY(-2px);box-shadow:0 18px 38px -10px rgba(217,119,87,.65)}
  @media (max-width:560px){
    .bottom-bar{gap:14px;padding:12px 18px}
    .bb-timer-value{font-size:18px}
    .bb-timer-label{font-size:10px;letter-spacing:.12em}
    .bb-cta{padding:11px 22px;font-size:13px}
  }

  /* ═══ MOBILE FIX для карточек дней программы ═══ */
  @media (max-width:780px){
    .module-hero{display:flex;flex-direction:column;min-height:auto}
    .module-hero .mh-photo{
      position:relative;inset:auto;height:240px;width:100%;flex-shrink:0;
      background-position:50% 22% !important;
    }
    .module-hero .mh-photo::after{
      background:linear-gradient(180deg,rgba(26,23,20,.15) 0%,rgba(26,23,20,0) 35%,rgba(26,23,20,.7) 75%,#1a1714 100%) !important;
    }
    .module-hero .ph-tag{top:14px;right:14px;font-size:9.5px;padding:5px 10px}
    .module-hero .mh-inner{
      position:relative;inset:auto;height:auto;min-height:auto !important;
      padding:30px 24px 32px !important;
      background:linear-gradient(180deg,#201c18 0%,#1a1714 100%);
      justify-content:flex-start !important;
    }
    .module-hero h3{font-size:24px !important;line-height:1.12;max-width:none;margin-bottom:10px}
    .module-hero p{font-size:14.5px;margin:0}
    .module-hero .m-tag{margin-bottom:10px}
    .module-hero .mh-inner ul li{font-size:13.5px !important;line-height:1.5}
  }

  /* ═══ Защита от Тильдиных глобальных стилей: принудительные цвета ═══ */
  .nav a, .nav .wordmark, .nav .wordmark sup,
  .nav-pill a, .nav-cta, .wordmark,
  .nav a:visited, .nav-pill a:visited, .nav-cta:visited,
  .nav a:hover, .nav-pill a:hover, .nav-cta:hover,
  .nav a:focus, .nav-pill a:focus, .nav-cta:focus,
  .nav a:active, .nav-pill a:active, .nav-cta:active{
    color:#fff !important;text-decoration:none !important;
  }

  /* Кнопки на ТЁМНОМ фоне (красная / стеклянная / нижний бар) → ТЕКСТ БЕЛЫЙ */
  .btn-red, .btn-glass, .bb-cta,
  .btn-red:visited, .btn-glass:visited, .bb-cta:visited,
  .btn-red:hover, .btn-glass:hover, .bb-cta:hover,
  .btn-red:focus, .btn-glass:focus, .bb-cta:focus,
  .btn-red:active, .btn-glass:active, .bb-cta:active{
    color:#fff !important;text-decoration:none !important;
  }
  /* SVG-стрелки этих кнопок — белая обводка */
  .btn-red .arrow, .btn-glass .arrow, .bb-cta svg,
  .btn-red:hover .arrow, .btn-glass:hover .arrow, .bb-cta:hover svg{
    stroke:#fff !important;color:#fff !important;
  }

  /* СВЕТЛАЯ кнопка (белый фон) → ТЕКСТ ЧЁРНЫЙ */
  .btn-light, .btn-light:visited, .btn-light:hover, .btn-light:focus, .btn-light:active{
    color:#201c18 !important;text-decoration:none !important;
  }
  .btn-light .arrow, .btn-light:hover .arrow{
    stroke:#201c18 !important;color:#201c18 !important;
  }

  /* Общая защита — снять подчёркивание со всех ссылок */
  a, a:visited, a:hover, a:active{text-decoration:none !important}

  /* ═══ Бонус ═══ */
  .hero-bonus{margin-top:14px;font-size:12.5px;color:var(--rose);font-weight:400;letter-spacing:.01em;opacity:.92}
  .hero-bonus b{color:#fff;font-weight:500}
  .bonus-section{padding:8px 28px 72px;background:var(--bg)}
  .bonus-banner{
    max-width:1100px;margin:0 auto;padding:30px 40px;
    display:flex;align-items:center;gap:28px;flex-wrap:wrap;justify-content:space-between;
    background:linear-gradient(135deg,rgba(217,119,87,.14),rgba(217,119,87,.09));
    border:1px solid rgba(217,119,87,.32);border-radius:20px;
  }
  .bonus-banner .bb-icon{font-size:36px;line-height:1}
  .bonus-banner .bb-main{flex:1;min-width:240px}
  .bonus-banner .bb-tag{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:8px}
  .bonus-banner h3{font-family:var(--display);font-style:italic;font-size:clamp(22px,2.4vw,30px);color:var(--deep);margin:0 0 6px;line-height:1.15}
  .bonus-banner p{font-size:15px;color:var(--muted);margin:0;line-height:1.5;max-width:54ch}
  .bonus-banner .bb-countdown{text-align:center;flex-shrink:0}
  .bonus-banner .bb-cd-label{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:5px}
  .bonus-banner .bb-cd-value{font-family:var(--display);font-style:italic;font-size:30px;color:var(--accent);letter-spacing:.05em;line-height:1}
  .tariff-bonus{
    margin-top:14px;padding:12px 16px;border-radius:12px;
    background:rgba(217,119,87,.12);border:1px solid rgba(217,119,87,.22);
    font-size:12.5px;line-height:1.5;color:var(--rose-soft);text-align:center;
  }
  .tariff-bonus b{color:#fff;font-weight:600}
  .tariff-bonus .tb-timer{font-family:var(--display);font-style:italic;color:#fff;letter-spacing:.04em;white-space:nowrap}
  @media(max-width:780px){
    .bonus-section{padding:4px 18px 56px}
    .bonus-banner{padding:24px 22px;gap:16px}
    .bonus-banner .bb-icon{display:none}
    .bonus-banner .bb-cd-value{font-size:26px}
  }
  @media(max-height:620px){ .hero-bonus{display:none} }
  /* ═══ Кейсы: вводный кадр «рабочее место» ═══ */
  .cases-hero{position:relative;margin:44px 0 8px;border-radius:22px;overflow:hidden;max-height:460px}
  .cases-hero img{width:100%;height:100%;max-height:460px;object-fit:cover;object-position:center 42%;display:block}
  .cases-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,17,14,0) 40%,rgba(20,17,14,.9) 100%)}
  .cases-hero-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:26px 28px;font-family:var(--display);font-style:italic;font-size:clamp(16px,2.2vw,22px);color:rgba(255,255,255,.9)}
  .cases-hero-cap b{font-style:normal;color:#fff}
  @media (max-width:600px){.cases-hero{max-height:320px}.cases-hero img{max-height:320px}.cases-hero-cap{padding:18px 18px;font-size:15px}}

  /* ═══ Об авторе на мобиле: split-overlay — «Об авторе» сверху, имя/цитата снизу, лицо открыто ═══ */
  @media (max-width:780px){
    .author{background:#1a1714}
    .author-frame{grid-template-columns:1fr;gap:0;max-width:100%;padding:0;position:relative}
    .author-photo{width:100%;aspect-ratio:3/4;border-radius:0;box-shadow:none}
    .author-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 14%}
    .author-text{position:absolute;inset:0;z-index:2;padding:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none;gap:0}
    .author-eyebrow{pointer-events:auto;padding:30px 22px 56px;background:linear-gradient(180deg,rgba(20,17,14,.92) 0%,rgba(20,17,14,0) 100%)}
    .author-main{pointer-events:auto;padding:78px 22px 40px;background:linear-gradient(0deg,rgba(20,17,14,.96) 60%,rgba(20,17,14,0) 100%);gap:14px}
    .author-main h2{font-size:32px;margin:0}
    .author-main .role{font-size:13.5px}
    .author-main .quote{font-size:17px}
  }

  /* ═══ Кейсы: врезка про команду ═══ */
  .cases-team{margin-top:34px;padding:26px 28px;border:1px solid rgba(224,160,122,.28);border-radius:18px;background:rgba(224,160,122,.06)}
  .cases-team .ct-tag{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--rose);margin-bottom:10px}
  .cases-team p{margin:0;font-size:16px;line-height:1.6;color:rgba(255,255,255,.82)}
  .cases-team p b{color:#fff;font-weight:600}
  @media (max-width:600px){.cases-team{padding:20px 18px}.cases-team p{font-size:14.5px}}

  .cases{overflow-x:clip}

  .case-cat-title .cc-by{font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.03em;text-transform:none;color:var(--rose);background:rgba(224,160,122,.14);padding:3px 11px;border-radius:999px;vertical-align:middle;margin-left:8px;white-space:nowrap}

  /* ═══ GetCourse-модалки (формы в кнопках) ═══ */
  /* vh на Android Chrome считается БЕЗ адресной строки — карточка вылезала за экран. Везде dvh
     (реальная видимая высота) с фолбэком на vh. Высоту окна виджета проставляет JS по postMessage:
     внутри себя виджет прокрутку глушит, поэтому листаться должна карточка. */
  .gc-modal{display:none;position:fixed;inset:0;z-index:2000;align-items:flex-start;justify-content:center;padding:20px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
  .gc-modal.open{display:flex}
  .gc-overlay{position:fixed;inset:0;background:rgba(20,17,14,.74);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
  .gc-card{position:relative;z-index:1;margin:auto;background:#fff;border-radius:20px;max-width:560px;width:100%;max-height:90vh;max-height:90dvh;overflow:auto;-webkit-overflow-scrolling:touch;padding:30px 28px;box-shadow:0 40px 90px -30px rgba(0,0,0,.6)}
  .gc-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border:0;border-radius:50%;background:#F0EEE6;color:#1a1714;font-size:15px;cursor:pointer;line-height:1;transition:background .2s}
  .gc-close:hover{background:#E8E5DA}
  .gc-title{font-family:var(--display);font-size:23px;color:#1a1714;margin-bottom:18px;padding-right:34px}
  .gc-body{min-height:100px}
  .gc-frame{width:100%;height:760px;border:0;display:block}
  @media (max-width:600px){
    .gc-modal{padding:10px 8px}
    .gc-card{padding:18px 14px;max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px)}
    .gc-frame{height:calc(100vh - 120px);height:calc(100dvh - 120px)}
  }
  @media (max-height:480px){.gc-frame{min-height:320px}}

  /* ═══ Таймер до повышения цен в карточке тарифа ═══ */
  .t-timer{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;flex-wrap:wrap}
  .t-timer .tt-lbl{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5)}
  .t-timer .tt-val{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--rose);font-feature-settings:"tnum" 1}
