
.wrap { width: 100%; max-width: var(--wrap); margin-inline: auto;
        padding-inline: var(--gut); }
.wrap--narrow { max-width: 940px; }
.sec { position: relative; padding-block: calc(var(--sec) * .5); }
.sec--tight { padding-block: calc(var(--sec) * .34); }
.sec:last-of-type { padding-bottom: var(--sec); }
.sec--line::before {
  content: ""; position: absolute; inset-inline: var(--gut); top: 0;
  height: 1px; background: var(--hair);
}
.sechead { margin-bottom: clamp(28px, 4vw, 54px); }
.sechead__eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; }
.sechead__eyebrow::before { content: ""; width: 22px; height: 1px; background: var(--accent); }
.sechead__title { max-width: 20ch; }
.sechead__title--sm { max-width: 34ch; font-size: var(--t-26);
                      margin: 40px 0 18px; letter-spacing: -.01em; }
.sechead__lead { margin-top: 16px; }
.sechead--split { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
@media (min-width: 900px) {
  .sechead--split { grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr);
                    align-items: end; gap: 44px; }
  .sechead--split .sechead__lead { margin-top: 0; padding-bottom: 6px; }
}
.fx { position: fixed; inset: 0; pointer-events: none; z-index: var(--z-bg); }
.fx-ambient {
  background:
    radial-gradient(620px 420px at 78% -4%, rgba(200,242,74,.09), transparent 68%),
    radial-gradient(720px 520px at 6% 32%,  rgba(64,132,255,.07), transparent 70%),
    radial-gradient(560px 460px at 92% 74%, rgba(200,242,74,.05), transparent 72%);
}
.fx-cursor {
  width: 760px; height: 760px; inset: auto auto auto 0; top: 0;
  margin: -380px 0 0 -380px;
  background: radial-gradient(circle, rgba(200,242,74,.10) 0%, rgba(200,242,74,.045) 34%, transparent 66%);
  opacity: 0; transition: opacity var(--dur-slow) var(--ease);
  will-change: transform;
}
.fx-cursor.is-on { opacity: 1; }
@media (pointer: coarse) { .fx-cursor { display: none; } }
@media (prefers-reduced-motion: reduce) { .fx-cursor { display: none; } }
.page { position: relative; z-index: var(--z-body); }
.head { position: sticky; top: 0; z-index: var(--z-head);
        transition: transform var(--dur) var(--ease);
        will-change: transform; }
.head.is-hidden { transform: translateY(-100%); }
.head.is-hidden .mega { display: none; }
.head-top { display: none; border-bottom: 1px solid var(--hair);
            background: var(--void); }
@media (min-width: 1180px) { .head-top { display: block; } }
.head-top__row { display: flex; align-items: center; justify-content: space-between;
                 height: 36px; gap: 24px; }
.head-top__l, .head-top__r { display: flex; align-items: center; gap: 18px; }
.head-top__item { display: inline-flex; align-items: center; gap: 7px; }
.head-top__item .ico { width: 14px; height: 14px; color: var(--muted); }
.head-top a.head-top__item { transition: color var(--dur-fast) var(--ease); }
@media (hover: hover) { .head-top a.head-top__item:hover { color: var(--fg); } }
@media (hover: hover) { .head-top a.head-top__item:hover .ico { color: var(--accent); } }
.head-top__dot { width: 5px; height: 5px; border-radius: 50%; background: var(--ok);
                 box-shadow: 0 0 0 3px rgba(74,222,128,.16); }
.head-main {
  border-bottom: 1px solid var(--hair);
  background: rgba(5,5,5,.72);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  backdrop-filter: blur(14px) saturate(140%);
  transition: background var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}
.head-main__row { display: flex; align-items: center; gap: 12px; height: 62px; }
@media (min-width: 1180px) { .head-main__row { height: 74px; } }
.head.is-stuck .head-main { background: rgba(9,9,11,.9);
  box-shadow: 0 14px 34px -22px rgba(0,0,0,.9); }
.logo { display: flex; align-items: center; gap: 12px; flex: 0 1 auto; min-width: 0;
        color: var(--fg); }
@media (min-width: 1180px) { .logo { flex: none; } }
.logo svg { flex: none; }
.logo { min-height: 44px; }
.logo svg { height: 26px; width: auto; }
@media (min-width: 1180px) { .logo svg { height: 30px; } }
.logo__tag { display: none; font-size: 10.5px; font-weight: 700;
             letter-spacing: .06em; text-transform: uppercase; color: var(--muted);
             line-height: 1.3; flex: none; padding-left: 12px; margin-right: 6px;
             border-left: 1px solid var(--hair); }
