/* V0LT V18.23 — filter-first, zero-thinking shopping experience */
:root{
  --shop-ink:#111419;
  --shop-muted:#626a74;
  --shop-soft:#f6f7f8;
  --shop-line:#e1e5e8;
  --shop-line-strong:#d2d8dd;
  --shop-orange:#ff4b1f;
  --shop-orange-dark:#e53d15;
  --shop-green:#167548;
  --shop-green-soft:#eef8f2;
  --shop-amber:#b66b08;
  --shop-shell:min(1472px,calc(100% - 48px));
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.store-body{margin:0;background:#fff;color:var(--shop-ink);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.store-body a{color:inherit;text-decoration:none}
.store-body button,.store-body input,.store-body select{font:inherit}
.store-body .header-estimate{color:#fff}
.store-body .main-nav a[aria-current="page"]{color:#080a0d}
.store-body .main-nav a[aria-current="page"]::after{transform:scaleX(1)}
.shop-skip{position:fixed;left:16px;top:-80px;z-index:1000;padding:11px 15px;border-radius:10px;background:#111419;color:#fff;font-size:16px;font-weight:700;transition:top .16s ease}
.shop-skip:focus{top:12px}
.shop-shell{width:var(--shop-shell);margin-inline:auto}
.shop-eyebrow{display:block;color:var(--shop-orange);font-size:13px;font-weight:900;letter-spacing:1.45px;text-transform:uppercase}

/* Small status line only. Products begin immediately below the global header. */
.shop-catalogue-note{border-top:1px solid #f1e8db;border-bottom:1px solid #eee4d4;background:#fffaf2}
.shop-catalogue-note .shop-shell{min-height:38px;display:flex;align-items:center;justify-content:center;gap:8px;color:#6d604d;font-size:14px;line-height:1.4;text-align:center}
.shop-catalogue-note svg{flex:0 0 auto;width:16px;height:16px;fill:none;stroke:#a46f20;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.shop-catalogue-note strong{color:#6c4a18;font-weight:800}

.shop-main{background:#fff}
.shop-intro{padding:31px 0 20px}
.shop-intro h1{margin:0;font-size:34px;line-height:1.08;letter-spacing:-1.35px}
.shop-intro p{margin:7px 0 0;color:var(--shop-muted);font-size:16px;line-height:1.5}
.shop-catalogue{padding:0 0 76px}
.shop-catalogue-layout{position:relative;display:grid;grid-template-columns:276px minmax(0,1fr);gap:24px;align-items:start}

/* Desktop filter rail */
.shop-filter-panel{position:sticky;top:18px;min-width:0;max-height:calc(100vh - 36px);display:flex;flex-direction:column;border:1px solid var(--shop-line);border-radius:18px;background:#fff;overflow:auto;scrollbar-width:thin;box-shadow:0 12px 34px rgba(17,20,25,.035)}
.shop-filter-panel-head{display:none}
.shop-filter-form{display:block}
.shop-filter-section{min-width:0;margin:0;padding:20px 17px;border:0;border-bottom:1px solid #edf0f2}
.shop-filter-section:last-of-type{border-bottom:1px solid #edf0f2}
.shop-filter-section legend,.shop-filter-label,.shop-filter-heading{width:100%;margin:0 0 12px;padding:0;color:#20252b;font-size:15px;font-weight:800;line-height:1.3}
.shop-filter-heading{display:flex;align-items:center;gap:7px}
.shop-filter-help{width:17px;height:17px;display:inline-grid;place-items:center;border:1px solid #aeb6bd;border-radius:50%;color:#68717a;font-size:11px;font-weight:850;cursor:help}
.shop-filter-search{height:44px;display:grid;grid-template-columns:38px 1fr;align-items:center;border:1px solid #d8dde1;border-radius:11px;background:#fff}
.shop-filter-search:focus-within{border-color:#9ea7af;box-shadow:0 0 0 3px rgba(17,20,25,.055)}
.shop-filter-search svg{justify-self:center;width:18px;height:18px;fill:none;stroke:#67717a;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.shop-filter-search input{width:100%;min-width:0;height:100%;padding:0 10px 0 0;border:0;outline:0;background:transparent;color:var(--shop-ink);font-size:15px}
.shop-filter-search input::placeholder{color:#8a929a}
.shop-filter-option{position:relative;min-height:34px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:9px;align-items:center;color:#30363c;font-size:15px;line-height:1.3;cursor:pointer}
.shop-filter-option+.shop-filter-option{margin-top:5px}
.shop-filter-option input{position:absolute;opacity:0;pointer-events:none}
.shop-filter-check{width:18px;height:18px;display:grid;place-items:center;border:1.5px solid #c5ccd2;border-radius:5px;background:#fff;transition:.14s ease}
.shop-filter-option input:checked+.shop-filter-check{border-color:var(--shop-orange);background:var(--shop-orange)}
.shop-filter-option input:checked+.shop-filter-check::after{content:"";width:7px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg)}
.shop-filter-option input:focus-visible+.shop-filter-check{outline:3px solid rgba(255,75,31,.22);outline-offset:2px}
.shop-filter-option:hover .shop-filter-check{border-color:#969fa7}
.shop-filter-option-copy{min-width:0}
.shop-filter-count{color:#707983;font-size:13px;font-weight:650}
.shop-filter-option.is-disabled{opacity:.45;cursor:not-allowed}
.shop-device-filter{width:100%;min-height:54px;padding:9px 10px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;border:1px solid #dce1e5;border-radius:11px;background:#fff;color:#252b31;text-align:left;cursor:pointer}
.shop-device-filter:hover{border-color:#b9c1c8;background:#fafbfb}
.shop-device-filter.is-active{border-color:#f0a18d;background:#fff7f4;box-shadow:inset 0 0 0 1px rgba(255,75,31,.09)}
.shop-device-filter-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#f0f2f4}
.shop-device-filter-icon svg{width:18px;height:18px;fill:none;stroke:#20252b;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.shop-device-filter>span:nth-child(2){min-width:0}
.shop-device-filter strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.25}
.shop-device-filter small{display:block;margin-top:3px;color:#747d85;font-size:12px;line-height:1.3}
.shop-device-filter>b{color:#4d565e;font-size:22px;font-weight:500}
.shop-device-filter-check{width:20px;height:20px;display:grid;place-items:center;border:1px solid #c8cfd5;border-radius:6px;color:#fff;font-size:13px;font-weight:900}
.shop-device-filter.is-active .shop-device-filter-check{border-color:var(--shop-orange);background:var(--shop-orange)}
.shop-price-range{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;color:#7a828a}
.shop-price-range label{height:42px;min-width:0;display:grid;grid-template-columns:auto 1fr;align-items:center;border:1px solid #d8dde1;border-radius:10px;background:#fff;color:#717981}
.shop-price-range label:focus-within{border-color:#9ea7af;box-shadow:0 0 0 3px rgba(17,20,25,.055)}
.shop-price-range label>span:not(.sr-only){padding-left:10px;font-size:14px}
.shop-price-range input{width:100%;min-width:0;height:100%;padding:0 8px 0 4px;border:0;outline:0;background:transparent;color:#22272d;font-size:14px}
.shop-price-range input::-webkit-inner-spin-button,.shop-price-range input::-webkit-outer-spin-button{appearance:none;margin:0}
.shop-clear-filters{width:calc(100% - 34px);min-height:44px;margin:16px 17px;display:flex;align-items:center;gap:9px;padding:0 4px;border:0;background:#fff;color:#31383f;font-size:14px;font-weight:750;text-align:left;cursor:pointer}
.shop-clear-filters svg{width:18px;height:18px;fill:none;stroke:#4f5962;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.shop-clear-filters b,.shop-filter-open b{min-width:20px;height:20px;margin-left:auto;display:grid;place-items:center;border-radius:999px;background:var(--shop-orange);color:#fff;font-size:11px}
.shop-clear-filters b[hidden],.shop-filter-open b[hidden]{display:none!important}
.shop-clear-filters:hover{color:#000}
.shop-clear-filters:disabled{opacity:.42;cursor:default}
.shop-filter-done,.shop-filter-close,.shop-filter-open,.shop-filter-backdrop{display:none}

/* Results panel */
.shop-results{min-width:0;padding:17px;border:1px solid var(--shop-line);border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(17,20,25,.025)}
.shop-products-head{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:15px}
.shop-products-title{min-width:0}
.shop-products-title small{display:block;color:#707983;font-size:11px;font-weight:850;letter-spacing:1.05px;text-transform:uppercase}
.shop-products-title h2{margin:4px 0 0;font-size:27px;line-height:1.1;letter-spacing:-1px}
.shop-products-tools{display:flex;align-items:center;justify-content:flex-end;gap:11px}
.shop-sort{height:42px;min-width:188px;padding:0 38px 0 13px;border:1px solid #d6dce0;border-radius:10px;background:#fff;color:#2c3238;font-size:14px;font-weight:650;cursor:pointer}
.shop-sort:focus-visible{outline:3px solid rgba(17,20,25,.11);outline-offset:2px}
.shop-result-count{min-width:78px;color:#6f7880;font-size:14px;text-align:right;white-space:nowrap}
.shop-mobile-search{display:none}
.shop-active-filters{margin:-2px 0 15px;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
.shop-active-filters::-webkit-scrollbar{display:none}
.shop-active-filters[hidden]{display:none}
.shop-active-filters button{flex:0 0 auto;min-height:34px;padding:0 9px 0 11px;display:inline-flex;align-items:center;gap:8px;border:1px solid #d8dde1;border-radius:999px;background:#f7f8f9;color:#3c444c;font-size:13px;font-weight:700;cursor:pointer}
.shop-active-filters button:hover{border-color:#b8c0c7;background:#fff}
.shop-active-filters button b{font-size:17px;font-weight:500;line-height:1}
.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.shop-card{min-width:0;display:flex;flex-direction:column;border:1px solid #e0e4e7;border-radius:15px;background:#fff;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.shop-card:hover{border-color:#cbd2d7;box-shadow:0 14px 32px rgba(17,20,25,.065);transform:translateY(-2px)}
.shop-card-media{position:relative;height:198px;display:grid;place-items:center;background:#f7f8f9;overflow:hidden}
.shop-card-media img{width:82%;height:82%;object-fit:contain;transition:transform .2s ease}
.shop-card:hover .shop-card-media img{transform:scale(1.02)}
.shop-stock{position:absolute;left:12px;top:12px;z-index:2;min-height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;border:1px solid rgba(20,24,29,.07);border-radius:999px;background:rgba(255,255,255,.95);color:#48515a;font-size:12px;font-weight:800;box-shadow:0 5px 16px rgba(17,20,25,.045)}
.shop-stock::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--shop-green)}
.shop-stock.is-pending::before{background:var(--shop-amber)}
.shop-stock.is-out::before{background:#929ba3}
.shop-card-body{flex:1;display:flex;flex-direction:column;padding:15px}
.shop-card-kicker{margin:0;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#717a82;font-size:11px;font-weight:900;letter-spacing:.82px;text-transform:uppercase}
.shop-card-kicker span:last-child{letter-spacing:.25px}
.shop-card h3{min-height:43px;margin:7px 0 0;display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:17px;line-height:1.25;letter-spacing:-.28px}
.shop-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.shop-card-description{min-height:20px;margin:6px 0 0;overflow:hidden;color:#69727a;font-size:14px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.shop-card-price{margin-top:13px;display:flex;align-items:baseline;gap:6px}
.shop-card-price strong{font-size:20px;letter-spacing:-.45px}
.shop-card-price small{color:#7a828a;font-size:12px}
.shop-card-stock{margin:7px 0 0;display:flex;align-items:center;gap:7px;color:#53606a;font-size:13px;line-height:1.3}
.shop-card-stock>span{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--shop-green)}
.shop-card-stock.is-low-stock>span,.shop-card-stock.is-order>span{background:var(--shop-amber)}
.shop-card-stock.is-out-of-stock>span{background:#929ba3}
.shop-card-primary{width:100%;min-height:43px;margin-top:13px;display:flex;align-items:center;justify-content:center;border:1px solid #1b2025;border-radius:10px;background:#fff;color:#161b20;font-size:14px;font-weight:800;cursor:pointer;transition:.15s ease}
.store-body a.shop-card-primary{color:#161b20}
.shop-card-primary:hover{background:#f4f5f6;transform:translateY(-1px)}
.shop-card-primary.is-add{border-color:var(--shop-orange);color:var(--shop-orange);background:#fff}
.shop-card-primary.is-add:hover{background:#fff7f4}
.shop-card-primary.is-added{border-color:var(--shop-green);background:var(--shop-green);color:#fff}
.shop-card-primary:disabled{border-color:#d7dce0;background:#f1f3f4;color:#8a9299;cursor:not-allowed;transform:none}
.shop-card-primary:focus-visible{outline:3px solid rgba(255,75,31,.23);outline-offset:2px}
.shop-card-footer{margin-top:auto;padding-top:14px}
.shop-no-results{grid-column:1/-1;padding:62px 24px;border:1px dashed #d1d7dc;border-radius:15px;background:#fafbfb;text-align:center}
.shop-no-results svg{width:34px;height:34px;margin:auto;fill:none;stroke:#727a83;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.shop-no-results h3{margin:14px 0 0;font-size:22px;letter-spacing:-.55px}
.shop-no-results p{margin:7px auto 0;color:#69717a;font-size:15px;line-height:1.5}
.shop-no-results button{min-height:43px;margin-top:17px;padding:0 16px;border:0;border-radius:10px;background:#111419;color:#fff;font-size:14px;font-weight:800;cursor:pointer}
.shop-repair-note{min-height:70px;margin-top:17px;padding:13px 15px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e1e5e8;border-radius:13px;background:#f8f9fa}
.shop-repair-note-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#fff;border:1px solid #e2e6e9}
.shop-repair-note-icon svg{width:19px;height:19px;fill:none;stroke:#31383f;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.shop-repair-note strong{display:block;font-size:14px}
.shop-repair-note div span{display:block;margin-top:3px;color:#6b747c;font-size:13px;line-height:1.4}
.shop-repair-note a{min-height:38px;display:inline-flex;align-items:center;padding:0 12px;border-radius:9px;background:#111419;color:#fff;font-size:13px;font-weight:800;white-space:nowrap}
.shop-repair-note a:hover{background:#292f35}

.shop-footer{padding:26px 0;border-top:1px solid var(--shop-line);background:#fff}
.shop-footer-inner{display:grid;grid-template-columns:auto 1fr auto;gap:30px;align-items:center}
.shop-footer-brand{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:850;letter-spacing:.4px}
.shop-footer-brand img{width:24px;height:29px}
.shop-footer nav{justify-self:center;display:flex;align-items:center;gap:24px}
.shop-footer nav a{color:#626b74;font-size:14px;font-weight:700}
.shop-footer nav a:hover{color:#111419}
.shop-footer small{color:#7b838b;font-size:13px}

/* Product-detail pages keep the V18.22 purchase flow and shared global header. */
.shop-breadcrumb{width:var(--shop-shell);margin:auto;padding:24px 0 12px;display:flex;align-items:center;gap:9px;color:#7a828a;font-size:14px;overflow:hidden;white-space:nowrap}
.shop-breadcrumb a:hover{color:#111419}
.shop-breadcrumb strong{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#444b53;font-weight:700}
.shop-product-overview{padding:20px 0 72px}
.shop-product-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:70px;align-items:center}
.shop-product-gallery{position:relative;aspect-ratio:1/1;display:grid;place-items:center;border-radius:30px;background:#f4f5f6;overflow:hidden}
.shop-product-gallery img{width:84%;height:84%;object-fit:contain}
.shop-product-gallery .shop-stock{left:18px;top:18px}
.shop-product-info>.shop-eyebrow{margin-bottom:10px}
.shop-product-info h1{margin:0;font-size:clamp(42px,4.3vw,62px);font-weight:820;line-height:1.02;letter-spacing:-3px}
.shop-product-subtitle{margin:15px 0 0;color:#69717a;font-size:18px;line-height:1.55}
.shop-product-price{margin-top:25px;font-size:34px;font-weight:850;letter-spacing:-1px}
.shop-product-price small{display:block;margin-top:5px;color:#7a828a;font-size:14px;font-weight:550;letter-spacing:0}
.shop-product-price-note{display:none}
.shop-product-availability{margin-top:20px;padding:13px 15px;display:flex;align-items:flex-start;gap:11px;border:1px solid #dfe6e1;border-radius:14px;background:var(--shop-green-soft)}
.shop-product-availability::before{content:"";flex:0 0 auto;width:9px;height:9px;margin-top:5px;border-radius:50%;background:var(--shop-green)}
.shop-product-availability>span{flex:1;min-width:0}
.shop-product-availability strong{display:block;color:#245b3c;font-size:15px}
.shop-product-availability small{display:block;margin-top:2px;color:#557363;font-size:13px;line-height:1.35}
.shop-product-availability.is-low{border-color:#eadbbd;background:#fff8ea}
.shop-product-availability.is-low::before{background:#b27419}
.shop-product-availability.is-low strong{color:#795016}
.shop-product-availability.is-low small{color:#7d6848}
.shop-product-availability.is-out{border-color:#e5d9d9;background:#fbf5f5}
.shop-product-availability.is-out::before{background:#8d5555}
.shop-product-availability.is-out strong{color:#713d3d}
.shop-product-availability.is-out small{color:#765f5f}
.shop-product-fit{margin-top:12px;padding:12px 14px;border-radius:13px;background:#eef5ff;color:#3e638e;font-size:14px;line-height:1.5}
.shop-buy-card{margin-top:18px;padding:18px;border:1px solid var(--shop-line);border-radius:20px;background:#fff;box-shadow:0 18px 44px rgba(17,20,25,.06)}
.shop-fulfilment-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.shop-fulfilment{min-height:72px;padding:12px 13px;border:1px solid #dce1e4;border-radius:13px;background:#fff;text-align:left;cursor:pointer}
.shop-fulfilment strong{display:block;font-size:15px}
.shop-fulfilment small{display:block;margin-top:4px;color:#757d85;font-size:13px;line-height:1.35}
.shop-fulfilment.active{border-color:#1a1e23;box-shadow:inset 0 0 0 1px #1a1e23;background:#f8f9fa}
.shop-fulfilment-note{margin-top:10px;color:#737b83;font-size:13px;line-height:1.4}
.shop-buy-row{margin-top:15px;display:grid;grid-template-columns:auto 1fr;gap:10px}
.shop-qty{height:50px;display:grid;grid-template-columns:42px 36px 42px;align-items:center;border:1px solid #dce1e4;border-radius:13px;background:#fff;overflow:hidden}
.shop-qty button{height:100%;border:0;background:#fff;color:#252a30;font-size:20px;cursor:pointer}
.shop-qty button:hover{background:#f4f5f6}
.shop-qty output{text-align:center;font-size:16px;font-weight:800}
.shop-buy-primary,.shop-buy-secondary{min-height:50px;border-radius:13px;font-size:16px;font-weight:850;cursor:pointer}
.shop-buy-primary{border:0;background:var(--shop-orange);color:#fff}
.shop-buy-primary:hover{background:var(--shop-orange-dark)}
.shop-buy-primary:disabled,.shop-buy-secondary:disabled,.shop-mobile-buy button:disabled{background:#d6dade;color:#737b83;cursor:not-allowed}
.shop-buy-secondary{width:100%;margin-top:9px;border:1px solid #dbe0e4;background:#fff;color:#171b20}
.shop-buy-secondary:hover{background:#f8f9fa}
.shop-buy-secondary:disabled{border-color:#d6dade}
.shop-buy-safety{margin-top:15px;display:grid;gap:8px}
.shop-buy-safety span{display:flex;align-items:center;gap:8px;color:#626b74;font-size:14px}
.shop-buy-safety svg{width:17px;height:17px;fill:none;stroke:#52606a;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.shop-product-details{padding:72px 0;background:#f6f7f8;border-top:1px solid #eceff1;border-bottom:1px solid #eceff1}
.shop-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.shop-detail-card{padding:30px;border:1px solid #e1e5e8;border-radius:22px;background:#fff}
.shop-detail-card h2{margin:0;font-size:28px;letter-spacing:-1.1px}
.shop-detail-card>p{margin:9px 0 0;color:#6c747d;font-size:16px;line-height:1.55}
.shop-feature-list{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:13px}
.shop-feature-list li{position:relative;padding-left:28px;color:#3e454c;font-size:16px;line-height:1.5}
.shop-feature-list li::before{content:"✓";position:absolute;left:0;top:0;color:var(--shop-green);font-weight:900}
.shop-spec-list{margin-top:20px;display:grid;gap:0}
.shop-spec-list div{padding:13px 0;display:grid;grid-template-columns:150px 1fr;gap:15px;border-bottom:1px solid #eceff1}
.shop-spec-list div:last-child{border-bottom:0}
.shop-spec-list dt{color:#737b84;font-size:14px}
.shop-spec-list dd{margin:0;color:#2b3036;font-size:15px;font-weight:700;text-align:right}
.shop-related{padding:68px 0 78px}
.shop-related-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.shop-related-head h2{margin:6px 0 0;font-size:34px;letter-spacing:-1.3px}
.shop-related-head>a{color:#4f5861;font-size:15px;font-weight:800}
.shop-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.shop-related .shop-card-media{height:240px}
.shop-related .shop-card h3{font-size:18px}
.shop-related .shop-card-description{min-height:0;white-space:normal}
.shop-related .shop-card-primary{display:none}
.shop-mobile-buy{display:none}

@media(min-width:1280px){
  .shop-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media(max-width:1180px){
  :root{--shop-shell:min(100% - 40px,1120px)}
  .shop-catalogue-layout{grid-template-columns:252px minmax(0,1fr);gap:20px}
  .shop-filter-section{padding-inline:15px}
  .shop-clear-filters{width:calc(100% - 30px);margin-inline:15px}
  .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shop-card-media{height:220px}
  .shop-product-grid{gap:42px}
  .shop-product-info h1{font-size:48px}
}

@media(max-width:900px){
  :root{--shop-shell:calc(100% - 32px)}
  .shop-catalogue-note .shop-shell{padding:8px 0;font-size:13px}
  .shop-intro{padding:24px 0 16px}
  .shop-intro h1{font-size:30px}
  .shop-catalogue{padding-bottom:58px}
  .shop-catalogue-layout{display:block}
  .shop-results{padding:0;border:0;border-radius:0;box-shadow:none}
  .shop-filter-panel{position:fixed;inset:0 auto 0 0;z-index:230;width:min(88vw,370px);max-height:none;border:0;border-right:1px solid #dce1e5;border-radius:0;background:#fff;box-shadow:20px 0 60px rgba(17,20,25,.16);overflow:hidden;transform:translateX(-105%);transition:transform .22s ease}
  .shop-filter-open .shop-filter-panel{transform:translateX(0)}
  .shop-filter-backdrop{position:fixed;inset:0;z-index:220;display:block;border:0;background:rgba(15,18,22,.42);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
  .shop-filter-open .shop-filter-backdrop{opacity:1;visibility:visible}
  body.shop-filter-open{overflow:hidden}
  .shop-filter-panel-head{min-height:68px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7eaed;background:#fff}
  .shop-filter-panel-head small{display:block;color:var(--shop-orange);font-size:10px;font-weight:900;letter-spacing:1px}
  .shop-filter-panel-head h2{margin:2px 0 0;font-size:22px;letter-spacing:-.6px}
  .shop-filter-close{width:42px;height:42px;display:grid;place-items:center;border:1px solid #dce1e5;border-radius:11px;background:#fff;cursor:pointer}
  .shop-filter-close svg{width:19px;height:19px;fill:none;stroke:#20262b;stroke-width:1.8;stroke-linecap:round}
  .shop-filter-form{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:0}
  .shop-filter-section{padding:19px 17px}
  .shop-clear-filters{width:calc(100% - 34px);margin:15px 17px}
  .shop-filter-done{flex:0 0 auto;width:calc(100% - 34px);min-height:50px;margin:10px 17px 17px;display:flex;align-items:center;justify-content:center;border:0;border-radius:12px;background:var(--shop-orange);color:#fff;font-size:16px;font-weight:850;box-shadow:0 -8px 22px rgba(17,20,25,.05);cursor:pointer}
  .shop-products-head{align-items:end;margin-bottom:12px}
  .shop-products-title h2{font-size:27px}
  .shop-products-tools{gap:8px}
  .shop-filter-open{height:42px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid #d6dce0;border-radius:10px;background:#fff;color:#2b3238;font-size:14px;font-weight:750;cursor:pointer}
  .shop-filter-open svg{width:18px;height:18px;fill:none;stroke:#333b42;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .shop-filter-open b{margin-left:1px}
  .shop-sort{min-width:168px}
  .shop-result-count{display:none}
  .shop-mobile-search{height:48px;margin-bottom:13px;display:grid;grid-template-columns:42px 1fr 42px;align-items:center;border:1px solid #d7dce0;border-radius:11px;background:#fff}
  .shop-mobile-search:focus-within{border-color:#9ea7af;box-shadow:0 0 0 3px rgba(17,20,25,.055)}
  .shop-mobile-search>svg{justify-self:center;width:18px;height:18px;fill:none;stroke:#667079;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .shop-mobile-search input{width:100%;height:100%;padding:0;border:0;outline:0;background:transparent;font-size:16px}
  .shop-mobile-search button{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:9px;background:#111419;color:#fff;cursor:pointer}
  .shop-mobile-search button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .shop-active-filters{margin-bottom:13px}
  .shop-product-overview{padding-top:10px}
  .shop-product-grid{grid-template-columns:1fr;gap:34px}
  .shop-product-gallery{max-height:580px}
  .shop-product-info h1{font-size:44px}
  .shop-detail-grid{grid-template-columns:1fr}
  .shop-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shop-footer-inner{grid-template-columns:1fr;justify-items:center;text-align:center}
  .shop-footer nav{justify-self:center;flex-wrap:wrap;justify-content:center;gap:12px 20px}
}

@media(max-width:620px){
  :root{--shop-shell:calc(100% - 28px)}
  .shop-catalogue-note .shop-shell{align-items:flex-start;text-align:left}
  .shop-intro{padding:21px 0 14px}
  .shop-intro h1{font-size:28px}
  .shop-intro p{font-size:15px}
  .shop-products-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
  .shop-products-title small{font-size:10px}
  .shop-products-title h2{font-size:24px}
  .shop-products-tools{display:grid;grid-template-columns:auto minmax(145px,1fr);gap:8px}
  .shop-filter-open{padding-inline:10px}
  .shop-sort{min-width:0;width:100%;font-size:13px;padding-left:10px}
  .shop-grid{grid-template-columns:1fr;gap:15px}
  .shop-card{border-radius:15px}
  .shop-card-media{height:260px}
  .shop-card-body{padding:17px}
  .shop-card h3{min-height:0;font-size:19px}
  .shop-card-description{min-height:0;font-size:15px}
  .shop-card-price strong{font-size:22px}
  .shop-card-stock{font-size:14px}
  .shop-card-primary{min-height:48px;font-size:16px}
  .shop-repair-note{grid-template-columns:38px minmax(0,1fr);padding:15px}
  .shop-repair-note a{grid-column:1/-1;width:100%;min-height:44px;justify-content:center}
  .shop-footer{padding-bottom:28px}
  .shop-breadcrumb{padding-top:18px}
  .shop-product-overview{padding-bottom:42px}
  .shop-product-gallery{border-radius:22px}
  .shop-product-info h1{font-size:38px;letter-spacing:-2px}
  .shop-product-subtitle{font-size:17px}
  .shop-product-price{font-size:31px}
  .shop-fulfilment-options{grid-template-columns:1fr}
  .shop-buy-row{grid-template-columns:1fr}
  .shop-qty{width:132px}
  .shop-buy-card{padding:15px}
  .shop-product-details{padding:48px 0}
  .shop-detail-card{padding:23px}
  .shop-detail-card h2{font-size:25px}
  .shop-spec-list div{grid-template-columns:1fr;gap:5px}
  .shop-spec-list dd{text-align:left}
  .shop-related{padding:50px 0 92px}
  .shop-related-grid{grid-template-columns:1fr}
  .shop-related .shop-card-media{height:250px}
  .shop-mobile-buy{position:fixed;left:0;right:0;bottom:0;z-index:90;min-height:72px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border-top:1px solid #dce1e4;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);box-shadow:0 -12px 30px rgba(17,20,25,.08)}
  .shop-mobile-buy small{display:block;color:#747c84;font-size:12px}
  .shop-mobile-buy strong{display:block;margin-top:2px;font-size:20px}
  .shop-mobile-buy button{min-height:48px;padding:0 20px;border:0;border-radius:13px;background:var(--shop-orange);color:#fff;font-size:15px;font-weight:850}
  body.clean-product-page{padding-bottom:72px}
}

@media(max-width:390px){
  .shop-products-head{grid-template-columns:1fr}
  .shop-products-tools{grid-template-columns:auto 1fr}
  .shop-card-media{height:238px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .shop-card,.shop-card-media img,.shop-card-primary,.shop-filter-panel,.shop-filter-backdrop{transition:none}
}
