/* ================================
   THEME • базовые переменные
================================== */
:root{
  --ps-primary: #6FAE3F;          /* фирменный зелёный */
  --ps-text:    #132a21;          /* основной текст на белом */
  --ps-text-dim:#4b5d56;          /* вторичный текст */
  --ps-border:  #e8edf2;          /* светлая граница */
  --ps-radius:  16px;
  --ps-shadow:  0 16px 40px rgba(0,0,0,.08);
}

/* ================================
   BASE
================================== */
.ps-home{ background:#fff; color:var(--ps-text); }
.ps-container{ max-width:1200px; margin:0 auto; padding:0 16px; }

/* типографика секций — ЧИТАЕМО на белом */
.ps-section__title{ 
  font-size:clamp(22px,3vw,32px);
  font-weight:800; 
  color:#16352a;         /* было бледно-зелёным */
  margin:0 0 6px;
}
.ps-section__desc{ color:var(--ps-text-dim); margin:0; }

/* разделители между блоками на белом */
.ps-section{ padding:56px 0; border-top:1px solid rgba(0,0,0,.04); }
.ps-section:first-of-type{ border-top:none; }
.ps-section--alt{ background:#f6faf7; }

/* появление при скролле (единый блок) */
.will-animate{ opacity:0; transform:translateY(14px); }
.will-animate.is-visible{ opacity:1; transform:translateY(0); transition:opacity .5s, transform .5s; }

/* уважение к reduce motion */
@media (prefers-reduced-motion: reduce){ *{ animation:none !important; transition:none !important; } }

/* ================================
   BUTTONS
================================== */
.ps-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:10px 16px; border-radius:12px; border:1px solid transparent;
  line-height:1.2; cursor:pointer; text-decoration:none; transition:.2s;
}
.ps-btn--lg{ padding:12px 20px; border-radius:14px; font-weight:600; }
.ps-btn--xl{ padding:14px 22px; border-radius:14px; font-weight:700; font-size:16px; }

.ps-btn--primary{ background:var(--ps-primary); color:#fff; box-shadow:0 8px 20px rgba(111,174,63,.25); }
.ps-btn--primary:hover{ filter:brightness(.97); transform:translateY(-1px); }

.ps-btn--ghost{ background:transparent; color:#16352a; border:1px solid #cfd9d1; }
.ps-btn--ghost:hover{ background:#f6faf7; }

.ps-btn--light{ background:#fff; color:#11331f; border:1px solid #dfe7df; box-shadow:0 10px 24px rgba(0,0,0,.06); }
.ps-btn--light:hover{ filter:brightness(.98); transform:translateY(-1px); }

/* спиннер на кнопке */
.ps-btn__spinner{ display:none; width:16px; height:16px; border-radius:50%; border:2px solid rgba(255,255,255,.6); border-top-color:#fff; }
.is-loading .ps-btn__spinner{ display:inline-block; animation:spin .8s linear infinite; }
@keyframes spin{ to{ transform:rotate(360deg) } }

/* ================================
   HERO (фон с руками + тёмная вуаль)
   В index.php фон задаётся inline: style="background-image:url('.../main-bg.jpg')"
================================== */
.ps-hero{ position:relative; overflow:hidden; padding:clamp(48px,8vw,96px) 0 56px; }
.ps-hero.ps-hero--image{
  min-height:clamp(420px,78vh,760px);
  background-repeat:no-repeat; background-position:center; background-size:cover;
  display:grid; align-items:end;
}
.ps-hero--image .ps-hero__overlay{
  position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(90deg, rgba(12,20,17,.88) 0%, rgba(12,20,17,.68) 45%, rgba(12,20,17,.38) 70%, rgba(12,20,17,0) 100%),
    radial-gradient(1200px 240px at 0% 0%, rgba(0,0,0,.10), rgba(0,0,0,0) 60%);
}
.ps-hero__title{ color:#fff; text-shadow:0 8px 26px rgba(0,0,0,.35); }
.ps-hero__subtitle{ color:#eef5f1; text-shadow:0 6px 18px rgba(0,0,0,.3); }
.ps-hero__actions{ display:flex; gap:12px; flex-wrap:wrap; margin:18px 0 16px; }
.ps-hero__bullets{ display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 0; padding:0; list-style:none; }
.ps-hero__bullets li{ padding:6px 10px; border-radius:999px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25); color:#fff; font-size:13px; }
.ps-hero__scroll{ position:absolute; left:50%; bottom:10px; transform:translateX(-50%); color:#fff; opacity:.9; }

/* ================================
   FINAL CTA BANNER (белый в тон странице)
================================== */
.ps-cta-band{
  padding:48px 0 64px; background:#fff; color:#11331f; text-align:center;
  border-top:1px solid #e9efe9; border-bottom:1px solid #e9efe9;
}
.ps-cta-band__title{ font-size:clamp(22px,3.2vw,32px); font-weight:800; margin:0 0 6px; }
.ps-cta-band__desc{ margin:0 0 14px; color:#2a3c33; }
.ps-cta-band__actions{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }

/* ================================
   STEPS (твои «Шаги обучения») — без изменений логики, только чистка
================================== */
.steps-flow{ padding:44px 0 60px; }
.steps-flow__title{ margin:0 0 22px; font-size:28px; }
@media (max-width:560px){ .steps-flow__title{ font-size:24px } }

.steps{
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; counter-reset:step; align-items:stretch;
}
@media(max-width:1000px){ .steps{ grid-template-columns:repeat(2,1fr) } }
@media(max-width:560px){ .steps{ grid-template-columns:1fr } }

.step{
  position:relative; display:flex; flex-direction:column; gap:10px;
  background:#fff; border-radius:16px; padding:18px 16px;
  border:1px solid rgba(16,24,40,.06); box-shadow:0 8px 28px -18px rgba(16,24,40,.3);
  min-height:150px; transition:transform .15s, box-shadow .2s;
}
.step:hover{ transform:translateY(-2px); box-shadow:0 16px 36px -20px rgba(16,24,40,.35); }
.step:before{
  counter-increment:step; content:counter(step);
  position:absolute; left:16px; top:-18px; width:38px; height:38px; border-radius:999px;
  display:grid; place-items:center; color:#fff; font-weight:800; font-size:16px;
  background:linear-gradient(90deg, var(--ps-primary), #228c3b); box-shadow:0 10px 24px -12px rgba(26,143,46,.28);
}
.step__title{ margin:8px 0 4px; font-size:20px; line-height:1.25; color:#16352a; }
.step__text{ margin:0; color:#667085; font-size:16px; }

/* ================================
   LOUD CTA (зелёная карточка) — если используешь этот блок на других страницах
================================== */
.cta-loud{ padding:64px 0 86px; }
.cta-loud__inner{
  background:linear-gradient(135deg, var(--ps-primary) 0%, #449c35 60%, #0c7a22 100%);
  color:#fff; border-radius:24px; padding:32px 28px;
  display:flex; flex-wrap:wrap; gap:18px; align-items:center; justify-content:space-between;
  box-shadow:0 24px 60px -28px rgba(26,143,46,.45);
}
.cta-loud__title{ margin:0; font-size:32px; line-height:1.2 }
.cta-loud__subtitle{ margin:8px 0 0; opacity:.95; font-size:18px }
@media(max-width:640px){ .cta-loud__title{ font-size:26px } .cta-loud__subtitle{ font-size:16px } }
.cta-loud__actions{ display:flex; flex-wrap:wrap; gap:12px }
.btn-white{ background:#fff; color:#0b1220; text-decoration:none; border-radius:12px; padding:12px 18px; font-weight:600; box-shadow:0 10px 26px -14px rgba(0,0,0,.08) }
.btn-outline-white{ background:transparent; color:#fff; text-decoration:none; border-radius:12px; padding:12px 18px; border:1px solid rgba(255,255,255,.7) }
.btn-white:hover,.btn-outline-white:hover{ transform:translateY(-1px) }

/* ================================
   FOOTER (тёмный) — только новая система .ps-footer
================================== */
.ps-footer{ background:#0b1210; color:#dbe7e2; }
.ps-footer__container{ max-width:1200px; margin:0 auto; padding:0 16px; }
.ps-footer__cta{ background:linear-gradient(180deg, rgba(111,174,63,.15), rgba(111,174,63,0)); border-bottom:1px solid rgba(255,255,255,.06); }
.ps-footer__cta .ps-footer__container{ display:flex; align-items:center; justify-content:space-between; padding:18px 16px; }
.ps-footer__cta-text{ color:#e9f6ef; font-size:18px; }

.ps-footer__main{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; padding:28px 16px 40px; }
@media (max-width:960px){ .ps-footer__main{ grid-template-columns:repeat(2,1fr) } }
@media (max-width:560px){ .ps-footer__main{ grid-template-columns:1fr } }

.ps-footer__logo img{ display:block; filter:drop-shadow(0 4px 10px rgba(0,0,0,.25)); }
.ps-footer__title{ color:#dff0ea; font-weight:700; margin:4px 0 10px; }
.ps-footer__menu{ display:grid; gap:8px; }
.ps-footer__menu a{ color:#cbdad5; text-decoration:none; }
.ps-footer__menu a:hover{ color:#9fd27a; }
.ps-footer__socials{ margin-bottom:14px; }
.ps-footer__copy{ color:#9fb1aa; font-size:13px; }
.ps-chips{ display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 16px; padding:0; list-style:none; }
.ps-chips a, .ps-chips span{
  display:inline-flex; align-items:center; gap:8px; padding:8px 10px; border-radius:999px;
  background:rgba(255,255,255,.06); color:#e6f1ec; border:1px solid rgba(255,255,255,.12); text-decoration:none; transition:.15s;
}
.ps-chips a:hover{ background:rgba(255,255,255,.12); transform:translateY(-1px); box-shadow:0 6px 18px rgba(0,0,0,.35); }

/* ================================
   MODAL (ps-modal) — используется в футере
================================== */
.ps-modal{ position:fixed; inset:0; z-index:999; display:none; opacity:0; transition:opacity .25s; }
.ps-modal.is-open{ display:block; opacity:1; }
.ps-modal__backdrop{ position:absolute; inset:0; background:rgba(8,16,12,.65); backdrop-filter:blur(2px); opacity:0; transition:opacity .25s; }
.ps-modal.is-open .ps-modal__backdrop{ opacity:1; }
.ps-modal__card{
  position:relative; z-index:1; width:min(92vw,420px); margin:6vh auto 0;
  background:rgba(20,30,24,.95); border:1px solid rgba(255,255,255,.08); border-radius:20px; box-shadow:var(--ps-shadow); padding:22px;
  transform:translateY(14px) scale(.98); opacity:.96; transition:transform .28s cubic-bezier(.2,.7,.2,1), opacity .28s;
}
.ps-modal.is-open .ps-modal__card{ transform:translateY(0) scale(1); opacity:1; }
.ps-modal__close{
  position:absolute; top:10px; right:12px; width:34px; height:34px; border-radius:50%;
  border:1px solid rgba(255,255,255,.2); background:transparent; color:#e9f6ef; font-size:20px; cursor:pointer;
}
.ps-modal__close:hover{ background:rgba(255,255,255,.06); }

.ps-form{ display:grid; gap:14px; }
.ps-form__title{ font-size:20px; font-weight:700; color:#f0faf5; text-align:center; margin-bottom:4px; }
.ps-field{ display:grid; gap:6px; }
.ps-field__label{ color:#9fb1a7; font-size:14px; }
.ps-field__input{
  height:48px; border-radius:12px; border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.06); color:#eaf3ee; padding:0 14px;
}
.ps-field__input:focus{ outline:none; border-color:var(--ps-primary); box-shadow:0 0 0 3px rgba(111,174,63,.18) }
.ps-check{ display:flex; align-items:center; gap:8px; color:#cfe0d9; font-size:13px; }
.ps-form__note{ font-size:14px; margin-top:2px; }
.ps-hidden{ position:absolute !important; left:-9999px !important; opacity:0 !important; }

/* ================================
   HEADER logo (чуть крупнее)
================================== */
.header__logo img, .header .logo img, .site-header .logo img{ width:210px !important; height:auto; }
@media (max-width:960px){
  .header__logo img, .header .logo img, .site-header .logo img{ width:170px !important; }
}
/* === HERO FIX: вернуть "большой" вид === */
.ps-hero.ps-hero--image{
  min-height: 86vh;                                   /* выше блок */
  padding: clamp(72px,10vw,140px) 0 clamp(48px,6vw,100px);
}
.ps-hero__container{ display:block; }                 /* чтобы ничего не ужимало в сетке */
.ps-hero__content{ max-width: 980px; }                /* шире контентная колонка */

.ps-hero__title{
  font-size: clamp(40px, 6.6vw, 92px);                /* БОЛЬШОЙ заголовок */
  font-weight: 900;
  letter-spacing: .2px;
  margin: 0 0 14px;
  color:#fff;
}
.ps-hero__subtitle{
  font-size: clamp(18px, 2.2vw, 26px);                /* крупнее подзаголовок */
  max-width: 920px;
  margin: 0 0 22px;
  color: #f1f6f3;
  text-shadow: 0 6px 18px rgba(0,0,0,.30);
}

/* крупнее кнопки именно в герое */
.ps-hero .ps-btn--xl{
  font-size: 18px;
  padding: 16px 24px;
  border-radius: 16px;
}

/* светлый ghost в герое (чтобы не казался "выключенным") */
.ps-hero .ps-btn--ghost{
  color:#fff;
  border-color: rgba(255,255,255,.70);
}
.ps-hero .ps-btn--ghost:hover{
  background: rgba(255,255,255,.12);
}

/* чипы под заголовком — читаемее и чуть крупнее */
.ps-hero__bullets li{
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.28);
  color:#fff;
  padding: 8px 12px;
  font-size: 14px;
}
/* === HERO: чуть компактнее === */
.ps-hero.ps-hero--image{
  min-height: 72vh;                                  /* было 86vh */
  padding: clamp(56px, 7vw, 110px) 0 clamp(40px, 5vw, 80px);
}
.ps-hero__content{ max-width: 900px; }               /* уже колонка */

.ps-hero__title{
  font-size: clamp(36px, 5.5vw, 72px);               /* было до 92px */
  margin: 0 0 12px;
}
.ps-hero__subtitle{
  font-size: clamp(16px, 1.9vw, 22px);               /* было до 26px */
  max-width: 860px;
  margin: 0 0 18px;
}

/* кнопки и «чипы» поменьше */
.ps-hero .ps-btn--xl{
  font-size: 16px;
  padding: 14px 20px;
  border-radius: 14px;
}
.ps-hero__bullets li{
  padding: 7px 10px;
  font-size: 13px;
}
.ps-hero__title{ font-size: clamp(34px, 4.8vw, 60px); }
/* HERO — на весь экран + чуть «зум» и фокус на руки */
.ps-hero.ps-hero--image{
  /* вся высота окна: кросс-браузер */
  min-height: 100vh;                 /* fallback */
  min-height: 100svh;                /* iOS Safari (малый вьюпорт) */
}
@supports (height: 100dvh){
  .ps-hero.ps-hero--image{ min-height: 100dvh; }  /* современные браузеры */
}

/* чтобы не было 1px просвета между героем и следующим блоком */
.ps-hero{ margin-bottom: -1px; }

/* чуть сильнее масштаб и более удачный кадр по вертикали */
.ps-hero.ps-hero--image{
  background-size: cover;
  background-position: center 35%;   /* смещаем фокус немного вверх */
}

/* вертикальные отступы геро-контента, чтобы не прилипал к краям */
.ps-hero.ps-hero--image{
  padding-top: clamp(60px, 10vh, 140px);
  padding-bottom: clamp(36px, 6vh, 90px);
}

/* HERO: контент в "стеклянной" плашке снизу */
.ps-hero{ display:grid; align-items:end; }
.ps-hero__container{ width:100%; }

.ps-hero__content{
  position:relative;
  max-width: 980px;                       /* ширина карточки */
  margin: 0 0 clamp(26px,5vh,54px);       /* отступ от низа */
  padding: clamp(18px,2.2vw,28px) clamp(18px,3vw,32px);
  background: rgba(12,20,17,.55);         /* тёмное стекло */
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 28px;
  backdrop-filter: blur(8px) saturate(120%);
  -webkit-backdrop-filter: blur(8px) saturate(120%);
  box-shadow: 0 30px 80px rgba(0,0,0,.35);
}

/* мягкое "свечение" под карточкой, чтобы она отделялась от фона */
.ps-hero__content::after{
  content:"";
  position:absolute;
  inset: -18px -22px -24px -22px;         /* чуть больше самой карточки */
  border-radius: 38px;
  background: radial-gradient(80% 120% at 30% 110%, rgba(0,0,0,.42), rgba(0,0,0,0) 65%);
  filter: blur(14px);
  z-index: -1;
}

/* усилить затемнение именно в зоне контента (для читаемости) */
.ps-hero.ps-hero--image .ps-hero__overlay{
  background:
    /* базовая диагональная вуаль */
    linear-gradient(90deg, rgba(12,20,17,.88) 0%, rgba(12,20,17,.68) 45%, rgba(12,20,17,.38) 70%, rgba(12,20,17,0) 100%),
    /* локальное затемнение вокруг нижней левой трети */
    radial-gradient(60vw 42vh at 26% 78%, rgba(0,0,0,.48), rgba(0,0,0,0) 72%),
    radial-gradient(1200px 240px at 0% 0%, rgba(0,0,0,.10), rgba(0,0,0,0) 60%);
}

/* немножко компактнее элементы в карточке */
.ps-hero .ps-btn--xl{ font-size:16px; padding:14px 20px; border-radius:14px; }
.ps-hero__bullets{ margin-top: 12px; }
.ps-hero__bullets li{ padding:7px 10px; font-size:13px; }

/* адаптив: на мобильных карточка на всю ширину с меньшим радиусом */
@media (max-width: 960px){
  .ps-hero__content{
    width: min(94vw, 760px);
    margin-inline: auto;
    border-radius: 20px;
  }
}
/* ===== GLOBAL HEADER OVERRIDE (быстрый единый фикс) ===== */
:root{
  --gh-top:0px;
  --gh-h:82px;
}

body{
  padding-top: calc(var(--gh-top) + var(--gh-h)) !important;
}

/* старый header превращаем в новый */
.header{
  position:fixed !important;
  top:var(--gh-top) !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  z-index:1300 !important;
  padding:10px 0 !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:none !important;
  background:
    radial-gradient(1200px 260px at 12% -55%, rgba(34,197,94,.30) 0%, rgba(34,197,94,0) 62%),
    radial-gradient(900px 240px at 82% -60%, rgba(56,189,248,.24) 0%, rgba(56,189,248,0) 62%),
    linear-gradient(180deg, rgba(2,6,23,.95) 0%, rgba(2,6,23,.84) 56%, rgba(2,6,23,.66) 100%) !important;
  backdrop-filter: blur(12px) saturate(135%);
}
.header.header_hidden-bg{ background:inherit !important; }

/* контейнер на всю ширину */
.header__container{
  max-width:none !important;
  width:100% !important;
  margin:0 !important;
  padding:0 clamp(12px,2.2vw,36px) !important;
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:16px !important;
}

/* лого */
.header__logo-image{max-width:none !important}
.header__logo-image img{height:38px !important; width:auto !important}

/* меню */
.header__menu{
  position:static !important;
  transform:none !important;
  opacity:1 !important;
  pointer-events:auto !important;
  color:#fff !important;
}
.header__menu .menu__list{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  font-size:16px !important;
}
.header__menu .menu__item{margin:0 !important; padding:0 !important}
.header__menu .menu__link,
.header__menu .menu__btn{
  height:42px !important;
  padding:0 14px !important;
  border-radius:12px !important;
  border:1px solid transparent !important;
  color:#fff !important;
  background:transparent !important;
  text-decoration:none !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  font-size:16px !important;
  line-height:1 !important;
}
.header__menu .menu__link:hover,
.header__menu .menu__btn:hover{
  background:rgba(255,255,255,.14) !important;
  border-color:rgba(255,255,255,.22) !important;
}
.header__menu .menu__btn::before{display:none !important}
.header__menu .menu__btn::after{
  content:"" !important;
  width:8px !important; height:8px !important;
  border-right:2px solid currentColor !important;
  border-bottom:2px solid currentColor !important;
  transform:rotate(45deg) translateY(-1px) !important;
}
.header__menu .menu__btn.active::after{
  transform:rotate(-135deg) translateY(-1px) !important;
}

/* dropdown */
.header__menu .submenu{
  position:absolute !important;
  top:calc(100% + 10px) !important;
  left:0 !important;
  min-width:760px !important;
  max-width:min(980px, calc(100vw - 40px)) !important;
  background:#fff !important;
  color:#0f172a !important;
  border:1px solid rgba(15,23,42,.14) !important;
  border-radius:16px !important;
  box-shadow:0 20px 50px rgba(2,6,23,.24) !important;
  padding:14px !important;
  display:none !important;
  z-index:1400 !important;
}
.header__menu .submenu.open{display:flex !important}
.header__menu .submenu__column-title{color:#0f172a !important; font-weight:900 !important}
.header__menu .submenu__link{color:#334155 !important}
.header__menu .submenu__link:hover{color:#0f172a !important; background:#f1f5f9 !important}

/* правая часть */
.header__actions{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 !important;
  flex:0 0 auto !important;
}
.header__phone,
.header__person,
.header__location-btn{
  height:42px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.26) !important;
  background:rgba(255,255,255,.12) !important;
  color:#fff !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:0 14px !important;
  text-decoration:none !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}
.header__phone{
  margin:0 !important;
  width:auto !important;
}
.header__phone::before{font-size:16px !important}
.header__phone span{display:inline !important}

.header__location{
  margin:0 !important;
  flex:0 0 auto !important;
}
.header__location::before{display:none !important}
.header__location-list{
  top:calc(100% + 8px) !important;
  left:0 !important;
  border:1px solid rgba(15,23,42,.14) !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#0f172a !important;
  box-shadow:0 16px 34px rgba(15,23,42,.20) !important;
}

/* бургер */
.icon-menu{
  display:none !important;
  margin:0 !important;
}

/* mobile */
@media (max-width:1100px){
  .header__container{
    grid-template-columns:auto 1fr auto !important;
    gap:10px !important;
    padding:0 12px !important;
  }

  .header__logo-image img{height:34px !important}
  .header__phone span{display:none !important}
  .header__location, .header__person{display:none !important}

  .icon-menu{
    display:block !important;
    width:42px !important;
    height:42px !important;
    border-radius:12px !important;
    border:1px solid rgba(255,255,255,.26) !important;
    background:rgba(255,255,255,.12) !important;
  }
  .icon-menu span, .icon-menu::before, .icon-menu::after{background:#fff !important}

  .header__menu{
    position:fixed !important;
    top:calc(var(--gh-top) + var(--gh-h) + 10px) !important;
    left:12px !important;
    right:12px !important;
    background:#fff !important;
    color:#0f172a !important;
    border:1px solid rgba(15,23,42,.14) !important;
    border-radius:16px !important;
    box-shadow:0 20px 50px rgba(2,6,23,.24) !important;
    padding:12px !important;
    max-height:calc(100dvh - var(--gh-top) - var(--gh-h) - 24px) !important;
    overflow:auto !important;
    opacity:0 !important;
    transform:translateY(-10px) scale(.98) !important;
    pointer-events:none !important;
  }
  .menu.active .header__menu,
  .header__menu.active,
  .menu-open .header__menu{
    opacity:1 !important;
    transform:none !important;
    pointer-events:auto !important;
  }

  .header__menu .menu__list{
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
  }
  .header__menu .menu__link,
  .header__menu .menu__btn{
    width:100% !important;
    justify-content:space-between !important;
    color:#0f172a !important;
    background:#f8fafc !important;
    border-color:#e2e8f0 !important;
  }

  .header__menu .submenu{
    position:static !important;
    min-width:0 !important;
    max-width:none !important;
    width:100% !important;
    margin-top:8px !important;
    border-radius:12px !important;
    box-shadow:none !important;
    border-color:#e2e8f0 !important;
  }
}

/* скрыть старые декоративные подложки/линии, если остались */
.ps-header-underlay, .about-v2__header-underlay{display:none !important}