.logo__tag span { display: block; white-space: nowrap; overflow-wrap: normal; word-break: keep-all; }
@media (min-width: 1560px) { .logo__tag { display: block; } }
.nav { display: none; margin-left: auto; }
@media (min-width: 1180px) { .nav { display: flex; align-items: center; gap: 0; } }
.nav__link { position: relative; display: inline-flex; align-items: center; gap: 6px;
             padding: 9px 12px; border-radius: var(--r-control); white-space: nowrap;
             font-size: var(--t-14); font-weight: 600; color: var(--fg-dim);
             transition: color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease); }
@media (hover: hover) { .nav__link:hover, .nav__link[aria-expanded="true"] { color: var(--fg); background: var(--core-2); } }
.nav__link .ico { width: 13px; height: 13px; transition: transform var(--dur-fast) var(--ease); }
.nav__link[aria-expanded="true"] .ico { transform: rotate(180deg); }
.head__actions { display: flex; align-items: center; gap: 8px; margin-left: auto; flex: none; }
@media (min-width: 1180px) { .head__actions { margin-left: 20px; } }
.head__actions .btn--ghost { display: none; }
@media (min-width: 1340px) { .head__actions .btn--ghost { display: inline-flex; } }
.mega {
  position: absolute; left: 0; right: 0; top: 100%;
  max-width: var(--wrap); margin-inline: auto; padding-inline: var(--gut);
  z-index: var(--z-menu);
  opacity: 0; visibility: hidden; transform: translateY(-6px);
  transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease),
              visibility 0s linear var(--dur);
}
.mega.is-open { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
@media (max-width: 1179px) { .mega { display: none; } }
.mega__panel { background: rgba(10,10,12,.98);
  -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px);
  border: 1px solid var(--hair); border-top: 0;
  border-radius: 0 0 var(--r-panel) var(--r-panel);
  box-shadow: 0 40px 90px -30px rgba(0,0,0,.9); padding: 8px;
  max-height: calc(100dvh - 164px); overflow-y: auto; overscroll-behavior: contain;
  scrollbar-width: thin; scrollbar-color: var(--hair-solid) transparent; }
.mega__panel::-webkit-scrollbar { width: 10px; }
.mega__panel::-webkit-scrollbar-thumb { background: var(--hair-solid);
  border: 3px solid transparent; background-clip: content-box; border-radius: 10px; }
.mega__grid { display: grid; gap: 4px; align-items: start;
              grid-template-columns: minmax(0,1.1fr) minmax(0,1.1fr) minmax(0,.85fr) minmax(0,.95fr); }
.mega__col { padding: 22px 20px; border-radius: var(--r-core); }
.mega__col--promo { background: var(--core-2); border: 1px solid var(--hair);
                    display: flex; flex-direction: column; }
.mega__ttl { margin-bottom: 14px; }
.mega__list { display: grid; gap: 1px; }
.mega__item { display: grid; grid-template-columns: 22px 1fr; gap: 11px;
              padding: 8px 10px; border-radius: 12px; align-items: start;
              transition: background var(--dur-fast) var(--ease); }
@media (hover: hover) { .mega__item:hover { background: var(--core-3); } }
.mega__item .ico { width: 18px; height: 18px; margin-top: 2px; color: var(--muted); 
                   transition: color var(--dur-fast) var(--ease); }
@media (hover: hover) { .mega__item:hover .ico { color: var(--accent); } }
.mega__item b { display: block; font-size: var(--t-14); font-weight: 700; color: var(--fg); }
.mega__item span { display: block; font-size: var(--t-13); color: var(--muted); line-height: 1.45; }
.mega__promo-ttl { font-family: var(--f-display); font-size: var(--t-20);
  font-weight: 600; line-height: 1.15; letter-spacing: -.02em; margin: 0 0 12px; }
.mega__grid--even { grid-template-columns: repeat(4, minmax(0,1fr)); }
.mega__tag { display: inline-block; width: 7px; height: 7px; margin-left: 2px;
  border-radius: 50%; background: var(--accent); vertical-align: middle;
  position: relative; top: -1px; font-style: normal; }
.mega__tag--dim { background: transparent; box-shadow: inset 0 0 0 1.5px var(--muted); }
.mega__legend .mega__tag { margin: 0 3px 0 10px; }
.mega__nw { white-space: nowrap; }
.mega__foot { margin-top: 6px; padding: 14px 20px; border-top: 1px solid var(--hair);
              display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.head__call { display: grid; place-items: center; width: 44px; height: 44px; flex: none;
  border-radius: 12px; border: 1px solid var(--hair); background: var(--core); color: var(--fg-dim); }
.head__call:active { transform: scale(.96); }
.burger { display: inline-flex; align-items: center; justify-content: center;
          width: 44px; height: 44px; flex: none; border-radius: 12px;
          border: 1px solid var(--hair); background: var(--core); }
@media (min-width: 1180px) { .burger { display: none; } }
.burger__box { position: relative; width: 18px; height: 12px; }
.burger__box i { position: absolute; left: 0; width: 100%; height: 1.5px;
                 background: var(--fg); transition: transform var(--dur) var(--ease),
                 opacity var(--dur-fast) var(--ease); }
.burger__box i:nth-child(1) { top: 0; }
.burger__box i:nth-child(2) { top: 5.25px; }
.burger__box i:nth-child(3) { top: 10.5px; }
.burger[aria-expanded="true"] .burger__box i:nth-child(1) { transform: translateY(5.25px) rotate(45deg); }
.burger[aria-expanded="true"] .burger__box i:nth-child(2) { opacity: 0; transform: scaleX(.3); }
.burger[aria-expanded="true"] .burger__box i:nth-child(3) { transform: translateY(-5.25px) rotate(-45deg); }
.mmenu { position: fixed; inset: 0; z-index: var(--z-menu); background: var(--void);
         display: flex; flex-direction: column;
         opacity: 0; visibility: hidden; transform: translateY(12px);
         transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease),
                     visibility 0s linear var(--dur); overflow-y: auto; }
.mmenu.is-open { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.mmenu__head { display: flex; align-items: center; justify-content: space-between;
               height: 60px; flex: none; border-bottom: 1px solid var(--hair); }
.mmenu__body { padding-block: 18px 28px; flex: 1; }
.mmenu__row { border-bottom: 1px solid var(--hair); }
.mmenu.is-open .mmenu__row { animation: mmIn var(--dur) var(--ease) backwards; }
.mmenu.is-open .mmenu__row:nth-child(1){animation-delay:.04s}
.mmenu.is-open .mmenu__row:nth-child(2){animation-delay:.10s}
.mmenu.is-open .mmenu__row:nth-child(3){animation-delay:.16s}
.mmenu.is-open .mmenu__row:nth-child(4){animation-delay:.22s}
.mmenu.is-open .mmenu__row:nth-child(5){animation-delay:.28s}
.mmenu.is-open .mmenu__row:nth-child(6){animation-delay:.34s}
.mmenu.is-open .mmenu__row:nth-child(7){animation-delay:.40s}
@keyframes mmIn { from { opacity: 0; transform: translateY(14px); } }
@media (prefers-reduced-motion: reduce) { .mmenu.is-open .mmenu__row { animation: none; } }
.mmenu__link { display: flex; align-items: center; justify-content: space-between;
               gap: 12px; min-height: 56px; padding: 8px 0; width: 100%;
               font-family: var(--f-display); font-size: var(--t-20); font-weight: 500; }
.mmenu__link .ico { color: var(--muted); transition: transform var(--dur-fast) var(--ease); }
.mmenu__link[aria-expanded="true"] .ico { transform: rotate(180deg); color: var(--accent); }
.mmenu__sub {
  display: grid; grid-template-rows: 0fr; opacity: 0; visibility: hidden;
  transition: grid-template-rows var(--dur) var(--ease),
              opacity var(--dur-fast) var(--ease),
              visibility 0s linear var(--dur);
}
.mmenu__sub > * { overflow: hidden; min-height: 0; }
.mmenu__sub.is-open { grid-template-rows: 1fr; opacity: 1; visibility: visible;
                      transition-delay: 0s, 60ms, 0s; }
.mmenu__subin { padding-bottom: 16px; }
.mmenu__sublink { display: flex; align-items: center; gap: 11px; min-height: 46px;
                  font-size: var(--t-16); color: var(--fg-dim); }
.mmenu__sublink .ico { width: 17px; height: 17px; color: var(--muted-2); }
.mmenu__foot { padding: 22px 0 32px; display: grid; gap: 12px; }
.sticky-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: var(--z-sticky);
  display: grid; grid-template-columns: 1fr 1fr 1.25fr;
  background: rgba(11,11,13,.94);
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
  border-top: 1px solid var(--hair);
  padding-bottom: env(safe-area-inset-bottom); }
@media (min-width: 900px) { .sticky-bar { display: none; } }
.sticky-bar__btn { display: flex; flex-direction: column; align-items: center;
  justify-content: center; gap: 4px; min-height: 62px; font-size: 12px; font-weight: 700;
  color: var(--fg-dim); border-right: 1px solid var(--hair); }
