@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/manrope-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/manrope-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* swap, not optional: optional drops Manrope for the whole page view whenever the file misses Chrome's ~100ms window (most cold visits).
   The swap must not move lines, so the fallback is a local font scaled to Manrope's advance widths (Chromium canvas, Cyrillic+Latin
   sample, 400/700/800 averaged) and given Manrope's hhea ascent/descent (1.066/0.30 em, divided by size-adjust).
   Arial on desktop and iOS; Android has no Arial, so a second family on Roboto. */
@font-face{font-family:'Manrope Fallback';src:local('Arial'),local('ArialMT');size-adjust:101.4%;ascent-override:105.1%;descent-override:29.6%;line-gap-override:0%}
@font-face{font-family:'Manrope Fallback R';src:local('Roboto'),local('Roboto-Regular');size-adjust:112%;ascent-override:95.2%;descent-override:26.8%;line-gap-override:0%}

/* Anchor jumps, scrollIntoView and focus scrolling must clear the sticky bars: compact header 60px, mobile bar 72px. */
html{scroll-padding-top:68px}
@media (max-width:1024px){html{scroll-padding-top:80px}}

/* ===== Tokens, scope, container, buttons (README §1) ===== */
:root{--navy:#1e3a8a;--blue:#2563eb;--accent:#5B7DB1;--text:#1a2233;--text-2:#3b4557;--muted:#5b6577;--muted-2:#8a93a3;--border:#e6e9ef;--surface:#f5f7fa;--note-bg:#eef3fb;--note-border:#c9d7f0;--star:#D9A21B;--star-empty:#d0d5dd;--ok:#22c55e;--off:#94a3b8;--footer:#0f172a;--footer-text:#94a3b8;--footer-link:#cbd5e1;--telegram:#0ea5e9;--shadow:0 8px 24px rgba(30,58,138,.08);--container:1280px}
.smw-site-header,.smw-compact,.smw-mobile,.smw-footer{font-family:Manrope,'Manrope Fallback','Manrope Fallback R',Helvetica,Arial,sans-serif;color:var(--text);box-sizing:border-box}
.smw-site-header *,.smw-compact *,.smw-mobile *,.smw-footer *{box-sizing:inherit}
.smw-container{max-width:var(--container);margin:0 auto;padding:0 40px}
.smw-icon{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;flex:none}
.smw-btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border-radius:10px;font-weight:700;font-size:16px;text-decoration:none;white-space:nowrap;line-height:1.2}
.smw-btn--outline{border:1.5px solid var(--navy);color:var(--navy);background:#fff}
.smw-btn--primary{border:1.5px solid var(--navy);color:#fff;background:var(--navy)}
.smw-btn--sm{padding:9px 16px;border-radius:9px;font-size:13px}
.smw-btn--footer,.smw-footer .smw-btn--footer{border:1.5px solid #475569;color:#fff;background:transparent;font-weight:600;font-size:14px;padding:14px 22px}
/* Scoped so untouched pages keep plugin CSS; body>svg is the icon sprite (the UA [hidden] rule is HTML-namespace only, so <svg hidden> renders as a 300x150 inline box); specificity (0,2,0) beats every later single-class display rule (.smw-lightbox{display:grid} etc.). */
body>svg[hidden],.smw-site-header [hidden],.smw-compact[hidden],.smw-compact [hidden],.smw-mobile [hidden],.smw-footer [hidden],.smw-article [hidden],.smw-cat [hidden]{display:none}
body.smw-menu-open{overflow:hidden}

/* ===== Top bar + search panel (README §2.1) ===== */
.smw-topbar{background:linear-gradient(90deg,var(--navy),var(--blue));color:#fff;font-size:14px;position:relative;z-index:8}
.smw-topbar__row{display:flex;align-items:center;justify-content:space-between;min-height:38px;gap:16px}
.smw-topbar__info{display:flex;gap:28px;align-items:center}
.smw-topbar__info a,.smw-topbar__info span,.smw-topbar__social{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.smw-topbar__right{display:flex;align-items:center;gap:20px}
.smw-topbar__trust{display:flex;gap:18px;font-size:13px;opacity:.9;margin-right:24px}
.smw-topbar__search{display:inline-flex;align-items:center;gap:6px;border:0;border-left:1px solid rgba(255,255,255,.35);border-radius:0;padding:0 0 0 16px;background:none;color:#fff;font:inherit;cursor:pointer}
.smw-topbar__search[aria-expanded=true]{text-decoration:underline;text-underline-offset:3px}
.smw-search{position:absolute;right:max(40px,calc((100% - var(--container))/2 + 40px));top:100%;width:380px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 16px 40px rgba(30,58,138,.2);padding:10px;z-index:9;color:var(--text)}
.smw-search__form{margin:0}
.smw-search__input{display:block;width:100%;margin:0;border:1px solid #d5dae3;border-radius:8px;padding:11px 14px;font:500 14px Manrope,'Manrope Fallback','Manrope Fallback R',Helvetica,Arial,sans-serif;color:var(--text);background:var(--surface)}
.smw-search__input:focus{border-color:var(--accent)}
.smw-search__input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
/* Astra paints a 1px dotted outline in the text colour and none at all on its search submit / scroll-top;
   one visible ring for every control of ours and for the Astra chrome that stays on untouched pages. */
.smw-site-header :is(a,button,input,summary,[tabindex]):focus-visible,.smw-compact :is(a,button,input,summary,[tabindex]):focus-visible,
.smw-mobile :is(a,button,input,summary,[tabindex]):focus-visible,.smw-mmenu :is(a,button,input,summary,[tabindex]):focus-visible,
.smw-footer :is(a,button,input,summary,[tabindex]):focus-visible,
.site-content :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible,#ast-scroll-top:focus-visible
{outline:2px solid var(--accent);outline-offset:2px}
.smw-search__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.smw-search__list:not(:empty){margin-top:6px}
.smw-search__list a{display:flex;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:7px;text-decoration:none;color:var(--text);font-size:14px}
.smw-search__list a:hover,.smw-search__list a:focus{background:var(--surface)}
.smw-search__list li.is-active>a{background:var(--surface)} /* keyboard-active option (arrows); focus stays in the input */
/* suggestion type label («Услуга / Статья / Калькулятор»), rendered by theme.js */
.smw-search__type{color:var(--muted);font-size:11px;font-weight:600;white-space:nowrap} /* --muted-2 at 11px is 3.1:1 */

/* ===== Header row: brand, phones + status, callback (README §2.2) ===== */
/* Integer px line-heights where the ratio would give a fraction: a fractional header height shifts the subpixel phase of every text line below it. */
.smw-header{background:#fff}
.smw-header__row{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:18px;padding-bottom:14px;min-height:96px}
/* DOM is logo link, title, desc as siblings; grid stacks title over desc next to the logo (mockup column) */
.smw-brand{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:16px;row-gap:3px;align-items:center;min-width:0}
.smw-brand__link{grid-row:1/3;display:block;line-height:0}
.smw-brand__link img{display:block;height:56px;width:auto}
.smw-brand__title{font:800 20px/1.1 Manrope,'Manrope Fallback','Manrope Fallback R',Helvetica,Arial,sans-serif;letter-spacing:-.2px;color:var(--text);align-self:end}
.smw-brand__desc{font-size:12px;line-height:17px;color:var(--muted);max-width:260px;align-self:start}
.smw-header__right{display:flex;align-items:center;gap:32px;flex:none}
.smw-phones{display:flex;gap:24px}
/* phones on row 1, the status line under the first phone (DOM: phone, status, phone, phone); geo.js moves the phone, the status stays in column 1 */
.smw-header__phones{display:grid;grid-auto-flow:column;grid-template-rows:auto auto;gap:2px 24px;align-items:start}
.smw-header__phones .smw-phone{grid-row:1}
.smw-header__phones .smw-status{grid-row:2;grid-column:1}
.smw-phone{display:flex;flex-direction:column;text-decoration:none;color:var(--text);white-space:nowrap;line-height:1.2}
.smw-phone__num{font-size:18px;font-weight:800}
.smw-phone__city{font-size:12px;color:var(--muted)}
.smw-header__phones .smw-phone__city{order:-1;line-height:14px}
.smw-header__phones .smw-phone__num{line-height:22px}
.smw-status{display:inline-flex;align-items:center;gap:6px;font-size:11px;line-height:18px;color:var(--muted);white-space:nowrap}
.smw-status__dot{width:8px;height:8px;border-radius:50%;background:var(--off)}
.smw-status[data-status=open] .smw-status__dot{background:var(--ok)}

/* ===== Main menu + dropdowns, reading progress (README §2.3–2.4) ===== */
.smw-nav{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border);position:relative;z-index:7}
.smw-nav__list{display:flex;gap:32px;list-style:none;margin:0;padding:0}
.smw-nav__list>li{position:relative;padding:12px 0;line-height:21px}
.smw-nav__list>li>a{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:700;color:var(--text);text-decoration:none}
.smw-nav__list>li.menu-item-has-children>a::after{content:"";display:inline-block;width:9px;height:9px;background:currentColor;color:var(--muted-2);clip-path:polygon(0 25%,100% 25%,50% 100%)}
.smw-nav__list .sub-menu{position:absolute;top:100%;left:-16px;width:300px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 16px 40px rgba(30,58,138,.16);padding:8px;list-style:none;margin:0;z-index:20;display:none}
.smw-nav__list>li.wide .sub-menu{width:620px;grid-template-columns:1fr 1fr;gap:0 8px}
.smw-nav__list>li:hover>.sub-menu,.smw-nav__list>li.is-open>.sub-menu,.smw-nav__list>li:focus-within>.sub-menu{display:block}
.smw-nav__list>li.wide:hover>.sub-menu,.smw-nav__list>li.wide.is-open>.sub-menu,.smw-nav__list>li.wide:focus-within>.sub-menu{display:grid}
.smw-nav__list .sub-menu a{display:block;padding:9px 12px;border-radius:8px;font-size:14px;font-weight:500;line-height:1.35;color:var(--text);text-decoration:none}
.smw-nav__list>li.is-closed>.sub-menu{display:none} /* Escape: theme.js sets this until focus leaves the item, since :focus-within would keep it open */
.smw-nav__list .sub-menu a:hover,.smw-nav__list .sub-menu a:focus{background:var(--surface)}
.smw-progress{height:3px;background:var(--border)}
.smw-progress__bar{height:100%;width:0;background:var(--accent);transition:width .2s}
@media (prefers-reduced-motion:reduce){.smw-progress__bar{transition:none}}

/* ===== Compact sticky header + burger panel (README §2 «Компактная липкая шапка») ===== */
.smw-compact{position:fixed;top:0;left:0;right:0;z-index:30;background:#fff;border-bottom:1px solid var(--border);box-shadow:var(--shadow)}
/* shown/hidden with the hidden+inert attributes (JS) — no transform trick: hidden copies must leave the tab order (spec) and pass aria-hidden-focus */
.smw-compact__row{max-width:var(--container);margin:0 auto;display:flex;align-items:center;gap:18px;padding:8px 40px;min-height:55px;font-size:14px}
.smw-brand--compact{column-gap:12px;row-gap:1px}
.smw-brand--compact .smw-brand__link img{height:36px}
.smw-brand--compact .smw-brand__title{font:800 15px/1.1 Manrope,'Manrope Fallback','Manrope Fallback R',Helvetica,Arial,sans-serif;letter-spacing:0;white-space:nowrap}
.smw-brand--compact .smw-brand__desc{font-size:11px;line-height:1.3;white-space:nowrap;max-width:none;min-width:0;overflow:hidden;text-overflow:ellipsis}
.smw-compact__phones{margin-left:auto;gap:18px;flex:none}
.smw-compact__phones .smw-phone__num{font-size:15px;font-weight:700}
.smw-compact__phones .smw-phone__city{font-size:11px}
.smw-compact__row>.smw-btn{flex:none}
.smw-compact__burger{flex:none;width:40px;height:40px;border-radius:10px;border:1px solid #d5dae3;background:#fff;display:grid;place-items:center;cursor:pointer;font-size:18px;color:var(--text);padding:0}
.smw-compact__panel{position:absolute;right:max(40px,calc((100% - var(--container))/2 + 40px));top:58px;width:min(920px,calc(100vw - 80px));background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 20px 50px rgba(30,58,138,.18);padding:18px 22px 20px;z-index:20;font-size:14px}
.smw-compact__menu-head{display:flex;align-items:center;gap:20px;font-weight:700;font-size:14px;padding-bottom:12px;border-bottom:1px solid var(--border);margin-bottom:14px}
.smw-compact__menu-head a{color:var(--text);text-decoration:none}
.smw-compact__menu{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px 24px;grid-auto-flow:dense}
.smw-compact__menu>li>a{display:block;font-weight:800;font-size:14px;color:var(--text);text-decoration:none;margin-bottom:6px}
/* Главная / Онлайн заявка already sit in .smw-compact__menu-head; hide any other childless item instead of showing it as a bare tile — a new one belongs in the head row (header.php), not here. */
.smw-compact__menu>li:not(.menu-item-has-children){display:none}
.smw-compact__menu .sub-menu{list-style:none;margin:0;padding:0;display:grid;gap:0 12px}
.smw-compact__menu .sub-menu a{display:block;padding:5px 0;font-size:13px;font-weight:500;line-height:1.35;color:var(--text-2);text-decoration:none}
.smw-compact__menu>li.wide{grid-row:span 2}
.smw-compact__menu>li.wide .sub-menu{grid-template-columns:1fr 1fr}

/* ===== Mobile sticky bar + mobile menu (README §8) ===== */
.smw-mobile{display:none;position:sticky;top:0;z-index:30;background:#fff}
.smw-mobile__row{display:flex;align-items:center;gap:10px;padding:12px 16px;min-height:68px}
.smw-brand--mobile{flex:1;column-gap:10px;row-gap:1px}
.smw-brand--mobile .smw-brand__link img{height:44px}
.smw-brand--mobile .smw-brand__title,.smw-brand--mobile .smw-brand__desc{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smw-brand--mobile .smw-brand__title{font:800 15px/1.1 Manrope,'Manrope Fallback','Manrope Fallback R',Helvetica,Arial,sans-serif;letter-spacing:0}
.smw-brand--mobile .smw-brand__desc{font-size:10px;line-height:1.3;max-width:none}
.smw-mobile__phone,.smw-mobile__burger{flex:none;height:46px;border-radius:12px;border:1px solid #d5dae3;background:#fff;color:var(--text);text-decoration:none;cursor:pointer}
.smw-mobile__phone{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 12px;line-height:1.2;white-space:nowrap}
.smw-mobile__phone-num{font-size:13px;font-weight:700}
.smw-mobile__phone-city{font-size:10px;color:var(--muted)}
.smw-mobile__burger{width:46px;display:grid;place-items:center;padding:0;font-size:20px}
/* the menu is a card over the page (mockup «Меню»): fixed, so it also covers the sticky bar it opens from */
.smw-mmenu{position:fixed;top:8px;left:8px;right:8px;z-index:40;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);overflow:auto;overscroll-behavior:contain;padding:12px 16px 20px;background:#fff;border-radius:24px 24px 20px 20px;box-shadow:0 24px 60px rgba(15,23,42,.35)}
.smw-mmenu__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:18px;font-weight:800}
/* (0,2,0) and the states: on untouched pages Astra paints every <button> blue */
.smw-mmenu .smw-mmenu__close,.smw-mmenu .smw-mmenu__close:is(:hover,:focus,:active){width:44px;height:44px;margin-right:-10px;padding:0;display:grid;place-items:center;border:0;border-radius:10px;background:none;box-shadow:none;color:var(--muted);font-size:22px;cursor:pointer}
body.smw-menu-open .smw-bottombar,body.smw-menu-open .smw-totop{display:none} /* z 35 in the page context would sit on the card */
.smw-mmenu__list{list-style:none;margin:0;padding:0;font-size:16px;font-weight:700}
.smw-mmenu__list a{text-decoration:none;color:var(--text)}
.smw-mmenu__item>a,.smw-mmenu__group>details{display:block;border-bottom:1px solid #eef1f5}
.smw-mmenu__item>a,.smw-mmenu__group>details>summary{display:block;padding:11px 0;font-weight:700;font-size:16px;cursor:pointer;list-style:none;position:relative}
.smw-mmenu__group>details>summary::-webkit-details-marker{display:none}
.smw-mmenu__group>details>summary::after,.smw-mmenu__toc>summary::after{content:"▾";position:absolute;right:4px;top:50%;font-size:13px;line-height:1;color:var(--muted-2);transform:translateY(-50%)}
.smw-mmenu__group>details[open]>summary::after,.smw-mmenu__toc[open]>summary::after{transform:translateY(-50%) rotate(180deg)}
.smw-mmenu__sub{list-style:none;margin:0;padding:0 0 8px 12px}
.smw-mmenu__sub a{display:block;padding:8px 0;font-size:15px;font-weight:500;line-height:1.35}
.smw-mmenu__phones{flex-direction:column;gap:6px;margin:12px 0;font-size:14px}
.smw-mmenu__phones .smw-phone{flex-direction:row;align-items:baseline;gap:6px;white-space:normal}
.smw-mmenu__phones .smw-phone__num{font-size:14px;font-weight:700}
.smw-mmenu__phones .smw-phone__city{font-size:14px}
.smw-mmenu__toc{border-top:1px solid #eef1f5;border-bottom:1px solid #eef1f5}
.smw-mmenu__toc>summary{display:block;position:relative;padding:11px 0;font-weight:700;font-size:16px;cursor:pointer;list-style:none}
.smw-mmenu__toc>summary::-webkit-details-marker{display:none}
.smw-mmenu__toc-list{margin:0;padding:0 0 10px 22px;font-size:14px;line-height:1.35}
.smw-mmenu__toc-list li{padding:5px 0}
.smw-mmenu__toc-list a{color:#1e5799;text-decoration:none}
.smw-mmenu>.smw-btn{display:flex;padding:14px;margin-top:10px}

/* ===== Footer (README §7) ===== */
.smw-footer{background:var(--footer);color:var(--footer-text);font-size:14px;line-height:1.7;padding:48px 0 28px}
.smw-footer a{color:var(--footer-link);text-decoration:none}
.smw-footer p{margin:0 0 10px}
.smw-footer__row1{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;padding-bottom:28px;border-bottom:1px solid #1e293b}
.smw-footer__brand{display:flex;align-items:center;gap:14px;color:#fff;font-size:20px;font-weight:700;margin-bottom:16px}
.smw-footer__brand img{display:block;height:48px;width:auto}
.smw-footer__about .smw-btn{margin-top:8px}
.smw-footer details{margin:0}
.smw-footer__title{display:block;color:#fff;font-weight:700;font-size:15px;margin:0 0 10px;list-style:none;cursor:default}
.smw-footer__title::-webkit-details-marker{display:none}
.smw-footer__col>details+details>.smw-footer__title{margin-top:22px}
.smw-footer__links,.smw-footer__contacts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.smw-footer__contacts{gap:8px}
.smw-footer__contacts b,.smw-footer__contacts a{color:#fff}
.smw-footer__contacts a[href^=tel]{font-weight:700}
.smw-footer__links--2col{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}
.smw-footer__social a{display:inline-flex;gap:8px;align-items:center}
.smw-footer__row2{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:24px 0;border-bottom:1px solid #1e293b}
.smw-footer__row3{display:flex;gap:24px;flex-wrap:wrap;padding-top:18px;font-size:13px}
/* desktop: <details> content stays visible even if JS left them collapsed (browsers with ::details-content) */
@media (min-width:1025px){
  .smw-footer details::details-content{content-visibility:visible}
  .smw-footer__title{pointer-events:none}
}

/* mockup is a fixed 1280 layout; below it the trust facts would wrap the top bar */
@media (max-width:1279px){.smw-topbar__trust{display:none}}

/* ===== ≤ 1024 px: mobile bar replaces both desktop headers, footer collapses to accordions (README §8) ===== */
@media (max-width:1024px){
  .smw-site-header,.smw-compact{display:none}
  .smw-mobile{display:block}
  .smw-container{padding:0 16px}
  .smw-footer{padding:28px 0;line-height:1.6}
  .smw-footer__brand{gap:12px;font-size:18px;margin-bottom:14px}
  .smw-footer__brand img{height:40px}
  .smw-footer__about .smw-btn{display:none}
  .smw-footer .smw-container{display:flex;flex-direction:column}
  .smw-footer__row1,.smw-footer__row2,.smw-footer__row1>div.smw-footer__col{display:contents}
  .smw-footer__about{order:0;margin-bottom:6px}
  .smw-footer__row2>details:first-child{order:1}
  .smw-footer__row2>details:last-child{order:2}
  .smw-footer__row1>details.smw-footer__col{order:3}
  .smw-footer__row1>div.smw-footer__col>details:first-child{order:4}
  .smw-footer__row1>div.smw-footer__col>details:last-child{order:5}
  .smw-footer__row3{order:6}
  .smw-footer details{border-top:1px solid #1e293b}
  .smw-footer__title{cursor:pointer;padding:12px 0;margin:0;position:relative;font-size:14px;line-height:20px}
  .smw-footer .smw-footer__col>details+details>.smw-footer__title{margin-top:0}
  .smw-footer__title::after{content:"▾";position:absolute;right:4px;top:50%;font-size:13px;line-height:1;color:var(--footer-text);transform:translateY(-50%)}
  .smw-footer details[open]>.smw-footer__title::after{transform:translateY(-50%) rotate(180deg)}
  .smw-footer__links,.smw-footer__contacts{gap:6px;padding-bottom:12px}
  .smw-footer__links--2col{display:flex}
  .smw-footer__row3{flex-direction:column;gap:4px;border-top:1px solid #1e293b;padding-top:12px;font-size:12px}
}

/* ===== Redesigned pages (article, category): Astra reset, mobile call bar, «to top» (template-parts/bottombar.php, theme.js) ===== */
/* Astra's CSS is dequeued on redesigned pages (body.smw-redesign: functions.php): reset the browser defaults and Astra's wrappers so the mockup geometry is not offset. */
body.smw-redesign{margin:0;background:#fff;font-family:Manrope,'Manrope Fallback','Manrope Fallback R',Helvetica,Arial,sans-serif;color:var(--text)}
body.smw-redesign #page,body.smw-redesign #content,body.smw-redesign .ast-container{max-width:none;margin:0;padding:0}
/* WP's skip link (header.php) lost Astra's screen-reader rule */
body.smw-redesign .screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.smw-redesign .screen-reader-text:focus{position:fixed;top:8px;left:8px;z-index:100;width:auto;height:auto;margin:0;padding:8px 12px;clip:auto;background:#fff;color:var(--navy);box-shadow:var(--shadow)}
.smw-bottombar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:35;display:flex;align-items:center;gap:6px;padding:8px;border-radius:14px;background:var(--navy);color:#fff;box-shadow:0 10px 30px rgba(15,23,42,.35);font-family:Manrope,'Manrope Fallback','Manrope Fallback R',Helvetica,Arial,sans-serif}
.smw-bottombar__yandex{flex:none;display:inline-flex;align-items:center;gap:5px;padding:0 2px 0 6px;font-size:11px;line-height:1.2}
.smw-bottombar__yandex .smw-icon{width:14px;height:14px}
.smw-bottombar__yandex b{display:block;font-size:13px;font-weight:800}
.smw-bottombar .smw-bottombar__phone{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;padding:6px 4px;color:#fff;text-decoration:none;line-height:1.2;white-space:nowrap}
.smw-bottombar .smw-bottombar__phone:hover,.smw-bottombar .smw-bottombar__phone:focus-visible{color:#fff}
.smw-bottombar__num{font-size:15px;font-weight:800}
.smw-bottombar__city{font-size:10px;font-weight:500;opacity:.8;margin-top:3px}
.smw-btn.smw-bottombar__btn{flex:1;min-width:0;padding:15px 6px;border:0;border-radius:10px;background:#fff;color:var(--navy);font-size:15px}
.smw-btn.smw-bottombar__btn:hover,.smw-btn.smw-bottombar__btn:focus-visible{color:var(--navy)}
.smw-totop{position:fixed;right:16px;bottom:24px;z-index:35;width:48px;height:48px;display:grid;place-items:center;border:0;border-radius:50%;background:#fff;color:var(--navy);font-size:22px;box-shadow:0 8px 24px rgba(15,23,42,.25);cursor:pointer}
.smw-totop:hover{color:var(--accent)}
.smw-totop .smw-icon{width:22px;height:22px}
@media (min-width:1025px){.smw-bottombar{display:none}}
body.smw-redesign .clearfy-cookie{color:var(--text-2);font-family:Manrope,'Manrope Fallback','Manrope Fallback R',Helvetica,Arial,sans-serif;border:1px solid var(--border)}
body.smw-redesign .clearfy-cookie a{color:#1e5799}
body.smw-redesign .clearfy-cookie-accept{background:var(--navy);border-radius:8px;padding:6px 14px;font:700 13px Manrope,'Manrope Fallback','Manrope Fallback R',Helvetica,Arial,sans-serif}
@media (max-width:1024px){
/* ≤ 1024: the bar's 64px + 12px gap, the button sits above it; the footer gets the bar's height under its own 28px */
.smw-totop{right:12px;bottom:calc(89px + env(safe-area-inset-bottom,0px))}
body.smw-redesign .smw-footer{padding-bottom:calc(150px + env(safe-area-inset-bottom,0px))}
/* focus and anchor scrolling must clear the call bar at the bottom too */
html.smw-redesign{scroll-padding-bottom:88px}
/* Clearfy's cookie banner (bottom:20px, z 9999) sat on the call bar and «to top»: taps went to the banner until «OK».
   It moves up only while one of them is on screen; at the top of the page it keeps its own place at the bottom. */
body.smw-redesign:has(.smw-bottombar:not([hidden]),.smw-totop:not([hidden])) .clearfy-cookie{bottom:calc(148px + env(safe-area-inset-bottom,0px))}
}

/* phones ≤ 400 px: the city phone and ☰ leave «Смарт Вэй» ~80 px, so the tagline goes and the pill tightens */
@media (max-width:400px){
  .smw-mobile__row{gap:8px}
  .smw-brand--mobile .smw-brand__link img{height:40px}
  .smw-brand--mobile .smw-brand__desc{display:none}
  .smw-brand--mobile .smw-brand__title{grid-row:1/3;align-self:center}
  .smw-mobile__phone{padding:0 8px}
  .smw-mobile__phone-num{font-size:12px}
}
