/* ======================================================================
   AKPP Market — тема v2 (шапка, подвал, главная, каталог, товар, поиск,
   404, кабинет). Токены — в :root. BEM, префикс akpp-.
   Шрифты: Geologica (заголовки) + Onest (текст). Иконки: Font Awesome 6.
   ====================================================================== */

:root{
  --akpp-accent:#2F67FD;
  --akpp-accent-hover:#1F55E8;
  --akpp-accent-deep:#173FB8;
  --akpp-accent-soft:rgba(47,103,253,.10);
  --akpp-accent-line:rgba(47,103,253,.22);
  --akpp-ink:#2A2F37;
  --akpp-ink-2:#353B45;
  --akpp-text:#1C1F26;
  --akpp-muted:#5B6573;
  --akpp-line:#E2E5EA;
  --akpp-border:rgba(15,23,42,.08);
  --akpp-bg-soft:#F4F5F7;
  --akpp-bg-tint:#ECEEF2;
  --akpp-icon-bg:#EEF0F4;
  --akpp-card:#FFFFFF;
  --akpp-ok:#168F4E;
  --akpp-ok-soft:#E6F6EC;
  --akpp-warn:#B86A0B;
  --akpp-warn-soft:#FFF3E3;
  --akpp-err:#B42318;
  --akpp-wa:#25D366;
  --akpp-wa-dark:#128C7E;
  --akpp-radius:16px;
  --akpp-radius-sm:10px;
  --akpp-radius-btn:12px;
  --akpp-shadow:0 12px 28px rgba(15,23,42,.06);
  --akpp-shadow-accent:0 16px 36px rgba(47,103,253,.16);
  --akpp-font-head:"Geologica","Onest",system-ui,-apple-system,"Segoe UI",sans-serif;
  --akpp-font-text:"Onest",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --akpp-container:1240px;
  --akpp-gutter:24px;
  --akpp-topbar-h:38px;
}

/* ---------- Нормализация (без родительской темы) ---------- */
*, *::before, *::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{ margin:0; }
h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd{ margin-top:0; }
ul, ol{ padding-left:1.2em; }
button, input, select, textarea{ font:inherit; margin:0; color:inherit; }
button{ cursor:pointer; }
a{ background-color:transparent; }
img, svg, video{ vertical-align:middle; }
table{ border-collapse:collapse; }
summary{ display:list-item; }
[hidden]{ display:none; }
.akpp i[class^="fa-"], .akpp i[class*=" fa-"]{ line-height:1; }