.sticky-bar__btn:last-child { border-right: 0; background: var(--accent); color: var(--accent-ink); }
.sticky-bar__btn .ico { width: 19px; height: 19px; }
.sticky-bar__btn:active { transform: scale(.97); }
.foot { position: relative; margin-top: var(--sec);
        border-top: 1px solid var(--hair); background: var(--core); }
.foot__top { display: grid; grid-template-columns: minmax(0, 1fr); gap: 40px; padding-block: clamp(40px, 6vw, 72px); }
@media (min-width: 760px)  { .foot__top { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 44px 32px; } }
@media (min-width: 1100px) { .foot__top { grid-template-columns: 1.5fr 1fr 1fr 1fr 1.15fr; gap: 36px; } }
.foot__brand { display: flex; flex-direction: column; gap: 18px; }
.foot__brand .logo svg { height: 30px; }
.foot__desc { font-size: var(--t-14); color: var(--fg-dim); max-width: 34ch; line-height: 1.6; }
.foot__soc { display: flex; gap: 8px; }
.foot__soc a { display: grid; place-items: center; width: 40px; height: 40px;
  border: 1px solid var(--hair); border-radius: 12px; color: var(--fg-dim);
  transition: border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease),
              background var(--dur-fast) var(--ease); }
@media (hover: hover) { .foot__soc a:hover { border-color: var(--accent-line); color: var(--accent); background: var(--accent-dim); } }
.foot__ttl { margin-bottom: 16px; }
.foot__toggle { display: flex; align-items: center; justify-content: space-between;
  gap: 12px; width: 100%; text-align: left; }
.foot__toggle .ico { color: var(--muted-2); transition: transform var(--dur-fast) var(--ease); }
.foot__toggle[aria-expanded="true"] .ico { transform: rotate(180deg); color: var(--accent); }
@media (min-width: 760px) {
  .foot__toggle { pointer-events: none; }
  .foot__toggle .ico { display: none; }
}
@media (max-width: 759px) {
  .foot__top nav { border-bottom: 1px solid var(--hair); padding-bottom: 16px; }
  .foot__toggle { min-height: 48px; margin-bottom: 0; }
  .js .foot__acc {
    display: grid; grid-template-rows: 0fr; opacity: 0; visibility: hidden;
    transition: grid-template-rows var(--dur) var(--ease),
                opacity var(--dur-fast) var(--ease),
                visibility 0s linear var(--dur);
  }
  .js .foot__acc > * { overflow: hidden; min-height: 0; }
  .js .foot__acc.is-open { grid-template-rows: 1fr; opacity: 1; visibility: visible;
                           transition-delay: 0s, 60ms, 0s; }
  .foot__acc .foot__list { padding-block: 10px 6px; }
  .foot__list a { min-height: 40px; display: flex; align-items: center; }
}
.foot__list { display: grid; gap: 9px; }
.foot__list a { font-size: var(--t-14); color: var(--fg-dim);
                transition: color var(--dur-fast) var(--ease); }
@media (hover: hover) { .foot__list a:hover { color: var(--fg); } }
.foot__list .acc { color: var(--accent); }
.foot__contacts { display: grid; gap: 14px; }
.foot__contact { display: grid; grid-template-columns: 18px 1fr; gap: 11px; align-items: start; }
.foot__contact .ico { width: 16px; height: 16px; margin-top: 4px; color: var(--muted-2); }
.foot__contact b { display: block; font-size: var(--t-16); font-weight: 600; }
.foot__contact span { display: block; font-size: var(--t-13); color: var(--muted); margin-top: 2px; }
.foot__geo { padding-block: 26px; border-top: 1px solid var(--hair); }
.foot__geo p { font-size: var(--t-14); color: var(--fg-dim); max-width: 92ch; line-height: 1.65; }
.foot__bottom { padding-block: 24px 30px; border-top: 1px solid var(--hair);
  display: flex; flex-wrap: wrap; gap: 12px 26px; align-items: center;
  justify-content: space-between; font-size: var(--t-13); color: var(--muted); }
.foot__legal { display: flex; flex-wrap: wrap; gap: 6px 20px; }
.foot__legal a { transition: color var(--dur-fast) var(--ease); }
@media (max-width: 759px) { .foot__legal { gap: 0 20px; }
  .foot__legal a { min-height: 44px; display: flex; align-items: center; } }
@media (hover: hover) { .foot__legal a:hover { color: var(--fg-dim); } }
.foot__req { font-size: var(--t-13); letter-spacing: .01em; line-height: 1.65;
             font-variant-numeric: tabular-nums; color: var(--muted); }
