.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.catalog-body :focus-visible{outline:3px solid #111;outline-offset:3px}.catalog-page{max-width:1280px;margin:0 auto;padding:46px 20px 96px}.catalog-intro{display:flex;justify-content:space-between;align-items:end;gap:44px;padding:20px 0 46px}.catalog-intro>div{max-width:840px}.catalog-intro h1{font-size:clamp(40px,5vw,66px);line-height:1;letter-spacing:-.045em;margin:12px 0 18px}.catalog-intro p:not(.eyebrow){font-size:18px;color:var(--muted);margin-bottom:0}.catalog-search-section{padding:28px;background:var(--soft);border-radius:var(--radius)}.search-box{display:block;color:var(--ink);font-size:15px;margin-bottom:8px}.catalog-search-section input{margin:0;background:#fff;font-size:17px}.catalog-controls{padding:26px 0}.filter-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff}.filter-panel>summary{display:none;cursor:pointer;font-weight:900;padding:18px 20px}.filter-panel>summary span:last-child{color:var(--muted);font-size:12px}.filter-panel-body{display:grid;grid-template-columns:1.3fr 1.3fr .8fr 1fr;gap:20px;padding:22px}.filter-group{min-width:0;margin:0;padding:0;border:0}.filter-group legend{font-weight:900;margin-bottom:10px}.filter-options{max-height:190px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:8px}.filter-options label{display:flex;align-items:center;gap:9px;min-height:38px;padding:5px 7px;color:var(--ink);font-size:14px;border-radius:7px;cursor:pointer}.filter-options label:hover{background:var(--soft)}.filter-options input{width:18px;height:18px;margin:0;flex:none}.price-filter{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start}.price-filter legend{grid-column:1/-1}.price-filter input{margin-top:5px;padding:10px}.reset-filters{grid-column:1/-1;justify-self:start}.results-toolbar{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:28px 0 12px}.catalog-count{font-weight:900;margin:0}.results-toolbar label{min-width:260px;color:var(--ink)}.results-toolbar select{margin-top:6px}.active-filters{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{border:1px solid var(--red);border-radius:30px;background:#fff;color:var(--red);padding:8px 12px;font:700 13px/1 Arial;cursor:pointer}.filter-disclaimer{color:var(--muted);font-size:12px;margin:14px 0 0}.catalog-results{padding-top:14px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.product{border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;background:#fff;transition:box-shadow .2s,transform .2s}.product:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.product-image{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#fafafa;border-radius:12px;border:1px solid var(--line)}.product h2{font-size:21px;line-height:1.2;margin:17px 0 14px}.product dl{margin:0 0 14px}.product dl div{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:8px 0}.product dt{color:var(--muted)}.product dd{margin:0;font-weight:800;text-align:right}.price{font-size:28px;font-weight:900;margin:auto 0 5px}.price small{display:block;color:var(--muted);font-size:11px;font-weight:400}.tag{color:var(--red);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px}.card-perks{font-size:12px;color:var(--muted);margin:0 0 15px}.card-actions{display:flex;gap:8px}.card-actions .button{flex:1;padding-left:12px;padding-right:12px}.load-more-wrap{text-align:center;margin-top:28px}.empty-state{margin-top:20px;border:1px dashed #b9bbc0;border-radius:var(--radius);padding:42px;text-align:center;background:var(--soft)}.empty-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.catalog-contact{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-top:76px;padding:54px;background:var(--soft);border-radius:var(--radius)}.catalog-contact h2{font-size:clamp(30px,4vw,46px);line-height:1.05;margin:9px 0}.catalog-contact p:not(.eyebrow){color:var(--muted)}.catalog-contact>div:last-child{text-align:right}.catalog-body footer a{font-weight:700}
@media(max-width:1080px){.catalog-body .topbar nav a:nth-child(4),.catalog-body .topbar nav a:nth-child(5){display:none}.filter-panel-body{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.catalog-page{padding:28px 16px 92px}.catalog-intro{align-items:stretch;flex-direction:column;padding-bottom:32px}.catalog-intro .button{width:100%}.catalog-search-section{padding:18px}.filter-panel>summary{display:flex;justify-content:space-between;gap:16px;list-style:none}.filter-panel>summary::-webkit-details-marker{display:none}.filter-panel>summary:after{content:'+';font-size:22px}.filter-panel[open]>summary:after{content:'Ð²â‚¬â€™'}.filter-panel-body{grid-template-columns:1fr;padding:0 16px 18px}.filter-options{max-height:176px}.price-filter{grid-template-columns:1fr 1fr}.reset-filters{width:100%}.results-toolbar{align-items:stretch;flex-direction:column}.results-toolbar label{min-width:0;width:100%}.product-grid{grid-template-columns:1fr}.product{padding:16px}.card-actions{flex-direction:column}.card-actions .button{width:100%;min-height:50px}.catalog-contact{align-items:flex-start;flex-direction:column;margin-top:54px;padding:28px 20px}.catalog-contact>div:last-child{text-align:left;width:100%}.catalog-contact .button{width:100%}.catalog-body .info-strip{font-size:11px;gap:10px}.catalog-body .info-strip>*{white-space:nowrap}.catalog-body .topbar .compact{font-size:0;width:48px;min-height:44px;padding:0}.catalog-body .topbar .compact:after{content:'Ð²Â˜Ð‹';font-size:22px}}
.product-detail{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:start;max-width:1080px;margin:25px auto 70px}.product-detail h1{font-size:clamp(36px,5vw,54px);line-height:1.03;letter-spacing:-.04em;margin:10px 0 20px}.product-detail dl{margin:0}.product-detail dl div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:9px 0}.product-detail dt{color:var(--muted)}.product-detail dd{margin:0;font-weight:800}.product-visual{max-height:620px}.product-price{font-size:38px;margin:16px 0}.product-perks{padding:18px 18px 18px 38px;background:var(--soft);border-radius:12px}.product-perks li::marker{color:var(--red)}.product-fit{display:flex;align-items:center;gap:20px;padding:42px;background:var(--soft);border-radius:var(--radius)}.product-fit>div{flex:1}.related-section{padding-top:76px}.related-section[hidden]{display:none}@media(max-width:920px){.product-detail{grid-template-columns:1fr}.product-fit{align-items:flex-start;flex-direction:column}}


/* Stage 31.1: production bugfix closeout — mobile overflow and CTA containment */
html, body { max-width: 100%; overflow-x: clip; }
img, svg, video { max-width: 100%; height: auto; }
a, button, .button, .btn, input, select, textarea { max-width: 100%; }
.button, .btn { white-space: normal; overflow-wrap: anywhere; text-align: center; }
.info-strip, .topbar, .hero, .catalog-intro, .catalog-contact, .results-toolbar,
.product-main-block, .product-section, .selector-hero, .selector-card, .selector-result,
.phone-panel, .maps-section, .delivery-note, .service-hero, .service-section { min-width: 0; max-width: 100%; }
.product, .selector-product-card, .store-card, .feature-card, .step-card { min-width: 0; }
.product h2, .product h3, .product a, .product-brand, .price, .card-perks,
.selector-product-body, .selector-product-body h3, .selector-product-specs,
.breadcrumbs, .catalog-count, .lead, h1, h2, h3 { overflow-wrap: anywhere; }
.mobile-callbar.commerce-bar { box-sizing: border-box; max-width: 100vw; }
@media (max-width: 600px) {
  main > section { padding-left: 16px; padding-right: 16px; }
  .info-strip { padding-left: 12px; padding-right: 12px; gap: 8px; flex-wrap: wrap; }
  .topbar { padding-left: 14px; padding-right: 14px; gap: 10px; max-width: 100vw; }
  .hero h1, .home-page .hero h1 { font-size: clamp(34px, 11vw, 40px); line-height: 1.02; }
  .hero-card strong { font-size: 23px; }
  .catalog-intro, .catalog-contact, .catalog-controls, .catalog-search-section,
  .selector-card, .selector-result, .product-main-block, .product-section { padding-left: 18px; padding-right: 18px; }
  .results-toolbar, .catalog-contact, .product-cta, .result-actions, .hero-actions, .section-actions { align-items: stretch; flex-direction: column; }
  .results-toolbar .button, .catalog-contact .button, .product-cta .button, .result-actions .button,
  .hero-actions .button, .section-actions .button { width: 100%; }
  .selector-page { width: min(100% - 20px, 1180px); }
  .selector-hero { padding: 26px 18px; }
  .selector-hero h1 { overflow-wrap: anywhere; }
  .selector-progress { gap: 6px; }
  .selector-progress span { flex: 1 1 calc(50% - 6px); min-width: 0; text-align: center; }
  .mobile-callbar.commerce-bar { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; padding-left: 8px; padding-right: 8px; }
  .mobile-callbar.commerce-bar .button { min-width: 0; width: 100%; font-size: 12px; padding-left: 6px; padding-right: 6px; white-space: normal; line-height: 1.15; }
}
