@font-face { font-family:Manrope; font-style:normal; font-weight:200 800; font-display:swap; src:url('./fonts/manrope-variable.woff2') format('woff2'); }

:root { color-scheme: light; --ink:#19324d; --muted:#53677e; --accent:#245fbc; --blue:#e5effc; --pink:#f7eeee; --beige:#f6f2ec; --mint:#eef3f0; --line:#dce5f0; font-family:Manrope,Arial,sans-serif; color:var(--ink); background:#fff; font-size:16px; line-height:1.6; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-width:320px; background:#fff; }
a { color:inherit; text-decoration:none; }
button,input { font:inherit; }
img { display:block; max-width:100%; }
h1,h2,h3,p { margin:0; }
h1,h2,h3 { font-weight:600; line-height:1.2; letter-spacing:-.04em; }
p { color:var(--muted); }
:focus-visible { outline:3px solid #3979d0; outline-offset:4px; border-radius:5px; }
#page-wrapper { display:flex; flex-direction:column; min-height:100vh; width:100%; margin:0; }
.container { width:min(1344px,calc(100% - 112px)); margin-inline:auto; }
.skip-link { position:fixed; top:-100px; left:18px; z-index:10000; padding:12px 18px; border-radius:10px; background:#fff; box-shadow:0 5px 20px #19324d20; }
.skip-link:focus { top:12px; }
.topline { height:38px; background:#eef4fc; color:#4d6381; font-size:12px; }
.topline .container { display:flex; align-items:center; justify-content:space-between; height:100%; gap:15px; }
.topline a { white-space:nowrap; }
.location-icon { display:block; width:1em; height:1em; flex:none; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }
.topline-location { display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
.topline-location .location-icon { width:14px; height:14px; }
.topline-phone { display:inline-flex; align-items:center; gap:7px; font-weight:600; }
.topline-phone svg { display:block; width:15px; height:15px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }
.topline-phone:hover { color:var(--accent); }
.site-header { background:#fff; }
.header-main { display:flex; align-items:center; gap:24px; padding:20px 0; }
.brand { display:flex; align-items:center; gap:10px; flex-shrink:0; font-size:23px; font-weight:750; letter-spacing:-1px; line-height:1; }
.brand-logo { width:44px; height:44px; flex:0 0 44px; object-fit:contain; }
.footer-brand .brand-logo { width:52px; height:52px; flex-basis:52px; }
.brand small { display:block; margin-top:7px; font-size:8px; font-weight:600; letter-spacing:1.7px; text-transform:uppercase; }
.catalog-button,.button { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:48px; padding:12px 19px; border:0; border-radius:12px; background:var(--blue); color:var(--ink); font-size:14px; font-weight:600; white-space:nowrap; }
.site-search-wrap { position:relative; flex:1 1 auto; min-width:150px; }
.site-search { display:flex; align-items:center; width:100%; gap:8px; padding:0 13px; border:1px solid transparent; border-radius:12px; background:#f0f5fc; }
.site-search:focus-within { border-color:#578bd0; }
.site-search input { width:100%; min-width:0; min-height:48px; border:0; outline:0; background:transparent; color:var(--ink); font-size:14px; }
.site-search input::placeholder { color:#536d8b; opacity:1; }
.site-search button { width:36px; min-height:44px; border:0; background:transparent; color:#426aa3; font-size:20px; cursor:pointer; }
.title-search-result { z-index:1000; overflow:hidden; border:1px solid var(--line); border-radius:14px; background:#fff; box-shadow:0 12px 32px #19324d20; color:var(--ink); font-size:13px; }
.title-search-result table { width:100%; border-collapse:collapse; }
table.title-search-result { width:100%; border-collapse:collapse; }
.title-search-result th { padding:10px 14px 5px; color:var(--muted); font-size:10px; font-weight:700; text-align:left; }
.title-search-result th.title-search-separator,.title-search-result td.title-search-separator { height:0; padding:0; border:0; line-height:0; }
.title-search-result td { border-top:1px solid #edf1f6; }
.title-search-result td a { display:block; padding:10px 14px; color:var(--ink); }
.title-search-result td a:hover,.title-search-result tr.title-search-selected td { background:#f0f5fc; }
.title-search-result .title-search-all a { color:var(--accent); font-weight:650; }
.title-search-result td .search-title-product { display:grid; grid-template-columns:64px minmax(0,1fr); align-items:center; gap:12px; padding:8px 12px; }
.search-title-image { width:64px; height:64px; border-radius:9px; background:#f0f5fc; object-fit:contain; }
.search-title-placeholder { display:grid; place-items:center; color:#7890ac; font-size:25px; }
.search-title-copy,.search-title-name { display:block; min-width:0; }
.search-title-name { overflow:hidden; line-height:1.45; text-overflow:ellipsis; }
.search-title-price { display:block; margin-top:3px; color:#315f96; font-size:12px; }
.header-favorites { display:flex; min-width:56px; flex:0 0 auto; flex-direction:column; align-items:center; justify-content:center; gap:1px; color:#263e59; font-size:10px; line-height:1.3; white-space:nowrap; }
.header-favorites:hover { color:var(--accent); }
.header-favorites__icon { position:relative; display:grid; width:34px; height:30px; place-items:center; }
.header-favorites__icon svg { display:block; width:24px; height:24px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }
.header-favorites__count { position:absolute; top:34%; right:-8px; display:grid; width:20px; min-width:20px; height:20px; place-items:center; padding:0; transform:translateY(-50%); border:1px solid #fff; border-radius:50%; background:var(--accent); color:#fff; font-size:10px; font-weight:700; line-height:1; }
.header-favorites__count[hidden] { display:none; }
.header-contact { padding:10px 14px; border:1px solid var(--line); border-radius:10px; color:#315f96; font-size:13px; font-weight:600; white-space:nowrap; }
.mobile-nav-layer,.mobile-nav-panel { display:contents; }
.mobile-menu-toggle,.mobile-nav-backdrop,.mobile-nav-panel__heading { display:none; }
.mobile-nav-backdrop[hidden] { display:none!important; }
.category-nav { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:55px; border-top:1px solid #f0f2f3; color:#355372; font-size:13px; }
.category-nav a { position:relative; padding:10px 0; }
.category-nav a:hover,.category-nav a.is-active,.header-contact:hover { color:var(--accent); }
.category-nav a.is-active { font-weight:700; }
.category-nav a.is-active::after { position:absolute; right:0; bottom:-1px; left:0; height:2px; border-radius:2px; background:var(--accent); content:""; }
.site-main { flex:1; min-width:0; padding-top:24px; padding-bottom:64px; }
.site-main #workarea { width:auto; float:none; padding:0; }
.breadcrumbs { margin:0 0 14px; color:var(--muted); font-size:12px; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.breadcrumbs li+li::before { margin-right:8px; color:#91a1b4; content:"/"; }
.breadcrumbs a:hover { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.breadcrumbs [aria-current="page"] { color:#315f96; font-weight:600; }
.page-heading { margin:6px 0 34px; }
.page-heading h1 { font-size:40px; overflow-wrap:anywhere; }
.favorites-eyebrow { margin:4px 0 7px; font-size:10px; letter-spacing:1.5px; }
.page-heading--favorites { margin:0 0 11px; }
.favorites-page__description { margin:0 0 36px; color:#718096; font-size:14px; }
.favorites-toolbar { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:24px; }
.favorites-toolbar__count { color:#78889a; font-size:13px; }
.favorites-toolbar__count strong { color:var(--ink); font-weight:700; }
.favorites-toolbar__sort { display:flex; align-items:center; gap:11px; color:#75869a; font-size:13px; }
.favorites-toolbar__sort select { min-width:180px; min-height:43px; padding:8px 34px 8px 13px; border:1px solid #dfe6ee; border-radius:11px; background:#fff; color:#52677f; font:inherit; cursor:pointer; }
.favorites-results .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.favorites-loading { margin:-8px 0 22px; color:#78889a; font-size:13px; }
.favorites-empty { display:flex; flex-direction:column; align-items:center; padding:42px 18px 54px; text-align:center; }
.favorites-empty[hidden],.favorites-error[hidden] { display:none!important; }
.favorites-empty__icon { display:grid; width:70px; height:70px; margin-bottom:18px; place-items:center; border-radius:22px; background:#f0f5fc; color:#6385b4; }
.favorites-empty__icon svg { width:35px; height:35px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.5; }
.favorites-empty h2 { font-size:23px; letter-spacing:-.025em; }
.favorites-empty p { margin:8px 0 20px; color:#718096; font-size:14px; }
.favorites-empty .button { min-height:44px; padding:10px 17px; }
.favorites-error { display:flex; flex-direction:column; align-items:center; gap:14px; padding:34px 20px; border-radius:18px; background:#f7f9fc; text-align:center; }
.favorites-error p { color:var(--muted); }
.favorites-error .button { cursor:pointer; }
.favorites-popover { position:fixed; z-index:10001; top:0; left:0; width:max-content; max-width:calc(100vw - 24px); padding:11px 17px; border-radius:12px; background:var(--accent); box-shadow:0 5px 18px #245fbc35; color:#fff; font-size:13px; font-weight:600; line-height:1.45; text-align:center; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(4px); transition:opacity .18s ease,transform .18s ease,visibility .18s ease; }
.favorites-popover[hidden] { display:none; }
.favorites-popover.is-visible { opacity:1; visibility:visible; transform:translateY(0); }
.favorites-popover::after { position:absolute; left:var(--popover-arrow-x); width:10px; height:10px; border-radius:2px; background:var(--accent); content:""; transform:translateX(-50%) rotate(45deg); }
.favorites-popover[data-placement="above"]::after { bottom:-5px; }
.favorites-popover[data-placement="below"]::after { top:-5px; }
.error-state { display:grid; grid-template-columns:minmax(220px,.85fr) 1.15fr; align-items:center; gap:clamp(24px,6vw,76px); min-height:355px; margin:16px 0 28px; padding:clamp(25px,5vw,58px); border-radius:28px; background:linear-gradient(125deg,#edf4ff,#f8fbff 62%,#eff5fc); }
.error-state__visual { position:relative; display:grid; width:min(100%,290px); aspect-ratio:1; place-items:center; justify-self:center; border:1px solid #d6e5f8; border-radius:50%; background:radial-gradient(circle,#d6e7ff 0 47%,#eaf2fd 48% 100%); color:var(--accent); }
.error-state__number { position:relative; z-index:1; margin-left:-.08em; font-size:clamp(82px,11vw,132px); font-weight:800; letter-spacing:-.09em; line-height:1; }
.error-state__plus { position:absolute; z-index:1; top:12%; right:8%; display:grid; width:52px; aspect-ratio:1; place-items:center; border-radius:16px; background:#fff; box-shadow:0 10px 24px #19324d18; font-size:34px; font-weight:500; }
.error-state__copy .eyebrow { display:block; }
.error-state__copy h1,.error-state__copy h2 { margin:15px 0 12px; font-size:clamp(27px,3vw,39px); }
.error-state__copy p { max-width:540px; font-size:15px; line-height:1.8; }
.error-state__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.error-state__phone { margin-top:21px; font-size:12px!important; }
.error-state__phone a { color:#315f96; font-weight:700; white-space:nowrap; }
.error-static-body { min-height:100vh; background:#fff; }
.error-static-shell { width:min(1344px,calc(100% - 112px)); margin-inline:auto; padding:34px 0; }
.error-static-main { padding-top:8px; }
.error-static-main .error-state { margin-top:0; }
.error-static-main .error-state__copy h1 { margin-top:15px; }
.page-home .site-main { padding-top:8px; }
.home-carousel { margin-top:16px; }
.home-carousel__viewport { position:relative; display:grid; overflow:hidden; border-radius:28px; }
.home-carousel__slide { grid-area:1 / 1; }
.home-carousel__slide[hidden] { display:grid!important; visibility:hidden; pointer-events:none; }
.home-carousel__slide.is-entering-from-right { z-index:1; animation:home-carousel-enter-from-right .65s cubic-bezier(.22,.61,.36,1) both; }
.home-carousel__slide.is-entering-from-left { z-index:1; animation:home-carousel-enter-from-left .65s cubic-bezier(.22,.61,.36,1) both; }
.home-carousel__slide.is-leaving-to-left { z-index:0; pointer-events:none; animation:home-carousel-leave-to-left .65s cubic-bezier(.22,.61,.36,1) both; }
.home-carousel__slide.is-leaving-to-right { z-index:0; pointer-events:none; animation:home-carousel-leave-to-right .65s cubic-bezier(.22,.61,.36,1) both; }
@keyframes home-carousel-enter-from-right { from { transform:translateX(100%); } to { transform:translateX(0); } }
@keyframes home-carousel-enter-from-left { from { transform:translateX(-100%); } to { transform:translateX(0); } }
@keyframes home-carousel-leave-to-left { from { transform:translateX(0); } to { transform:translateX(-100%); } }
@keyframes home-carousel-leave-to-right { from { transform:translateX(0); } to { transform:translateX(100%); } }
.home-carousel .hero { margin-top:0; }
.home-banner { position:relative; display:grid; grid-template-columns:1.03fr 1fr; min-height:486px; overflow:hidden; border-radius:28px; background:#edf4ff; }
.home-banner__copy { position:relative; z-index:1; align-self:center; padding:48px 24px 48px 48px; }
.home-banner__icon { display:grid; width:42px; height:42px; margin-bottom:16px; place-items:center; border-radius:13px; background:#fff; color:#376aa9; }
.home-banner__icon svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.home-banner__eyebrow { display:block; margin-bottom:15px; color:#58749a; font-size:10px; font-weight:700; letter-spacing:1.2px; }
.home-banner--certificate .home-banner__eyebrow { margin:24px 0 0; }
.home-banner__title { max-width:610px; margin:0; color:#193858; font-size:clamp(38px,4.2vw,58px); line-height:1.13; letter-spacing:-.055em; }
.home-banner--certificate .home-banner__title { font-size:clamp(36px,3.35vw,44px); }
.home-banner__title-accent { color:#2e68b6; }
.home-banner__description { max-width:470px; margin-top:19px; color:#526b8b; font-size:15px; line-height:1.75; }
.home-banner__price { display:flex; flex-direction:column; gap:3px; margin-top:18px; }
.home-banner__price strong { color:#245fbc; font-size:30px; font-weight:750; letter-spacing:-.045em; line-height:1.2; }
.home-banner__price span { color:#74859a; font-size:11px; }
.home-banner__button { width:fit-content; min-height:49px; margin-top:23px; padding-inline:25px; }
.home-banner__visual { position:relative; display:grid; min-width:0; min-height:360px; overflow:hidden; place-items:center; isolation:isolate; background:transparent; }
.home-banner__glow { position:absolute; z-index:-1; width:min(82%,460px); aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.72) 0%,rgba(255,255,255,.24) 43%,transparent 72%); }
.home-banner__visual img { width:89%; height:83%; object-fit:contain; mix-blend-mode:multiply; }
.home-carousel__controls { position:absolute; z-index:2; inset:auto 18px 18px; display:flex; align-items:center; justify-content:space-between; gap:20px; pointer-events:none; }
.home-carousel__dots,.home-carousel__buttons { display:flex; align-items:center; gap:10px; pointer-events:auto; }
.home-carousel__dot { width:8px; height:8px; flex:0 0 8px; padding:0; border:0; border-radius:999px; background:#b7c6d8; cursor:pointer; transition:width .2s ease,background .2s ease; }
.home-carousel__dot.is-active { width:24px; flex-basis:24px; background:var(--accent); }
.home-carousel__buttons { gap:8px; }
.home-carousel__control { display:grid; width:42px; height:42px; place-items:center; border:1px solid #d8e2ef; border-radius:50%; background:#fff; color:#356aa8; cursor:pointer; transition:background .16s ease,border-color .16s ease,color .16s ease; }
.home-carousel__control:hover { border-color:#b9cce2; background:#f1f6fd; color:#1b4f92; }
.home-carousel__control svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.home-carousel__control:focus-visible,.home-carousel__dot:focus-visible { outline:3px solid #3979d0; outline-offset:3px; }
@media (prefers-reduced-motion:reduce) {
	.home-carousel__slide { animation:none!important; }
	.home-carousel__dot,.home-carousel__control { transition:none; }
}
.eyebrow { color:#4c6990; font-size:10px; font-weight:700; letter-spacing:1.5px; }
.hero { position:relative; display:grid; grid-template-columns:1.03fr 1fr; min-height:486px; margin-top:16px; overflow:hidden; border-radius:28px; background:#edf4ff; }
.hero-copy { position:relative; z-index:1; padding:56px 0 40px 48px; }
.hero-copy .eyebrow { display:flex; align-items:center; gap:8px; }
.hero-copy .eyebrow span { width:5px; height:5px; border-radius:50%; background:#4c7fc0; }
.hero h1 { margin:22px 0; color:#193858; font-size:clamp(38px,3.6vw,56px); line-height:1.13; letter-spacing:-.055em; }
.hero h1 span { color:#2e68b6; }
.hero-copy p { color:#4b6382; font-size:15px; line-height:1.8; }
.hero-actions { display:flex; align-items:center; gap:20px; margin-top:28px; }
.button.primary { background:var(--accent); color:#fff; }
.button.primary:hover { background:#194d9d; }
.text-button { display:inline-flex; align-items:center; min-height:44px; padding:8px 0; color:var(--ink); font-size:13px; font-weight:600; }
.text-button:hover,.section-link:hover { text-decoration:underline; text-underline-offset:5px; }
.hero-foot { display:flex; align-items:center; gap:8px; margin-top:35px; color:#506c91; font-size:11px; }
.hero-visual { position:relative; display:flex; align-items:center; justify-content:center; min-width:0; isolation:isolate; background:linear-gradient(130deg,transparent,#dceaff); }
.hero-disc { position:absolute; top:15%; left:18%; width:340px; height:340px; border-radius:50%; background:#c9defb; opacity:.8; }
.hero-photo { position:relative; display:grid; width:86%; height:78%; place-items:center; }
.hero-photo img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.visual-caption { position:absolute; top:30px; right:28px; color:#5b769d; font-size:9px; letter-spacing:1.4px; }
.hero-product { position:absolute; bottom:30px; left:4%; z-index:2; display:flex; align-items:center; gap:14px; max-width:68%; padding:14px 20px 14px 14px; border:1px solid #ffffffaa; border-radius:16px; background:#ffffffe8; box-shadow:0 10px 35px #263c4610; backdrop-filter:blur(10px); }
.hero-product-icon { display:grid; width:40px; height:40px; flex:0 0 40px; place-items:center; border-radius:50%; background:#e4efff; color:var(--accent); font-size:27px; }
.hero-product small { display:block; overflow:hidden; color:#5c7292; font-size:8px; letter-spacing:.8px; text-overflow:ellipsis; white-space:nowrap; }
.hero-product strong { display:block; overflow:hidden; margin:3px 0; font-size:14px; text-overflow:ellipsis; white-space:nowrap; }
.hero-product span span { display:block; color:#506b92; font-size:10px; }
.visual-note { position:absolute; right:28px; bottom:37px; color:#5175a4; font-size:10px; line-height:1.6; }
.tiny-cross { display:block; margin-bottom:5px; color:#6f97cf; font-size:24px; line-height:1; }
.reassurance { display:grid; grid-template-columns:repeat(3,1fr); padding:26px 12px; border-bottom:1px solid var(--line); }
.reassurance>div { display:flex; align-items:center; justify-content:center; gap:13px; }
.reassurance>div+div { border-left:1px solid var(--line); }
.reassurance-icon { display:grid; width:44px; height:44px; flex:0 0 44px; place-items:center; color:#6f8fb7; }
.reassurance-icon svg { display:block; width:40px; height:40px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.65; }
.reassurance strong,.reassurance small { display:block; }
.reassurance strong { font-size:13px; font-weight:650; }
.reassurance small { margin-top:2px; color:#5e7190; font-size:11px; }
.section { margin-top:62px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:24px; }
.section-heading .eyebrow { display:block; margin-bottom:10px; }
.section-heading h2,.store-section h2 { font-size:34px; }
.section-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:#315f96; font-size:13px; font-weight:650; white-space:nowrap; }
.section-link span { font-size:18px; }
.category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.category-card { position:relative; min-height:240px; overflow:hidden; padding:21px; border-radius:20px; transition:transform .2s ease; }
.category-card:hover { transform:translateY(-3px); }
.category-card:nth-child(16n+1),.category-card:nth-child(16n+8),.category-card:nth-child(16n+11),.category-card:nth-child(16n+14) { background:var(--blue); }
.category-card:nth-child(16n+2),.category-card:nth-child(16n+5),.category-card:nth-child(16n+12),.category-card:nth-child(16n+15) { background:var(--pink); }
.category-card:nth-child(16n+3),.category-card:nth-child(16n+6),.category-card:nth-child(16n+9),.category-card:nth-child(16n+16) { background:var(--beige); }
.category-card:nth-child(16n+4),.category-card:nth-child(16n+7),.category-card:nth-child(16n+10),.category-card:nth-child(16n+13) { background:var(--mint); }
.category-card>div { position:relative; z-index:1; max-width:180px; }
.category-number { display:block; margin-bottom:10px; color:#899ba3; font-size:9px; letter-spacing:1px; }
.category-card h3 { max-width:170px; font-size:19px; letter-spacing:-.025em; }
.category-card p { max-width:160px; margin-top:8px; font-size:11px; line-height:1.5; }
.category-card img { position:absolute; right:0; bottom:2px; width:62%; height:118px; object-fit:contain; mix-blend-mode:multiply; }
.category-card:nth-child(3) img { height:135px; }
.category-go { position:absolute; bottom:17px; left:18px; display:grid; width:28px; height:28px; place-items:center; border-radius:50%; background:#ffffffc9; color:#8292a2; }
.category-go svg { display:block; width:12px; height:12px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-width:1.35; }
.product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.catalog-layout { display:grid; grid-template-columns:228px minmax(0,1fr); align-items:start; gap:24px; margin-top:22px; }
.catalog-sidebar { min-width:0; }
.catalog-sidebar__content { position:sticky; top:16px; }
.catalog-filter-toggle { display:none; }
.catalog-sidebar__categories { padding:0 0 22px; border-bottom:1px solid var(--line); }
.catalog-sidebar__categories h2,.catalog-sidebar__group h2 { margin:0 0 12px; color:var(--ink); font-size:14px; font-weight:700; letter-spacing:0; }
.catalog-sidebar__category { display:flex; min-height:42px; align-items:center; justify-content:space-between; gap:10px; padding:9px 12px; border-radius:10px; color:#566b83; font-size:13px; line-height:1.35; transition:background .16s ease,color .16s ease; }
.catalog-sidebar__category:hover,.catalog-sidebar__category.is-active { background:var(--blue); color:var(--ink); }
.catalog-sidebar__category.is-active { font-weight:700; }
.catalog-sidebar__category-count { flex:0 0 auto; color:#71849b; font-size:11px; }
.catalog-filter-form { padding:21px 0 19px; border-bottom:1px solid var(--line); }
.catalog-sidebar__group { margin:0; padding:0; border:0; }
.catalog-price-output { display:block; margin-bottom:13px; color:var(--ink); font-size:13px; font-weight:600; }
.catalog-price-range { display:block; width:100%; height:20px; margin:0; accent-color:var(--accent); cursor:pointer; }
.catalog-price-range:disabled { cursor:default; opacity:.45; }
.catalog-price-range__limits { display:flex; justify-content:space-between; gap:8px; margin-top:2px; color:#70839b; font-size:10px; }
.catalog-available { display:flex; align-items:center; gap:9px; margin:17px 0 15px; color:#52677f; font-size:13px; cursor:pointer; }
.catalog-available input { width:18px; height:18px; flex:0 0 18px; margin:0; accent-color:var(--accent); }
.catalog-filter-reset { display:inline-block; color:#5c7188; font-size:12px; font-weight:600; }
.catalog-filter-reset:hover { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.catalog-sidebar__help { margin-top:22px; padding:20px; border-radius:18px; background:var(--beige); color:var(--ink); }
.catalog-sidebar__help-icon { display:grid; width:34px; height:34px; margin-bottom:10px; place-items:center; border-radius:50%; background:#ffffffa8; color:#647c96; font-size:18px; }
.catalog-sidebar__help h2 { margin:0; font-size:15px; letter-spacing:-.02em; }
.catalog-sidebar__help p { margin:7px 0 13px; color:#758295; font-size:12px; line-height:1.5; }
.catalog-sidebar__help a { color:#4f6884; font-size:12px; font-weight:700; }
.catalog-sidebar__help a:hover { color:var(--accent); }
.catalog-results { min-width:0; }
.catalog-toolbar { display:flex; min-height:44px; align-items:center; justify-content:space-between; gap:16px; margin-bottom:22px; }
.catalog-result-count { color:#718197; font-size:13px; }
.catalog-result-count strong { color:var(--ink); font-weight:700; }
.catalog-sort-form { display:flex; align-items:center; gap:10px; color:#78889a; font-size:13px; }
.catalog-sort-form select { min-width:180px; min-height:42px; padding:8px 34px 8px 12px; border:1px solid #dfe6ee; border-radius:11px; background:#fff; color:#53677e; font:inherit; cursor:pointer; }
.catalog-results .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px 18px; }
.catalog-empty { display:flex; min-height:300px; flex-direction:column; align-items:center; justify-content:center; padding:30px; border-radius:20px; background:#f7f9fc; text-align:center; }
.catalog-empty h2 { font-size:22px; }
.catalog-empty p { max-width:430px; margin:9px 0 18px; font-size:14px; }
.catalog-empty .button { background:var(--accent); color:#fff; }
.catalog-empty .button:hover { background:#194f9f; }
.related-products { margin-top:54px; }
.related-products__heading { margin:0 0 22px; font-size:32px; }
.related-products__carousel { position:relative; }
.related-products__viewport { overflow-x:auto; scrollbar-width:none; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scroll-padding-inline:1px; }
.related-products__viewport::-webkit-scrollbar { display:none; }
.related-products .related-products__track { display:flex; gap:22px; padding:2px 1px 8px; }
.related-products__track>.product-card { flex:0 0 calc(25% - 16.5px); scroll-snap-align:start; }
.related-products__controls { position:absolute; z-index:1; inset:50% 0 auto; display:flex; justify-content:space-between; padding:0 8px; transform:translateY(-50%); pointer-events:none; }
.related-products__controls[hidden] { display:none; }
.related-products__controls .partner-logos__arrow { pointer-events:auto; }
.related-products__controls .partner-logos__arrow:disabled { opacity:.45; cursor:default; }
.related-products__viewport:focus-visible { outline:3px solid #8eb9f0; outline-offset:3px; border-radius:12px; }
.product-card { min-width:0; border-radius:20px; }
.product-photo { position:relative; height:230px; padding:30px 18px 16px; border-radius:20px; background:#f0f5fc; }
.product-photo>a { display:flex; width:100%; height:100%; align-items:center; justify-content:center; }
.product-photo img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; transition:transform .25s ease; }
.product-card:hover .product-photo img { transform:scale(1.04); }
@keyframes product-image-shimmer { to { background-position:-200% 0; } }
html.has-product-image-loader img[data-product-image][data-image-state="loading"] { background-color:#e8eef5; background-image:linear-gradient(100deg,#e8eef5 25%,#f8fafd 50%,#e8eef5 75%); background-size:200% 100%; animation:product-image-shimmer 1.25s ease-in-out infinite; }
html.has-product-image-loader img[data-product-image][data-image-state="error"] { opacity:0; }
@media (prefers-reduced-motion:reduce) { html.has-product-image-loader img[data-product-image][data-image-state="loading"] { animation:none; } }
.favorite-toggle { position:absolute; z-index:2; top:10px; right:10px; display:grid; width:42px; height:42px; padding:0; place-items:center; border:1px solid transparent; border-radius:50%; background:#ffffffed; box-shadow:0 4px 14px #19324d14; color:#607c9e; cursor:pointer; transition:color .18s ease; }
.favorite-toggle:hover { color:#a51d3d; }
.favorite-toggle svg { display:block; width:21px; height:21px; fill:transparent; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; transition:fill .18s ease,stroke .18s ease,stroke-width .18s ease; }
.favorite-toggle:hover svg { fill:#e45370; stroke:#a51d3d; stroke-width:2; }
.favorite-toggle[aria-pressed="true"] { color:#9c1538; }
.favorite-toggle[aria-pressed="true"] svg { fill:#c9234a; stroke:#8f1532; stroke-width:2.1; }
.favorite-toggle[aria-pressed="true"]:hover svg { fill:#a91b3d; stroke:#7c132b; }
.favorite-toggle:focus-visible { outline:3px solid #8eb9f0; outline-offset:3px; }
.product-placeholder { display:grid; width:48px; height:48px; place-items:center; border-radius:50%; background:var(--blue); color:#7890ac; font-size:30px; font-weight:400; }
.product-info { padding:14px 2px; }
.product-info h3 { height:4.5em; margin:0 0 12px; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; font-size:15px; font-weight:600; letter-spacing:0; line-height:1.5; overflow-wrap:anywhere; }
.product-info h3 a:hover { text-decoration:underline; text-underline-offset:4px; }
.product-bottom { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:13px; }
.product-bottom strong { font-size:19px; font-weight:700; letter-spacing:-.02em; white-space:nowrap; }
.product-link { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:9px 13px; border-radius:10px; background:var(--blue); color:var(--accent); font-size:12px; font-weight:650; white-space:nowrap; }
.product-link:hover { background:#d1e3fd; }
.catalog-pagination { display:flex; justify-content:center; margin-top:32px; }
.catalog-pagination .nav-pages { display:flex; align-items:center; justify-content:center; gap:7px; }
.catalog-pagination .nav-pages a,.catalog-pagination .nav-pages span { display:grid; width:42px; height:42px; place-items:center; border:1px solid var(--line); border-radius:12px; background:#fff; color:var(--ink); font-size:14px; font-weight:600; transition:background .18s ease,border-color .18s ease,color .18s ease; }
.catalog-pagination .nav-pages .nav-current-page { border-color:var(--accent); background:var(--accent); color:#fff; }
.catalog-pagination .nav-pages .pager-arrow { color:var(--accent); font-size:21px; line-height:1; }
.catalog-pagination .nav-pages a:hover { border-color:#bdd2f0; background:var(--blue); }
.search-page > form table { width:100%; }
.search-page > form td:first-child { width:100%; }
.search-page .search-query,.search-page .search-suggest { min-height:48px; padding:8px 14px; border:1px solid var(--line); border-radius:12px; background:#f7f9fc; color:var(--ink); font-size:14px; }
.search-page .search-button { min-height:48px; padding:0 18px; border:0; border-radius:12px; background:var(--accent); color:#fff; font-size:14px; cursor:pointer; }
.search-page__form .search-button { width:auto; flex:0 0 auto; }
.search-page .search-advanced { margin-top:14px; color:var(--muted); font-size:13px; }
.search-page .search-advanced-result .search-result { color:var(--muted); font-size:13px; }
.search-page > .search-result { margin-top:20px; }
.search-page .search-item { margin:0; padding:18px 0; border-bottom:1px solid var(--line); }
.search-page .search-item h4 { margin:0 0 8px; font-size:19px; font-weight:650; line-height:1.4; }
.search-page .search-item h4 a { color:var(--ink); }
.search-page .search-item h4 a:hover { color:var(--accent); text-decoration:underline; text-underline-offset:4px; }
.search-page .search-preview { color:var(--muted); font-size:13px; line-height:1.7; }
.search-page .search-item-meta { margin-top:8px; color:var(--muted); font-size:11px; }
.search-page__form { max-width:760px; margin:0 0 30px; }
.search-page__form input.search-query { flex:1; }
.search-page__hint { margin:18px 0; color:var(--muted); }
.search-page__section { margin:26px 0 0; }
.search-page__section h2 { margin:0 0 20px; font-size:26px; }
.search-page__articles .search-item h3 { margin:0 0 8px; font-size:19px; font-weight:650; line-height:1.4; }
.search-page__articles .search-item h3 a:hover { color:var(--accent); text-decoration:underline; text-underline-offset:4px; }
.price-note { margin-top:14px; color:#6c7f94; font-size:11px; }
.care-banner { display:grid; grid-template-columns:80px minmax(0,1.15fr) minmax(0,1fr); align-items:center; gap:32px; margin-top:54px; padding:47px 50px; overflow:hidden; border-radius:24px; background:#e8f1ff; }
.care-banner__mark { width:60px; height:60px; justify-self:start; transform:translateY(3px); background:linear-gradient(#b7cdf0,#b7cdf0) center/58px 7px no-repeat,linear-gradient(#b7cdf0,#b7cdf0) center/7px 58px no-repeat; }
.care-banner__intro { position:relative; left:-4px; }
.care-banner .eyebrow { display:block; margin-bottom:12px; }
.care-banner h2 { max-width:370px; font-size:29px; }
.care-banner p { max-width:270px; margin-bottom:16px; font-size:14px; line-height:2.2; }
.care-banner__action .button { min-height:48px; padding-inline:24px; }
.button.secondary { border:1px solid var(--line); background:#fff; color:var(--ink); }
.store-section { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:50px; margin:58px 0 8px; }
.store-section h2 { margin:10px 0 16px; }
.store-section p { margin-bottom:10px; font-size:14px; }
.store-address { position:relative; padding:31px 36px; border-radius:24px; background:#f0f5fc; }
.store-address .eyebrow { display:block; }
.store-address h3 { margin:9px 0; font-size:26px; }
.store-address>a { font-size:16px; }
.store-address .store-address__link { display:block; margin-top:18px; color:var(--accent); font-size:13px; font-weight:650; }
.store-pin { position:absolute; top:20px; right:25px; width:32px; height:38px; color:#80a5d7; }
.store-pin .location-icon { width:100%; height:100%; }
.footer-location { display:inline-flex; align-items:center; gap:7px; }
.footer-location .location-icon { width:16px; height:18px; color:#80a5d7; }
.article-list { margin:0 0 30px; }
.article-card { display:grid; grid-template-columns:minmax(220px,30%) minmax(0,1fr); align-items:center; gap:clamp(22px,3vw,38px); padding:24px 0; border-bottom:1px solid var(--line); }
.article-card:first-child { padding-top:0; }
.article-card__image { display:block; height:174px; overflow:hidden; border-radius:18px; background:#f0f5fc; }
.article-card__image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .2s ease; }
.article-card__image:hover img { transform:scale(1.035); }
.article-card__image--empty { background:linear-gradient(135deg,#eef4fc,#e0eff8); }
.article-card__body { min-width:0; }
.article-card__title { margin:0 0 9px; font-size:21px; font-weight:700; line-height:1.4; }
.article-card__title a { color:var(--ink); text-decoration:none; }
.article-card__title a:hover { color:var(--accent); }
.article-card__excerpt { display:-webkit-box; overflow:hidden; color:var(--muted); font-size:14px; line-height:1.7; text-decoration:none; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.article-card__excerpt:hover { color:var(--ink); }
.article-card__more { display:inline-flex; min-height:42px; align-items:center; gap:9px; margin-top:14px; padding:10px 16px; border-radius:12px; background:#edf4ff; color:var(--accent); font-size:13px; font-weight:700; text-decoration:none; transition:background .18s ease,color .18s ease; }
.article-card__more:hover { background:var(--accent); color:#fff; }
.article-card a:focus-visible { outline:3px solid #8eb9f0; outline-offset:3px; }
.news-list:not(.product-grid) { margin:0 0 30px; }
.news-list:not(.product-grid) .news-item { margin:0 0 24px; padding:0 0 24px; border-bottom:1px solid var(--line); color:var(--muted); }
.news-item a { color:var(--accent); }
.news-item b { color:var(--ink); font-size:18px; }
.news-list:not(.product-grid) .preview_picture { float:left; width:150px; height:120px; margin:0 18px 12px 0; object-fit:contain; }
.news-detail { min-height:280px; color:var(--ink); font-size:15px; line-height:1.8; }
.news-detail .detail_picture { float:left; width:min(44%,460px); max-height:420px; margin:0 32px 22px 0; padding:24px; border-radius:22px; background:#f0f5fc; object-fit:contain; }
.news-detail.product-detail { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); align-items:start; gap:64px; min-height:0; margin-top:34px; line-height:1.7; }
.product-detail__media { position:relative; display:flex; min-height:510px; flex-direction:column; overflow:hidden; padding:24px; border-radius:22px; background:#f0f5fc; }
.favorite-toggle--detail { top:16px; right:16px; width:44px; height:44px; }
.product-detail__image-caption { margin:14px 0 0; color:#71849b; font-size:11px; line-height:1.4; text-align:center; }
.product-detail__availability { display:flex; align-items:center; gap:8px; margin:0 0 18px; color:#637a95; font-size:12px; line-height:1.4; }
.product-detail__availability>span { width:6px; height:6px; flex:0 0 6px; border-radius:50%; background:#8aa6ca; }
.product-detail__summary { position:relative; margin:0 0 18px; color:#526b87; font-size:16px; line-height:1.75; }
.product-detail__summary-text { display:-webkit-box; margin:0; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.product-detail__summary-more { position:absolute; right:0; bottom:0; color:var(--accent); font-size:inherit; font-weight:700; text-decoration:none; white-space:nowrap; }
.product-detail__summary--inline-ready .product-detail__summary-text { display:block; overflow:visible; -webkit-line-clamp:unset; }
.product-detail__summary--inline-ready .product-detail__summary-more { position:static; }
.product-detail__summary-more:hover { text-decoration:underline; }
.product-detail__summary-more:focus-visible { outline:2px solid #8eb9f0; outline-offset:3px; border-radius:2px; }
.product-detail__image-trigger { display:flex; min-height:280px; flex:1; align-items:center; justify-content:center; color:inherit!important; cursor:zoom-in; text-decoration:none!important; }
.product-detail__image-trigger img { display:block; width:100%; max-height:420px; object-fit:contain; mix-blend-mode:multiply; transition:transform .22s ease; }
.product-detail__image--missing { cursor:default; }
.product-detail__image--missing img { max-width:460px; }
.product-detail__image--missing:hover img { transform:none; }
.product-detail__image-trigger:hover img { transform:scale(1.035); }
.product-detail__image-trigger:focus-visible { outline:3px solid #8eb9f0; outline-offset:4px; border-radius:12px; }
.product-detail__title { margin:0 0 17px; color:var(--ink); font-size:clamp(34px,2.5vw,36px); font-weight:500; letter-spacing:-.025em; line-height:1.2; }
.product-variants { display:grid; gap:14px; margin:0 0 18px; }
.product-variants__group { min-width:0; margin:0; padding:0; border:0; }
.product-variants__legend { margin:0 0 9px; padding:0; color:var(--ink); font-size:13px; font-weight:600; line-height:1.4; }
.product-variants__options { display:flex; flex-wrap:wrap; gap:8px; }
.product-variants__option { position:relative; display:inline-flex; min-height:40px; align-items:center; cursor:pointer; }
.product-variants__option input { position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%); white-space:nowrap; }
.product-variants__option span { display:grid; min-width:44px; min-height:40px; padding:8px 13px; place-items:center; border:1px solid #d9e4f2; border-radius:11px; background:#fff; color:#49627f; font-size:13px; line-height:1.3; transition:border-color .16s ease,background .16s ease,color .16s ease; }
.product-variants__option input:checked+span { border-color:#9cbce9; background:#edf4ff; color:var(--accent); font-weight:600; }
.product-variants__option input:focus-visible+span { outline:3px solid #8eb9f0; outline-offset:2px; }
.product-variants__option input:disabled+span { border-color:#e6ebf1; background:#f7f9fc; color:#9aa8b8; cursor:not-allowed; }
.product-variants__option:hover input:not(:disabled):not(:checked)+span { border-color:#aac4e8; background:#f7faff; }
.product-detail-price { margin:0 0 16px; }
.product-detail-price__value { display:block; color:var(--ink); font-size:36px; font-weight:700; letter-spacing:-.025em; line-height:1.2; }
.product-detail-price__note { display:block; margin-top:6px; color:#8796a7; font-size:11px; line-height:1.5; }
.product-detail__availability-button { display:flex; width:100%; min-height:50px; align-items:center; justify-content:center; margin:0 0 23px; padding:12px 20px; border:0; border-radius:13px; background:var(--accent); color:#fff; font:inherit; font-size:14px; font-weight:700; text-align:center; text-decoration:none; cursor:pointer; transition:background .18s ease,transform .18s ease; }
.news-detail a.product-detail__availability-button { color:#fff; }
.product-detail__availability-button:hover { transform:translateY(-1px); background:#174f9d; color:#fff; }
.product-detail__availability-button:focus-visible,.product-detail__contact:focus-visible { outline:3px solid #8eb9f0; outline-offset:3px; }
.product-stock-dialog { position:fixed; width:min(1040px,calc(100vw - 32px)); max-width:none; max-height:min(88vh,780px); margin:auto; padding:30px 32px 28px; overflow:auto; border:1px solid #e4ebf4; border-radius:24px; background:#fff; box-shadow:0 28px 90px #0d20384d; color:var(--ink); }
.product-stock-dialog::backdrop { background:rgba(20,38,61,.42); backdrop-filter:blur(5px); }
.product-stock-dialog__topline { display:flex; align-items:flex-start; justify-content:space-between; gap:22px; margin-bottom:19px; }
.product-stock-dialog__topline .eyebrow { display:block; margin:4px 0 9px; color:#617995; font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.product-stock-dialog__topline h2 { margin:0; color:var(--ink); font-size:30px; font-weight:500; letter-spacing:-.03em; line-height:1.2; }
.product-stock-dialog__close { display:grid; width:42px; height:42px; flex:0 0 42px; padding:0; place-items:center; border:0; border-radius:50%; background:#f0f5fc; color:var(--ink); font:inherit; font-size:25px; font-weight:400; line-height:1; cursor:pointer; }
.product-stock-dialog__close:hover { background:#e2edfb; }
.product-stock-dialog__close:focus-visible,.product-stock-dialog__view button:focus-visible,.product-stock-dialog__map-store:focus-visible { outline:3px solid #8eb9f0; outline-offset:2px; }
.product-stock-dialog__product { display:grid; grid-template-columns:82px minmax(0,1fr) auto; min-height:112px; align-items:center; gap:16px; margin-bottom:20px; padding:13px 16px; border:1px solid #dce8f8; border-radius:16px; background:#f0f5fc; }
.product-stock-dialog__product>img { display:block; width:82px; height:82px; border-radius:12px; background:#fff; object-fit:contain; mix-blend-mode:multiply; }
.product-stock-dialog__product-info { display:grid; min-width:0; gap:5px; }
.product-stock-dialog__brand { color:#74879d; font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.product-stock-dialog__product-info>strong { color:var(--ink); font-size:16px; font-weight:600; line-height:1.4; }
.product-stock-dialog__variant { color:#637a95; font-size:12px; }
.product-stock-dialog__price { padding-right:4px; color:var(--ink); font-size:18px; font-weight:700; white-space:nowrap; }
.product-stock-dialog__view { display:flex; width:max-content; gap:4px; margin:0 0 15px; padding:4px; border-radius:13px; background:#edf3fc; }
.product-stock-dialog__view button { min-width:102px; min-height:42px; padding:9px 17px; border:0; border-radius:10px; background:transparent; color:#617995; font:inherit; font-size:13px; font-weight:600; cursor:pointer; }
.product-stock-dialog__view button[aria-pressed="true"] { background:var(--accent); color:#fff; box-shadow:0 3px 10px #1e5fbd2b; }
.product-stock-dialog__note { margin:0 0 13px; color:#73849a; font-size:13px; line-height:1.6; }
.product-stock-dialog__list { overflow:hidden; border:1px solid #e1e7ef; border-radius:16px; }
.product-stock-dialog__store { display:grid; grid-template-columns:minmax(0,1fr) auto auto; min-height:88px; align-items:center; gap:24px; padding:15px 16px; border-bottom:1px solid #e6ebf2; }
.product-stock-dialog__store:last-child { border-bottom:0; }
.product-stock-dialog__store h3 { margin:0 0 7px; color:#35485f; font-size:14px; font-weight:600; line-height:1.4; }
.product-stock-dialog__store p { margin:0; color:#69819d; font-size:12px; line-height:1.5; }
.product-stock-dialog__status { padding:7px 10px; border-radius:8px; background:#f0f5fc; color:#71849b; font-size:11px; white-space:nowrap; }
.product-stock-dialog__phone { display:flex; align-items:center; gap:8px; color:#425773; font-size:12px; font-weight:600; text-decoration:none; white-space:nowrap; }
.product-stock-dialog__phone svg { display:block; width:18px; height:18px; flex:0 0 18px; fill:none; stroke:#6488b8; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }
.product-stock-dialog__phone small { color:#78899e; font-size:11px; font-weight:400; }
.product-stock-dialog__phone:hover { color:var(--accent); }
.product-stock-dialog__map { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(230px,.75fr); gap:14px; }
.product-stock-dialog__map[hidden] { display:none; }
.product-stock-dialog__map iframe { display:block; width:100%; min-height:340px; border:0; border-radius:16px; background:#edf3fa; }
.product-stock-dialog__map-stores { display:grid; align-content:start; max-height:340px; overflow:auto; border:1px solid #e1e7ef; border-radius:16px; }
.product-stock-dialog__map-store { display:grid; gap:5px; padding:13px 14px; border:0; border-bottom:1px solid #e6ebf2; background:#fff; color:var(--ink); text-align:left; cursor:pointer; }
.product-stock-dialog__map-store:last-of-type { border-bottom:0; }
.product-stock-dialog__map-store strong { font-size:12px; font-weight:600; }
.product-stock-dialog__map-store span { color:#69819d; font-size:11px; line-height:1.45; }
.product-stock-dialog__map-store:hover,.product-stock-dialog__map-store.is-selected { background:#f0f5fc; }
.product-stock-dialog__map-phone { padding:0 14px 11px; color:#526b87; font-size:11px; text-decoration:none; }
.product-stock-dialog__map-phone:hover { color:var(--accent); }
.product-stock-dialog__map-help { grid-column:1 / -1; margin:0; color:#73849a; font-size:12px; line-height:1.5; }
.product-detail__contact-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding-top:18px; border-top:1px solid #d8e5f6; }
.product-detail__contact { display:flex; min-width:0; align-items:flex-start; gap:12px; color:var(--ink); text-decoration:none; }
.news-detail a.product-detail__contact { color:var(--ink); }
.product-detail__contact:hover strong,.product-detail__contact:hover small { color:var(--accent); }
.product-detail__contact-icon { display:grid; width:20px; height:24px; flex:0 0 20px; place-items:center; color:#5b83bd; }
.product-detail__contact-icon svg { display:block; width:20px; height:20px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }
.product-detail__contact-icon--help { margin-top:1px; }
.product-detail__contact strong,.product-detail__contact small { display:block; }
.product-detail__contact strong { font-size:13px; line-height:1.5; }
.product-detail__contact small { margin-top:3px; color:#637a95; font-size:12px; line-height:1.5; }
.product-detail__sections { max-width:890px; margin:52px 0 0; scroll-margin-top:28px; }
.product-detail__accordion { border-bottom:1px solid var(--line); }
.product-detail__accordion:first-child { border-top:0; }
.product-detail__accordion>summary { display:flex; min-height:56px; align-items:center; justify-content:space-between; gap:20px; padding:13px 0; list-style:none; color:var(--ink); font-size:16px; font-weight:600; cursor:pointer; }
.product-detail__accordion>summary::-webkit-details-marker { display:none; }
.product-detail__accordion>summary::after { flex:0 0 auto; color:var(--ink); content:"+"; font-size:21px; font-weight:400; line-height:1; }
.product-detail__accordion[open]>summary::after { content:"−"; }
.product-detail__accordion>summary:focus-visible { outline:2px solid #8eb9f0; outline-offset:3px; }
.product-detail__accordion-content { padding:0 0 16px; color:#526b87; font-size:15px; line-height:1.8; }
.product-detail__accordion-content p { margin:0 0 12px; }
.product-detail__accordion-content a { color:var(--accent); }
.product-detail__description { min-width:0; color:#455d76; line-height:1.8; }
.product-detail__description p { margin:0 0 15px; color:inherit; }
.product-detail__description .product-detail__section-title { margin:20px 0 10px; color:var(--ink); font-size:18px; letter-spacing:-.02em; }
.product-detail__description-list { display:grid; gap:8px; margin:0 0 18px; padding:0; list-style:none; }
.product-detail__description-list li { position:relative; padding-left:23px; }
.product-detail__description-list li::before { position:absolute; top:.65em; left:2px; width:8px; height:8px; border-radius:50%; background:var(--accent); content:""; }
.product-detail__description ul:not(.product-detail__description-list) { margin:10px 0 18px; padding-left:23px; }
.product-detail__description h2,.product-detail__description h3 { margin:20px 0 9px; color:var(--ink); font-size:18px; letter-spacing:-.02em; }
.product-detail__properties { margin:0; padding:0 0 8px; }
.product-detail__properties>div { display:grid; grid-template-columns:1fr 1fr; gap:14px; padding:11px 0; border-bottom:1px solid #e7edf4; font-size:13px; }
.product-detail__properties>div:last-child { border-bottom:0; }
.product-detail__properties dt { color:var(--muted); }
.product-detail__properties dd { min-width:0; margin:0; color:#526b87; font-weight:500; text-align:right; overflow-wrap:anywhere; }
.product-image-modal { position:fixed; width:min(960px,calc(100vw - 32px)); max-width:none; max-height:calc(100vh - 32px); margin:auto; padding:58px 24px 24px; overflow:hidden; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:0 28px 90px #0d20384d; color:var(--ink); }
.product-image-modal::backdrop { background:rgba(20,38,61,.72); backdrop-filter:blur(5px); }
.product-image-modal__toolbar { position:absolute; top:12px; right:12px; margin:0; }
.product-image-modal__toolbar button { display:grid; width:40px; height:40px; padding:0; place-items:center; border:1px solid var(--line); border-radius:50%; background:var(--blue); color:var(--accent); font:inherit; font-size:24px; line-height:1; cursor:pointer; }
.product-image-modal__toolbar button:hover { background:#d1e3fd; }
.product-image-modal__toolbar button:focus-visible { outline:3px solid #8eb9f0; outline-offset:2px; }
.product-image-modal__image { display:block; width:100%; height:min(78vh,760px); object-fit:contain; }
.news-detail h3 { display:none; }
.contacts-intro { max-width:760px; margin:-19px 0 30px; }
.contacts-intro p { font-size:15px; }
.contacts-section { margin-top:42px; }
.contacts-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:20px; }
.contacts-section-heading .eyebrow { display:block; margin-bottom:8px; }
.contacts-section-heading h2 { font-size:30px; }
.contacts-map-frame { overflow:hidden; border:1px solid var(--line); border-radius:22px; background:#f0f5fc; }
.contacts-map-frame #contacts-map { display:block; width:100%; height:430px; border:0; }
.contact-store-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.contact-store-card { position:relative; padding:27px; overflow:hidden; border:1px solid var(--line); border-radius:20px; background:#fff; box-shadow:0 12px 34px #19324d08; }
.contact-store-card h3 { max-width:calc(100% - 28px); font-size:20px; }
.contact-store-pin { position:absolute; top:22px; right:24px; width:20px; height:24px; color:#80a5d7; }
.contact-store-pin .location-icon { width:100%; height:100%; }
.contact-store-address { max-width:520px; min-height:44px; margin-top:8px; font-size:14px; }
.contact-store-details { display:grid; grid-template-columns:1fr 1fr; gap:18px 14px; margin-top:20px; padding-top:18px; border-top:1px solid var(--line); font-size:13px; }
.contact-store-details>div { min-width:0; }
.contact-store-details a { color:#315f96; overflow-wrap:anywhere; }
.contact-detail-label { display:block; margin-bottom:4px; color:#70839a; font-size:10px; font-weight:700; letter-spacing:.7px; text-transform:uppercase; }
.faq-page { max-width:960px; }
.faq-list { display:grid; gap:14px; margin-top:-14px; }
.faq-item { overflow:hidden; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 12px 34px #19324d08; }
.faq-item[open] { border-color:#c8d9f0; }
.faq-item summary { display:flex; min-height:76px; align-items:center; justify-content:space-between; gap:20px; padding:21px 26px; list-style:none; color:var(--ink); font-size:19px; font-weight:700; cursor:pointer; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary::after { display:grid; width:32px; height:32px; flex:0 0 32px; place-items:center; border-radius:50%; background:#f0f5fc; color:var(--accent); content:"+"; font-size:22px; font-weight:500; line-height:1; }
.faq-item[open] summary::after { background:var(--blue); content:"−"; }
.faq-answer { max-width:850px; padding:0 26px 25px; color:var(--muted); font-size:14px; line-height:1.8; }
.faq-answer p { margin:0 0 12px; }
.faq-answer ul { display:grid; gap:4px; margin:0 0 16px; padding-left:22px; }
.faq-answer h2 { margin:14px 0 7px; color:var(--ink); font-size:17px; letter-spacing:-.02em; }
.faq-answer a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.faq-answer a:hover { color:#174a96; }
.news-detail p { margin:12px 0; }
.news-detail small { color:var(--muted); }
.news-detail a { color:var(--accent); }
.bx_sitemap_ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:0 0 28px; padding:0; list-style:none; }
.bx_sitemap_ul li { margin:0; padding:0; }
.bx_sitemap_ul a { display:block; padding:11px 13px; border-radius:10px; background:#f1f6fd; color:#315f96; font-size:13px; }
.bx_sitemap_ul a:hover { background:var(--blue); }
.notetext,.errortext { display:block; margin:12px 0; padding:12px 16px; border:1px solid #f0d9ad; border-radius:10px; background:#fffbea; color:#7a4a18; }
.partner-logos { padding:30px 0; border-top:1px solid var(--line); background:#fbfdff; }
.partner-logos__heading { margin-bottom:18px; }
.partner-logos__heading h2 { font-size:28px; }
.partner-logos__carousel { position:relative; }
.partner-logos__controls { position:absolute; z-index:1; inset:50% 0 auto; display:flex; justify-content:space-between; padding:0 8px; transform:translateY(-50%); pointer-events:none; }
.partner-logos__arrow { display:grid; width:40px; height:40px; padding:0; place-items:center; border:1px solid #dce5ee; border-radius:50%; background:rgba(255,255,255,.96); box-shadow:0 3px 12px rgba(28,57,88,.16); color:var(--accent); cursor:pointer; pointer-events:auto; }
.partner-logos__carousel .partner-logos__arrow { border-color:transparent; background:transparent; box-shadow:none; }
.partner-logos__arrow svg { display:block; width:18px; height:18px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; }
.partner-logos__arrow:hover { border-color:#bdd2f0; background:var(--blue); }
.partner-logos__carousel .partner-logos__arrow:hover { border-color:transparent; background:transparent; color:#174c9f; }
.partner-logos__arrow:focus-visible { outline:3px solid #6c9ddd; outline-offset:2px; }
@media (hover:hover) {
	.partner-logos__controls { opacity:0; transition:opacity .18s ease; }
	.partner-logos__carousel:hover .partner-logos__controls,.partner-logos__carousel:focus-within .partner-logos__controls { opacity:1; }
}
.partner-logos__viewport { overflow-x:auto; scrollbar-width:none; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; }
.partner-logos__viewport::-webkit-scrollbar { display:none; }
.partner-logos__track { display:flex; gap:16px; padding:3px 1px 8px; }
.partner-logos__item { display:grid; flex:0 0 calc((100% - 80px) / 6); height:108px; place-items:center; padding:12px 18px; overflow:hidden; border:1px solid #e7edf4; border-radius:14px; background:#fff; scroll-snap-align:start; }
.partner-logos__item img { width:100%; height:80px; object-fit:contain; }
.site-footer { padding:42px 0 0; background:#f0f5fc; }
.footer-grid { display:grid; grid-template-columns:1.2fr 2fr 1.1fr; gap:clamp(28px,4vw,48px); padding-bottom:32px; }
.footer-grid a:not(.brand) { display:block; width:fit-content; margin:0 0 10px; color:var(--muted); font-size:14px; line-height:1.55; }
.footer-grid a:not(.brand):hover { color:var(--accent); }
.footer-navigation__columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.footer-grid h3 { margin:0 0 12px; color:var(--muted); font-size:12px; font-weight:700; letter-spacing:.04em; line-height:1.4; text-transform:uppercase; }
.footer-grid>div>a.footer-location { display:inline-flex; align-items:center; gap:7px; }
.footer-bottom { padding:15px 0 17px; border-top:1px solid var(--line); color:var(--muted); font-size:11px; text-align:center; }
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:1180px) {
	.catalog-layout { grid-template-columns:208px minmax(0,1fr); gap:18px; }
	.related-products .related-products__track { gap:16px; }
	.related-products__track>.product-card { flex-basis:calc(33.333333% - 10.666667px); }
	.container { width:calc(100% - 64px); }
	.header-main { gap:14px; }
	.brand { font-size:20px; }
	.header-contact { display:none; }
	.category-nav { gap:16px; font-size:12px; }
	.hero { min-height:440px; }
	.hero-copy { padding-left:34px; }
	.hero h1 { font-size:43px; }
	.hero-disc { width:290px; height:290px; }
	.product-grid { gap:16px; }
	.product-photo { height:200px; }
	.care-banner { padding:34px; }
}
@media (max-width:900px) {
	.catalog-layout { grid-template-columns:190px minmax(0,1fr); gap:16px; }
	.catalog-results .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 16px; }
	.container { width:calc(100% - 48px); }
	.header-main { flex-wrap:wrap; gap:12px; }
	.brand { margin-right:auto; }
	.site-search-wrap { order:5; flex-basis:100%; }
	.category-nav { justify-content:flex-start; overflow-x:auto; white-space:nowrap; }
	.hero { min-height:405px; }
	.hero h1 { font-size:37px; }
	.home-banner { min-height:405px; }
	.home-banner__copy { padding:36px 18px 36px 28px; }
	.home-banner__title { font-size:40px; }
	.home-banner--certificate .home-banner__title { font-size:40px; }
	.home-banner__visual { min-height:310px; }
	.hero-copy { padding:34px 0 28px 26px; }
	.hero-copy p { font-size:13px; }
	.hero-actions { align-items:flex-start; flex-direction:column; gap:6px; margin-top:20px; }
	.hero-foot { margin-top:16px; }
	.visual-note { display:none; }
	.category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.category-card:nth-child(8n+1),.category-card:nth-child(8n+8) { background:var(--blue); }
	.category-card:nth-child(8n+2),.category-card:nth-child(8n+3) { background:var(--pink); }
	.category-card:nth-child(8n+4),.category-card:nth-child(8n+5) { background:var(--beige); }
	.category-card:nth-child(8n+6),.category-card:nth-child(8n+7) { background:var(--mint); }
	.product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 16px; }
	.favorites-results .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 16px; }
	.news-detail.product-detail { grid-template-columns:1fr; gap:22px; margin-top:22px; }
	.product-detail__media { min-height:440px; }
	.product-detail__image-trigger img { max-height:360px; }
	.product-photo { height:220px; }
	.bx_sitemap_ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.partner-logos__item { flex-basis:calc((100% - 48px) / 4); }
	.error-state { grid-template-columns:minmax(180px,.75fr) 1fr; gap:28px; }
	.care-banner { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; padding:34px; }
	.care-banner__mark { display:none; }
	.care-banner__intro { left:0; }
	.care-banner p { line-height:1.8; }
}
@media (max-width:680px) {
	.catalog-layout { display:block; margin-top:16px; }
	.catalog-sidebar { margin-bottom:18px; }
	.catalog-sidebar__content { position:static; display:none; margin-top:12px; }
	.catalog-sidebar.is-open .catalog-sidebar__content { display:block; }
	.catalog-filter-toggle { display:flex; width:100%; min-height:46px; align-items:center; gap:10px; padding:10px 14px; border:1px solid var(--line); border-radius:12px; background:#fff; color:var(--ink); font:inherit; font-size:14px; font-weight:650; text-align:left; cursor:pointer; }
	.catalog-filter-toggle[aria-expanded="true"] { background:var(--blue); }
	.catalog-toolbar { align-items:flex-start; flex-direction:column; gap:10px; margin-bottom:16px; }
	.catalog-sort-form { width:100%; justify-content:space-between; }
	.catalog-sort-form select { min-width:0; }
	.catalog-results .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 12px; }
	.related-products { margin-top:38px; }
	.related-products__heading { margin-bottom:17px; font-size:24px; }
	.related-products .related-products__track { gap:11px; }
	.related-products__track>.product-card { flex-basis:calc(50% - 5.5px); }
	.container { width:calc(100% - 32px); }
	.product-stock-dialog { width:calc(100vw - 16px); max-height:calc(100dvh - 16px); padding:18px 15px 16px; border-radius:18px; }
	.product-stock-dialog__topline { gap:12px; margin-bottom:14px; }
	.product-stock-dialog__topline h2 { font-size:24px; }
	.product-stock-dialog__close { width:36px; height:36px; flex-basis:36px; }
	.product-stock-dialog__product { grid-template-columns:58px minmax(0,1fr); gap:10px; min-height:82px; margin-bottom:15px; padding:10px; border-radius:13px; }
	.product-stock-dialog__product>img { width:58px; height:58px; border-radius:9px; }
	.product-stock-dialog__product-info>strong { font-size:12px; }
	.product-stock-dialog__brand { font-size:8px; }
	.product-stock-dialog__variant { font-size:10px; }
	.product-stock-dialog__price { grid-column:2; padding:0; font-size:15px; }
	.product-stock-dialog__view { margin-bottom:12px; }
	.product-stock-dialog__view button { min-width:90px; min-height:39px; font-size:12px; }
	.product-stock-dialog__note { font-size:11px; }
	.product-stock-dialog__store { grid-template-columns:minmax(0,1fr); gap:9px; padding:13px; }
	.product-stock-dialog__store h3 { margin-bottom:5px; font-size:13px; }
	.product-stock-dialog__store p { font-size:11px; }
	.product-stock-dialog__status { width:max-content; }
	.product-stock-dialog__phone { white-space:normal; }
	.product-stock-dialog__map { grid-template-columns:1fr; }
	.product-stock-dialog__map iframe { min-height:250px; }
	.product-stock-dialog__map-stores { max-height:240px; }
	.product-stock-dialog__map-help { grid-column:auto; }
	.topline { height:32px; }
	.topline .container { font-size:10px; }
	.header-main { padding:15px 0 12px; gap:9px; }
	.brand { gap:8px; font-size:19px; }
	.brand-logo { width:35px; height:35px; flex-basis:35px; }
	.brand small { margin-top:5px; font-size:6px; letter-spacing:1.2px; }
	.catalog-button { min-height:44px; padding:9px 11px; font-size:12px; }
	.catalog-button:first-letter { font-size:15px; }
	.header-favorites { min-width:43px; font-size:9px; }
	.header-favorites__icon { width:29px; height:27px; }
	.header-favorites__icon svg { width:22px; height:22px; }
	.site-search-wrap { min-width:0; }
	.site-search { padding:0 8px; }
	.site-search input { min-height:43px; font-size:12px; }
	.category-nav { width:calc(100% - 32px); min-height:45px; gap:21px; padding-right:8px; font-size:11px; }
	.category-nav { justify-content:flex-start; overflow-x:auto; scrollbar-width:none; overscroll-behavior-x:contain; white-space:nowrap; }
	.category-nav::-webkit-scrollbar { display:none; }
	.category-nav a { flex:0 0 auto; }
	body.mobile-menu-ready .catalog-button { display:none; }
	body.mobile-menu-ready .header-main { display:grid; grid-template-columns:auto minmax(0,1fr) auto; grid-template-areas:"brand brand favorites" "menu search search"; gap:10px; }
	body.mobile-menu-ready .header-main>.brand { grid-area:brand; min-width:0; margin-right:0; }
	body.mobile-menu-ready .mobile-menu-toggle { display:inline-flex; min-height:44px; align-items:center; justify-content:center; gap:7px; padding:9px 11px; border:1px solid var(--line); border-radius:12px; background:#fff; color:var(--ink); font-size:12px; font-weight:650; white-space:nowrap; cursor:pointer; }
	body.mobile-menu-ready .header-main>.mobile-menu-toggle { grid-area:menu; }
	.mobile-menu-toggle svg { display:block; width:19px; height:19px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
	body.mobile-menu-ready .header-main>.site-search-wrap { grid-area:search; width:100%; min-width:0; }
	body.mobile-menu-ready .header-main>.header-favorites { grid-area:favorites; justify-self:end; }
	body.mobile-menu-ready .mobile-nav-panel { position:fixed; top:0; bottom:0; left:0; z-index:10020; display:flex; width:min(360px,calc(100vw - 40px)); height:100vh; height:100dvh; flex-direction:column; gap:20px; overflow-y:auto; padding:calc(22px + env(safe-area-inset-top)) calc(18px + env(safe-area-inset-right)) calc(22px + env(safe-area-inset-bottom)) calc(18px + env(safe-area-inset-left)); transform:translateX(-105%); visibility:hidden; pointer-events:none; background:#fff; box-shadow:14px 0 36px rgba(25,50,77,.16); transition:transform .22s ease,visibility 0s linear .22s; }
	body.mobile-menu-ready .mobile-nav-panel__heading { display:flex; flex:0 0 auto; align-items:center; justify-content:space-between; gap:14px; }
	body.mobile-menu-ready .mobile-nav-panel__heading strong { font-size:20px; }
	body.mobile-menu-ready .mobile-nav-close { display:grid; width:44px; height:44px; flex:0 0 44px; place-items:center; padding:0; border:1px solid var(--line); border-radius:12px; background:#f7faff; color:#315f96; cursor:pointer; }
	body.mobile-menu-ready .mobile-nav-close svg { display:block; width:20px; height:20px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
	body.mobile-menu-ready .mobile-nav-panel .category-nav { display:flex; width:100%; min-height:0; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:4px; margin:0; padding:0; overflow:visible; border:0; font-size:15px; white-space:normal; }
	body.mobile-menu-ready .mobile-nav-panel .category-nav a { display:flex; width:100%; min-width:0; min-height:48px; flex:0 0 auto; align-items:center; justify-content:flex-start; padding:12px 14px; border-radius:12px; line-height:1.35; white-space:normal; }
	body.mobile-menu-ready .mobile-nav-panel .category-nav a.is-active { background:#edf4fc; }
	body.mobile-menu-ready .mobile-nav-panel .category-nav a.is-active::after { top:10px; right:auto; bottom:10px; left:0; width:3px; height:auto; }
	body.mobile-menu-ready .mobile-nav-backdrop { position:fixed; z-index:10019; inset:0; display:none; padding:0; border:0; background:rgba(25,50,77,.34); cursor:pointer; }
	body.mobile-menu-ready.mobile-menu-open { overflow:hidden; }
	body.mobile-menu-ready.mobile-menu-open .mobile-nav-backdrop { display:block; }
	body.mobile-menu-ready.mobile-menu-open .mobile-nav-panel { transform:translateX(0); visibility:visible; pointer-events:auto; transition:transform .22s ease,visibility 0s; }
	.site-main { padding-top:19px; padding-bottom:38px; }
	.error-static-shell { width:calc(100% - 32px); padding:22px 0; }
	.error-state { grid-template-columns:1fr; min-height:0; gap:15px; margin:10px 0 22px; padding:23px 20px; border-radius:20px; }
	.error-state__visual { width:min(100%,164px); }
	.error-state__number { font-size:78px; }
	.error-state__plus { width:37px; border-radius:12px; font-size:25px; }
	.error-state__copy h1,.error-state__copy h2 { margin:11px 0 8px; font-size:26px; }
	.error-state__copy p { font-size:13px; line-height:1.7; }
	.error-state__actions { flex-direction:column; margin-top:17px; }
	.error-state__actions .button { width:100%; }
	.error-state__phone { margin-top:15px; }
	.page-home .site-main { padding-top:4px; }
	.page-heading { margin-bottom:24px; }
	.page-heading h1 { font-size:31px; }
	.favorites-eyebrow { margin:1px 0 6px; font-size:8px; }
	.page-heading--favorites { margin-bottom:9px; }
	.page-heading--favorites h1 { font-size:34px; }
	.favorites-page__description { margin-bottom:24px; font-size:12px; }
	.favorites-toolbar { align-items:stretch; flex-direction:column; gap:12px; margin-bottom:17px; }
	.favorites-toolbar__sort { justify-content:space-between; font-size:12px; }
	.favorites-toolbar__sort select { min-width:0; flex:1; min-height:40px; font-size:12px; }
	.favorites-toolbar__count { font-size:12px; }
	.favorites-empty { padding:30px 10px 38px; }
	.favorites-empty h2 { font-size:20px; }
	.favorites-empty p { font-size:12px; }
	.favorite-toggle { top:8px; right:8px; width:37px; height:37px; }
	.favorite-toggle--detail { top:13px; right:13px; }
	.eyebrow { font-size:9px; letter-spacing:1.1px; }
	.hero { grid-template-columns:1fr; min-height:0; margin-top:12px; border-radius:21px; }
	.home-carousel { margin-top:12px; }
	.home-carousel__viewport { border-radius:21px; }
	.home-banner { grid-template-columns:1fr; min-height:0; border-radius:21px; }
	.home-banner__copy { align-self:auto; padding:27px 22px 0; }
	.home-banner--certificate .home-banner__copy { padding-top:44px; }
	.home-banner__icon { width:36px; height:36px; margin-bottom:11px; border-radius:11px; }
	.home-banner__eyebrow { margin-bottom:11px; font-size:9px; }
	.home-banner__title { font-size:34px; }
	.home-banner--certificate .home-banner__title { font-size:34px; }
	.home-banner__description { margin-top:12px; font-size:13px; line-height:1.65; }
	.home-banner__price { margin-top:12px; }
	.home-banner__price strong { font-size:26px; }
	.home-banner__button { min-height:45px; margin-top:17px; padding:11px 17px; font-size:12px; }
	.home-banner__visual { min-height:0; height:clamp(260px,68vw,300px); margin-top:10px; background:transparent; }
	.home-banner__visual img { width:76%; height:66%; transform:translateY(-12px); }
	.home-carousel__controls { inset:auto 14px 14px; }
	.home-carousel__dots,.home-carousel__buttons { gap:8px; }
	.home-carousel__control { width:38px; height:38px; }
	.hero-copy { padding:27px 22px 0; }
	.hero-copy .eyebrow { font-size:8px; }
	.hero h1 { margin:16px 0; font-size:36px; }
	.hero-copy p { font-size:13px; line-height:1.7; }
	.desktop { display:none; }
	.hero-actions { flex-direction:row; align-items:center; gap:12px; margin-top:19px; }
	.hero-actions .button { min-height:45px; padding:11px 14px; font-size:12px; }
	.hero-actions .text-button { max-width:115px; font-size:11px; line-height:1.4; }
	.hero-foot { display:none; }
	.hero-visual { height:275px; margin-top:12px; background:transparent; }
	.hero-disc { top:2%; left:calc(50% - 108px); width:216px; height:216px; }
	.hero-photo { width:77%; height:86%; }
	.hero-product { bottom:14px; left:14px; max-width:75%; gap:9px; padding:9px 12px; }
	.hero-product-icon { width:31px; height:31px; flex-basis:31px; font-size:22px; }
	.hero-product strong { font-size:11px; }
	.hero-product small { font-size:7px; }
	.hero-product span span { font-size:9px; }
	.visual-caption { display:none; }
	.reassurance { grid-template-columns:minmax(0,1fr); gap:0; padding:13px 0; }
	.reassurance>div { min-width:0; justify-content:flex-start; gap:14px; padding:11px 5px; }
	.reassurance>div+div { border-top:1px solid var(--line); }
	.reassurance>div>span:last-child { min-width:0; }
	.reassurance strong { font-size:12px; }
	.reassurance small { font-size:11px; line-height:1.45; }
	.section { margin-top:38px; }
	.section-heading { align-items:flex-end; gap:9px; margin-bottom:18px; }
	.section-heading .eyebrow { margin-bottom:8px; font-size:8px; }
	.section-heading h2,.store-section h2 { font-size:25px; }
	.section-link { gap:5px; min-height:36px; font-size:10px; }
	.category-grid { gap:10px; }
	.category-card { min-height:199px; padding:14px; border-radius:15px; }
	.category-number { margin-bottom:7px; font-size:8px; }
	.category-card h3 { font-size:15px; }
	.category-card p { max-width:135px; margin-top:5px; font-size:9px; }
	.category-card img { right:-2px; bottom:3px; width:72%; height:85px; }
	.category-card:nth-child(3) img { height:93px; }
	.category-go { bottom:12px; left:12px; width:24px; height:24px; }
	.product-grid { gap:16px 11px; }
	.favorites-results .product-grid { gap:16px 11px; }
	.product-photo { height:162px; padding:24px 10px 12px; border-radius:15px; }
	.product-info { padding:10px 1px; }
	.product-info h3 { min-height:0; margin-bottom:7px; font-size:12px; }
	.product-bottom { flex-wrap:wrap; gap:7px; margin-top:10px; }
	.product-bottom strong { font-size:16px; }
	.product-link { width:100%; min-height:40px; font-size:11px; }
	.price-note { font-size:10px; }
	.care-banner { grid-template-columns:1fr; gap:20px; margin-top:32px; padding:24px; border-radius:18px; }
	.care-banner__mark { display:none; }
	.care-banner h2 { font-size:25px; }
	.care-banner p { font-size:13px; line-height:1.7; }
	.care-banner__action .button { width:100%; }
	.store-section { grid-template-columns:1fr; gap:20px; margin-top:38px; }
	.store-section p { font-size:13px; }
	.store-address { padding:24px; border-radius:19px; }
	.store-address h3 { font-size:24px; }
	.footer-grid { grid-template-columns:1fr; gap:22px; padding-bottom:24px; }
	.footer-brand { grid-column:1/-1; }
	.footer-navigation__columns { align-items:start; gap:18px; }
	.footer-grid .footer-navigation__group a:not(.brand) { width:auto; min-height:44px; margin:0; padding:9px 0; font-size:14px; line-height:1.45; overflow-wrap:anywhere; }
	.footer-grid a:not(.brand) { font-size:13px; }
	.site-footer { padding-top:29px; }
	.partner-logos { padding:25px 0; }
	.partner-logos__heading h2 { font-size:24px; }
	.partner-logos__item { flex-basis:calc((100% - 16px) / 2); height:96px; padding:10px 14px; }
	.partner-logos__item img { height:72px; }
	.partner-logos__arrow { width:36px; height:36px; }
	.faq-list { gap:11px; margin-top:-7px; }
	.faq-item { border-radius:16px; }
	.faq-item summary { min-height:68px; padding:18px; font-size:16px; }
	.faq-item summary::after { width:30px; height:30px; flex-basis:30px; }
	.faq-answer { padding:0 18px 20px; font-size:13px; }
	.news-detail .detail_picture { float:none; width:100%; max-height:310px; margin:0 0 22px; }
	.news-detail { font-size:14px; }
	.news-detail.product-detail { gap:18px; }
	.product-detail__media { min-height:0; padding:16px; border-radius:18px; }
	.product-detail__image-caption { margin-top:10px; }
	.product-detail__availability { margin-bottom:14px; }
	.product-detail__summary { margin-bottom:14px; font-size:14px; }
	.product-detail__image-trigger { min-height:230px; }
	.product-detail__image-trigger img { max-height:340px; }
	.product-detail__title { margin-bottom:17px; font-size:30px; }
	.product-detail-price__value { font-size:30px; }
	.product-detail__availability-button { min-height:46px; margin-bottom:17px; }
	.product-detail__contact-row { grid-template-columns:1fr; gap:13px; padding-top:14px; }
	.product-detail__sections { margin-top:34px; scroll-margin-top:18px; }
	.product-detail__accordion>summary { min-height:51px; font-size:15px; }
	.product-detail__properties>div { grid-template-columns:minmax(90px,.6fr) minmax(0,1fr); gap:10px; font-size:12px; }
	.product-detail__accordion-content { font-size:13px; }
	.product-image-modal { width:calc(100vw - 20px); max-height:calc(100vh - 20px); padding:54px 12px 12px; border-radius:17px; }
	.product-image-modal__image { height:calc(78vh - 52px); }
	.news-detail h3 { display:none; }
	.contacts-intro { margin-top:-14px; }
	.contacts-section { margin-top:34px; }
	.contacts-section-heading { align-items:flex-start; flex-direction:column; gap:8px; }
	.contacts-section-heading h2 { font-size:25px; }
	.contacts-map-frame { border-radius:17px; }
	.contacts-map-frame #contacts-map { height:340px; }
	.contact-store-grid { grid-template-columns:1fr; gap:13px; }
	.contact-store-card { padding:22px; border-radius:17px; }
	.contact-store-address { min-height:0; }
	.contact-store-details { gap:15px 10px; font-size:12px; }
	.contact-store-email { grid-column:1 / -1; }
	.article-card { grid-template-columns:110px minmax(0,1fr); align-items:start; gap:14px; padding:18px 0; }
	.article-card__image { height:104px; border-radius:13px; }
	.article-card__title { margin-bottom:6px; font-size:15px; line-height:1.4; }
	.article-card__excerpt { font-size:12px; line-height:1.55; -webkit-line-clamp:3; }
	.article-card__more { min-height:36px; gap:7px; margin-top:9px; padding:8px 12px; border-radius:10px; font-size:11px; }
	.news-list:not(.product-grid) .preview_picture { float:none; width:100%; max-width:240px; height:auto; max-height:200px; margin:0 0 14px; }
	.catalog-pagination .nav-pages { gap:4px; }
	.catalog-pagination .nav-pages a,.catalog-pagination .nav-pages span { width:36px; height:40px; }
}
@media (max-width:680px) {
	.footer-navigation__columns { grid-template-columns:1fr; gap:14px; }
}
@media (max-width:360px) {
	.brand { font-size:17px; }
	.header-main { gap:7px; }
	body.mobile-menu-ready .header-main { gap:8px; }
	body.mobile-menu-ready .mobile-menu-toggle { width:44px; padding:0; }
	body.mobile-menu-ready .mobile-menu-toggle span,.header-favorites__label { display:none; }
	body.mobile-menu-ready .header-main>.header-favorites { width:44px; min-width:44px; }
	.category-nav { gap:17px; }
	.footer-navigation__columns { grid-template-columns:1fr; gap:12px; }
	.hero h1 { font-size:33px; }
	.category-card h3 { font-size:14px; }
	.product-photo { height:145px; }
	.product-bottom strong { font-size:14px; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }
