@charset "UTF-8";
    :root {
      --bg: #0b0d12;
      --bg-2: #101319;
      --card: #151922;
      --card-2: #1b202b;
      --line: #262d3a;
      --text: #eceef3;
      --muted: #98a1b3;
      --ember: #c5f02b;
      --ember-2: #dcff5a;
      /* (микрофиксы 23.07) легаси --gold (#c9ee48, лайм) РАЗВЕДЁН по ролям и удалён:
         все 12 «фейк-золотых» вхождений были брендовым лаймом → теперь var(--ember).
         НАСТОЯЩЕЕ золото (награды/рекорды, правило Тренера) — только --gold-real. */
      --gold-real: #f0c92b;
      --green: #37c46d;
      --blue: #3aa0ff;
      --radius: 14px;
      --max: 1280px;
      --disp: 'Oswald', system-ui, sans-serif;
      --body: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0
    }

    html {
      scroll-behavior: smooth
    }

    body {
      background: var(--bg);
      color: var(--text);
      font-family: var(--body);
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
      overflow-x: hidden
    }

    a {
      color: inherit;
      text-decoration: none
    }

    img {
      max-width: 100%;
      display: block
    }

    .wrap {
      max-width: var(--max);
      margin: 0 auto;
      padding: 0 22px
    }

    h1,
    h2,
    h3,
    h4 {
      font-family: var(--disp);
      line-height: 1.1;
      letter-spacing: .01em;
      text-transform: uppercase;
      font-weight: 700
    }

    .eyebrow {
      font-family: var(--disp);
      font-size: 1.1rem;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: var(--ember-2);
      font-weight: 600;
      margin-bottom: 14px
    }

    .btn {
      display: inline-block;
      font-weight: 700;
      font-size: .95rem;
      padding: 14px 26px;
      border-radius: 10px;
      cursor: pointer;
      border: none;
      transition: .18s;
      font-family: var(--body);
      text-align: center
    }

    .btn-primary {
      background: linear-gradient(135deg, var(--ember), var(--ember-2));
      color: #0b0d12;
      box-shadow: 0 10px 28px -12px rgba(197, 240, 43, .55)
    }

    .btn-primary:hover {
      transform: translateY(-2px);
      box-shadow: 0 14px 34px -12px rgba(197, 240, 43, .7)
    }

    /* (окно №25, аудит красоты) ghost погашен из лайма в серый контур:
       второстепенная кнопка не должна конкурировать с главной лаймовой
       (в hero обе светились — приоритет размывался). Иерархия эталона:
       лайм-заливка = главное, ghost = серый контур. */
    .btn-ghost {
      background: rgba(11, 13, 18, .4);
      color: var(--text);
      border: 1px solid rgba(255, 255, 255, .18);
      box-shadow: none
    }

    .btn-ghost:hover {
      border-color: rgba(255, 255, 255, .38);
      color: #fff;
      box-shadow: none
    }

    section {
      padding: 58px 0
    }

    .center {
      text-align: center
    }

    .muted {
      color: var(--muted)
    }

    .hl {
      background: linear-gradient(120deg, var(--ember), var(--ember));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent
    }

    /* promo + nav */
    .promo {
      background: linear-gradient(90deg, #14180f, #1c2410);
      text-align: center;
      font-size: .84rem;
      padding: 9px 14px;
      border-bottom: 1px solid var(--line)
    }

    .promo b {
      color: var(--ember)
    }

    header.nav {
      position: sticky;
      top: 0;
      z-index: 50;
      background: rgba(11, 13, 18, .86);
      backdrop-filter: blur(10px);
      border-bottom: 1px solid var(--line)
    }

    .nav-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: 70px
    }

    .logo {
      display: flex;
      align-items: center;
      gap: 11px;
      font-family: var(--disp);
      font-weight: 700;
      font-size: 1.18rem;
      letter-spacing: .04em;
      text-transform: uppercase
    }

    .logo-img {
      height: 42px;
      width: 42px;
      object-fit: cover;
      border-radius: 50%
    }

    .nav-links {
      display: flex;
      align-items: center;
      gap: 26px
    }

    .nav-links a {
      font-size: .92rem;
      color: var(--muted);
      font-weight: 600;
      transition: .15s
    }

    .nav-links a:hover {
      color: var(--text)
    }

    .nav-cta {
      display: flex;
      align-items: center;
      gap: 14px
    }

    .burger {
      display: none;
      flex-direction: column;
      gap: 5px;
      background: none;
      border: none;
      cursor: pointer;
      padding: 8px
    }

    .burger span {
      width: 24px;
      height: 2px;
      background: var(--text);
      border-radius: 2px
    }

    /* hero */
    .hero {
      position: relative;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding: 30px 0;
      padding-bottom: 60px;
      background: linear-gradient(90deg, rgba(11, 13, 18, 0), rgba(11, 13, 18, .8) 50%, rgba(11, 13, 18, 0)), url('../images/bg-forest.webp') center/cover no-repeat
    }
    #hall {
      background: linear-gradient(90deg, rgba(11, 13, 18, 0.0), rgb(11, 13, 18) 50%, rgba(11, 13, 18, 0.0)), url('../images/bg2.webp') center center / cover no-repeat;
    }

    .hero-grid {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: 1.1fr .9fr;
      gap: 40px;
      align-items: start
    }

    .chips {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      justify-content: center;
      align-items: center;
      margin-bottom: 16px
    }

    .divider {
      position: relative;
      height: 1px;
      max-width: 760px;
      margin: 0 auto 32px;
      background: linear-gradient(90deg, transparent, rgba(197, 240, 43, .28) 18%, rgba(197, 240, 43, .28) 82%, transparent)
    }

    .divider-icon {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 54px;
      height: 54px;
      border-radius: 50%;
      background: var(--bg);
      box-shadow: 0 0 18px -5px rgba(197, 240, 43, .45);
      z-index: 2;
      display: grid;
      place-items: center;
      padding: 3px
    }

    .divider-icon img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      display: block
    }

    .chips-label {
      font-size: .88rem;
      font-weight: 600;
      color: #cfd5e2;
      margin-right: 2px
    }

    .chip-wrap {
      position: relative;
      display: inline-block
    }

    .chip {
      display: inline-block;
      font-size: .84rem;
      font-weight: 700;
      letter-spacing: .04em;
      color: var(--ember-2);
      border: 1px solid var(--line);
      background: rgba(11, 13, 18, .5);
      border-radius: 99px;
      padding: 6px 13px;
      cursor: help;
      transition: .18s
    }

    .chip-wrap:hover .chip {
      border-color: var(--ember-2);
      background: rgba(197, 240, 43, .08);
      transform: translateY(-1px)
    }

    /* (окно №25, аудит красоты) вечная карусель свечения чипов (chipOn1–4,
       infinite) УДАЛЕНА: правило анимаций — только по событию, один раз,
       ничего не крутится вечно. Свечение осталось по hover (.chip-wrap:hover
       .chip выше) — как и было. */

    @media (prefers-reduced-motion:reduce) {
      .chip-wrap .chip {
        animation: none
      }
    }

    .chip-pop {
      position: fixed;
      top: 55%;
      left: 50%;
      width: auto;
      max-width: 94vw;
      max-height: 92vh;
      overflow: auto;
      padding: 10px;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 14px;
      box-shadow: 0 30px 90px -10px rgba(0, 0, 0, .9);
      opacity: 0;
      pointer-events: none;
      transform: translate(-50%, -50%) scale(.94);
      transition: opacity .3s ease, transform .35s cubic-bezier(.2, .85, .25, 1);
      z-index: 120
    }

    .chip-pop.right {
      left: 50%;
      right: auto
    }

    .chip-pop::before {
      content: "";
      position: fixed;
      inset: 0;
      background: rgba(5, 7, 11, .72);
      backdrop-filter: blur(3px);
      z-index: -1
    }

    .chip-pop img {
      width: auto;
      height: auto;
      max-width: min(1150px, 94vw);
      max-height: min(800px, 86vh);
      border-radius: 8px;
      display: block;
      margin: 0 auto
    }

    .chip-pop .cap {
      display: block;
      text-align: center;
      font-size: .82rem;
      font-weight: 700;
      color: var(--muted);
      margin-top: 9px;
      text-transform: uppercase;
      letter-spacing: .05em
    }

    .chip-wrap:hover .chip-pop {
      opacity: 1;
      pointer-events: auto;
      transform: translate(-50%, -50%) scale(1)
    }

    @media (prefers-reduced-motion:reduce) {
      .chip-pop {
        transition: opacity .2s
      }
    }

    .hero h1 {
      font-size: clamp(2.6rem, 6vw, 4.9rem);
      line-height: 1;
      margin-bottom: 42px;
      background: linear-gradient(180deg, #ffffff 0%, #eef1f6 42%, #b7bfca 57%, #ffffff 84%);
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
      -webkit-text-stroke: .4px rgba(10, 14, 20, .3);
      filter: drop-shadow(0 6px 14px rgba(0, 0, 0, .6))
    }

    .hero h1 .hl {
      -webkit-text-stroke: 0
    }

    .hero h1 .l1 {
      display: block;
      font-size: clamp(2.9rem, 7vw, 6.6rem);
      line-height: .96
    }

    .hero h1 .l2 {
      display: block;
      font-size: clamp(1.4rem, 3.3vw, 4.7rem);
      line-height: 1.05;
      margin-top: .4em
    }

    .hero .lead {
      font-size: 1.48rem;
      font-weight: 700;
      color: #fff;
      margin-bottom: 36px;
    }

    .hero .lead b {
      color: var(--ember-2)
    }

    .hero p.sub {
      font-size: 1.05rem;
      color: #fff;
      margin-bottom: 26px;
      max-width: 560px;
      text-shadow: 0 2px 12px rgba(0, 0, 0, .7)
    }

    .hero-cta {
      display: flex;
      gap: 14px;
      flex-wrap: wrap;
      margin-bottom: 26px
    }

    .hero-stats {
      display: inline-flex;
      flex-wrap: wrap;
      background: rgba(11, 13, 18, .8);
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 4px
    }

    .hero-stats .s {
      display: flex;
      align-items: center;
      gap: 11px;
      padding: 12px 20px;
      border-right: 1px solid var(--line)
    }

    .hero-stats .s-ico {
      width: 50px;
      height: 50px;
      object-fit: contain;
      flex: 0 0 auto
    }

    .hero-stats .s:last-child {
      border-right: none
    }

    /* (окно №25, аудит красоты) рекорды тренера (Топ-30, 14300 MMR) — единственное
       НАСТОЯЩЕЕ золото на лендинге (награды по правилу), не четвёртый лайм */
    .hero-stats .s b {
      font-family: var(--disp);
      font-size: 1.5rem;
      color: var(--gold-real);
      display: block
    }

    .hero-stats .s small {
      font-size: .74rem;
      color: #cfd5e2;
      text-transform: uppercase;
      letter-spacing: .04em
    }

    .hero-stats .s.haspop {
      cursor: default;
      border-radius: 10px;
      transition: .15s
    }

    .hero-stats .s.haspop:hover {
      background: rgba(197, 240, 43, .07)
    }

    .hero-stats .s.haspop:hover .proof-pop {
      opacity: 1;
      pointer-events: auto;
      transform: translate(-50%, -50%) scale(1)
    }

    .hero-art {
      position: relative;
      z-index: 2;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 0
    }

    .hero-render {
      max-height: 600px;
      width: auto;
      filter: drop-shadow(0 14px 50px rgba(58, 160, 255, .45))
    }

    .hero-extra {
      width: 100%;
      border-radius: 8px;
      display: block;
      margin-top: 12px
    }

    .hero-card .cardmeta {
      font-size: 1.1rem;
      color: var(--ember-2);
      font-weight: 600;
      margin: 2px 0
    }

    .hero-art .watch {
      display: block;
      align-self: flex-end;
      margin-top: 16px;
      font-size: .95rem;
      font-weight: 700;
      color: var(--ember-2);
      transition: .15s
    }

    .hero-art .watch:hover {
      color: var(--ember)
    }

    .yt-btn {
      display: inline-flex;
      align-items: center;
      gap: 14px;
      margin-top: 24px;
      padding: 12px 26px 12px 12px;
      border-radius: 99px;
      background: rgba(11, 13, 18, .6);
      border: 1px solid rgba(197, 240, 43, .55);
      box-shadow: 0 0 0 1px rgba(197, 240, 43, .12), 0 0 24px -8px rgba(197, 240, 43, .45);
      font-weight: 700;
      font-size: .98rem;
      color: #fff;
      transition: .18s
    }

    .yt-btn:hover {
      border-color: var(--ember-2);
      box-shadow: 0 0 0 1px rgba(197, 240, 43, .3), 0 0 30px -6px rgba(197, 240, 43, .6);
      transform: translateY(-2px)
    }

    .yt-play {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--ember), var(--ember-2));
      display: grid;
      place-items: center;
      flex: 0 0 auto
    }

    .yt-play::before {
      content: "";
      border-left: 13px solid #0b0d12;
      border-top: 8px solid transparent;
      border-bottom: 8px solid transparent;
      margin-left: 3px
    }

    @keyframes neonPulse {

      0%,
      100% {
        box-shadow: 0 0 0 1px rgba(197, 240, 43, .16), 0 0 26px -10px rgba(197, 240, 43, .32), 0 28px 64px -30px rgba(0, 0, 0, .85)
      }

      50% {
        box-shadow: 0 0 0 1px rgba(197, 240, 43, .34), 0 0 46px -8px rgba(197, 240, 43, .6), 0 28px 64px -30px rgba(0, 0, 0, .85)
      }
    }

    .thumb {
      position: relative;
      z-index: 50;
      display: block;
      width: 100%;
      max-width: 380px;
      align-self: flex-end;
      border-radius: 14px;
      overflow: hidden;
      transform: rotate(3deg);
      border: 1px solid rgba(197, 240, 43, .5);
      box-shadow: 0 0 0 1px rgba(197, 240, 43, .14), 0 0 30px -10px rgba(197, 240, 43, .32), 0 24px 56px -28px rgba(0, 0, 0, .85);
      transition: transform .25s ease
    }

    .thumb:hover {
      transform: rotate(3deg) translateY(-3px)
    }

    .thumb .hero-extra {
      margin-top: 0
    }

    .thumb .play {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 62px;
      height: 62px;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--ember), var(--ember-2));
      display: grid;
      place-items: center;
      box-shadow: 0 12px 32px -8px rgba(197, 240, 43, .7);
      transition: .2s
    }

    .thumb:hover .play {
      transform: translate(-50%, -50%) scale(1.08)
    }

    .thumb .play::before {
      content: "";
      border-left: 20px solid #0b0d12;
      border-top: 12px solid transparent;
      border-bottom: 12px solid transparent;
      margin-left: 5px
    }

    .hero-card {
      width: 100%;
      max-width: 420px;
      background: linear-gradient(160deg, rgba(27, 32, 43, .94), rgba(13, 16, 22, .94));
      border: 1px solid rgba(197, 240, 43, .5);
      border-radius: 18px;
      padding: 20px;
      position: relative;
      z-index: 2;
      overflow: hidden;
      box-shadow: 0 0 0 1px rgba(197, 240, 43, .14), 0 0 30px -10px rgba(197, 240, 43, .32), 0 28px 64px -30px rgba(0, 0, 0, .85)
    }

    .hero-card::before {
      content: "";
      position: absolute;
      top: 0;
      left: 18px;
      right: 18px;
      height: 2px;
      border-radius: 2px;
      background: linear-gradient(90deg, transparent, var(--ember-2), transparent);
      box-shadow: 0 0 18px 2px rgba(197, 240, 43, .6)
    }

    @media (prefers-reduced-motion:reduce) {

      .hero-card,
      .thumb {
        animation: none
      }
    }

    .hero-card .ttl {
      font-family: var(--disp);
      text-transform: uppercase;
      letter-spacing: .04em;
      font-size: .82rem;
      color: var(--muted);
      margin-bottom: 4px
    }

    .hero-card .mmr {
      font-family: var(--disp);
      font-size: 1.9rem;
      font-weight: 700;
      color: #fff
    }

    .hero-card .row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 13px 0;
      border-bottom: 1px dashed var(--line)
    }

    .hero-card .row:last-child {
      border-bottom: none
    }

    .rankchip {
      font-size: .72rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .06em;
      padding: 5px 10px;
      border-radius: 6px;
      background: rgba(55, 196, 109, .14);
      color: var(--green)
    }

    .spark-chart {
      width: calc(100% + 40px);
      height: auto;
      margin-top: -130px !important;
      display: block;
      margin: 14px -20px -20px
    }

    .spark-chart .line {
      stroke: var(--ember);
      stroke-width: 3;
      fill: none;
      stroke-linecap: round;
      stroke-linejoin: round;
      stroke-dasharray: 1;
      stroke-dashoffset: 1;
      animation: draw 1.8s ease forwards .2s;
      filter: drop-shadow(0 0 6px rgba(197, 240, 43, .4))
    }

    @keyframes draw {
      to {
        stroke-dashoffset: 0
      }
    }

    .spark-chart .area {
      fill: url(#csGrad);
      opacity: 0;
      animation: areaIn 1s 1s forwards
    }

    @keyframes areaIn {
      to {
        opacity: .55
      }
    }

    .spark-chart .dot-glow {
      fill: var(--ember);
      opacity: .22
    }

    .spark-chart .dot {
      fill: var(--ember);
      opacity: 0;
      animation: dotIn .4s 1.7s forwards;
      filter: drop-shadow(0 0 7px rgba(197, 240, 43, .9))
    }

    @keyframes dotIn {
      to {
        opacity: 1
      }
    }

    @media (prefers-reduced-motion:reduce) {
      .spark-chart .line {
        animation: none;
        stroke-dashoffset: 0
      }

      .spark-chart .area,
      .spark-chart .dot {
        animation: none;
        opacity: .5
      }
    }

    /* promise band (2k / 10k) */
    .promise {
      background: var(--bg-2);
      border-top: 1px solid var(--line);
      padding-bottom: 50px;
    }

    .promise-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 22px;
      margin-bottom: 30px
    }

    .pcard {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: var(--radius);
      padding: 28px;
      position: relative;
      overflow: hidden
    }

    .pcard::before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      height: 3px;
      background: linear-gradient(90deg, var(--ember), var(--ember))
    }

    .pcard h3 {
      font-size: 1.4rem;
      color: var(--ember);
      margin-bottom: 10px
    }

    .pcard .rank-ico {
      width: 94px;
      height: 94px;
      object-fit: contain;
      margin-bottom: 12px;
      filter: drop-shadow(0 4px 12px rgba(0, 0, 0, .5))
    }

    .pcard p {
      color: #cfd5e2;
    }

    .payoff {
      text-align: center;
      font-size: clamp(1.9rem, 3.6vw, 2.7rem);
      font-family: var(--disp);
      text-transform: uppercase;
      max-width: 950px;
      margin: 0 auto;
      line-height: 1.65;
    }

    .payoff b {
      color: var(--ember-2)
    }

    /* section head */
    .sec-head {
      max-width: 720px;
      margin: 0 auto 30px
    }

    .sec-head h2 {
      font-size: clamp(1.9rem, 3.6vw, 2.7rem)
    }

    .sec-head p {
      color: var(--muted);
      margin-top: 14px;
      font-size: 1.05rem
    }
    #booking {
      padding-top:0;
    }

    /* about */
    .about {
      padding-bottom: 30px;
      background: linear-gradient(90deg, rgba(11, 13, 18, 0.7), rgba(11, 13, 18, 1) 50%, rgba(11, 13, 18, 0.6)), url(../images/bg-split.webp) center / cover no-repeat;
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line)
    }

    .about-grid {
      display: grid;
      grid-template-columns: .6fr 1.2fr;
      gap: 40px;
      align-items: start
    }

    .about-photo {
      background: linear-gradient(160deg, #222a38, #10141c);
      border: 1px solid var(--line);
      border-radius: 18px;
      aspect-ratio: 4/5;
      background-size: cover;
      background-position: center top;
      position: relative;
      overflow: hidden;
      min-height: 380px
    }

    .about-photo .badge {
      position: absolute;
      bottom: 14px;
      left: 14px;
      right: 14px;
      background: rgba(11, 13, 18, .82);
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 12px 14px;
      backdrop-filter: blur(4px)
    }

    .about-photo .badge b {
      font-family: var(--disp);
      color: var(--ember);
      font-size: 1.15rem
    }

    .about h2 {
      font-size: clamp(1.8rem, 3.4vw, 2.5rem);
      margin-bottom: 15px
    }

    .about .role {
      font-family: var(--disp);
      color: var(--ember-2);
      letter-spacing: .06em;
      text-transform: uppercase;
      margin-bottom: 18px;
      font-size: .92rem
    }

    .about p {
      color: #dfe3ec;
      margin-bottom: 14px
    }
    #coaching {
      padding-top: 40px;
    }
    .note-card h3 {
      font-size: 1.4rem;
      padding-bottom: 7px;
    }
    .kv {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
      margin: 22px 0
    }

    .kv .box {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 14px;
      text-align: center
    }

    .kv .box b {
      display: block;
      font-family: var(--disp);
      font-size: 1.55rem;
      color: var(--ember)
    }

    .kv .box small {
      font-size: .82rem;
      color: #cfd5e2;
      text-transform: uppercase;
      letter-spacing: .03em;
    }

    .achv {
      list-style: none;
      margin: 18px 0
    }

    .achv li {
      padding: 5px 0 5px 26px;
      position: relative;
      color: #dfe3ec;
      font-size: .96rem
    }

    .achv li::before {
      content: "\25B2";
      position: absolute;
      left: 0;
      color: var(--ember);
      font-size: .9rem;
      top: 5px
    }

    .note-card {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 18px 20px;
      margin-top: 18px;
      color: #dfe3ec
    }

    .achv a.tlink {
      color: inherit;
      border-bottom: 1px dotted rgba(197, 240, 43, .45);
      transition: .15s
    }

    .achv a.tlink:hover {
      color: var(--ember-2);
      border-bottom-color: var(--ember-2)
    }

    .two-col {
      display: grid;
      grid-template-columns: .6fr 1.2fr;
      gap: 40px;
      align-items: stretch;
    }

    @media(max-width:860px) {
      .two-col {
        grid-template-columns: 1fr;
        gap: 22px
      }
    }
    #process {
      padding-top: 0;
      padding-bottom: 30px;
    }

    #process .two-col {
      grid-template-columns: 1fr 1fr
    }

    @media(max-width:860px) {
      #process .two-col {
        grid-template-columns: 1fr
      }
    }
    .system {
    text-align: center;
    font-size: 2rem;
    color: var(--ember);
    margin: 0 0 22px;
    }
    .system.block-2 {
    margin-top: 64px;
    padding-top: 48px;
    border-top: 1px solid var(--line);
    padding-bottom: 15px;
    }
    .system .sys-sub {
    display: block;
    font-family: var(--body);
    text-transform: none;
    font-size: .92rem;
    font-weight: 500;
    color: var(--muted);
    letter-spacing: 0;
    margin-top: 8px;
    }

    .exp-card {
      padding: 24px;
      text-align: center;
      padding-top: 0;
    }

    .exp-stats {
      display: flex;
      gap: 16px;
      flex-wrap: wrap;
      margin-bottom: 16px;
      padding-bottom: 16px;
      border-bottom: 1px dashed var(--line)
    }

    .exp-stats>div {
      flex: 1 1 90px
    }

    .exp-stats b {
      font-family: var(--disp);
      font-size: 1.7rem;
      color: var(--ember);
      display: block;
      line-height: 1
    }

    .exp-stats span {
      font-size: .7rem;
      color: var(--muted);
      text-transform: uppercase;
      letter-spacing: .04em
    }

    .guar-tag {
      display: inline-block;
      font-size: .72rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .06em;
      color: var(--ember-2);
      background: rgba(197, 240, 43, .1);
      border: 1px solid rgba(197, 240, 43, .4);
      border-radius: 99px;
      padding: 4px 12px
    }

    .card-h {
      font-family: var(--disp);
      text-transform: uppercase;
      letter-spacing: .02em;
      margin-bottom: 10px;
      color: var(--ember-2);
    }

    .tlink {
      color: inherit;
      border-bottom: 1px dotted rgba(197, 240, 43, .45);
      transition: .15s
    }

    .tlink:hover {
      color: var(--ember-2);
      border-bottom-color: var(--ember-2)
    }

    .proof {
      position: relative;
      display: inline-block;
      width: 0;
      vertical-align: baseline
    }

    .proof .eye {
      position: absolute;
      left: 5px;
      top: -15px;
      width: 22px;
      height: 22px;
      stroke: var(--ember-2);
      fill: none;
      stroke-width: 1.8;
      stroke-linecap: round;
      stroke-linejoin: round;
      transition: .15s
    }

    .proof:hover .eye {
      stroke: var(--ember);
      transform: scale(1.12)
    }

    .proof-pop {
      position: fixed;
      top: 53%;
      left: 50%;
      width: auto;
      max-width: 92vw;
      max-height: 90vh;
      overflow: auto;
      padding: 10px;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 14px;
      box-shadow: 0 30px 90px -10px rgba(0, 0, 0, .9);
      opacity: 0;
      pointer-events: none;
      transform: translate(-50%, -50%) scale(.94);
      transition: opacity .3s ease, transform .35s cubic-bezier(.2, .85, .25, 1);
      z-index: 120
    }

    .proof-pop::before {
      content: "";
      position: fixed;
      inset: 0;
      background: rgba(5, 7, 11, .72);
      backdrop-filter: blur(3px);
      z-index: -1
    }

    .proof-pop img {
      width: auto;
      height: auto;
      max-width: min(1150px, 92vw);
      max-height: min(800px, 86vh);
      border-radius: 8px;
      display: block;
      margin: 0 auto
    }

    .proof:hover .proof-pop {
      opacity: 1;
      pointer-events: auto;
      transform: translate(-50%, -50%) scale(1)
    }

    .yt-link {
      display: inline-block;
      vertical-align: middle;
      line-height: 0
    }

    .yt-ico {
      width: 36px;
      height: 29px;
      fill: var(--ember-2);
      transition: .15s
    }

    .yt-link:hover .yt-ico {
      fill: #fff;
      transform: scale(1.08)
    }

    .titan {
      position: relative;
      display: inline-block;
      margin: 18px 0 2px;
      cursor: default;
      line-height: 0
    }

    .titan-thumb {
      height: 100px;
      width: auto;
      border-radius: 6px;
      border: 1px solid var(--line);
      transition: .15s;
      border-color: rgba(197, 240, 43, .3);
      box-shadow: 0 0 14px -4px rgba(197, 240, 43, .5);
    }

    .titan:hover .titan-thumb {
      border-color: var(--ember-2);
      box-shadow: 0 0 14px -4px rgba(197, 240, 43, .5)
    }

    .titan:hover .proof-pop {
      opacity: 1;
      pointer-events: auto;
      transform: translate(-50%, -50%) scale(1)
    }

    /* how it works */
    .cols3 {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 22px
    }

    .cols4 {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 18px
    }

    .tile {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: var(--radius);
      padding: 26px
    }

    .tile h3 {
      font-size: 1.15rem;
      margin-bottom: 10px;
      color: var(--ember)
    }

    .tile p {
      color: var(--muted);
      font-size: .95rem
    }

    /* hall of fame */
    .hall {
      background: var(--bg-2);
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line)
    }

    .hall-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px
    }

    .res {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 20px;
      text-align: center;
      transition: .2s
    }

    .res:hover {
      transform: translateY(-4px);
      border-color: #3a4250
    }

    .res .role {
      font-size: .72rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .06em;
      color: var(--ember-2);
      margin-bottom: 8px
    }

    .res .delta {
      font-family: var(--disp);
      font-size: 1.5rem;
      color: var(--ember);
      line-height: 1
    }

    .res .meta {
      font-size: .82rem;
      color: var(--muted);
      margin-top: 8px
    }

    /* testimonial carousel */
    .hall-wrap {
      position: relative
    }

    .hall-track {
      display: flex;
      gap: 22px;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      scroll-behavior: smooth;
      padding: 6px 2px 8px;
      -ms-overflow-style: none;
      scrollbar-width: none;
      cursor: grab
    }

    .hall-track::-webkit-scrollbar {
      display: none
    }

    .hall-track.dragging {
      cursor: grabbing;
      scroll-snap-type: none;
      scroll-behavior: auto
    }

    .hall-track.dragging * {
      pointer-events: none
    }

    .tcard {
      flex: 0 0 calc((100% - 22px)/2);
      scroll-snap-align: start;
      background: linear-gradient(165deg, var(--card-2), var(--card));
      border: 1px solid rgba(197, 240, 43, .5);
      border-radius: 16px;
      padding: 24px;
      display: flex;
      flex-direction: column;
      gap: 16px
    }

    @media(max-width:760px) {
      .tcard {
        flex-basis: 100%
      }
    }

    .tc-top {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      flex-wrap: wrap;
      border-bottom: 1px dashed var(--line);
      padding-bottom: 14px
    }

    .tc-head {
      display: flex;
      align-items: center;
      gap: 12px
    }

    .tc-name {
      font-family: var(--disp);
      font-size: 1.15rem;
      text-transform: uppercase;
      line-height: 1
    }

    .tc-role {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      font-size: 1.1rem;
      color: var(--ember-2);
      font-weight: 600
    }

    .tc-role-ico {
      flex: 0 0 auto
    }

    .tc-ranks {
      display: flex;
      align-items: center;
      gap: 8px
    }

    .tc-rank small {
      display: block;
      font-size: .68rem;
      color: var(--muted);
      text-transform: uppercase;
      letter-spacing: .04em;
      margin-bottom: 3px
    }

    /* (окно №25, аудит красоты) иерархия «Путь» как в капсуле витрины:
       старт серым, итог белым (фейк-золото #c9ee48 убрано), стрелка серой.
       Единственный лайм карточки — цифра прироста в плитке ниже. */
    .tc-rank b {
      font-family: var(--disp);
      font-size: 1.35rem;
      color: var(--muted)
    }

    .tc-rank.cur {
      text-align: right
    }

    .tc-rank.cur b {
      color: #fff
    }

    .tc-arrow {
      color: var(--muted);
      font-size: 1.3rem;
      flex: 0 0 auto
    }

    .tc-stats {
      display: flex;
      gap: 12px
    }

    .tc-stat {
      flex: 1;
      background: var(--bg);
      border: 1px solid var(--line);
      border-radius: 10px;
      padding: 12px;
      text-align: center
    }

    /* (окно №25, аудит красоты) перевёрнутая иерархия исправлена: лейбл
       «ПРИРОСТ ММР» был лаймом, а сама цифра белой. Теперь лейблы серые,
       цифра прироста — лаймом (единственный лайм карточки, закон соц-пруфа
       №10: метрика — звезда). Блик по плитке прироста на hover карточки —
       канон mmrshine витрины: один раз, гаснет сам. */
    .tc-stat small {
      display: block;
      font-size: .86rem;
      color: var(--muted);
      text-transform: uppercase;
      letter-spacing: .05em;
      font-weight: 700;
      margin-bottom: 4px
    }

    .tc-stat b {
      font-family: var(--disp);
      font-size: 1.45rem;
      color: #fff
    }

    .tc-stat {
      position: relative;
      overflow: hidden
    }

    .tc-stat:first-child b {
      color: var(--ember)
    }

    .tc-stat:first-child::after {
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      left: -40%;
      width: 35%;
      transform: skewX(-20deg);
      background: linear-gradient(90deg, transparent, rgba(220, 255, 90, .22), transparent);
      opacity: 0;
      pointer-events: none
    }

    .tcard:hover .tc-stat:first-child::after {
      animation: tcshine .9s ease-out;
      opacity: 1
    }

    @keyframes tcshine {
      from { left: -40% }
      to { left: 110% }
    }

    .tc-quote {
      font-style: italic;
      color: #dfe3ec;
      font-size: .95rem;
      position: relative;
      padding-left: 24px
    }

    .tc-quote::before {
      content: "\201C";
      position: absolute;
      left: 0;
      top: 2px;
      font-family: var(--disp);
      font-size: 2rem;
      color: var(--ember);
      line-height: .6
    }

    .tc-quote b {
      font-style: normal;
      color: #fff
    }

    .tc-note {
      font-size: .88rem;
      color: var(--muted);
      display: flex;
      align-items: flex-start;
      gap: 8px;
      line-height: 1.4
    }

    .tc-note::before {
      content: "";
      flex: 0 0 6px;
      width: 6px;
      height: 6px;
      margin-top: 7px;
      border-radius: 50%;
      background: var(--ember)
    }

    .tc-note b {
      color: #fff;
      font-weight: 600
    }

    .tc-foot {
      margin-top: auto;
      display: flex;
      flex-direction: column;
      gap: 12px
    }

    .tc-shots {
      display: flex;
      gap: 10px
    }

    .tc-shots--grid {
      flex-wrap: wrap
    }

    .tc-shots--full .tc-shot-wrap {
      height: 340px
    }

    .tc-shots--full .tc-shot {
      height: 340px;
      object-position: top
    }

    /* карточки, где картинки заполняют всю высоту */
    .tcard--fill .tc-foot {
      flex: 1;
      min-height: 0
    }

    .tcard--fill .tc-shots {
      flex: 1;
      min-height: 220px
    }

    .tcard--fill .tc-shot-wrap {
      height: auto
    }

    .tcard--fill .tc-shot {
      height: 100%;
      object-position: top
    }

    .tc-shots--grid .tc-shot-wrap {
      flex: 0 0 calc(50% - 5px)
    }

    .tc-gallery {
      display: flex;
      gap: 10px;
      overflow-x: auto;
      padding-bottom: 8px;
      scroll-snap-type: x mandatory;
      scrollbar-width: thin;
      scrollbar-color: var(--line) transparent;
      cursor: grab
    }

    .tc-gallery.dragging {
      cursor: grabbing;
      scroll-snap-type: none
    }

    .tc-gallery.dragging * {
      pointer-events: none
    }

    .tc-gallery::-webkit-scrollbar {
      height: 6px
    }

    .tc-gallery::-webkit-scrollbar-thumb {
      background: var(--line);
      border-radius: 99px
    }

    .tc-gallery .tc-shot-wrap {
      flex: 0 0 calc((100% - 20px)/3);
      height: 150px;
      scroll-snap-align: start
    }

    .tc-gallery .tc-shot {
      height: 150px
    }

    .tc-shot-wrap {
      position: relative;
      flex: 1;
      min-width: 0;
      height: 150px;
      border-radius: 8px;
      overflow: hidden;
      border: 1px solid var(--line);
      cursor: zoom-in;
      transition: .15s
    }

    .tc-shot-wrap::before {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 0;
      background: #161a23;
      background-image: repeating-linear-gradient(45deg, rgba(197, 240, 43, .05) 0 8px, transparent 8px 16px)
    }

    .tc-shot-wrap::after {
      content: "\0421\041A\0420\0418\041D";
      position: absolute;
      inset: 0;
      z-index: 0;
      display: grid;
      place-items: center;
      font-family: var(--disp);
      font-size: .6rem;
      letter-spacing: .14em;
      color: var(--muted)
    }

    .tc-shot-wrap:hover {
      border-color: var(--ember-2)
    }

    .tc-shot {
      position: relative;
      z-index: 1;
      width: 100%;
      height: 150px;
      object-fit: cover;
      display: block;
      transition: .25s
    }

    .tc-shot-wrap:hover .tc-shot {
      transform: scale(1.05)
    }

    .tc-zoom {
      position: absolute;
      top: 7px;
      right: 7px;
      width: 30px;
      height: 30px;
      border-radius: 8px;
      display: grid;
      place-items: center;
      background: rgba(11, 13, 18, .72);
      border: 1px solid rgba(197, 240, 43, .5);
      backdrop-filter: blur(3px);
      opacity: 0;
      transform: scale(.85);
      transition: .18s
    }

    .tc-shot-wrap:hover .tc-zoom {
      opacity: 1;
      transform: scale(1)
    }

    .tc-zoom svg {
      width: 16px;
      height: 16px;
      fill: none;
      stroke: var(--ember-2);
      stroke-width: 2;
      stroke-linecap: round
    }

    .shot-modal {
      position: fixed;
      inset: 0;
      z-index: 200;
      display: none;
      align-items: center;
      justify-content: center;
      background: rgba(5, 7, 11, .86);
      backdrop-filter: blur(4px);
    }

    .shot-modal.on {
      display: flex
    }

    .shot-modal img {
      max-width: min(1150px, 98vw);
      max-height: min(840px, 98vh);
      width: auto;
      height: auto;
      border-radius: 10px;
      box-shadow: 0 30px 90px -10px rgba(0, 0, 0, .9)
    }

    .shot-close {
      position: fixed;
      top: 22px;
      right: 26px;
      font-size: 2rem;
      line-height: 1;
      color: #fff;
      cursor: pointer;
      background: none;
      border: none;
      z-index: 201
    }

    .tc-yt {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 10px 12px;
      border-top: 1px dashed var(--line);
      padding-top: 12px
    }

    .tc-yt-label {
      font-size: .82rem;
      font-weight: 600;
      color: var(--muted);
      margin-right: 2px
    }

    .popimg {
      position: relative;
      display: inline-block
    }

    .popimg>img {
      width: 150px;
      border-radius: 8px;
      border: 1px solid var(--line);
      display: block
    }

    .popimg:hover .proof-pop {
      opacity: 1;
      pointer-events: auto;
      transform: translate(-50%, -50%) scale(1)
    }

    .hall-nav {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 10px;
      margin-top: 24px
    }

    .hall-arrow {
      width: 42px;
      height: 42px;
      border-radius: 50%;
      border: 1px solid var(--line);
      background: var(--card);
      color: var(--ember-2);
      font-size: 1.3rem;
      cursor: pointer;
      display: grid;
      place-items: center;
      transition: .15s
    }

    .hall-arrow:hover {
      border-color: var(--ember-2);
      background: rgba(197, 240, 43, .08)
    }

    .hall-dots {
      display: flex;
      gap: 7px;
      margin: 0 8px
    }

    .hall-dot {
      width: 9px;
      height: 9px;
      border-radius: 50%;
      background: var(--line);
      cursor: pointer;
      transition: .15s
    }

    .hall-dot.on {
      background: var(--ember-2);
      width: 22px;
      border-radius: 6px
    }

    /* services */
    .svc-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 22px
    }

    .svc-grid--1 {
      grid-template-columns: 1fr
    }

    .svc-grid--1 .foot {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px
    }

    .svc-grid--1 .foot .dur {
      order: 0;
      margin: 0
    }

    .svc-grid--1 .foot .ctab {
      width: auto;
      margin: 0
    }

    .svc-grid--1 .foot .price-row {
      order: 5;
      margin: 0 0 0 auto
    }

    @media(max-width:560px) {
      .svc-grid--1 .foot .price-row {
        margin-left: 0;
        order: -1;
        width: 100%
      }
      .svc-grid--1 .foot .ctab {
        flex: 1
      }
    }

    .svc-grid--3 {
      grid-template-columns: repeat(3, 1fr);
      margin-bottom: 38px
    }

    @media(max-width:900px) {
      .svc-grid--3 {
        grid-template-columns: 1fr
      }
    }

    .ba-grid {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: start;
      gap: 16px;
      margin-top: 18px
    }

    .ba-item {
      position: relative;
      margin: 0;
      text-align: center
    }

    .ba-tag {
      display: inline-block;
      font-family: var(--disp);
      font-size: .68rem;
      letter-spacing: .12em;
      text-transform: uppercase;
      padding: 3px 11px;
      border-radius: 99px
    }

    .ba-before {
      background: rgba(152, 161, 179, .16);
      color: var(--muted);
      border: 1px solid var(--line)
    }

    .ba-after {
      background: linear-gradient(135deg, var(--ember), var(--ember-2));
      color: #0b0d12
    }

    .ba-grid .tc-shot-wrap {
      height: 300px;
      border-radius: 12px;
      cursor: zoom-in
    }

    .ba-grid .tc-shot {
      height: 300px
    }

    .ba-item figcaption {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 20px;
      font-family: var(--disp);
      font-size: 1.1rem;
      margin-top: 10px;
      color: #fff
    }

    .ba-after-cap {
      color: var(--ember)
    }

    .ba-arrow {
      font-family: var(--disp);
      font-size: 1.9rem;
      color: var(--ember);
      align-self: center;
      margin-top: 48px
    }

    @media(max-width:560px) {
      .ba-grid {
        grid-template-columns: 1fr
      }

      .ba-arrow {
        transform: rotate(90deg);
        margin: 0;
        justify-self: center
      }
    }

    .cal-wrap {
      position: relative;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 18px;
      padding: 12px;
      max-width: 980px;
      margin: 0 auto;
      box-shadow: 0 30px 80px -40px rgba(0, 0, 0, .7)
    }

    #cal-inline {
      width: 100%;
      min-height: 580px;
      overflow: auto;
      border-radius: 12px
    }

    .tg-inline {
      color: var(--ember-2);
      font-weight: 700;
      font-size: .95rem
    }

    .tg-inline:hover {
      color: #fff
    }

    .lnk-hl {
      color: var(--ember-2);
      font-weight: 700
    }

    a.lnk-hl:hover {
      color: #fff
    }

    .svc .ctab {
      width: 100%;
      margin-top: 14px
    }

    .svc-grid--3 .foot .ctab+.ctab {
      margin-top: 18px
    }

    .svc .price-row {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 10px;
      margin-bottom: 14px
    }

    .svc {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 28px;
      display: flex;
      flex-direction: column;
      position: relative
    }

    .svc.feat {
      border-color: var(--ember);
      box-shadow: 0 0 0 1px var(--ember), 0 30px 70px -40px rgba(197, 240, 43, .5)
    }

    .svc .tag {
      position: absolute;
      top: -17px;
      right: 24px;
      background: linear-gradient(135deg, var(--green), var(--ember-2));
      color: #0b0d12;
      font-family: var(--disp);
      font-size: .9rem;
      letter-spacing: .06em;
      text-transform: uppercase;
      padding: 5px 12px;
      border-radius: 99px
    }

    .svc h3 {
      font-size: 1.3rem;
    margin-bottom: 16px;
    line-height: 1.5;
    }

    .svc .desc {
      color: #dfe3ec;
      font-size: .95rem;
      margin-bottom: 14px
    }

    .svc ul {
      list-style: none;
      margin: 0 0 16px
    }

    .svc li {
      position: relative;
      padding: 7px 0 7px 24px;
      font-size: .92rem;
      border-bottom: 1px dashed var(--line);
      color: #dfe3ec
    }

    .svc li:last-child {
      border-bottom: none
    }

    .svc li .ck {
      position: absolute;
      left: 0;
      top: 7px;
      color: var(--green);
      font-weight: 900
    }

    .svc .foot {
      margin-top: auto
    }

    .svc .dur {
      font-size: .8rem;
      color: var(--muted);
      margin-bottom: 12px
    }

    .svc .price {
      font-family: var(--disp);
      font-size: 1.9rem;
      color: #fff;
      margin-bottom: 4px
    }

    .svc .price small {
      font-size: .85rem;
      color: var(--muted)
    }

    .svc .btn {
      width: 100%
    }

    .upsell {      
      background: var(--bg);
      border: 1px dashed var(--line);
      border-radius: 10px;
      padding: 14px;
      font-size: .88rem;
      color: var(--muted)
    }

    #faq {
      padding-bottom: 30px;
