
/* мобильная выпадашка Astra не вылезает за правый край (было +12px) */
body.st-next #ast-mobile-header .ast-mobile-header-content{left:12px;right:12px;width:auto}
@media (max-width:921px){body.st-next #ast-mobile-header .ast-mobile-header-content{left:12px;right:12px}}

/* скрытая подпись фильтра (stalverk-facets) растягивалась чужим legend{width:100%} на ширину окна → страница шире экрана на ПК */
body .st-fc-sr{width:1px !important;height:1px !important;max-width:1px !important;margin:-1px !important;padding:0 !important;border:0 !important;overflow:hidden !important;clip-path:inset(50%)}
/* ---- меню ПК ---- */
html.stm-m #ast-desktop-header .site-primary-header-wrap{isolation:isolate}
.stm-hov,.stm-dd{position:absolute;left:0;top:0;pointer-events:none;opacity:0}
.stm-hov{z-index:-1;border-radius:999px;background:var(--bg)}
.stm-dd{z-index:99998;background:#fff;border-radius:var(--r-md);box-shadow:var(--sh-2);transform-origin:50% 0;transition:border-radius .3s}
.stm-dd.stm-mega{border-radius:var(--r-lg)}
html.stm-m body.st-next #masthead .main-header-menu>.menu-item:not(:has(>a[href$="/shop/"]))>.menu-link,
html.stm-m body.st-next #masthead .main-header-menu>.menu-item:not(:has(>a[href$="/shop/"]))>.menu-link:hover{background:transparent}
html.stm-m #ast-hf-menu-1>li>.sub-menu{left:0 !important;right:auto !important;visibility:hidden !important;opacity:0;transition:none !important;background:transparent !important;box-shadow:none !important;pointer-events:none}
html.stm-m #ast-hf-menu-1>li:has(>a[href$="/shop/"])>.sub-menu{right:0 !important}
html.stm-m #ast-hf-menu-1>li.stm-r>.sub-menu{left:auto !important;right:0 !important}
html.stm-m #ast-hf-menu-1>li.stm-o>.sub-menu{pointer-events:auto}
html.stm-m #ast-hf-menu-1>li>.menu-link .dropdown-menu-toggle svg{transform-box:fill-box;transform-origin:50% 50%;transition:transform .35s cubic-bezier(.3,1.35,.5,1)}
html.stm-m #ast-hf-menu-1>li.stm-o>.menu-link .dropdown-menu-toggle svg{transform:rotate(180deg)}
/* иконки разделов в мега-меню «Каталог» (как в аудите) */
#ast-hf-menu-1>li.stm-cat>.sub-menu>li>a.menu-link{display:flex !important;align-items:center;gap:12px}
#ast-hf-menu-1 .stm-ic{width:36px;height:36px;border-radius:11px;background:var(--bg);display:grid;place-items:center;flex:none;color:var(--navy);transition:background-color .2s,color .2s}
#ast-hf-menu-1 .stm-ic svg{width:20px;height:20px;display:block}
#ast-hf-menu-1>li.stm-cat>.sub-menu>li>a.menu-link:hover .stm-ic,#ast-hf-menu-1>li.stm-cat>.sub-menu>li>a.menu-link:focus-visible .stm-ic{background:var(--blue);color:#fff}

/* ---- мобильная шторка ---- */
.stm-scrim{position:fixed;inset:0;z-index:59;background:rgba(8,18,34,.38);opacity:0;visibility:hidden;-webkit-tap-highlight-color:transparent}
html.stm-t #ast-mobile-header .ast-mobile-header-content{transition:none !important;will-change:clip-path}
html.stm-t #ast-hf-mobile-menu{position:relative;transition:none !important}
html.stm-t #ast-hf-mobile-menu>li>.sub-menu.stm-cur{display:block !important;position:absolute;left:0 !important;right:0 !important;width:auto !important;max-width:none !important;z-index:3;background:#fff;margin:0 !important;padding:0 0 8px !important;border:0 !important}
html.stm-t #ast-hf-mobile-menu>li.stm-lvl>.ast-menu-toggle,html.stm-t #ast-hf-mobile-menu>li.stm-lvl>.menu-link{background:transparent}
.stm-back-li{display:none !important}
.sub-menu.stm-cur>.stm-back-li{display:block !important}
html.stm-t #ast-hf-mobile-menu .stm-back{display:flex !important;align-items:center;gap:8px;width:100% !important;margin:0 !important;border:0 !important;background:var(--bg) !important;color:var(--navy) !important;font:700 15px/1.2 var(--font) !important;padding:14px 18px !important;text-align:left;cursor:pointer;border-radius:0 !important;box-shadow:none !important;min-height:48px}
html.stm-t #ast-hf-mobile-menu .stm-back:hover,html.stm-t #ast-hf-mobile-menu .stm-back:focus{background:var(--mist,var(--bg)) !important;color:var(--blue) !important}
html.stm-t #ast-hf-mobile-menu .stm-back-li{margin:0 !important;padding:0 !important;border:0 !important}
.stm-back svg{width:18px;height:18px;flex:0 0 auto}
.stm-grab{display:flex;justify-content:center;align-items:center;height:26px;cursor:grab;touch-action:none;background:#fff}
.stm-grab i{width:40px;height:4px;border-radius:4px;background:var(--line,#D5DDE6)}
html.stm-t .menu-toggle.toggled .ahfb-svg-iconset,html.stm-t .menu-toggle:not(.toggled) .ahfb-svg-iconset{animation:stm-spin .38s cubic-bezier(.3,1.35,.5,1)}
@keyframes stm-spin{from{transform:rotate(-90deg) scale(.5);opacity:0}to{transform:none;opacity:1}}
/* ---- этап 2: «В корзину», счётчик, тост/островок ---- */
.stm-cb{position:relative !important}
.stm-cb .stm-b1,.stm-cb .stm-b2{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;opacity:0;pointer-events:none;white-space:nowrap}
.stm-ld{width:20px;height:20px;border-radius:50%;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;animation:stm-rot .7s linear infinite}
@keyframes stm-rot{to{transform:rotate(360deg)}}
.stm-cb .stm-b2 svg{width:20px;height:20px;flex:0 0 auto}
.stm-cb .stm-b2 path{stroke-dasharray:24;stroke-dashoffset:24}
.stm-cb[aria-busy=true]{cursor:progress}
.st-cart-count{transform-origin:50% 50%}
.stm-toast{position:fixed;z-index:100000;right:max(24px,calc((100vw - 1200px)/2));top:132px;width:400px;max-width:calc(100vw - 24px);display:flex;align-items:center;gap:12px;padding:12px 12px 12px 14px;background:var(--navy);color:#fff;border-radius:18px;box-shadow:0 18px 40px rgba(8,18,34,.28);opacity:0;visibility:hidden;font:600 14px/1.3 var(--font);overflow:hidden}
.stm-toast .stm-t-ic{flex:0 0 32px;height:32px;border-radius:50%;background:var(--orange-btn);display:flex;align-items:center;justify-content:center}
.stm-toast .stm-t-ic svg{width:18px;height:18px}
.stm-toast .stm-t-tx{flex:1 1 auto;min-width:0}
.stm-toast .stm-t-tx b{display:block;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stm-toast .stm-t-tx span{display:block;opacity:.75;font-weight:500;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stm-toast a.stm-t-go,.stm-toast a.stm-t-go:visited{flex:0 0 auto;background:#fff;color:var(--navy) !important;border-radius:999px;padding:10px 14px;font-weight:800;text-decoration:none;white-space:nowrap}
.stm-toast a.stm-t-go:hover{background:var(--light);color:var(--navy) !important}
.stm-toast .stm-t-x{flex:0 0 auto;width:28px;height:28px;border:0 !important;background:transparent !important;color:#fff !important;opacity:.6;padding:0 !important;font-size:20px;line-height:1;cursor:pointer;box-shadow:none !important}
.stm-toast>*{opacity:0}
@media (max-width:921px){.stm-toast{left:12px;right:12px;top:auto;width:auto;max-width:none;bottom:calc(12px + env(safe-area-inset-bottom));border-radius:28px;margin:0 auto;gap:10px;font-size:13px}.stm-toast .stm-t-tx span{font-size:12px}.stm-toast a.stm-t-go,.stm-toast a.stm-t-go:visited{padding:9px 12px}.stm-toast .stm-t-x{width:22px}}
.stm-sr{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* ---- этап 3: жидкий сегмент, резина ползунка, тумблер «за метр» ---- */
.stm-lq{position:relative}
.stm-lq>button{position:relative;z-index:1}
.stm-lq>button:not(:hover){background-color:transparent !important}
.stm-lq>button.stm-lq-a{background-color:transparent !important;border-color:transparent !important}
.stm-lqi{position:absolute !important;left:0;top:0;margin:0 !important;z-index:0;pointer-events:none;opacity:0;width:0;height:0}
.single_variation_wrap.stm-pm-has{position:relative}
.stm-pm{position:absolute;right:0;top:4px;z-index:2;display:none;align-items:center;gap:8px;font:600 13px/1 var(--font);color:var(--navy);user-select:none}
.stm-pm-has>.stm-pm{display:flex}
.stm-pm span{cursor:pointer}
.stm-tgl{position:relative;width:44px;height:26px;border-radius:13px !important;border:0 !important;padding:0 !important;margin:0;cursor:pointer;flex:none;background:var(--light) !important;box-shadow:inset 0 0 0 1px rgba(22,38,61,.12) !important;min-height:0 !important;transition:background-color .2s}
.stm-tgl[aria-checked=true]{background:var(--blue) !important;box-shadow:none !important}
.stm-tgl i{position:absolute;left:0;top:3px;height:20px;width:20px;border-radius:10px;background:#fff;box-shadow:0 1px 3px rgba(22,38,61,.3)}
.stm-tgl:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
/* ---- этап 4: вкладки карточки ---- */
.stm-tb>li.active::before{background:transparent !important}
.stm-tbi{position:absolute !important;left:0;top:0;margin:0 !important;z-index:1;pointer-events:none;opacity:0;width:0;height:3px}
/* ---- этап 5: поиск-палитра ---- */
.st-search.stm-sh{position:relative}
.stm-pal{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:1000;background:#fff;border-radius:20px;box-shadow:0 18px 48px rgba(22,38,61,.18),0 2px 6px rgba(22,38,61,.08);padding:6px;display:none;transform-origin:50% 0;max-height:min(460px,calc(100vh - 160px));overflow:auto;overscroll-behavior:contain;text-align:left;font-family:var(--font)}
.stm-pal.stm-pal-on{display:block}
.stm-pal ul{list-style:none;margin:0;padding:0;position:relative}
.stm-pal li{margin:0;padding:0;position:relative;z-index:1}
.stm-pal .stm-pi{position:absolute;left:0;right:0;top:0;height:0;border-radius:14px;background:var(--bg);background:color-mix(in srgb,var(--blue) 9%,#fff);z-index:0;pointer-events:none;opacity:0}
.stm-pal a.stm-po{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:14px;color:var(--navy);text-decoration:none;line-height:1.3}
.stm-pal a.stm-po img,.stm-pal a.stm-po .stm-pim{width:40px;height:40px;flex:none;border-radius:10px;object-fit:cover;background:var(--bg)}
.stm-pal .stm-pn{flex:1;min-width:0;font-size:14px;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.stm-pal .stm-pp{flex:none;font-size:13px;font-weight:700;color:var(--blue);white-space:nowrap}
.stm-pal .stm-pp .screen-reader-text{display:none}
.stm-pal .stm-pall{font-size:13px;font-weight:600;color:var(--blue)}
.stm-pal .stm-pe{padding:12px 12px 6px;font-size:14px;color:var(--navy)}
.stm-pal a.stm-prfq{justify-content:center;margin:6px 4px 4px;background:var(--orange-btn);color:#fff;font-weight:700;font-size:14px}
.stm-pal a.stm-prfq:hover{background:var(--orange-hi)}
.stm-pal.stm-pal-ld ul{opacity:.55;transition:opacity .15s}
@media (max-width:921px){.stm-pal{max-height:calc(100vh - 200px)}.stm-pal .stm-pp{display:none}}
