/* ==========================================================================
   header-pt.css v2 — единый хедер new-sst.ru, светлая PT-стилистика (VX6).
   База: VD2 (2026-09-19). v2: sticky-сжатие 72→64px, мега v2 (группы 11px
   uppercase, чипы #EEF2F7, заголовки 15px/описания 13px, hover-стрелка «→»,
   featured-ячейка navy), бейдж 243-ФЗ, активная точка 4px, плавные
   мобильные аккордеоны (высота). Палитра: #FFF / navy #0B1F3A / CTA #E30613.
   Без зависимостей. Префикс .pt- изолирует от base.css/landing.css.
   ========================================================================== */

.pt-topbar,
.pt-header,
.pt-topbar *,.pt-header *{box-sizing:border-box;margin:0;padding:0}

.pt-topbar{background:#0B1F3A;color:#fff;font-size:13px;line-height:1}
.pt-topbar__in{max-width:1280px;margin:0 auto;padding:0 20px;height:38px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.pt-topbar__brand{display:flex;align-items:center;gap:8px;color:#C7D2E1;white-space:nowrap}
.pt-topbar__dot{width:6px;height:6px;border-radius:50%;background:#E30613;flex:none}
.pt-topbar__ecos{color:#fff;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
.pt-topbar__ecos:hover,.pt-topbar__ecos:focus-visible{border-bottom-color:#fff}
.pt-topbar__contacts{display:flex;align-items:center;gap:8px;white-space:nowrap}
.pt-topbar__link{color:#fff;text-decoration:none}
.pt-topbar__link:hover,.pt-topbar__link:focus-visible{color:#FFD3D5}
.pt-topbar__sep{color:rgba(255,255,255,.4)}

/* ---------- Основная строка ---------- */
.pt-header{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid #E2E8F0;transition:box-shadow .25s ease}
.pt-header.pt-scrolled{box-shadow:0 6px 22px rgba(11,31,58,.08)}
.pt-header__in{max-width:1280px;margin:0 auto;padding:0 20px;height:72px;display:flex;align-items:center;gap:24px;transition:height .25s ease}

/* Логотип */
.pt-logo{display:flex;align-items:center;gap:11px;text-decoration:none;flex:none}
.pt-logo__mark{width:36px;height:36px;border-radius:9px;background:#0B1F3A;color:#fff;font:700 19px/36px "Inter",Arial,sans-serif;text-align:center;letter-spacing:.02em;transition:width .25s ease,height .25s ease,font-size .25s ease,line-height .25s ease}
.pt-logo__text{display:flex;flex-direction:column;gap:1px;overflow:hidden}
.pt-logo__text strong{font:700 16px/1.1 "Inter",Arial,sans-serif;color:#0B1F3A;letter-spacing:.01em}
.pt-logo__text small{font:400 11px/1.2 "Inter",Arial,sans-serif;color:#64748B;letter-spacing:.02em;max-height:14px;opacity:1;transform:translateY(0);transition:max-height .25s ease,opacity .2s ease,transform .25s ease}

/* ---------- Sticky-сжатие (только >=1024, скролл >120px) ---------- */
@media (min-width:1024px){
  .pt-header.pt-header--compact{box-shadow:0 12px 32px rgba(11,31,58,.14)}
  .pt-header--compact .pt-header__in{height:64px}
  .pt-header--compact .pt-nav__link{height:64px}
  .pt-header--compact .pt-logo__mark{width:32px;height:32px;font:700 17px/32px "Inter",Arial,sans-serif}
  .pt-header--compact .pt-logo__text small{max-height:0;opacity:0;transform:translateY(-3px)}
}

/* Меню */
.pt-nav{margin-left:auto}
.pt-nav__list{display:flex;align-items:stretch;list-style:none;gap:2px}
.pt-nav__item{position:relative}
.pt-nav__link{display:inline-flex;align-items:center;gap:6px;height:72px;padding:0 11px;background:none;border:0;cursor:pointer;font:600 15px/1 "Inter",Arial,sans-serif;color:#334155;text-decoration:none;white-space:nowrap;transition:color .15s ease,height .25s ease}
.pt-nav__link:hover{color:#0B1F3A}
.pt-nav__link.is-active{color:#0B1F3A;box-shadow:inset 0 -2px 0 #1D4ED8}
/* Активный раздел: красная точка 4px перед названием + underline (box-shadow выше) */
.pt-nav__link.is-active::before{content:"";flex:none;width:4px;height:4px;border-radius:50%;background:#1D4ED8}
.pt-nav__link:focus-visible{outline:2px solid #E30613;outline-offset:-2px;border-radius:6px}
.pt-chevron{width:10px;height:7px;color:#94A3B8;transition:transform .2s ease;margin-top:2px}
.pt-nav__link[aria-expanded="true"]{color:#0B1F3A}
.pt-nav__link[aria-expanded="true"] .pt-chevron{transform:rotate(180deg)}

/* Бейдж-чип «243-ФЗ» в пункте «ИИ-решения» */
.pt-nav__badge{flex:none;font:700 10px/1 "Inter",Arial,sans-serif;font-style:normal;letter-spacing:.03em;color:#C40510;background:rgba(227,6,19,.09);border-radius:6px;padding:3px 5px;transform:translateY(-1px)}
.pt-nav__link:hover .pt-nav__badge{background:rgba(227,6,19,.14)}

/* Телефон + CTA */
.pt-header__phone{font:600 14.5px/1 "Inter",Arial,sans-serif;color:#0B1F3A;text-decoration:none;white-space:nowrap}
.pt-header__phone:hover,.pt-header__phone:focus-visible{color:#E30613}
.pt-btn--cta{display:inline-flex;align-items:center;justify-content:center;background:#E30613;color:#fff;font:700 14px/1 "Inter",Arial,sans-serif;text-decoration:none;padding:11px 18px;border-radius:10px;white-space:nowrap;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}
.pt-btn--cta:hover,.pt-btn--cta:focus-visible{background:#C40510;transform:translateY(-1px);box-shadow:0 8px 20px rgba(227,6,19,.32)}
.pt-btn--cta:active{transform:translateY(0)}
.pt-header .pt-btn--cta:focus-visible{outline:2px solid #0B1F3A;outline-offset:2px}

/* ---------- Мега-панель v2 ---------- */
.pt-mega,.pt-drop{position:absolute;top:calc(100% + 6px);left:0;display:none;background:#fff;border:1px solid #E2E8F0;border-radius:14px;box-shadow:0 16px 48px rgba(11,31,58,.16);z-index:1001}
.pt-mega{width:920px;max-width:calc(100vw - 24px);max-height:calc(100vh - 130px);overflow:auto;padding:14px}
#pt-mega-tech{width:720px}
.pt-nav__item--right .pt-mega,.pt-nav__item--right .pt-drop{left:auto;right:0}
.pt-mega.is-open,.pt-drop.is-open{display:block;animation:pt-in .18s ease both}
@keyframes pt-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.pt-mega.is-open,.pt-drop.is-open{animation:none}}

.pt-mega__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
#pt-mega-tech .pt-mega__grid{grid-template-columns:repeat(3,minmax(0,1fr))}

/* Заголовок группы: 11px uppercase, letterspacing .08em, slate */
.pt-mega__group{grid-column:1/-1;font:700 11px/1 "Inter",Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#64748B;padding:14px 12px 6px;user-select:none}
.pt-mega__group:first-child{padding-top:2px}

/* Ячейка мега v2: чип 34px #EEF2F7 r10, название 15px navy, описание 13px slate */
.pt-mcell{display:flex;align-items:flex-start;gap:11px;padding:12px;border-radius:12px;text-decoration:none;transition:background .15s ease,transform .15s ease}
.pt-mcell:hover,.pt-mcell:focus-visible{background:#F5F7FA;transform:translateX(2px)}
.pt-mcell:focus-visible{outline:2px solid #E30613;outline-offset:-2px}
.pt-mcell__chip{flex:none;width:34px;height:34px;border-radius:10px;background:#EEF2F7;border:1px solid #E2E8F0;display:inline-flex;align-items:center;justify-content:center;color:#0B1F3A;transition:background .15s ease,border-color .15s ease}
.pt-mcell__chip svg{width:19px;height:19px}
.pt-mcell:hover .pt-mcell__chip,.pt-mcell:focus-visible .pt-mcell__chip{background:#fff;border-color:#CBD5E1}
.pt-mcell__body{display:flex;flex-direction:column;gap:3px;min-width:0}
.pt-mcell__title{font:600 15px/1.25 "Inter",Arial,sans-serif;color:#0B1F3A}
.pt-mcell__desc{font:400 13px/1.35 "Inter",Arial,sans-serif;color:#64748B}

/* Hover-стрелка «→» выезжает справа (без изменения разметки) */
.pt-mcell::after{content:"\2192";flex:none;align-self:center;margin-left:auto;font:600 15px/1 "Inter",Arial,sans-serif;color:#E30613;opacity:0;transform:translateX(-6px);transition:opacity .18s ease,transform .18s ease}
.pt-mcell:hover::after,.pt-mcell:focus-visible::after{opacity:1;transform:translateX(0)}

/* Hub-ячейка (обзор направления) — широкая полоса-интро над группами */
.pt-mcell--hub{grid-column:1/-1}
.pt-mcell--hub .pt-mcell__title{color:#E30613}
.pt-mcell--hub .pt-mcell__chip{background:#0B1F3A;border-color:#0B1F3A;color:#fff}
.pt-mcell--hub:hover .pt-mcell__chip,.pt-mcell--hub:focus-visible .pt-mcell__chip{background:#0B1F3A;border-color:#0B1F3A}

/* Featured-ячейка (одна на панель): navy-фон, белый текст, красный линк */
.pt-mcell--featured{grid-column:1/-1;margin-top:8px;background:#0B1F3A;border-radius:12px;transition:background .18s ease,transform .15s ease}
.pt-mcell--featured:hover,.pt-mcell--featured:focus-visible{background:#123059;transform:translateX(2px)}
.pt-mcell--featured::after{display:none}
.pt-mcell--featured .pt-mcell__chip{background:rgba(255,255,255,.14);border-color:transparent;color:#fff}
.pt-mcell--featured:hover .pt-mcell__chip,.pt-mcell--featured:focus-visible .pt-mcell__chip{background:rgba(255,255,255,.22);border-color:transparent}
.pt-mcell--featured .pt-mcell__title{color:#fff}
.pt-mcell--featured .pt-mcell__desc{color:rgba(255,255,255,.72)}
.pt-mcell__cta{display:inline-flex;align-items:center;gap:5px;margin-top:2px;font:700 13px/1.2 "Inter",Arial,sans-serif;color:#FF6B72}
.pt-mcell__cta span{transition:transform .18s ease}
.pt-mcell--featured:hover .pt-mcell__cta span,.pt-mcell--featured:focus-visible .pt-mcell__cta span{transform:translateX(3px)}

.pt-mega__all{display:block;margin:8px 4px 2px;padding:10px 6px 4px;border-top:1px solid #E2E8F0;font:600 13.5px/1 "Inter",Arial,sans-serif;color:#0B1F3A;text-decoration:none}
.pt-mega__all:hover,.pt-mega__all:focus-visible{color:#E30613}

/* ---------- Dropdown (Цены / Компания) ---------- */
.pt-drop{width:320px;padding:8px}
.pt-drop__list{list-style:none}
.pt-drop__list a{display:flex;align-items:center;min-height:44px;padding:8px 12px;border-radius:9px;font:500 14px/1.3 "Inter",Arial,sans-serif;color:#334155;text-decoration:none;transition:background .15s ease,transform .15s ease}
.pt-drop__list a:hover,.pt-drop__list a:focus-visible{background:#F5F7FA;color:#0B1F3A;transform:translateX(2px)}
.pt-drop__list a:focus-visible{outline:2px solid #E30613;outline-offset:-2px}

/* ---------- Бургер (скрыт >=1024) ---------- */
.pt-burger{display:none;position:relative;width:44px;height:44px;margin-right:-8px;background:none;border:0;border-radius:10px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.pt-burger:focus-visible{outline:2px solid #E30613;outline-offset:1px}
.pt-burger__bar{display:block;width:22px;height:2px;border-radius:2px;background:#0B1F3A;transition:transform .22s ease,opacity .18s ease}
.pt-burger[aria-expanded="true"] .pt-burger__bar:nth-child(1){transform:translateY(6px) rotate(45deg)}
.pt-burger[aria-expanded="true"] .pt-burger__bar:nth-child(2){opacity:0}
.pt-burger[aria-expanded="true"] .pt-burger__bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.pt-burger__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pt-nav__mobilefoot{display:none}

/* ---------- Мобильная версия <1024 ---------- */
@media (max-width:1023px){
  html,body{overflow-x:hidden;overflow-x:clip}
  .pt-header__in{height:64px;gap:14px}
  .pt-nav__link{height:64px}
  .pt-header__phone,.pt-header .pt-btn--cta{display:none}
  .pt-burger{display:flex}
  /* The topbar remains in flow at page top (44px after the mobile hitbox fix).
     Once the sticky header is pinned, it is the only fixed layer above content. */
  .pt-nav{position:fixed;top:108px;right:0;bottom:0;left:0;margin:0;background:#fff;overflow-y:auto;overflow-x:clip;-webkit-overflow-scrolling:touch;padding:8px 20px 24px;transform:translateX(102%);visibility:hidden;transition:transform .28s ease,visibility .28s;z-index:11010;display:flex;flex-direction:column}
  .pt-header.pt-scrolled.pt-open .pt-nav{top:64px}
  .pt-header.pt-open .pt-nav{transform:none;visibility:visible}
  .pt-nav__list{display:block}
  .pt-nav__item{border-bottom:1px solid #EEF2F7}
  .pt-nav__link{width:100%;justify-content:space-between;height:52px;padding:0 2px;font-size:17px}
  .pt-nav__badge{font-size:9.5px}
  .pt-chevron{width:14px;height:9px;color:#0B1F3A}
  /* Аккордеоны: плавная анимация высоты (max-height задаёт JS, .is-open — opacity) */
  .pt-mega,.pt-drop{position:static;display:block;width:auto;max-width:none;max-height:0;overflow:hidden;opacity:0;border:0;border-radius:0;box-shadow:none;padding:0 0 10px;background:#fff;transition:max-height .34s cubic-bezier(.4,0,.2,1),opacity .26s ease;animation:none}
  .pt-mega.is-open,.pt-drop.is-open{opacity:1;animation:none}
  #pt-mega-tech{width:auto}
  .pt-mega__grid{grid-template-columns:1fr;gap:2px}
  .pt-mega__group{padding:12px 2px 4px;font-size:10.5px}
  .pt-mcell{padding:9px 2px;border-radius:8px;min-height:48px}
  .pt-mcell:hover{transform:none}
  .pt-mcell::after{display:none}
  .pt-mcell__title{font-size:15px}
  .pt-mcell__desc{font-size:12.5px}
  .pt-mcell--featured{padding:12px 10px;border-radius:10px}
  .pt-drop__list a{min-height:48px;font-size:15px}
  .pt-mega__all{border-top:0;padding-top:2px;font-size:15px}
  .pt-nav__mobilefoot{display:flex;flex-direction:column;gap:12px;margin-top:22px}
  .pt-nav__mobilephone{font:700 22px/1.15 "Inter",Arial,sans-serif;color:#0B1F3A;text-decoration:none}
  .pt-nav__mobilephone:hover,.pt-nav__mobilephone:focus-visible{color:#E30613}
  .pt-nav__mobilemail{font:500 15px/1 "Inter",Arial,sans-serif;color:#64748B;text-decoration:none}
  .pt-btn--block{width:100%;padding:15px 18px;font-size:15px}
  html.pt-lock,html.pt-lock body{overflow:hidden}
}
@media (max-width:1279px) and (min-width:1024px){
  .pt-header__in,.pt-topbar__in{padding:0 16px}
  .pt-nav__link{padding:0 8px}
  .pt-mega{width:760px}
  #pt-mega-tech{width:620px}
}
@media (max-width:559px){
  .pt-topbar__brand{font-size:12px}
  .pt-topbar__sep,.pt-topbar__link[href^="mailto:"]{display:none}
  .pt-topbar__in{min-height:44px;height:auto}
  .pt-topbar__ecos,.pt-topbar__link{display:inline-flex;align-items:center;min-height:44px}
  .pt-topbar__in{padding:0 14px}
  .pt-header__in{padding:0 14px}
  .pt-nav{padding:8px 14px 24px}
}
@media (max-width:409px){
  .pt-topbar{font-size:12px}
  .pt-topbar__in{gap:10px;padding:0 12px}
}
@media (prefers-reduced-motion:reduce){
  .pt-header,.pt-nav,.pt-mcell,.pt-btn--cta,.pt-chevron,.pt-burger__bar,.pt-header__in,.pt-nav__link,.pt-logo__mark,.pt-logo__text small,.pt-mcell__cta span{transition:none}
  .pt-mega.is-open,.pt-drop.is-open{animation:none}
  .pt-mega,.pt-drop{transition:none}
}
/* Reduced motion + мобильный аккордеон: открыть мгновенно, без max-height */
@media (max-width:1023px) and (prefers-reduced-motion:reduce){
  .pt-mega.is-open,.pt-drop.is-open{max-height:none;overflow:visible}
}

/* ==========================================================================
   VX-HOTFIX 13 (Z57 МОБАЙЛ-ПОЛИШ, 20.09) — зона хедера, append-only.
   13a) Топбар ≤409px: слоган + телефон не помещались (контент выступал
        ~7px вправо → горизонтальный скролл при 360px). Компактный шаг
        типографики вместо скрытия контента.
   13b) Страницы новых кластеров без inline SVG-знака (осталось 41 шт.:
        243-fz, kejsy Z36, ai Z35 и др. — HTML в зоне волны A2, не трогаем):
        рендерим официальный SVG-знак логотипа через background, текстовый
        «Н» скрываем. Страницы с .pt-logo__mark--svg не затронуты (:not).
   ========================================================================== */
@media (max-width:409px){
  .pt-topbar{font-size:12px}
  .pt-topbar__in{gap:10px;padding:0 12px}
}
.pt-header .pt-logo__mark:not(.pt-logo__mark--svg){
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cdefs%3E%3ClinearGradient id='nstlg' x1='0' y1='0' x2='40' y2='40' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%2316355F'/%3E%3Cstop offset='1' stop-color='%23081A30'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='1' y='1' width='38' height='38' rx='10' fill='url(%23nstlg)'/%3E%3Crect x='1.5' y='1.5' width='37' height='37' rx='9.5' stroke='rgba(255,255,255,.16)' stroke-width='1'/%3E%3Cpath d='M13 11.5V28.5M27 11.5V28.5M13 20h11' stroke='%23FFFFFF' stroke-width='3.6' stroke-linecap='round'/%3E%3Ccircle cx='27' cy='20' r='3.1' fill='%235B9DFF'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
  font-size:0;letter-spacing:0;
}