background: linear-gradient(90deg, rgba(11, 13, 18, 0.7), rgb(11, 13, 18) 50%, rgba(11, 13, 18, 0.7)), url(../images/bg1.webp) center center / cover no-repeat;
    }

    .upsell b {
      color: var(--ember-2)
    }

    .tariff {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 12px;
      padding: 12px 0;
      border-bottom: 1px dashed var(--line)
    }

    .tariff:last-of-type {
      border-bottom: none
    }

    .tariff .pr {
      font-family: var(--disp);
      color: var(--ember);
      font-size: 1.4rem;
      margin-bottom: 6px
    }

    .btn-sm {
      padding: 9px 16px;
      font-size: .95rem
    }

    /* currency toggle */
    .cur-row {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 12px;
      margin-bottom: 35px
    }
    .upsell-tag {
    display: inline-block;
    font-family: var(--disp);
    font-size: .76rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-weight: 700;
    color: var(--ember-2);
    border: 1px solid rgba(197, 240, 43, .45);
    background: rgba(197, 240, 43, .08);
    border-radius: 99px;
    padding: 3px 10px;
    margin-bottom: 9px;
}

    .cur-label {
      font-size: .85rem;
      letter-spacing: .04em
    }

    .cur-toggle {
      display: inline-flex;
      gap: 4px;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 11px;
      padding: 4px
    }

    .cur {
      font-family: var(--body);
      font-weight: 700;
      font-size: .95rem;
      color: var(--muted);
      background: transparent;
      border: none;
      border-radius: 8px;
      padding: 5px 10px;
      cursor: pointer;
      transition: .15s
    }

    .cur.on {
      background: linear-gradient(135deg, var(--ember), var(--ember-2));
      color: #0b0d12
    }

    /* perks */
    .perks {
      background: var(--bg-2);
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line)
    }

    .perk-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 22px
    }

    .perk {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 30px
    }

    .perk .pic {
      width: 52px;
      height: 52px;
      border-radius: 12px;
      display: grid;
      place-items: center;
      font-size: 1.5rem;
      margin-bottom: 16px;
      background: linear-gradient(135deg, rgba(197, 240, 43, .16), rgba(201, 238, 72, .1));
      border: 1px solid var(--line)
    }

    .perk .pic svg {
      width: 28px;
      height: 28px;
      fill: none;
      stroke: var(--ember-2);
      stroke-width: 1.8;
      stroke-linecap: round;
      stroke-linejoin: round
    }

    .perk-btns {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 18px
    }

    .perk h3 {
      font-size: 1.25rem;
      margin-bottom: 10px
    }

    .perk p {
      color: var(--muted);
      font-size: .96rem;
      margin-bottom: 10px
    }

    /* faq */
    .faq {
      max-width: 820px;
      margin: 0 auto
    }

    details {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 0 22px;
      margin-bottom: 14px
    }

    summary {
      cursor: pointer;
      list-style: none;
      padding: 20px 0;
      font-family: var(--disp);
      text-transform: uppercase;
      letter-spacing: .02em;
      font-size: 1.02rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 14px
    }

    summary::-webkit-details-marker {
      display: none
    }

    summary::after {
      content: "+";
      color: var(--ember-2);
      font-size: 1.5rem;
      font-family: var(--disp)
    }

    details[open] summary::after {
      content: "\2013"
    }

    details .a {
      color: var(--muted);
      padding: 0 0 20px;
      font-size: .96rem
    }

    details .a b {
      color: #dfe3ec
    }

    /* social / final */
    .final {
      position: relative;
      text-align: center;
      overflow: hidden;      
    }

    .final h2 {
      position: relative;
      font-size: clamp(2rem, 4.2vw, 3rem)
    }

    .final p {
      position: relative;
      color: #fff;
      max-width: 600px;
      margin: 16px auto 26px;
      font-size: 1.06rem;
      text-shadow: 0 2px 12px rgba(0, 0, 0, .6)
    }

    .final-cta {
      position: relative;
      display: flex;
      gap: 14px;
      justify-content: center;
      flex-wrap: wrap
    }

    .socials {
      display: flex;
      gap: 12px;
      justify-content: center;
      flex-wrap: wrap;
      margin-top: 26px
    }

    .socials a {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 11px 18px;
      border-radius: 10px;
      border: 1px solid var(--line);
      background: rgba(11, 13, 18, .5);
      font-weight: 700;
      font-size: .9rem;
      transition: .15s
    }

    .socials a svg {
      width: 17px;
      height: 17px;
      fill: currentColor;
      flex: 0 0 auto
    }

    .socials a:hover {
      border-color: var(--ember-2);
      color: var(--ember-2)
    }

    /* footer */
    footer {
      background: var(--bg-2);
      border-top: 1px solid var(--line);
      padding: 28px 0 28px
    }

    .foot-grid {
      display: flex;
      justify-content: space-between;
      gap: 24px;
      flex-wrap: wrap;
      margin-bottom: 30px
    }

    .foot-brand p {
      color: var(--muted);
      font-size: .92rem;
      max-width: 320px;
      margin-top: 12px
    }

    .foot-links {
      display: flex;
      gap: 50px;
      flex-wrap: wrap
    }

    .foot-links h4 {
      font-size: .8rem;
      letter-spacing: .1em;
      color: var(--muted);
      margin-bottom: 14px
    }

    .foot-links a {
      display: block;
      color: var(--muted);
      font-size: .92rem;
      margin-bottom: 9px;
      transition: .15s
    }

    .foot-links a:hover {
      color: var(--text)
    }

    .foot-bottom {      
      display: flex;
      justify-content: center;
      gap: 14px;
      flex-wrap: wrap;
      color: var(--muted);
      font-size: .82rem
    }

    .foot-copy {
      display: inline-flex;
      align-items: center;
      gap: 10px
    }

    .foot-mark {
      width: 46px;
      height: 46px;
      border-radius: 50%;
      object-fit: cover
    }

    /* animation */
    .anim .reveal {
      opacity: 0;
      transform: translateY(24px)
    }

    .anim .reveal.in {
      opacity: 1;
      transform: none;
      transition: opacity .7s ease, transform .7s cubic-bezier(.2, .7, .2, 1)
    }

    .sparks {
      position: absolute;
      inset: 0;
      overflow: hidden;
      z-index: 1;
      pointer-events: none
    }

    .spark {
      position: absolute;
      bottom: -12px;
      border-radius: 50%;
      background: var(--ember);
      box-shadow: 0 0 8px 1px var(--ember);
      animation: rise linear infinite
    }

    @keyframes rise {
      0% {
        transform: translateY(0) scale(.5);
        opacity: 0
      }

      12% {
        opacity: .85
      }

      88% {
        opacity: .5
      }

      100% {
        transform: translateY(-115vh) scale(1);
        opacity: 0
      }
    }

    @media (prefers-reduced-motion:reduce) {
      .spark {
        animation: none
      }

      .anim .reveal {
        opacity: 1;
        transform: none
      }
    }

    @media(max-width:980px) {
      .hero-grid {
        grid-template-columns: 1fr;
        gap: 32px
      }

      .hero-art {
        max-width: 420px;
        margin: 0 auto;
        order: -1
      }

      .hero-render {
        max-height: 380px
      }

      .promise-grid,
      .cols3,
      .svc-grid,
      .perk-grid,
      .about-grid {
        grid-template-columns: 1fr
      }

      .hall-grid {
        grid-template-columns: repeat(2, 1fr)
      }

      .about-photo {
        max-width: 360px;
        margin: 0 auto
      }
    }

    /* НАВ-БРЕЙКПОИНТ (12.07 фикс скринов 1-3): раньше меню сворачивалось в
       бургер только на 980px — в полосе 980–1280 весь десктоп-ряд (лого +
       «Умный поиск» + «База знаний» + разделитель + 5 якорей + кнопка ТГ)
       не влезал и лаймовые продукты наезжали на лого / всё сжималось.
       Теперь ряд сворачивается в бургер уже на 1270px — тесной полосы нет
       (окно №11: было 1250, но на 1260 текст меню шёл в два ряда). */
    @media(max-width:1270px) {
      .nav-links {
        display: none
      }

      .burger {
        display: flex
      }

      .nav-links.open {
        display: flex;
        position: absolute;
        top: 70px;
        left: 0;
        right: 0;
        flex-direction: column;
        align-items: stretch;
        background: var(--bg-2);
        padding: 18px 22px;
        gap: 16px;
        border-bottom: 1px solid var(--line)
      }

      .nav-links.open a {
        color: var(--text)
      }
    }

    @media(max-width:560px) {
      section {
        padding: 60px 0
      }

      .cols4,
      .kv {
        grid-template-columns: 1fr
      }

      .hall-grid {
        grid-template-columns: 1fr
      }

      .hero-stats {
        gap: 18px
      }
    }
    
    .price-alt {
  font-size: .72em;
  font-weight: 600;
  color: var(--muted, #8b93a7);
  margin-left: 6px;
  white-space: nowrap;
}
.cur-link {
  font-size: 16px;
  font-weight: 600;
  color: var(--muted, #8b93a7);
  margin-left: 8px;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
  white-space: nowrap;
  vertical-align: middle;
}
.cur-link:hover { color: var(--ember-2, #c5f02b); }