/* ---------- База ---------- */
html{ scroll-behavior:smooth; }
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } *{ transition-duration:.01ms !important; animation-duration:.01ms !important; } }
body.akpp{
  margin:0;
  font-family:var(--akpp-font-text);
  font-size:16px;
  line-height:1.55;
  color:var(--akpp-text);
  background:#fff;
  -webkit-font-smoothing:antialiased;
}
:where(body.akpp) :is(h1, h2, h3, h4){
  font-family:var(--akpp-font-head);
  font-weight:700;
  line-height:1.15;
  letter-spacing:-0.015em;
  color:var(--akpp-text);
  margin:0;
}
:where(body.akpp) a{ color:var(--akpp-accent); text-decoration:none; }
:where(body.akpp) img{ max-width:100%; height:auto; }
body.akpp :focus-visible{ outline:2px solid var(--akpp-accent); outline-offset:2px; }
body.akpp button{ font-family:inherit; }
.akpp-container{ width:100%; max-width:calc(var(--akpp-container) + var(--akpp-gutter) * 2); margin:0 auto; padding:0 var(--akpp-gutter); box-sizing:border-box; }
.akpp-skip{ position:absolute; left:-9999px; top:8px; z-index:1000; background:var(--akpp-ink); color:#fff; padding:8px 14px; border-radius:8px; }
.akpp-skip:focus{ left:8px; }
.akpp-main{ display:block; min-height:40vh; }

/* Секции и заголовки */
.akpp-sec{ padding:64px 0; }
.akpp-sec--models{ padding-top:56px; }
.akpp-sec--types{ padding-top:0; }
.akpp-sec--promo{ padding-top:0; }
.akpp-sec--service{ padding-top:0; }
.akpp-sec__head{ display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin:0 0 28px; }
.akpp-sec__title{ font-size:clamp(26px,3vw,38px); margin:8px 0 0; }
.akpp-sec__more{ display:inline-flex; align-items:center; gap:8px; font-weight:600; font-size:15px; color:var(--akpp-accent); white-space:nowrap; }
.akpp-sec__more i{ transition:transform .18s ease; }
.akpp-sec__more:hover i{ transform:translateX(4px); }
.akpp-sec__more-mobile{ display:none; margin-top:20px; }
.akpp-eyebrow{ display:inline-flex; align-items:center; gap:12px; color:var(--akpp-accent); font-size:13px; font-weight:700; letter-spacing:1.4px; text-transform:uppercase; }
.akpp-eyebrow::before{ content:""; width:28px; height:2px; background:currentColor; flex:0 0 auto; }

/* ---------- Кнопки ---------- */
.akpp-btn, a.akpp-btn, button.akpp-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  padding:13px 22px; border-radius:var(--akpp-radius-btn);
  font-family:var(--akpp-font-text); font-weight:600; font-size:15.5px; line-height:1.2;
  text-decoration:none; border:1px solid transparent; cursor:pointer; white-space:nowrap;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease;
  box-shadow:none; -webkit-appearance:none; appearance:none;
}
.akpp-btn--primary, a.akpp-btn--primary, button.akpp-btn--primary{ background:var(--akpp-accent); color:#fff; border-color:var(--akpp-accent); }
.akpp-btn--primary:hover, a.akpp-btn--primary:hover, button.akpp-btn--primary:hover{ background:var(--akpp-accent-hover); border-color:var(--akpp-accent-hover); color:#fff; }
.akpp-btn--outline, a.akpp-btn--outline, button.akpp-btn--outline{ background:#fff; color:var(--akpp-text); border-color:var(--akpp-line); }
.akpp-btn--outline:hover, a.akpp-btn--outline:hover, button.akpp-btn--outline:hover{ border-color:var(--akpp-accent); color:var(--akpp-accent); }
.akpp-btn--ghost, a.akpp-btn--ghost{ background:transparent; color:#fff; border-color:rgba(255,255,255,.5); }
.akpp-btn--ghost:hover, a.akpp-btn--ghost:hover{ background:rgba(255,255,255,.12); border-color:#fff; color:#fff; }
.akpp-btn--white, a.akpp-btn--white{ background:#fff; color:var(--akpp-accent-deep); border-color:#fff; }
.akpp-btn--white:hover, a.akpp-btn--white:hover{ background:var(--akpp-bg-tint); border-color:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
.akpp-btn--wa, a.akpp-btn--wa{ background:var(--akpp-wa); color:#fff; border-color:var(--akpp-wa); }
.akpp-btn--wa:hover, a.akpp-btn--wa:hover{ background:var(--akpp-wa-dark); border-color:var(--akpp-wa-dark); color:#fff; }
.akpp-btn--sm, a.akpp-btn--sm, button.akpp-btn--sm{ padding:10px 14px; font-size:14px; border-radius:10px; }
.akpp-btn--block, a.akpp-btn--block, button.akpp-btn--block{ width:100%; }
.akpp-btn i{ font-size:.95em; }

/* На страницах Woo (.woocommerce на body) её стили кнопок сильнее — перебиваем явно */
body.akpp.woocommerce a.akpp-btn.button, body.akpp .woocommerce a.akpp-btn.button, body.akpp.woocommerce button.akpp-btn.button{ background:var(--akpp-accent); color:#fff; border:1px solid var(--akpp-accent); padding:10px 14px; font-size:14px; border-radius:10px; font-weight:600; line-height:1.2; display:inline-flex; align-items:center; gap:9px; }
body.akpp.woocommerce a.akpp-btn.button:hover, body.akpp .woocommerce a.akpp-btn.button:hover{ background:var(--akpp-accent-hover); border-color:var(--akpp-accent-hover); color:#fff; }
body.akpp.woocommerce a.akpp-btn.button.loading{ opacity:.6; }
body.akpp.woocommerce a.akpp-btn.button.loading::after{ display:none; }

/* Чипы, наличие */
.akpp-chip{ display:inline-flex; align-items:center; gap:6px; padding:7px 12px; border-radius:999px; border:1px solid var(--akpp-line); background:#fff; color:var(--akpp-text); font-size:13.5px; font-weight:600; transition:border-color .15s ease,color .15s ease,background .15s ease; }
.akpp-chip small{ color:var(--akpp-muted); font-weight:500; }
.akpp-chip:hover{ border-color:var(--akpp-accent); color:var(--akpp-accent); }
.akpp-chip--accent{ background:var(--akpp-accent-soft); border-color:transparent; color:var(--akpp-accent-deep); }
.akpp-chip--accent:hover{ background:var(--akpp-accent); color:#fff; }
.akpp-chip.is-active{ background:var(--akpp-ink); border-color:var(--akpp-ink); color:#fff; }
.akpp-chip.is-active small{ color:rgba(255,255,255,.7); }
.akpp-chips__hint{ font-size:13px; color:var(--akpp-muted); align-self:center; }
.akpp-chips{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px; }
.akpp-avail{ display:inline-flex; align-items:center; gap:6px; font-size:13px; font-weight:600; white-space:nowrap; }
.akpp-avail::before{ content:""; width:8px; height:8px; border-radius:50%; background:currentColor; flex:0 0 auto; }
.akpp-avail--in{ color:var(--akpp-ok); }
.akpp-avail--order{ color:var(--akpp-muted); }
.akpp-avail--order::before{ background:transparent; border:1.5px solid var(--akpp-muted); width:7px; height:7px; }

/* ---------- Формы (общие) ---------- */
.akpp-form{ display:grid; gap:14px; position:relative; }
.akpp-form__row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.akpp-form__actions{ display:flex; flex-wrap:wrap; gap:12px; }
.akpp-field{ display:grid; gap:6px; }
.akpp-field[hidden]{ display:none; } /* иначе display:grid перебивает [hidden] (одинаковая специфичность, правило ниже) */
.akpp-field__label{ font-size:13px; font-weight:600; color:var(--akpp-muted); }
.akpp-field__label b{ color:var(--akpp-err); }
body.akpp .akpp-field__input{
  width:100%; box-sizing:border-box; padding:12px 14px; margin:0;
  border:1px solid var(--akpp-line); border-radius:var(--akpp-radius-btn); background:#fff; color:var(--akpp-text);
  font-family:inherit; font-size:15px; line-height:1.4; box-shadow:none; -webkit-appearance:none; appearance:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}
body.akpp .akpp-field__input:hover{ border-color:var(--akpp-accent-line); }
body.akpp .akpp-field__input:focus{ outline:none; border-color:var(--akpp-accent); box-shadow:0 0 0 4px var(--akpp-accent-soft); }
.akpp-field__input--area{ resize:vertical; min-height:96px; }
.akpp-consent{ display:flex; align-items:flex-start; gap:10px; color:var(--akpp-muted); font-size:13.5px; line-height:1.4; }
.akpp-consent input{ margin-top:3px; accent-color:var(--akpp-accent); }
.akpp-flash{ display:flex; gap:10px; align-items:flex-start; margin:0 0 16px; padding:12px 16px; border-radius:var(--akpp-radius-btn); font-size:14.5px; font-weight:600; }
.akpp-flash i{ margin-top:2px; }
.akpp-flash--ok{ background:var(--akpp-ok-soft); color:#0E6B3A; border:1px solid #BFE8CD; }
.akpp-flash--err{ background:#FDECEC; color:var(--akpp-err); border:1px solid #F5C2C0; }

/* ---------- Шапка ---------- */
.akpp-header{ position:sticky; top:calc(-1 * var(--akpp-topbar-h)); z-index:120; background:#fff; }
.akpp-topbar{ height:var(--akpp-topbar-h); background:var(--akpp-ink); color:rgba(255,255,255,.78); font-size:13px; }
.akpp-topbar__inner{ height:100%; display:flex; align-items:center; justify-content:space-between; gap:16px; overflow:hidden; white-space:nowrap; }
.akpp-topbar__right{ flex:0 0 auto; }
.akpp-topbar__list{ display:flex; gap:22px; margin:0; padding:0; list-style:none; }
.akpp-topbar__list li{ display:inline-flex; align-items:center; gap:7px; white-space:nowrap; }
.akpp-topbar__list i, .akpp-topbar__link i{ color:var(--akpp-accent); font-size:12px; }
.akpp-topbar__right{ display:flex; align-items:center; gap:18px; }
.akpp-topbar__link{ display:inline-flex; align-items:center; gap:7px; color:#fff; font-weight:600; }
.akpp-topbar__link:hover{ color:#fff; }
.akpp-topbar__link:hover span{ text-decoration:underline; }
.akpp-topbar__link small{ font-weight:400; color:rgba(255,255,255,.6); font-size:12px; }
.akpp-cur-switch{ display:inline-flex; gap:4px; }
.akpp-cur{ display:inline-block; padding:3px 8px; border-radius:7px; border:1px solid rgba(255,255,255,.18); color:rgba(255,255,255,.75); font-size:12px; font-weight:600; line-height:1.3; transition:background .15s ease,color .15s ease; }
.akpp-cur b{ font-weight:700; }
.akpp-cur:hover{ color:#fff; border-color:rgba(255,255,255,.4); }
.akpp-cur.is-active{ background:var(--akpp-accent); border-color:var(--akpp-accent); color:#fff; }

.akpp-header__main{ position:relative; border-bottom:1px solid var(--akpp-line); transition:box-shadow .25s ease; }
.akpp-header.is-scrolled .akpp-header__main{ box-shadow:0 8px 24px rgba(20,23,28,.08); }
.akpp-header__grid{ display:flex; align-items:center; gap:18px; height:82px; }
.akpp-burger{ display:none; }

.akpp-logo{ display:inline-flex; align-items:center; padding:8px 0; color:var(--akpp-text); flex:0 0 auto; }
.akpp-logo__text{ display:inline-block; font-family:var(--akpp-font-head); font-size:26px; line-height:1; letter-spacing:-0.02em; font-weight:700; white-space:nowrap; }
.akpp-logo__text b{ font-weight:800; color:var(--akpp-accent); }
.akpp-logo__img{ max-height:52px; width:auto; display:block; }
.akpp-logo--footer{ color:#fff; margin-bottom:14px; }
.akpp-logo--footer .akpp-logo__text b{ color:#fff; }
.akpp-logo--sm .akpp-logo__text{ font-size:22px; }

.akpp-catalog-btn__wrap{ position:static; flex:0 0 auto; }
.akpp-catalog-btn{ display:inline-flex; align-items:center; gap:10px; height:48px; padding:0 18px; border-radius:var(--akpp-radius-btn); background:var(--akpp-accent); color:#fff; font-weight:700; font-size:15.5px; transition:background .18s ease; }
.akpp-catalog-btn:hover, .akpp-catalog-btn.is-open{ background:var(--akpp-accent-hover); color:#fff; }
.akpp-catalog-btn__chev{ font-size:11px; transition:transform .2s ease; }
.akpp-catalog-btn.is-open .akpp-catalog-btn__chev{ transform:rotate(180deg); }

/* Мега-меню */
.akpp-mega{ position:absolute; left:0; right:0; top:100%; z-index:130; background:#fff; border-bottom:1px solid var(--akpp-line); box-shadow:0 30px 60px rgba(20,23,28,.14); opacity:0; transform:translateY(-8px); transition:opacity .2s ease, transform .24s cubic-bezier(.2,.7,.2,1); }
.akpp-mega.is-open{ opacity:1; transform:none; }
.akpp-mega[hidden]{ display:none; }
.akpp-mega__inner{ max-width:calc(var(--akpp-container) + var(--akpp-gutter) * 2); margin:0 auto; padding:26px var(--akpp-gutter) 30px; display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:32px; box-sizing:border-box; }
.akpp-mega__head{ display:flex; align-items:center; gap:16px; margin-bottom:14px; }
.akpp-mega__head .akpp-mega__all{ margin-left:auto; }
.akpp-mega__filter{ position:relative; flex:0 1 300px; display:flex; align-items:center; }
.akpp-mega__filter i{ position:absolute; left:12px; font-size:13px; color:var(--akpp-muted); pointer-events:none; }
body.akpp .akpp-mega__filter input{ width:100%; height:38px; padding:0 12px 0 34px; border:1px solid var(--akpp-line); border-radius:10px; background:var(--akpp-bg-soft); font-size:14px; }
body.akpp .akpp-mega__filter input:focus{ outline:none; border-color:var(--akpp-accent); background:#fff; }
.akpp-mega__empty{ margin:10px 0 0; padding:12px 14px; border-radius:10px; background:var(--akpp-bg-soft); color:var(--akpp-muted); font-size:14px; }
.akpp-mega__empty[hidden]{ display:none; }
.akpp-mega__grid li.is-hidden{ display:none; }
.akpp-mega__title{ display:block; font-family:var(--akpp-font-head); font-weight:700; font-size:15px; letter-spacing:.02em; text-transform:uppercase; color:var(--akpp-muted); margin-bottom:12px; }
.akpp-mega__head .akpp-mega__title{ margin:0; }
.akpp-mega__all{ font-weight:600; font-size:14px; display:inline-flex; gap:8px; align-items:center; }
.akpp-mega__grid{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px 16px; }
.akpp-mega__grid a{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 10px; border-radius:8px; color:var(--akpp-text); font-weight:600; font-size:14.5px; min-width:0; transition:background .15s ease,color .15s ease; }
.akpp-mega__grid a span{ min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.akpp-mega__grid a small{ flex:0 0 auto; color:var(--akpp-muted); font-weight:500; font-size:12.5px; }
.akpp-mega__grid a:hover{ background:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
.akpp-mega__side{ border-left:1px solid var(--akpp-line); padding-left:32px; }
.akpp-mega__types{ list-style:none; margin:0 0 18px; padding:0; display:grid; gap:2px; }
.akpp-mega__types a{ display:flex; align-items:center; gap:10px; padding:8px 10px; border-radius:10px; color:var(--akpp-text); font-size:14.5px; font-weight:500; transition:background .15s ease,color .15s ease; }
.akpp-mega__types i{ width:20px; display:inline-flex; justify-content:center; color:var(--akpp-accent); font-size:14px; }
.akpp-mega__types a:hover{ background:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
.akpp-mega__cta{ display:flex; gap:12px; align-items:center; padding:14px 16px; border-radius:var(--akpp-radius); background:var(--akpp-bg-soft); border:1px solid var(--akpp-line); color:var(--akpp-text); transition:border-color .18s ease; }
.akpp-mega__cta i{ font-size:22px; color:var(--akpp-accent); }
.akpp-mega__cta span{ display:flex; flex-direction:column; gap:2px; }
.akpp-mega__cta b{ font-size:14.5px; }
.akpp-mega__cta small{ color:var(--akpp-muted); font-size:12.5px; }
.akpp-mega__cta:hover{ border-color:var(--akpp-accent); color:var(--akpp-text); }

/* Поиск (двойной) */
.akpp-header__search{ flex:1 1 auto; min-width:0; }
.akpp-search{ display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:10px; }
.akpp-search__form{ position:relative; min-width:0; }
.akpp-search__label{ display:none; }
.akpp-search:not(.akpp-search--compact) .akpp-search__label{ display:block; font-size:13px; font-weight:600; color:var(--akpp-muted); margin-bottom:6px; }
.akpp-search__field{ position:relative; display:flex; align-items:center; min-width:0; }
.akpp-search__icon{ position:absolute; left:15px; color:var(--akpp-muted); font-size:14px; pointer-events:none; }
body.akpp .akpp-search__input{
  width:100%; box-sizing:border-box; height:48px; padding:0 46px 0 42px; margin:0;
  border:1px solid var(--akpp-line); border-radius:var(--akpp-radius-btn); background:var(--akpp-bg-soft); color:var(--akpp-text);
  font-family:inherit; font-size:15px; box-shadow:none; -webkit-appearance:none; appearance:none;
  transition:border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
body.akpp .akpp-search__input::placeholder{ color:#8C97A8; }
body.akpp .akpp-search__input:focus{ outline:none; background:#fff; border-color:var(--akpp-accent); box-shadow:0 0 0 4px var(--akpp-accent-soft); }
body.akpp .akpp-search__input::-webkit-search-cancel-button{ -webkit-appearance:none; }
.akpp-search__btn{ position:absolute; right:6px; width:36px; height:36px; display:grid; place-items:center; border:0; border-radius:9px; background:transparent; color:var(--akpp-muted); cursor:pointer; transition:background .15s ease,color .15s ease; }
.akpp-search__btn:hover{ background:var(--akpp-accent); color:#fff; }
.akpp-search:not(.akpp-search--compact) .akpp-search__input{ height:56px; font-size:16px; background:#fff; }
.akpp-search__drop{ position:absolute; left:0; right:0; top:calc(100% + 6px); z-index:140; background:#fff; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); box-shadow:0 24px 48px rgba(20,23,28,.14); max-height:380px; overflow:auto; padding:6px; visibility:hidden; opacity:0; transform:translateY(-4px); pointer-events:none; transition:opacity .18s ease, transform .2s ease, visibility 0s linear .2s; }
.akpp-search__drop.is-open{ visibility:visible; opacity:1; transform:none; pointer-events:auto; transition-delay:0s; }
.akpp-search__drop:empty{ display:none; }
.akpp-search__item{ display:flex; align-items:center; gap:12px; padding:10px 12px; border-radius:10px; color:var(--akpp-text); text-decoration:none; }
.akpp-search__item:hover, .akpp-search__item:focus{ background:var(--akpp-bg-tint); outline:none; }
.akpp-search__item i{ width:18px; text-align:center; color:var(--akpp-accent); flex:0 0 auto; }
.akpp-search__item span{ display:flex; flex-direction:column; min-width:0; }
.akpp-search__item b{ font-size:15px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.akpp-search__item small{ color:var(--akpp-muted); font-size:12.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.akpp-search__status{ padding:12px 14px; color:var(--akpp-muted); font-size:14px; }
.akpp-search__all{ display:block; margin:4px 6px 2px; padding:10px 12px; border-top:1px solid var(--akpp-line); font-weight:600; font-size:14px; color:var(--akpp-accent); }
.akpp-search__field--solo{ display:flex; }

/* Действия справа */
.akpp-header__actions{ display:flex; align-items:center; gap:6px; flex:0 0 auto; }
.akpp-hact{ display:inline-flex; align-items:center; gap:10px; padding:8px 12px; border-radius:var(--akpp-radius-btn); color:var(--akpp-text); background:transparent; border:0; cursor:pointer; position:relative; transition:background .15s ease,color .15s ease; }
.akpp-hact > i{ font-size:20px; color:var(--akpp-accent); }
.akpp-hact:hover{ background:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
.akpp-hact__text{ display:flex; flex-direction:column; line-height:1.15; text-align:left; }
.akpp-hact__text b{ font-size:14px; font-weight:600; max-width:130px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.akpp-hact__text small{ font-size:12px; color:var(--akpp-muted); }
.akpp-hact--search, .akpp-hact--phone{ display:none; }
.akpp-cart__count{ position:absolute; left:26px; top:4px; min-width:18px; height:18px; padding:0 5px; border-radius:999px; background:var(--akpp-accent); color:#fff; font-size:11px; font-weight:700; line-height:18px; text-align:center; box-sizing:border-box; display:none; }
.akpp-cart__count.is-visible{ display:block; }
@keyframes akppBump{ 0%{ transform:scale(1); } 40%{ transform:scale(1.4); } 100%{ transform:scale(1); } }
.akpp-cart__count.is-bump{ animation:akppBump .45s ease; }

/* Меню-строка */
.akpp-nav{ border-bottom:1px solid var(--akpp-line); background:#fff; }
.akpp-nav__inner{ display:flex; align-items:center; justify-content:space-between; gap:20px; height:50px; }
.akpp-nav__list{ display:flex; gap:4px; margin:0; padding:0; list-style:none; }
.akpp-nav__list a{ display:inline-flex; align-items:center; height:36px; padding:0 14px; border-radius:10px; color:var(--akpp-text); font-weight:600; font-size:15px; transition:background .15s ease,color .15s ease; }
.akpp-nav__list a:hover, .akpp-nav__list .current-menu-item > a, .akpp-nav__list .current_page_item > a{ background:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
.akpp-nav__cta{ display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:600; color:var(--akpp-accent-deep); white-space:nowrap; }
.akpp-nav__cta i{ color:var(--akpp-accent); }
/* Мобильный поиск: накладывается на контент под шапкой, не сдвигая его; сзади затемнение */
.akpp-msearch{ position:absolute; left:0; right:0; top:100%; z-index:5; background:var(--akpp-bg-soft); border-bottom:1px solid var(--akpp-line); padding:14px 0 16px; opacity:0; transform:translateY(-6px); transition:opacity .2s ease, transform .22s ease; }
.akpp-msearch-backdrop{ position:fixed; inset:0; z-index:110; background:rgba(20,24,32,.38); opacity:0; transition:opacity .2s ease; }
.akpp-msearch-backdrop.is-open{ opacity:1; }
.akpp-msearch-backdrop[hidden]{ display:none; }
.akpp-msearch.is-open{ opacity:1; transform:none; }
.akpp-msearch[hidden]{ display:none; }
.akpp-msearch .akpp-search{ grid-template-columns:1fr; }

/* Бургер и off-canvas */
.akpp-burger{ width:44px; height:44px; flex-direction:column; justify-content:center; gap:5px; border:1px solid var(--akpp-line); border-radius:10px; background:#fff; cursor:pointer; padding:0; align-items:center; }
.akpp-burger span{ width:20px; height:2px; background:var(--akpp-text); border-radius:2px; }
.akpp-overlay{ position:fixed; inset:0; z-index:200; background:rgba(20,23,28,.55); opacity:0; transition:opacity .22s ease; }
.akpp-overlay.is-open{ opacity:1; }
.akpp-overlay[hidden]{ display:none; }
.akpp-offcanvas{ position:fixed; top:0; left:0; bottom:0; z-index:210; width:min(360px,92vw); background:#fff; transform:translateX(-102%); transition:transform .28s cubic-bezier(.2,.7,.2,1); display:flex; flex-direction:column; box-shadow:20px 0 60px rgba(20,23,28,.2); }
.akpp-offcanvas[hidden]{ display:flex; }
.akpp-offcanvas.is-open{ transform:none; }
.akpp-offcanvas__head{ display:flex; align-items:center; justify-content:space-between; padding:14px 16px; border-bottom:1px solid var(--akpp-line); }
.akpp-offcanvas__close{ width:40px; height:40px; border:1px solid var(--akpp-line); border-radius:10px; background:#fff; cursor:pointer; font-size:18px; display:grid; place-items:center; }
.akpp-offcanvas__body{ overflow:auto; padding:12px 16px 24px; display:grid; gap:12px; align-content:start; }
.akpp-offcanvas__account{ display:flex; align-items:center; gap:12px; padding:12px 14px; border-radius:var(--akpp-radius-btn); background:var(--akpp-bg-soft); color:var(--akpp-text); }
.akpp-offcanvas__account i{ font-size:20px; color:var(--akpp-accent); }
.akpp-offcanvas__account span{ display:flex; flex-direction:column; line-height:1.2; }
.akpp-offcanvas__account small{ color:var(--akpp-muted); font-size:12.5px; }
.akpp-offcanvas__models-list{ list-style:none; margin:0; padding:0 0 4px; display:grid; gap:2px; }
.akpp-offcanvas__models-list a{ display:flex; justify-content:space-between; align-items:center; padding:9px 10px; border-radius:8px; color:var(--akpp-text); font-weight:500; }
.akpp-offcanvas__models-list a small{ color:var(--akpp-muted); }
.akpp-offcanvas__models-list a:hover{ background:var(--akpp-bg-tint); }
.akpp-offcanvas__all{ color:var(--akpp-accent) !important; font-weight:600 !important; }
.akpp-offcanvas__list{ list-style:none; margin:0; padding:0; border-top:1px solid var(--akpp-line); }
.akpp-offcanvas__list a{ display:block; padding:12px 6px; border-bottom:1px solid var(--akpp-line); color:var(--akpp-text); font-weight:600; font-size:16px; }
.akpp-offcanvas__contacts{ display:grid; gap:10px; margin-top:6px; }
.akpp-offcanvas__contacts p{ margin:6px 0 0; color:var(--akpp-muted); font-size:14px; line-height:1.7; }
.akpp-offcanvas__contacts p i{ color:var(--akpp-accent); width:18px; }

/* Аккордеон (details) — плавно через JS, стрелка через CSS */
.akpp-acc{ border:1px solid var(--akpp-line); border-radius:var(--akpp-radius-btn); background:#fff; overflow:clip; }
.akpp-acc__summary{ list-style:none; cursor:pointer; display:flex; align-items:center; gap:10px; padding:12px 14px; font-weight:600; font-size:15.5px; user-select:none; }
.akpp-acc__summary::-webkit-details-marker{ display:none; }
.akpp-acc__summary > i:first-child{ color:var(--akpp-accent); width:18px; text-align:center; }
.akpp-acc__chev{ margin-left:auto; font-size:12px; color:var(--akpp-muted); transition:transform .25s ease; }
.akpp-acc[open] .akpp-acc__chev{ transform:rotate(180deg); }
.akpp-acc__body{ padding:0 10px 10px; }

/* Модалка */
.akpp-modal{ position:fixed; inset:0; z-index:230; display:grid; place-items:center; padding:20px; background:rgba(20,23,28,.6); opacity:0; transition:opacity .2s ease; }
.akpp-modal.is-open{ opacity:1; }
.akpp-modal[hidden]{ display:none; }
.akpp-modal__box{ position:relative; width:min(560px,100%); max-height:calc(100vh - 40px); overflow:auto; background:#fff; border-radius:20px; padding:28px; box-sizing:border-box; box-shadow:0 40px 80px rgba(20,23,28,.3); transform:translateY(14px) scale(.98); transition:transform .26s cubic-bezier(.2,.7,.2,1); }
.akpp-modal.is-open .akpp-modal__box{ transform:none; }
.akpp-modal__close{ position:absolute; right:14px; top:14px; width:38px; height:38px; border:0; border-radius:10px; background:var(--akpp-bg-soft); cursor:pointer; font-size:17px; display:grid; place-items:center; }
.akpp-modal__close:hover{ background:var(--akpp-accent-soft); color:var(--akpp-accent); }
.akpp-modal__title{ font-size:24px; margin:0 40px 6px 0; }
.akpp-modal__product{ margin:0 0 18px; padding:10px 14px; border-radius:10px; background:var(--akpp-bg-soft); font-size:14.5px; font-weight:600; }
.akpp-modal__product small{ display:block; color:var(--akpp-muted); font-weight:500; }
.akpp-modal__product:empty{ display:none; }
.akpp-modal__actions{ display:flex; flex-wrap:wrap; gap:10px; margin-top:4px; }
.akpp-toast{ position:fixed; left:50%; bottom:24px; z-index:250; transform:translate(-50%,20px); opacity:0; background:var(--akpp-ink); color:#fff; padding:12px 18px; border-radius:12px; font-weight:600; font-size:14.5px; display:flex; gap:10px; align-items:center; box-shadow:0 20px 40px rgba(20,23,28,.3); transition:opacity .25s ease, transform .25s ease; pointer-events:none; max-width:calc(100vw - 32px); box-sizing:border-box; }
.akpp-toast.is-visible{ opacity:1; transform:translate(-50%,0); pointer-events:auto; }
.akpp-toast i{ color:var(--akpp-wa); }
.akpp-toast a{ color:#fff; text-decoration:underline; }

/* ---------- Главная: hero ---------- */
.akpp-hero-home{ position:relative; background:var(--akpp-ink) var(--akpp-hero-img) center/cover no-repeat; color:#fff; isolation:isolate; }
.akpp-hero-home::before{ content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg, rgba(20,23,28,.94) 0%, rgba(20,23,28,.82) 48%, rgba(20,23,28,.35) 100%); }
.akpp-hero-home__inner{ padding:72px var(--akpp-gutter) 56px; }
.akpp-hero-home__content{ max-width:760px; }
.akpp-hero-home__eyebrow{ display:inline-flex; align-items:center; gap:10px; font-size:13px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.7); }
.akpp-hero-home__eyebrow::before{ content:""; width:24px; height:2px; background:var(--akpp-accent); }
.akpp-hero-home__title{ font-size:clamp(34px,4.6vw,58px); font-weight:800; line-height:1.05; letter-spacing:-0.025em; color:#fff; margin:16px 0 14px; max-width:14ch; }
.akpp-hero-home__text{ font-size:clamp(16px,1.3vw,18px); line-height:1.55; color:rgba(255,255,255,.8); max-width:58ch; margin:0 0 26px; }
.akpp-hero-home__search{ background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); border-radius:var(--akpp-radius); padding:16px; max-width:820px; }
.akpp-hero-home__inner{ padding-bottom:72px; }
.akpp-hact--wa > i{ color:var(--akpp-wa); }
.akpp-hero-home__search .akpp-search:not(.akpp-search--compact) .akpp-search__label{ color:#fff; font-weight:600; font-size:14px; }
.akpp-hero-home__facts{ list-style:none; margin:32px 0 0; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; max-width:820px; }
.akpp-hero-home__facts li{ display:flex; flex-direction:column; gap:4px; padding-left:14px; border-left:2px solid var(--akpp-accent); }
.akpp-hero-home__facts b{ font-family:var(--akpp-font-head); font-size:24px; font-weight:700; line-height:1; }
.akpp-hero-home__facts span{ font-size:13px; color:rgba(255,255,255,.7); line-height:1.35; }

/* ---------- Модели АКПП ---------- */
.akpp-mgrid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.akpp-mcard{ position:relative; display:flex; flex-direction:column; min-height:172px; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); background:var(--akpp-card); color:var(--akpp-text); padding:22px 22px 20px; box-sizing:border-box; overflow:hidden; transition:border-color .18s ease, box-shadow .18s ease; }
.akpp-mcard:hover{ border-color:var(--akpp-accent); color:var(--akpp-text); }
.akpp-mcard--img{ padding:0; }
.akpp-mcard__img{ display:block; aspect-ratio:16/9; overflow:hidden; background:var(--akpp-bg-soft); }
.akpp-mcard__img img{ width:100%; height:100%; object-fit:cover; display:block; }
.akpp-mcard--img .akpp-mcard__body{ padding:18px 22px 20px; }
.akpp-mcard__body{ display:flex; flex-direction:column; gap:6px; flex:1 1 auto; }
.akpp-mcard__eyebrow{ font-size:11.5px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--akpp-muted); }
.akpp-mcard__name{ font-family:var(--akpp-font-head); font-size:clamp(20px,1.7vw,24px); font-weight:700; line-height:1.15; letter-spacing:-0.01em; word-break:break-word; padding-right:44px; }
.akpp-mcard__count{ font-size:13.5px; color:var(--akpp-muted); }
.akpp-mcard__tags{ display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }
.akpp-mcard__tags i{ font-style:normal; font-size:12px; font-weight:500; color:var(--akpp-muted); background:var(--akpp-bg-soft); border-radius:6px; padding:3px 8px; }
.akpp-mcard__tags-more{ color:var(--akpp-text) !important; background:var(--akpp-bg-tint) !important; }
.akpp-mcard__arrow{ position:absolute; right:18px; top:18px; width:34px; height:34px; border-radius:10px; display:inline-flex; align-items:center; justify-content:center; background:var(--akpp-icon-bg); color:var(--akpp-accent); font-size:13px; transition:background .18s ease,color .18s ease,transform .18s ease; }
.akpp-mcard--img .akpp-mcard__arrow{ background:#fff; }
.akpp-mcard:hover .akpp-mcard__arrow{ background:var(--akpp-accent); color:#fff; transform:translateX(3px); }
.akpp-mcard.is-hidden{ display:none; }
.akpp-mgrid__empty{ margin:24px 0 0; padding:20px; border-radius:var(--akpp-radius); background:var(--akpp-bg-soft); color:var(--akpp-muted); }
.akpp-mgrid__empty[hidden]{ display:none; }

/* Типы запчастей */
.akpp-types{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; }
.akpp-types a{ display:flex; align-items:center; gap:12px; min-width:0; padding:14px 16px; border-radius:var(--akpp-radius-btn); border:1px solid var(--akpp-line); background:#fff; color:var(--akpp-text); font-weight:600; font-size:14px; line-height:1.25; transition:border-color .15s ease,color .15s ease,background .15s ease; }
.akpp-types span{ min-width:0; overflow-wrap:anywhere; }
.akpp-types i{ width:36px; height:36px; flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; border-radius:10px; background:var(--akpp-icon-bg); color:var(--akpp-accent); font-size:15px; transition:background .15s ease,color .15s ease; }
.akpp-types a:hover{ border-color:var(--akpp-accent); color:var(--akpp-accent-deep); }
.akpp-types a:hover i{ background:var(--akpp-accent); color:#fff; }
.akpp-types--row{ display:flex; overflow-x:auto; gap:10px; padding-bottom:6px; margin-bottom:28px; scrollbar-width:thin; }
.akpp-types--row li{ flex:0 0 auto; }
.akpp-empty + .akpp-types--row, .akpp-empty + .akpp-scroller{ margin-top:16px; }
/* Горизонтальные ленты (типы запчастей, чипы разделов): затухание у краёв + стрелки как подсказка, что лента листается */
.akpp-scroller{ position:relative; min-width:0; }
.akpp-scroller::before, .akpp-scroller::after{ content:""; position:absolute; top:0; bottom:6px; width:64px; pointer-events:none; z-index:1; opacity:0; transition:opacity .2s ease; }
.akpp-scroller::before{ left:0; background:linear-gradient(90deg, #fff 20%, rgba(255,255,255,0)); }
.akpp-scroller::after{ right:0; background:linear-gradient(270deg, #fff 20%, rgba(255,255,255,0)); }
.akpp-scroller.can-prev::before, .akpp-scroller.can-next::after{ opacity:1; }
.akpp-scroller__btn{ position:absolute; top:calc(50% - 3px); transform:translateY(-50%); width:36px; height:36px; border-radius:50%; border:1px solid var(--akpp-line); background:#fff; color:var(--akpp-ink); display:grid; place-items:center; font-size:13px; cursor:pointer; z-index:2; opacity:0; pointer-events:none; transition:opacity .2s ease, background .15s ease, color .15s ease; }
.akpp-scroller__btn--prev{ left:-2px; }
.akpp-scroller__btn--next{ right:-2px; }
.akpp-scroller.can-prev .akpp-scroller__btn--prev, .akpp-scroller.can-next .akpp-scroller__btn--next{ opacity:1; pointer-events:auto; }
.akpp-scroller__btn:hover{ background:var(--akpp-ink); color:#fff; border-color:var(--akpp-ink); }
.akpp-scroller > .akpp-types--row, .akpp-scroller > .akpp-chips{ scrollbar-width:none; }
.akpp-scroller > .akpp-types--row::-webkit-scrollbar, .akpp-scroller > .akpp-chips::-webkit-scrollbar{ display:none; }
.akpp-types--row a{ padding:10px 14px 10px 10px; }

/* ---------- Товары: сетка и карточка ---------- */
.akpp-pgrid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.akpp-pgrid--4{ grid-template-columns:repeat(4,minmax(0,1fr)); }
.akpp-pcard{ position:relative; display:flex; flex-direction:column; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); background:var(--akpp-card); overflow:hidden; transition:border-color .18s ease, box-shadow .18s ease; }
.akpp-pcard:hover{ border-color:var(--akpp-accent); }
.akpp-pcard__media{ position:relative; display:block; aspect-ratio:4/3; background:var(--akpp-bg-soft); overflow:hidden; }
.akpp-pcard__media img{ width:100%; height:100%; object-fit:contain; display:block; padding:10px; box-sizing:border-box; background:#fff; }
.akpp-pcard__media .akpp-ph{ width:100%; height:100%; display:block; }
.akpp-pcard__flag{ position:absolute; left:12px; top:12px; padding:4px 10px; border-radius:8px; background:var(--akpp-accent); color:#fff; font-size:12px; font-weight:700; }
.akpp-pcard__body{ display:flex; flex-direction:column; gap:8px; padding:16px 18px 18px; flex:1 1 auto; }
.akpp-pcard__model{ font-size:13px; color:var(--akpp-muted); }
.akpp-pcard__model a{ color:var(--akpp-text); font-weight:600; }
.akpp-pcard__model a:hover{ color:var(--akpp-accent); }
.akpp-pcard__title{ font-family:var(--akpp-font-text); font-size:15.5px; font-weight:600; line-height:1.35; letter-spacing:0; margin:0; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.akpp-pcard__title a{ color:var(--akpp-text); }
.akpp-pcard__title a:hover{ color:var(--akpp-accent); }
/* Вся карточка — тап-цель заголовка (растянутая ссылка); модель, артикул и кнопки остаются поверх */
.akpp-pcard__title a::after{ content:""; position:absolute; inset:0; z-index:0; }
.akpp-pcard__meta a, .akpp-pcard__foot a, .akpp-pcard__foot button, .akpp-pcard .added_to_cart{ position:relative; z-index:1; }
.akpp-pcard__meta{ display:flex; flex-direction:column; gap:3px; font-size:13px; color:var(--akpp-muted); }
.akpp-pcard__sku b{ color:var(--akpp-text); font-weight:600; }
.akpp-pcard__foot{ margin-top:auto; padding-top:12px; border-top:1px solid var(--akpp-line); display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.akpp-price{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.akpp-price__value{ font-family:var(--akpp-font-head); font-size:20px; font-weight:700; letter-spacing:-0.01em; color:var(--akpp-text); }
.akpp-price__value del{ font-size:.75em; color:var(--akpp-muted); font-weight:500; margin-right:6px; }
.akpp-price__value ins{ text-decoration:none; }
.akpp-price__request{ font-family:var(--akpp-font-head); font-size:16px; font-weight:600; color:var(--akpp-muted); }
.akpp-price__note{ font-size:12.5px; color:var(--akpp-muted); display:inline-flex; gap:6px; align-items:center; }
.akpp-price__note--link{ color:var(--akpp-accent); font-weight:600; }
.akpp-price--single .akpp-price__value{ font-size:34px; }
.akpp-price--single .akpp-price__request{ font-size:24px; color:var(--akpp-text); }
.akpp-pcard .akpp-btn--primary.added{ display:none; }
.akpp-pcard .added_to_cart{ display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border-radius:10px; background:var(--akpp-ok-soft); color:var(--akpp-ok); font-weight:600; font-size:14px; }
.akpp-pcard .akpp-btn.loading{ opacity:.6; pointer-events:none; }

/* ---------- Промо ---------- */
.akpp-promo{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; align-items:center; background:var(--akpp-accent-deep); color:#fff; border-radius:24px; padding:28px 40px; overflow:hidden; }
.akpp-promo__media img{ width:100%; max-height:380px; object-fit:contain; display:block; filter:drop-shadow(0 30px 40px rgba(0,0,0,.35)); }
.akpp-promo__badge{ display:inline-block; padding:6px 12px; border-radius:8px; background:#fff; color:var(--akpp-accent-deep); font-weight:800; font-family:var(--akpp-font-head); font-size:14px; letter-spacing:.02em; }
.akpp-promo__title{ color:#fff; font-size:clamp(26px,3vw,38px); margin:14px 0 10px; }
.akpp-promo__text{ color:rgba(255,255,255,.82); margin:0 0 18px; max-width:48ch; }
.akpp-promo__price{ display:flex; align-items:baseline; gap:14px; margin:0 0 22px; }
.akpp-promo__price b{ font-family:var(--akpp-font-head); font-size:clamp(32px,3.6vw,44px); font-weight:800; line-height:1; }
.akpp-promo__price s{ color:rgba(255,255,255,.6); font-size:18px; }
.akpp-promo .akpp-btn--primary{ background:#fff; color:var(--akpp-accent-deep); border-color:#fff; }
.akpp-promo .akpp-btn--primary:hover{ background:var(--akpp-bg-tint); border-color:var(--akpp-bg-tint); box-shadow:none; }

/* ---------- Почему мы ---------- */
.akpp-sec--why{ background:var(--akpp-bg-soft); }
.akpp-why{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:48px; align-items:center; }
.akpp-why__lead{ font-size:17px; color:var(--akpp-muted); margin:14px 0 26px; max-width:60ch; }
.akpp-why__list{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:18px 24px; }
.akpp-why__list li{ display:flex; gap:14px; }
.akpp-why__list i{ flex:0 0 auto; width:44px; height:44px; border-radius:12px; display:inline-flex; align-items:center; justify-content:center; background:#fff; color:var(--akpp-accent); font-size:18px; border:1px solid var(--akpp-line); }
.akpp-why__list span{ display:flex; flex-direction:column; gap:3px; font-size:14.5px; color:var(--akpp-muted); line-height:1.45; }
.akpp-why__list b{ color:var(--akpp-text); font-size:15.5px; }
.akpp-why__media{ margin:0; position:relative; border-radius:24px; overflow:hidden; aspect-ratio:4/4.2; }
.akpp-why__media img{ width:100%; height:100%; object-fit:cover; display:block; }
.akpp-why__media figcaption{ position:absolute; left:18px; bottom:18px; right:18px; padding:14px 18px; border-radius:14px; background:rgba(20,23,28,.82); color:#fff; font-size:14px; display:flex; align-items:baseline; gap:10px; }
.akpp-why__media figcaption b{ font-family:var(--akpp-font-head); font-size:22px; }

/* ---------- Услуга (ГДТ) ---------- */
.akpp-svc{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:0; border-radius:24px; overflow:hidden; background:var(--akpp-ink); color:#fff; }
.akpp-svc__media{ position:relative; margin:0; min-height:420px; }
.akpp-svc__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.akpp-svc__media figcaption{ position:absolute; left:22px; bottom:22px; right:22px; display:flex; align-items:center; gap:14px; padding:14px 18px; border-radius:14px; background:rgba(20,23,28,.82); color:#fff; }
.akpp-svc__media figcaption b{ font-family:var(--akpp-font-head); font-size:26px; font-weight:800; line-height:1; color:#fff; white-space:nowrap; }
.akpp-svc__media figcaption span{ font-size:13.5px; color:rgba(255,255,255,.78); line-height:1.35; }
.akpp-svc__body{ padding:44px 48px 40px; display:flex; flex-direction:column; gap:18px; }
.akpp-svc__body .akpp-sec__title{ color:#fff; }
.akpp-svc__lead{ margin:0; color:rgba(255,255,255,.78); font-size:16px; max-width:58ch; }
.akpp-svc__list{ list-style:none; margin:4px 0 0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 22px; }
.akpp-svc__list li{ display:flex; gap:12px; align-items:flex-start; }
.akpp-svc__list i{ flex:0 0 auto; width:38px; height:38px; display:grid; place-items:center; border-radius:10px; background:rgba(47,103,253,.18); color:#8FB0FF; font-size:15px; }
.akpp-svc__list span{ display:flex; flex-direction:column; gap:2px; font-size:13.5px; color:rgba(255,255,255,.66); line-height:1.4; }
.akpp-svc__list b{ color:#fff; font-size:15px; }
.akpp-svc__steps{ list-style:none; counter-reset:akppStep; margin:6px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:6px; }
.akpp-svc__steps li{ counter-increment:akppStep; display:inline-flex; align-items:center; gap:8px; padding:6px 12px 6px 6px; border-radius:999px; border:1px solid rgba(255,255,255,.14); font-size:13px; color:rgba(255,255,255,.82); }
.akpp-svc__steps li::before{ content:counter(akppStep); width:22px; height:22px; display:grid; place-items:center; border-radius:50%; background:var(--akpp-accent); color:#fff; font-family:var(--akpp-font-head); font-weight:700; font-size:12px; }
.akpp-svc__actions{ display:flex; gap:10px; flex-wrap:wrap; margin-top:8px; }

/* ---------- Услуга (старая карточка, оставлена для внутренних страниц) ---------- */
.akpp-service{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); border:1px solid var(--akpp-line); border-radius:24px; overflow:hidden; color:var(--akpp-text); background:#fff; transition:border-color .18s ease, box-shadow .18s ease; }
.akpp-service:hover{ border-color:var(--akpp-accent); color:var(--akpp-text); }
.akpp-service__media{ min-height:300px; background:var(--akpp-bg-soft); }
.akpp-service__media img{ width:100%; height:100%; object-fit:cover; display:block; }
.akpp-service__body{ padding:40px 44px; display:flex; flex-direction:column; justify-content:center; gap:12px; }
.akpp-service__body p{ margin:0; color:var(--akpp-muted); font-size:16px; max-width:56ch; }
.akpp-service__link{ display:inline-flex; align-items:center; gap:8px; font-weight:600; color:var(--akpp-accent); margin-top:6px; }
.akpp-service__link i{ transition:transform .18s ease; }
.akpp-service:hover .akpp-service__link i{ transform:translateX(4px); }

/* ---------- VIN ---------- */
.akpp-sec--vin{ position:relative; isolation:isolate; background:var(--akpp-ink) var(--akpp-vin-img, none) center/cover no-repeat; color:#fff; }
.akpp-sec--vin::before{ content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg, rgba(42,47,55,.96) 0%, rgba(42,47,55,.88) 55%, rgba(42,47,55,.7) 100%); }
.akpp-vin{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:center; }
.akpp-vin .akpp-sec__title{ color:#fff; }
.akpp-vin .akpp-eyebrow{ color:var(--akpp-accent); }
.akpp-vin__text p{ color:rgba(255,255,255,.75); font-size:16.5px; margin:14px 0 18px; max-width:52ch; }
.akpp-vin__more{ display:inline-flex; gap:8px; align-items:center; color:#fff; font-weight:600; }
.akpp-vin__more i{ color:var(--akpp-accent); transition:transform .18s ease; }
.akpp-vin__more:hover i{ transform:translateX(4px); }
.akpp-vin__form{ background:#fff; color:var(--akpp-text); border-radius:20px; padding:26px; }
.akpp-vin__form .akpp-consent{ color:var(--akpp-muted); }

/* ---------- Контакты на главной ---------- */
.akpp-hcontacts{ display:grid; grid-template-columns:420px minmax(0,1fr); gap:24px; align-items:stretch; }
.akpp-hcontacts__card{ border:1px solid var(--akpp-line); border-radius:24px; padding:30px; display:flex; flex-direction:column; gap:12px; }
.akpp-hcontacts__list{ list-style:none; margin:8px 0 6px; padding:0; display:grid; gap:14px; }
.akpp-hcontacts__list li{ display:flex; gap:12px; align-items:flex-start; }
.akpp-hcontacts__list i{ width:36px; height:36px; flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; border-radius:10px; background:var(--akpp-icon-bg); color:var(--akpp-accent); font-size:14px; }
.akpp-hcontacts__list span{ display:flex; flex-direction:column; font-weight:600; font-size:15.5px; line-height:1.3; }
.akpp-hcontacts__list a{ color:var(--akpp-text); }
.akpp-hcontacts__list a:hover{ color:var(--akpp-accent); }
.akpp-hcontacts__list small{ color:var(--akpp-muted); font-weight:500; font-size:13px; margin-top:2px; }
.akpp-hcontacts__actions{ display:flex; gap:10px; flex-wrap:wrap; margin-top:auto; }
.akpp-hcontacts__map{ border-radius:24px; overflow:hidden; border:1px solid var(--akpp-line); background:var(--akpp-bg-soft); min-height:360px; }
.akpp-hcontacts__map iframe{ width:100%; height:100%; min-height:360px; border:0; display:block; }

/* ---------- Заголовок внутренних страниц каталога ---------- */
.akpp-phead{ padding:22px 0 26px; border-bottom:1px solid var(--akpp-line); background:var(--akpp-bg-soft); }
.akpp-phead--product{ padding:18px 0; background:none; border:0; }
.akpp-phead__row{ display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-top:14px; }
.akpp-phead__title{ font-size:clamp(26px,3.2vw,40px); margin:6px 0 0; }
.akpp-phead__lead{ margin:10px 0 0; color:var(--akpp-muted); font-size:16px; max-width:70ch; }
.akpp-phead__filter{ flex:0 0 auto; width:min(420px,100%); }
.akpp-phead__filter .akpp-search{ grid-template-columns:1fr; }
.akpp-breadcrumbs{ font-size:13.5px; color:var(--akpp-muted); }
.akpp-breadcrumbs__list{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0; padding:0; list-style:none; }
.akpp-breadcrumbs__item a{ color:var(--akpp-muted); }
.akpp-breadcrumbs__item a:hover{ color:var(--akpp-accent); }
.akpp-breadcrumbs__sep{ color:rgba(15,23,42,.3); }
.akpp-breadcrumbs__item--current{ color:var(--akpp-text); font-weight:600; }
.akpp-breadcrumbs > span, .akpp-breadcrumbs .breadcrumb_last{ color:var(--akpp-text); font-weight:600; }
.akpp-breadcrumbs a{ color:var(--akpp-muted); }
.akpp-sec--catalog{ padding-top:28px; }

/* ---------- Страница модели / раздела ---------- */
.akpp-sec--cat{ padding:28px 0 64px; }
.akpp-cat{ display:grid; grid-template-columns:280px minmax(0,1fr); gap:32px; align-items:start; }
.akpp-cat__side{ display:grid; gap:16px; align-content:start; }
.akpp-side{ border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); overflow:hidden; }
.akpp-side__title{ display:flex; gap:12px; align-items:center; padding:16px 18px; background:var(--akpp-bg-soft); color:var(--akpp-text); border-bottom:1px solid var(--akpp-line); }
.akpp-side__title i{ width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center; border-radius:10px; background:var(--akpp-accent); color:#fff; font-size:15px; flex:0 0 auto; }
.akpp-side__title span{ display:flex; flex-direction:column; font-family:var(--akpp-font-head); font-weight:700; font-size:18px; line-height:1.15; }
.akpp-side__title small{ font-family:var(--akpp-font-text); font-weight:500; font-size:12.5px; color:var(--akpp-muted); margin-top:3px; }
.akpp-side__title.is-active, .akpp-side__title:hover{ color:var(--akpp-accent-deep); }
.akpp-side__list{ list-style:none; margin:0; padding:8px; display:grid; gap:2px; }
.akpp-side__list a{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding:9px 12px; border-radius:9px; color:var(--akpp-text); font-size:14.5px; font-weight:500; transition:background .15s ease,color .15s ease; }
.akpp-side__list a small{ color:var(--akpp-muted); font-size:12.5px; }
.akpp-side__list a:hover{ background:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
.akpp-side__list a.is-active{ background:var(--akpp-accent); color:#fff; font-weight:600; }
.akpp-side__list a.is-active small{ color:rgba(255,255,255,.75); }
.akpp-side__help{ border-radius:var(--akpp-radius); background:var(--akpp-bg-soft); padding:18px; display:grid; gap:8px; }
.akpp-side__help b{ font-family:var(--akpp-font-head); font-size:15.5px; }
.akpp-side__help p{ margin:0 0 6px; color:var(--akpp-muted); font-size:14px; }
.akpp-side__phone{ color:var(--akpp-text); font-weight:600; font-size:15px; }
.akpp-cat__main{ min-width:0; }
.akpp-toolbar{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin:0 0 18px; padding:12px 16px; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius-btn); background:#fff; }
.akpp-toolbar__count{ font-weight:600; font-size:14.5px; margin-right:auto; }
.akpp-toolbar__toggle{ display:inline-flex; align-items:center; gap:8px; font-size:14px; cursor:pointer; user-select:none; }
.akpp-toolbar__toggle input{ appearance:none; width:38px; height:22px; border-radius:999px; background:#CBD3E0; position:relative; cursor:pointer; transition:background .15s ease; margin:0; }
.akpp-toolbar__toggle input::after{ content:""; position:absolute; top:3px; left:3px; width:16px; height:16px; border-radius:50%; background:#fff; transition:transform .15s ease; }
.akpp-toolbar__toggle input:checked{ background:var(--akpp-accent); }
.akpp-toolbar__toggle input:checked::after{ transform:translateX(16px); }
.akpp-toolbar__sort{ display:inline-flex; align-items:center; gap:8px; font-size:14px; color:var(--akpp-muted); }
body.akpp .akpp-toolbar__sort select{ padding:8px 32px 8px 12px; border:1px solid var(--akpp-line); border-radius:9px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235B6573' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 12px center; font-family:inherit; font-size:14px; color:var(--akpp-text); appearance:none; -webkit-appearance:none; cursor:pointer; }
.akpp-empty{ text-align:center; padding:48px 24px; border:1px dashed var(--akpp-line); border-radius:var(--akpp-radius); display:grid; gap:10px; justify-items:center; }
.akpp-empty > i{ font-size:34px; color:var(--akpp-accent); }
.akpp-empty h2{ font-size:22px; }
.akpp-empty p{ margin:0; color:var(--akpp-muted); max-width:52ch; }
.akpp-empty__actions{ display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin-top:8px; }

/* Пагинация (Woo + WP) */
body.akpp .woocommerce-pagination, .akpp-pagination{ margin-top:28px; }
body.akpp .woocommerce-pagination ul.page-numbers, .akpp-pagination .nav-links{ display:flex; gap:6px; list-style:none; margin:0; padding:0; border:0; justify-content:center; flex-wrap:wrap; }
body.akpp .woocommerce-pagination ul.page-numbers li{ border:0; margin:0; float:none; }
body.akpp .woocommerce-pagination .page-numbers, .akpp-pagination .page-numbers{ display:inline-flex; align-items:center; justify-content:center; min-width:42px; height:42px; padding:0 12px; border:1px solid var(--akpp-line); border-radius:10px; color:var(--akpp-text); font-weight:600; font-size:14.5px; background:#fff; line-height:1; }
body.akpp .woocommerce-pagination .page-numbers:hover, .akpp-pagination .page-numbers:hover{ border-color:var(--akpp-accent); color:var(--akpp-accent); background:#fff; }
body.akpp .woocommerce-pagination .page-numbers.current, .akpp-pagination .page-numbers.current{ background:var(--akpp-accent); border-color:var(--akpp-accent); color:#fff; }
body.akpp .woocommerce-pagination .page-numbers.dots, .akpp-pagination .page-numbers.dots{ border:0; }

/* ---------- Страница товара ---------- */
.akpp-product__grid{ display:grid; grid-template-columns:minmax(0,46%) minmax(0,1fr); gap:44px; align-items:start; padding-bottom:48px; }
.akpp-product__gallery{ min-width:0; position:sticky; top:150px; }
/* Своя галерея товара: место под фото и миниатюры занято сразу, ничего не прыгает */
.akpp-gal{ min-width:0; }
.akpp-gal__main{ position:relative; margin:0; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); overflow:hidden; background:#fff; aspect-ratio:4 / 3; display:grid; place-items:center; }
.akpp-gal__img{ width:100%; height:100%; object-fit:contain; display:block; padding:12px; box-sizing:border-box; }
.akpp-gal__zoom{ position:absolute; top:12px; right:12px; width:40px; height:40px; display:grid; place-items:center; border:1px solid var(--akpp-line); border-radius:10px; background:#fff; color:var(--akpp-text); font-size:15px; cursor:pointer; }
.akpp-gal__zoom:hover{ border-color:var(--akpp-ink); }
.akpp-gal__thumbs{ list-style:none; display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 0; padding:0; }
.akpp-gal__thumb{ width:72px; height:72px; padding:4px; border:1px solid var(--akpp-line); border-radius:10px; background:#fff; cursor:pointer; display:block; }
.akpp-gal__thumb img{ width:100%; height:100%; object-fit:contain; display:block; }
.akpp-gal__thumb.is-active{ border-color:var(--akpp-accent); }
.akpp-gal__thumb:hover{ border-color:var(--akpp-ink); }
.akpp-lightbox{ position:fixed; inset:0; z-index:400; background:rgba(16,19,24,.9); display:grid; place-items:center; padding:24px; }
.akpp-lightbox img{ max-width:100%; max-height:100%; object-fit:contain; border-radius:12px; background:#fff; }
.akpp-lightbox__close{ position:absolute; top:18px; right:18px; width:44px; height:44px; border-radius:12px; border:0; background:#fff; color:var(--akpp-ink); font-size:18px; cursor:pointer; }
.akpp-lightbox[hidden]{ display:none; }
.akpp-product__ph{ border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); overflow:hidden; position:relative; }
.akpp-product__ph .akpp-ph{ width:100%; aspect-ratio:4/3; display:block; }
.akpp-product__ph span{ position:absolute; left:14px; bottom:14px; padding:6px 10px; border-radius:8px; background:#fff; color:var(--akpp-muted); font-size:12.5px; border:1px solid var(--akpp-line); }
.akpp-product__summary{ min-width:0; display:flex; flex-direction:column; gap:16px; }
.akpp-product__cats{ display:flex; gap:8px; flex-wrap:wrap; }
.akpp-product__title{ font-size:clamp(24px,2.6vw,32px); line-height:1.2; }
.akpp-product__meta{ display:flex; flex-wrap:wrap; gap:8px 20px; font-size:14.5px; color:var(--akpp-muted); align-items:center; }
.akpp-product__sku b{ color:var(--akpp-text); font-weight:600; }
.akpp-product__buy{ border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); background:var(--akpp-bg-soft); padding:22px 24px; display:grid; gap:16px; }
.akpp-product__title{ margin-top:4px; }
.akpp-product__cart form.cart{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:0; }
body.akpp .akpp-product__cart .quantity{ display:inline-flex; align-items:center; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius-btn); background:#fff; overflow:hidden; height:48px; }
body.akpp .akpp-product__cart .quantity .qty{ width:56px; height:46px; border:0; text-align:center; font-family:inherit; font-size:16px; font-weight:600; background:transparent; -moz-appearance:textfield; }
body.akpp .akpp-product__cart .quantity .qty::-webkit-inner-spin-button, body.akpp .akpp-product__cart .quantity .qty::-webkit-outer-spin-button{ -webkit-appearance:none; }
.akpp-qty-btn{ width:40px; height:46px; border:0; background:transparent; font-size:16px; cursor:pointer; color:var(--akpp-muted); }
.akpp-qty-btn:hover{ color:var(--akpp-accent); background:var(--akpp-accent-soft); }
body.akpp .akpp-product__cart .single_add_to_cart_button{ display:inline-flex; align-items:center; gap:9px; height:48px; padding:0 24px; border-radius:var(--akpp-radius-btn); background:var(--akpp-accent); color:#fff; font-family:inherit; font-weight:600; font-size:15.5px; border:0; cursor:pointer; transition:background .18s ease, box-shadow .18s ease; line-height:1; }
body.akpp .akpp-product__cart .single_add_to_cart_button:hover{ background:var(--akpp-accent-hover); }
body.akpp .akpp-product__cart .single_add_to_cart_button::before{ content:"\f217"; font-family:"Font Awesome 6 Free"; font-weight:900; }
.akpp-product__request{ display:flex; gap:10px; flex-wrap:wrap; }
.akpp-product__short{ color:var(--akpp-muted); font-size:15.5px; }
.akpp-product__short p{ margin:0 0 8px; }
.akpp-product__facts{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.akpp-product__facts li{ display:flex; gap:12px; align-items:flex-start; font-size:14.5px; color:var(--akpp-muted); line-height:1.4; }
.akpp-product__facts i{ width:32px; height:32px; flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; border-radius:9px; background:var(--akpp-icon-bg); color:var(--akpp-accent); font-size:13px; }
.akpp-product__facts b{ color:var(--akpp-text); font-weight:600; }
.akpp-product__contact{ display:flex; align-items:center; gap:10px; padding-top:14px; border-top:1px solid var(--akpp-line); font-size:14.5px; color:var(--akpp-muted); }
.akpp-product__contact a{ color:var(--akpp-text); font-weight:700; font-size:16px; display:inline-flex; gap:8px; align-items:center; }
.akpp-product__contact a i{ color:var(--akpp-accent); }
.akpp-product__details{ display:grid; grid-template-columns:1fr 1fr; gap:36px; padding:8px var(--akpp-gutter) 56px; }
.akpp-product__details:has(> :only-child){ grid-template-columns:minmax(0,760px); }
.akpp-product__h2{ font-size:22px; margin:0 0 16px; }
.akpp-product__section .akpp-prose p, .akpp-prose p{ font-size:16px; color:#2B3340; margin:0 0 12px; max-width:70ch; }
body.akpp .akpp-product__section table.shop_attributes{ width:100%; border-collapse:separate; border-spacing:0; border:1px solid var(--akpp-line); border-radius:14px; overflow:hidden; font-size:15px; }
body.akpp .akpp-product__section table.shop_attributes th, body.akpp .akpp-product__section table.shop_attributes td{ padding:12px 16px; border:0; text-align:left; vertical-align:top; line-height:1.35; font-style:normal; }
body.akpp .akpp-product__section table.shop_attributes th{ width:42%; color:var(--akpp-muted); font-weight:600; background:var(--akpp-bg-soft); }
body.akpp .akpp-product__section table.shop_attributes tr + tr th, body.akpp .akpp-product__section table.shop_attributes tr + tr td{ border-top:1px solid var(--akpp-line); }
body.akpp .akpp-product__section table.shop_attributes td p{ margin:0; }
.akpp-product__related{ padding:8px var(--akpp-gutter) 64px; }

/* ---------- Поиск, 404 ---------- */
.akpp-sec--search{ padding-top:28px; }
.akpp-search-models{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0 0 22px; }
.akpp-search-models__label{ font-weight:600; font-size:14.5px; color:var(--akpp-muted); margin-right:6px; }
.akpp-search-models__label i{ color:var(--akpp-accent); }
.akpp-search-other{ list-style:none; margin:24px 0 0; padding:0; display:grid; gap:8px; }
.akpp-search-other a{ display:inline-flex; gap:10px; align-items:center; color:var(--akpp-text); font-weight:600; }
.akpp-404{ padding:72px 0 40px; text-align:center; background:var(--akpp-bg-soft); }
.akpp-404__inner{ max-width:760px; }
.akpp-404__code{ display:inline-flex; align-items:center; gap:6px; font-family:var(--akpp-font-head); font-size:clamp(80px,14vw,140px); font-weight:800; line-height:1; letter-spacing:-0.04em; color:var(--akpp-text); }
.akpp-404__code i{ font-size:.72em; color:var(--akpp-accent); animation:akppSpin 12s linear infinite; }
@keyframes akppSpin{ to{ transform:rotate(360deg); } }
.akpp-404__title{ font-size:clamp(26px,3vw,36px); margin:12px 0 10px; }
.akpp-404__text{ color:var(--akpp-muted); font-size:16.5px; margin:0 auto 26px; max-width:56ch; }
.akpp-404__search{ text-align:left; background:#fff; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); padding:16px; }
.akpp-404__actions{ display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin-top:22px; }
.akpp-sec--404-models{ padding-top:24px; }

/* ---------- Подвал ---------- */
.akpp-footer{ background:var(--akpp-ink); color:rgba(255,255,255,.75); margin-top:0; }
.akpp-footer a:not(.akpp-btn):not(.akpp-social-btn){ color:rgba(255,255,255,.85); }
.akpp-footer a:not(.akpp-btn):not(.akpp-social-btn):hover{ color:#fff; }
.akpp-footer__cta{ position:relative; isolation:isolate; background:var(--akpp-accent-deep) var(--akpp-cta-img, none) center/cover no-repeat; color:#fff; }
.akpp-footer__cta::before{ content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg, rgba(23,63,184,.94) 0%, rgba(23,63,184,.82) 60%, rgba(23,63,184,.6) 100%); }
.akpp-footer__cta-inner{ display:flex; align-items:center; justify-content:space-between; gap:28px; padding:34px var(--akpp-gutter); flex-wrap:wrap; }
.akpp-footer__cta-text h2{ color:#fff; font-size:clamp(22px,2.4vw,30px); margin:0 0 6px; }
.akpp-footer__cta-text p{ margin:0; color:rgba(255,255,255,.85); max-width:60ch; }
.akpp-footer__cta-actions{ display:flex; gap:12px; flex-wrap:wrap; }
.akpp-footer__grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1.2fr; gap:36px; padding-top:52px; padding-bottom:44px; }
.akpp-footer__col p{ margin:0 0 16px; font-size:14.5px; line-height:1.6; max-width:38ch; }
.akpp-footer__title{ color:#fff; font-size:15px; letter-spacing:.06em; text-transform:uppercase; margin:6px 0 16px; }
.akpp-footer__list{ list-style:none; margin:0; padding:0; display:grid; gap:9px; font-size:14.5px; }
.akpp-footer__contacts{ list-style:none; margin:0; padding:0; display:grid; gap:14px; }
.akpp-footer__contacts li{ display:flex; gap:12px; align-items:center; font-size:14.5px; }
.akpp-footer__contacts i{ width:32px; height:32px; flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; border-radius:9px; background:rgba(255,255,255,.08); color:#8FB0FF; font-size:13px; }
.akpp-footer__contacts span{ display:flex; flex-direction:column; justify-content:center; gap:2px; min-height:32px; }
.akpp-footer__contacts a{ color:#fff; font-weight:600; }
.akpp-footer__contacts small{ color:rgba(255,255,255,.55); font-size:12.5px; }
.akpp-footer__social{ display:flex; gap:8px; }
.akpp-social-btn{ width:42px; height:42px; display:grid; place-items:center; border-radius:11px; background:rgba(255,255,255,.08); color:#fff !important; font-size:18px; transition:background .18s ease,color .18s ease; }
.akpp-social-btn--wa:hover{ background:var(--akpp-wa); }
.akpp-social-btn--tg:hover{ background:#229ED9; }
.akpp-social-btn--ig:hover{ background:linear-gradient(45deg,#F9CE34 0%,#EE2A7B 50%,#6228D7 100%); }
.akpp-footer__bottom{ border-top:1px solid rgba(255,255,255,.1); }
.akpp-footer__bottom-inner{ display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; padding-top:18px; padding-bottom:18px; font-size:13px; color:rgba(255,255,255,.5); }
.akpp-footer__dev a{ color:rgba(255,255,255,.7); }

/* ---------- WooCommerce: уведомления, кабинет, корзина, чекаут ---------- */
.akpp-sec--page{ padding:36px 0 72px; }
.akpp-entry{ font-size:16px; }
.akpp-entry > p{ max-width:70ch; }
body.akpp .woocommerce-notices-wrapper:empty{ display:none; }
body.akpp .woocommerce-message, body.akpp .woocommerce-info, body.akpp .woocommerce-error{ border:1px solid var(--akpp-line); border-radius:12px; background:var(--akpp-bg-soft); padding:14px 18px 14px 18px; margin:0 0 20px; color:var(--akpp-text); font-size:15px; }
body.akpp .woocommerce-message::before, body.akpp .woocommerce-info::before, body.akpp .woocommerce-error::before{ display:none; }
body.akpp .woocommerce-error{ border-color:var(--akpp-err); background:#FDECEC; }
body.akpp .woocommerce-message .button, body.akpp .woocommerce-info .button, body.akpp .woocommerce-error .button{ float:none; margin:8px 12px 0 0; }
body.akpp .woocommerce ul.woocommerce-error{ list-style:none; }
body.akpp .woocommerce .button, body.akpp .woocommerce button.button, body.akpp .woocommerce a.button, body.akpp .woocommerce input.button, body.akpp .woocommerce #respond input#submit{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 20px; border-radius:var(--akpp-radius-btn); background:var(--akpp-accent); color:#fff; font-family:inherit; font-weight:600; font-size:15px; line-height:1.2; border:1px solid var(--akpp-accent); cursor:pointer; transition:background .18s ease, box-shadow .18s ease;
}
body.akpp .woocommerce .button:hover, body.akpp .woocommerce button.button:hover, body.akpp .woocommerce a.button:hover{ background:var(--akpp-accent-hover); color:#fff; }
body.akpp .woocommerce .button.alt, body.akpp .woocommerce button.button.alt{ background:var(--akpp-ink); border-color:var(--akpp-ink); }
body.akpp .woocommerce .button.alt:hover{ background:var(--akpp-ink-2); }
body.akpp .woocommerce a.button.wc-forward, body.akpp .woocommerce .return-to-shop .button{ background:#fff; color:var(--akpp-text); border-color:var(--akpp-line); }
body.akpp .woocommerce a.button.wc-forward:hover{ border-color:var(--akpp-accent); color:var(--akpp-accent); box-shadow:none; }
body.akpp .woocommerce form .form-row{ margin-bottom:12px; padding:0; }
body.akpp .woocommerce form .form-row label{ font-size:13px; font-weight:600; color:var(--akpp-muted); margin-bottom:4px; display:block; }
body.akpp .woocommerce form .form-row .input-text, body.akpp .woocommerce form .form-row select, body.akpp.woocommerce-account .input-text, body.akpp .woocommerce form .form-row textarea{ width:100%; box-sizing:border-box; padding:12px 14px; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius-btn); background:#fff; font-family:inherit; font-size:15px; color:var(--akpp-text); transition:border-color .15s ease, box-shadow .15s ease; }
body.akpp .woocommerce form .form-row .input-text:focus, body.akpp .woocommerce form .form-row select:focus, body.akpp .woocommerce form .form-row textarea:focus{ outline:none; border-color:var(--akpp-accent); box-shadow:0 0 0 4px var(--akpp-accent-soft); }
body.akpp .woocommerce form .form-row .required{ color:var(--akpp-err); text-decoration:none; }
body.akpp .woocommerce form .show-password-input{ top:12px; right:12px; }
body.akpp .woocommerce form.login, body.akpp .woocommerce form.register, body.akpp .woocommerce form.checkout_coupon, body.akpp .woocommerce form.lost_reset_password{ border:1px solid var(--akpp-line); border-radius:20px; padding:26px 26px 22px; margin:0; }
body.akpp.woocommerce-account .u-columns.col2-set{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
body.akpp.woocommerce-account .u-columns.col2-set .col-1, body.akpp.woocommerce-account .u-columns.col2-set .col-2{ width:auto; float:none; max-width:none; }
body.akpp.woocommerce-account .u-columns h2{ font-size:22px; margin:0 0 16px; }
body.akpp .woocommerce form .woocommerce-form-login__rememberme{ display:flex; align-items:center; gap:8px; margin:0 0 12px; font-size:14px; }
body.akpp .woocommerce-privacy-policy-text{ font-size:13px; color:var(--akpp-muted); }
.akpp-reg-hint{ margin:0 0 14px; padding:10px 14px; border-radius:10px; background:var(--akpp-bg-soft); color:var(--akpp-muted); font-size:13.5px; }
.akpp-reg-hint[hidden]{ display:none; }
body.akpp .woocommerce form .form-row select#akpp_reg_type{ appearance:none; -webkit-appearance:none; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235B6573' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 14px center; }
/* кабинет */
body.akpp.woocommerce-account:not(.logged-in) .akpp-phead{ background:none; }
body.akpp.woocommerce-account .woocommerce{ display:grid; grid-template-columns:260px 1fr; gap:32px; align-items:start; }
/* WooCommerce clearfix pseudo-elements would become grid items and shift the columns */
body.akpp.woocommerce-account .woocommerce::before, body.akpp.woocommerce-account .woocommerce::after, body.akpp.woocommerce-account .u-columns.col2-set::before, body.akpp.woocommerce-account .u-columns.col2-set::after{ display:none; content:none; }
body.akpp.woocommerce-account .woocommerce-MyAccount-navigation{ min-width:0; }
body.akpp.woocommerce-account:not(.logged-in) .woocommerce{ grid-template-columns:1fr; }
body.akpp .woocommerce-MyAccount-navigation{ width:auto; float:none; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); overflow:hidden; }
body.akpp .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:8px; display:grid; gap:2px; }
body.akpp .woocommerce-MyAccount-navigation li a{ display:flex; align-items:center; gap:10px; padding:11px 14px; border-radius:10px; color:var(--akpp-text); font-weight:600; font-size:15px; transition:background .15s ease,color .15s ease; }
body.akpp .woocommerce-MyAccount-navigation li a i{ width:18px; text-align:center; color:var(--akpp-muted); font-size:14px; }
body.akpp .woocommerce-MyAccount-navigation li a:hover{ background:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
body.akpp .woocommerce-MyAccount-navigation li.is-active a{ background:var(--akpp-ink); color:#fff; }
body.akpp .woocommerce-MyAccount-navigation li.is-active a i{ color:#fff; }
body.akpp .woocommerce-MyAccount-content{ width:auto; float:none; min-width:0; }
body.akpp .woocommerce-MyAccount-content > p{ font-size:15.5px; }
/* account dashboard */
.akpp-dash__head{ margin:0 0 18px; }
.akpp-dash__title{ font-family:var(--akpp-font-head); font-size:26px; letter-spacing:-0.01em; margin:0 0 6px; }
.akpp-dash__lead{ margin:0; color:var(--akpp-muted); max-width:62ch; font-size:15px; }
.akpp-dash__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:20px 0; }
.akpp-dash__tile{ display:flex; gap:12px; align-items:flex-start; padding:16px; border:1px solid var(--akpp-line); border-radius:14px; color:var(--akpp-text); transition:border-color .15s ease; }
.akpp-dash__tile:hover{ border-color:var(--akpp-ink); color:var(--akpp-text); }
.akpp-dash__tile > i{ flex:0 0 auto; width:40px; height:40px; border-radius:10px; background:var(--akpp-icon-bg); color:var(--akpp-accent); display:grid; place-items:center; font-size:16px; }
.akpp-dash__tile > span{ min-width:0; }
.akpp-dash__tile b{ display:block; font-weight:600; margin-bottom:2px; font-size:15px; }
.akpp-dash__tile small{ display:block; font-size:13px; color:var(--akpp-muted); line-height:1.4; }
.akpp-dash__b2b{ display:flex; gap:20px; align-items:center; justify-content:space-between; padding:20px 22px; border-radius:14px; background:var(--akpp-bg-soft); margin:4px 0 16px; }
.akpp-dash__b2b h3{ margin:0 0 4px; font-size:18px; }
.akpp-dash__b2b p{ margin:0; color:var(--akpp-muted); max-width:60ch; font-size:14.5px; }
.akpp-dash__b2b .akpp-btn{ flex:0 0 auto; }
.akpp-dash__contact{ margin:0; font-size:15px; color:var(--akpp-muted); }
.akpp-dash__contact a{ color:var(--akpp-text); font-weight:600; }
.akpp-dash__contact span{ margin-left:4px; }
.akpp-account-box{ margin:0 0 20px; padding:18px 20px; border:1px solid var(--akpp-line); border-radius:var(--akpp-radius); background:var(--akpp-bg-soft); display:grid; gap:8px; }
.akpp-account-box__row{ margin:0; display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; font-size:15px; }
.akpp-account-box__row > span{ color:var(--akpp-muted); }
.akpp-account-box__row strong{ font-family:var(--akpp-font-head); font-size:17px; }
.akpp-account-box__pending{ margin:0 0 4px; padding:10px 14px; border-radius:10px; background:var(--akpp-bg-tint); color:var(--akpp-text); font-size:14px; font-weight:500; }
.akpp-account-box .akpp-cur{ border-color:var(--akpp-line); color:var(--akpp-text); background:#fff; }
.akpp-account-box .akpp-cur.is-active{ background:var(--akpp-ink); border-color:var(--akpp-ink); color:#fff; }
body.akpp .woocommerce table.shop_table{ border:1px solid var(--akpp-line); border-radius:14px; border-collapse:separate; border-spacing:0; overflow:hidden; font-size:15px; }
body.akpp .woocommerce table.shop_table th{ background:var(--akpp-bg-soft); color:var(--akpp-muted); font-weight:600; font-size:13.5px; text-transform:uppercase; letter-spacing:.03em; }
body.akpp .woocommerce table.shop_table td, body.akpp .woocommerce table.shop_table th{ padding:12px 14px; border-top:1px solid var(--akpp-line); }
body.akpp .woocommerce table.shop_table thead th{ border-top:0; }
body.akpp .woocommerce-cart table.cart img{ width:64px; border-radius:8px; border:1px solid var(--akpp-line); }
body.akpp .woocommerce-cart .cart-collaterals .cart_totals{ width:100%; max-width:420px; float:none; margin-left:auto; }
body.akpp .woocommerce-cart .cart_totals h2, body.akpp .woocommerce-checkout h3{ font-size:20px; margin:0 0 12px; }
body.akpp .woocommerce-checkout #customer_details{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
body.akpp .woocommerce-checkout .col-1, body.akpp .woocommerce-checkout .col-2{ width:auto; float:none; }
body.akpp .woocommerce-checkout #payment{ background:var(--akpp-bg-soft); border-radius:14px; }
body.akpp .woocommerce-checkout #payment div.payment_box{ background:#fff; border-radius:10px; }
body.akpp .woocommerce-checkout #payment div.payment_box::before{ display:none; }
body.akpp.woocommerce-account .woocommerce-orders-table__cell-order-actions .button{ padding:8px 12px; font-size:13px; }
body.akpp.woocommerce-account .addresses .title h2{ font-size:18px; }
body.akpp.woocommerce-account .woocommerce-Address{ border:1px solid var(--akpp-line); border-radius:14px; padding:18px; }
body.akpp.woocommerce-account fieldset{ border:1px solid var(--akpp-line); border-radius:14px; padding:14px 18px; margin:16px 0; }
body.akpp.woocommerce-account fieldset legend{ font-weight:600; padding:0 8px; }

/* ---------- Адаптив ---------- */
@media (max-width:1240px){
  .akpp-topbar__link small{ display:none; }
  .akpp-hact__text{ display:none; }
  .akpp-hact{ padding:8px 10px; }
  .akpp-cart__count{ left:22px; }
  .akpp-topbar__hide-md{ display:none; }
  .akpp-mgrid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .akpp-types{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .akpp-pgrid--4{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:1100px){
  .akpp-topbar__list li:nth-child(2){ display:none; }
  .akpp-topbar__list{ gap:14px; }
  .akpp-topbar__right{ gap:12px; }
  .akpp-header__search{ display:none; }
  .akpp-hact--search{ display:inline-flex; }
  .akpp-nav__cta{ display:none; }
  .akpp-mega__inner{ grid-template-columns:1fr 260px; }
  .akpp-mega__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .akpp-why{ grid-template-columns:1fr; }
  .akpp-why__media{ aspect-ratio:16/9; }
  .akpp-vin, .akpp-hcontacts{ grid-template-columns:1fr; }
  .akpp-cat{ grid-template-columns:240px 1fr; gap:24px; }
  .akpp-product__grid{ grid-template-columns:1fr 1fr; gap:28px; }
  .akpp-footer__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:900px){
  .akpp-topbar{ display:none; }
  .akpp-header{ top:0; }
  .akpp-header__grid{ height:68px; gap:10px; }
  .akpp-burger{ display:flex; flex:0 0 auto; }
  .akpp-hact--phone{ display:inline-flex; }
  .akpp-header__actions{ margin-left:auto; gap:2px; }
  .akpp-hact{ padding:8px; }
  .akpp-cart__count{ left:22px; top:2px; }
  .akpp-logo__text{ font-size:21px; }
  .akpp-mgrid, .akpp-pgrid, .akpp-pgrid--4{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
  .akpp-catalog-btn__wrap{ display:none; }
  .akpp-nav{ display:none; }
  .akpp-logo__text small{ display:none; }
  .akpp-hero-home__inner{ padding:44px var(--akpp-gutter) 40px; }
  .akpp-hero-home__facts{ grid-template-columns:1fr 1fr; }
  .akpp-sec{ padding:44px 0; }
  .akpp-sec__head{ flex-direction:column; align-items:flex-start; gap:10px; }
  .akpp-sec__more{ display:none; }
  .akpp-sec__more-mobile{ display:inline-flex; }
  .akpp-types{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .akpp-promo{ grid-template-columns:1fr; padding:22px; text-align:center; }
  .akpp-promo__media img{ max-height:240px; }
  .akpp-promo__text{ margin-left:auto; margin-right:auto; }
  .akpp-promo__price{ justify-content:center; }
  .akpp-why__list{ grid-template-columns:1fr; }
  .akpp-service{ grid-template-columns:1fr; }
  .akpp-service__media{ min-height:220px; aspect-ratio:16/9; }
  .akpp-service__body{ padding:24px; }
  .akpp-svc{ grid-template-columns:1fr; }
  .akpp-svc__media{ min-height:0; aspect-ratio:16/10; }
  .akpp-svc__body{ padding:24px 20px 24px; gap:14px; }
  .akpp-svc__list{ grid-template-columns:1fr; gap:12px; }
  .akpp-phead__row{ flex-direction:column; align-items:stretch; }
  .akpp-phead__filter{ width:100%; }
  .akpp-cat{ grid-template-columns:1fr; }
  .akpp-cat__side{ position:static; order:2; }
  .akpp-chips{ flex-wrap:nowrap; overflow-x:auto; padding-bottom:6px; margin-bottom:12px; scrollbar-width:thin; -webkit-overflow-scrolling:touch; }
  .akpp-chips .akpp-chip{ flex:0 0 auto; white-space:nowrap; }
  .akpp-side__list{ display:flex; flex-wrap:wrap; }
  .akpp-side__help{ display:none; }
  .akpp-product__grid{ grid-template-columns:1fr; }
  .akpp-product__gallery{ position:static; }
  .akpp-product__details{ grid-template-columns:1fr; }
  .akpp-footer__cta-inner{ padding:26px var(--akpp-gutter); }
  body.akpp.woocommerce-account .woocommerce, body.akpp.woocommerce-account .u-columns.col2-set, body.akpp .woocommerce-checkout #customer_details{ grid-template-columns:1fr; }
  body.akpp .woocommerce-MyAccount-navigation{ border:0; border-radius:0; overflow:visible; }
  body.akpp .woocommerce-MyAccount-navigation ul{ display:flex; flex-wrap:nowrap; gap:6px; padding:0 0 6px; overflow-x:auto; scrollbar-width:none; }
  body.akpp .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{ display:none; }
  body.akpp .woocommerce-MyAccount-navigation li{ flex:0 0 auto; }
  body.akpp .woocommerce-MyAccount-navigation li a{ white-space:nowrap; padding:9px 13px; border:1px solid var(--akpp-line); }
  body.akpp .woocommerce-MyAccount-navigation li.is-active a{ border-color:var(--akpp-ink); }
  .akpp-dash__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .akpp-dash__b2b{ flex-direction:column; align-items:flex-start; }
}
@media (max-width:700px){
  .akpp-mgrid, .akpp-pgrid, .akpp-pgrid--4{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .akpp-mcard{ padding:16px 14px 14px; min-height:0; }
  .akpp-mcard__name{ font-size:17px; padding-right:36px; overflow-wrap:anywhere; }
  .akpp-mcard__arrow{ right:12px; top:12px; width:30px; height:30px; font-size:12px; }
  .akpp-mcard__tags{ display:none; }
  .akpp-mcard__eyebrow{ font-size:10.5px; }
  .akpp-pcard__body{ padding:12px 12px 14px; gap:6px; }
  .akpp-pcard__title{ font-size:13.5px; -webkit-line-clamp:3; }
  .akpp-pcard__meta{ font-size:12px; flex-direction:column; align-items:flex-start; gap:4px; }
  .akpp-pcard__foot{ flex-direction:column; align-items:stretch; gap:8px; padding-top:10px; }
  .akpp-pcard__foot .akpp-btn, body.akpp.woocommerce .akpp-pcard a.akpp-btn.button{ width:100%; justify-content:center; box-sizing:border-box; }
  .akpp-price__value{ font-size:17px; }
  .akpp-price__request{ font-size:14px; }
  .akpp-pcard__model{ font-size:10.5px; }
}
@media (max-width:600px){
  .akpp-dash__grid{ grid-template-columns:1fr; }
  .akpp-dash__title{ font-size:22px; }
  :root{ --akpp-gutter:16px; }
  .akpp-hero-home{ background-image:var(--akpp-hero-img-m, var(--akpp-hero-img)); }
  .akpp-hero-home__title{ max-width:none; }
  .akpp-hero-home__search{ padding:12px; }
  .akpp-hero-home__facts{ gap:12px; }
  .akpp-hero-home__facts b{ font-size:20px; }
  .akpp-types{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .akpp-hact--account{ display:none; }
  .akpp-types a{ padding:12px; font-size:13.5px; }
  .akpp-form__row{ grid-template-columns:1fr; }
  .akpp-search{ grid-template-columns:1fr; }
  .akpp-toolbar{ gap:12px; }
  .akpp-toolbar__count{ width:100%; }
  .akpp-footer__grid{ grid-template-columns:1fr; gap:28px; padding-top:36px; }
  .akpp-footer__bottom-inner{ flex-direction:column; gap:6px; }
  .akpp-modal__box{ padding:22px 18px; border-radius:16px; }
  .akpp-404__code{ font-size:88px; }
  .akpp-vin__form{ padding:18px; }
  .akpp-hcontacts__card{ padding:20px; }
  .akpp-svc__media figcaption{ left:12px; right:12px; bottom:12px; padding:10px 12px; }
  .akpp-svc__media figcaption b{ font-size:20px; }
  .akpp-svc__steps li{ font-size:12px; }
  .akpp-svc__actions .akpp-btn{ flex:1 1 auto; }
  .akpp-product__buy{ padding:16px; }
  .akpp-product__cart form.cart{ flex-direction:column; align-items:stretch; }
  body.akpp .akpp-product__cart .single_add_to_cart_button{ width:100%; justify-content:center; }
}

/* ---------- Плавности: появление, картинки, липкая панель, Chaty ---------- */
.akpp-reveal{ opacity:0; transform:translateY(14px); transition:opacity .55s ease, transform .6s cubic-bezier(.2,.7,.2,1); transition-delay:var(--akpp-delay,0ms); will-change:opacity, transform; }
.akpp-reveal.is-in{ opacity:1; transform:none; }
.akpp-js .akpp-pcard__media img:not(.is-loaded), .akpp-js .akpp-mcard__img img:not(.is-loaded), .akpp-js .akpp-why__media img:not(.is-loaded), .akpp-js .akpp-service__media img:not(.is-loaded){ opacity:0; }
.akpp-pcard__media img, .akpp-mcard__img img, .akpp-why__media img, .akpp-service__media img{ transition:opacity .4s ease; }
.akpp-buybar{ position:fixed; left:0; right:0; bottom:0; z-index:150; display:flex; align-items:center; gap:10px; padding:10px 16px calc(10px + env(safe-area-inset-bottom)); background:#fff; border-top:1px solid var(--akpp-line); box-shadow:0 -12px 32px rgba(20,23,28,.12); transform:translateY(110%); transition:transform .28s cubic-bezier(.2,.7,.2,1); }
.akpp-buybar.is-open{ transform:none; }
.akpp-buybar[hidden]{ display:none; }
.akpp-buybar__price{ flex:1 1 auto; min-width:0; display:flex; flex-direction:column; line-height:1.15; font-family:var(--akpp-font-head); font-weight:700; font-size:19px; }
.akpp-buybar__price small{ font-family:var(--akpp-font-text); font-weight:500; font-size:12px; color:var(--akpp-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.akpp-buybar .akpp-btn{ flex:0 0 auto; padding:12px 16px; font-size:14.5px; }
.akpp-buybar__wa{ flex:0 0 auto; width:46px; height:46px; display:grid; place-items:center; border-radius:12px; background:var(--akpp-wa); color:#fff; font-size:20px; }
@media (min-width:901px){ .akpp-buybar{ display:none !important; } }
body.akpp-layer-open .chaty-widget, body.akpp-layer-open #chaty-widget-0{ opacity:0 !important; pointer-events:none !important; transition:opacity .2s ease; }
body.akpp-buybar-open .chaty-widget, body.akpp-buybar-open #chaty-widget-0{ transform:translateY(-72px); transition:transform .25s ease; }
@media (prefers-reduced-motion: reduce){ .akpp-reveal{ opacity:1; transform:none; transition:none; } .akpp-js img:not(.is-loaded){ opacity:1; } }

/* ---------- Тап-цели на мобилке (≥ 32px), печать, пустая корзина ---------- */
@media (max-width:900px){
  .akpp-chip{ padding:8px 12px; min-height:34px; box-sizing:border-box; }
  .akpp-search__btn{ width:40px; height:40px; right:4px; }
  .akpp-offcanvas__head .akpp-logo{ min-height:40px; display:inline-flex; align-items:center; }
  .akpp-check input[type=checkbox], .akpp-form input[type=checkbox], .woocommerce-form__input-checkbox{ width:20px; height:20px; accent-color:var(--akpp-accent); flex:0 0 auto; }
  .akpp-pcard__model{ padding:6px 8px; }
  .akpp-pcard__title a{ display:block; }
  .akpp-pcard__model a{ display:inline-block; padding:8px 0; margin:-4px 0; }
  .akpp-topbar__link{ min-height:36px; display:inline-flex; align-items:center; }
  .akpp-vin__more, .akpp-price__note--link, .akpp-sec__more, .akpp-service__link, .akpp-mega__all, .akpp-footer__more{ padding:6px 0; display:inline-flex; }
  .akpp-hcontacts__list a, .akpp-product__contact a, .akpp-info-card__value--link, .akpp-side__phone{ padding:5px 0; display:inline-block; }
  .akpp-product__contact a{ font-size:17px; }
  body.akpp .woocommerce form .show-password-input{ width:40px; height:40px; top:6px; right:6px; display:grid; place-items:center; }
  body.akpp .woocommerce form .show-password-input::after{ position:static; }
  body.akpp .woocommerce-LostPassword a, body.akpp .woocommerce-privacy-policy-link{ display:inline-block; padding:6px 0; }
  .akpp-breadcrumbs__item a{ display:inline-block; padding:4px 0; }
}
@media print{ .akpp-reveal{ opacity:1 !important; transform:none !important; } .akpp-header, .akpp-footer__cta, .akpp-buybar, .akpp-offcanvas, .akpp-overlay{ display:none !important; } }
/* пустая корзина: и классический шорткод, и блок */
body.akpp .cart-empty.woocommerce-info{ border:0; background:none; padding:40px 0 10px; text-align:center; font-family:var(--akpp-font-head); font-size:22px; font-weight:700; }
body.akpp .return-to-shop{ text-align:center; margin:0 0 20px; }
body.akpp .wp-block-woocommerce-empty-cart-block .wc-block-grid, body.akpp .wp-block-woocommerce-empty-cart-block h2.wp-block-heading:not(.wc-block-cart__empty-cart__title), body.akpp .wp-block-woocommerce-empty-cart-block .wp-block-separator{ display:none; }
body.akpp .wp-block-woocommerce-empty-cart-block .wp-block-image img{ width:64px; height:auto; }
body.akpp .wp-block-woocommerce-empty-cart-block .wp-block-button__link{ display:inline-flex; padding:12px 20px; border-radius:var(--akpp-radius-btn); background:var(--akpp-accent); color:#fff; font-weight:600; }
body.akpp .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{ font-family:var(--akpp-font-head); font-size:22px; font-weight:700; margin:16px 0 20px; }
body.akpp .wp-block-woocommerce-empty-cart-block{ text-align:center; padding:24px 0; }

/* ---------- Сайдбар каталога v2: все модели, текущая раскрыта ---------- */
.akpp-side__h{ display:flex; align-items:baseline; gap:8px; margin:0; padding:14px 16px; font-size:17px; border-bottom:1px solid var(--akpp-line); background:var(--akpp-bg-soft); }
.akpp-side__h small{ font-family:var(--akpp-font-text); font-weight:500; color:var(--akpp-muted); font-size:13px; }
.akpp-side__filter{ position:relative; display:flex; align-items:center; margin:10px 10px 4px; }
.akpp-side__filter i{ position:absolute; left:12px; font-size:13px; color:var(--akpp-muted); pointer-events:none; }
body.akpp .akpp-side__filter input{ width:100%; height:38px; padding:0 12px 0 34px; border:1px solid var(--akpp-line); border-radius:10px; background:#fff; font-size:14px; }
body.akpp .akpp-side__filter input:focus{ outline:none; border-color:var(--akpp-accent); }
.akpp-side__models{ list-style:none; margin:0; padding:6px 10px 8px 8px; max-height:560px; overflow:auto; scrollbar-width:thin; scrollbar-gutter:stable; scrollbar-color:var(--akpp-line) transparent; }
.akpp-side__models::-webkit-scrollbar{ width:6px; }
.akpp-side__models::-webkit-scrollbar-thumb{ background:var(--akpp-line); border-radius:3px; }
.akpp-side__models::-webkit-scrollbar-track{ background:transparent; margin:8px 0; }
.akpp-side__model.is-hidden{ display:none; }
.akpp-side__model-link{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 10px; border-radius:8px; color:var(--akpp-text); font-size:14.5px; font-weight:500; min-width:0; transition:background .15s ease,color .15s ease; }
.akpp-side__model-link span{ min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.akpp-side__model-link small{ flex:0 0 auto; color:var(--akpp-muted); font-size:12.5px; }
.akpp-side__model-link:hover{ background:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
.akpp-side__model.is-current{ margin-bottom:6px; padding-bottom:6px; border-bottom:1px solid var(--akpp-line); }
.akpp-side__model.is-current > .akpp-side__model-link{ background:var(--akpp-ink); color:#fff; font-weight:600; }
.akpp-side__model.is-current > .akpp-side__model-link small{ color:rgba(255,255,255,.7); }
.akpp-side__subs{ list-style:none; margin:4px 0 6px; padding:0 0 0 12px; }
.akpp-side__subs a{ display:flex; justify-content:space-between; gap:10px; padding:7px 10px; border-radius:8px; color:var(--akpp-text); font-size:14px; }
.akpp-side__subs a small{ color:var(--akpp-muted); font-size:12.5px; }
.akpp-side__subs a:hover{ background:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
.akpp-side__subs a.is-active{ color:var(--akpp-accent-deep); font-weight:600; background:var(--akpp-bg-tint); }
.akpp-side__empty{ margin:0; padding:10px 16px 14px; font-size:13.5px; color:var(--akpp-muted); }
.akpp-side__empty[hidden]{ display:none; }
.akpp-side__types{ list-style:none; margin:0; padding:8px; display:grid; gap:2px; }
.akpp-side__types a{ display:flex; align-items:center; gap:10px; padding:8px 10px; border-radius:8px; color:var(--akpp-text); font-size:14px; font-weight:500; }
.akpp-side__types i{ width:20px; display:inline-flex; justify-content:center; color:var(--akpp-accent); font-size:13px; }
.akpp-side__types a:hover{ background:var(--akpp-bg-tint); color:var(--akpp-accent-deep); }
.akpp-side__types a.is-active{ background:var(--akpp-ink); color:#fff; }
.akpp-side__types a.is-active i{ color:#fff; }

/* ---------- Плавающие кнопки: WhatsApp (выбор менеджера) и наверх с индикатором ---------- */
.akpp-float{ position:fixed; bottom:22px; z-index:150; --akpp-float-shift:0px; transform:translateY(var(--akpp-float-shift)); transition:transform .25s ease; }
.akpp-float--wa{ left:22px; }
.akpp-float--top{ right:22px; width:50px; height:50px; border:0; border-radius:50%; background:#fff; color:var(--akpp-text); display:inline-flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 8px 24px rgba(20,23,28,.14); opacity:0; transform:translateY(calc(var(--akpp-float-shift) + 12px)); transition:opacity .25s ease, transform .25s ease, color .15s ease; }
.akpp-float--top.is-visible{ opacity:1; transform:translateY(var(--akpp-float-shift)); }
.akpp-float--top[hidden]{ display:inline-flex; }
.akpp-float--top svg{ position:absolute; inset:0; width:100%; height:100%; transform:rotate(-90deg); }
.akpp-float--top circle{ fill:none; stroke-width:3; }
.akpp-float__track{ stroke:var(--akpp-line); }
.akpp-float__bar{ stroke:var(--akpp-accent); stroke-linecap:round; stroke-dasharray:132; stroke-dashoffset:calc(132 * (1 - var(--akpp-progress, 0))); transition:stroke-dashoffset .1s linear; }
.akpp-float--top i{ position:relative; font-size:16px; }
.akpp-float--top:hover{ color:var(--akpp-accent); }
.akpp-float__btn{ width:56px; height:56px; border:0; border-radius:50%; background:var(--akpp-wa); color:#fff; font-size:28px; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 10px 28px rgba(37,211,102,.35); transition:background .18s ease, transform .18s ease; }
.akpp-float__btn:hover{ background:var(--akpp-wa-dark); }
.akpp-float__btn[aria-expanded="true"]{ background:var(--akpp-ink); box-shadow:none; }
.akpp-float__menu{ position:absolute; left:0; bottom:66px; width:270px; padding:8px; border-radius:16px; background:#fff; border:1px solid var(--akpp-line); box-shadow:0 20px 48px rgba(20,23,28,.18); opacity:0; transform:translateY(8px); transition:opacity .2s ease, transform .22s ease; }
.akpp-float__menu.is-open{ opacity:1; transform:none; }
.akpp-float__menu[hidden]{ display:none; }
.akpp-float__menu-title{ display:block; padding:8px 12px 6px; font-size:12.5px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; color:var(--akpp-muted); }
.akpp-float__menu a{ display:flex; align-items:center; gap:12px; padding:10px 12px; border-radius:10px; color:var(--akpp-text); transition:background .15s ease; }
.akpp-float__menu a i{ width:38px; height:38px; flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background:var(--akpp-wa); color:#fff; font-size:20px; }
.akpp-float__menu a span{ display:flex; flex-direction:column; line-height:1.2; }
.akpp-float__menu a b{ font-size:14.5px; }
.akpp-float__menu a small{ color:var(--akpp-muted); font-size:12.5px; }
.akpp-float__menu a:hover{ background:var(--akpp-bg-tint); }
body.akpp-layer-open .akpp-float{ opacity:0; pointer-events:none; }
body.akpp-buybar-open .akpp-float{ --akpp-float-shift:-66px; } /* сдвигаем трансформацией: смена bottom считается сдвигом вёрстки */
.akpp-float{ transition:opacity .2s ease, bottom .25s ease; }

/* ---------- Файловое поле ---------- */
.akpp-file{ position:relative; }
.akpp-file__input{ position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.akpp-file__box{ display:flex; align-items:center; gap:10px; padding:11px 14px; border:1px dashed var(--akpp-line); border-radius:var(--akpp-radius-btn); background:var(--akpp-bg-soft); color:var(--akpp-muted); font-size:14px; transition:border-color .15s ease; }
.akpp-file__box i{ color:var(--akpp-accent); font-size:16px; }
.akpp-file:hover .akpp-file__box, .akpp-file__input:focus + .akpp-file__box{ border-color:var(--akpp-accent); }
.akpp-file.has-files .akpp-file__box{ border-style:solid; color:var(--akpp-text); background:#fff; }

/* ---------- Адаптив дополнений ---------- */
@media (max-width:900px){
  .akpp-side__models{ max-height:320px; }
  .akpp-float{ bottom:16px; }
  .akpp-float--wa{ left:16px; }
  .akpp-float--top{ right:16px; width:46px; height:46px; }
  .akpp-float__btn{ width:52px; height:52px; font-size:26px; }
  .akpp-float__menu{ width:min(270px, calc(100vw - 32px)); }
  body.akpp-buybar-open .akpp-float{ --akpp-float-shift:-62px; }
  .akpp-mega__filter{ display:none; }
}
