:root { --ink:#252624; --cream:#f2ede5; --paper:#fffdf9; --muted:#676660; --red:#d72920; --line:#ded5c8; --teal:#0b6b67; }
* { box-sizing:border-box; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
a { color:inherit; text-underline-offset:4px; }
:focus-visible { outline:3px solid var(--red); outline-offset:4px; }
.wrap { width:min(1160px,calc(100% - 40px)); margin:auto; }
.skip-link { position:absolute; top:-100px; padding:14px; background:white; z-index:5; }
.skip-link:focus { top:0; }
.shop-header { border-bottom:1px solid var(--line); background:var(--paper); }
.shop-header nav { display:flex; align-items:center; gap:26px; min-height:84px; font-size:13px; font-weight:700; }
.shop-brand { margin-right:auto; }
.shop-brand img { display:block; width:190px; height:auto; }
.shop-phone { padding:12px 18px; border:1px solid var(--line); border-radius:999px; text-decoration:none; }
.shop-intro { display:flex; justify-content:space-between; align-items:center; gap:30px; padding:55px 0 30px; }
.shop-catalog { display:flex; align-items:center; gap:13px; padding:18px 22px; border:1px solid #b6cfc6; border-radius:14px; background:#edf6f0; font-size:14px; }
.shop-catalog p { margin:5px 0 0; color:#496354; font-size:12px; line-height:1.5; }
.catalog-dot { width:10px; height:10px; border-radius:50%; background:#31754c; flex-shrink:0; }
.catalog-private { margin-left:auto; padding:7px 11px; border-radius:999px; background:white; color:#496354; font-size:11px; white-space:nowrap; }
.eyebrow { color:var(--red); text-transform:uppercase; letter-spacing:.12em; font-weight:800; font-size:11px; }
h1 { margin:15px 0 18px; font-size:clamp(32px,4.2vw,52px); line-height:1.08; letter-spacing:-.045em; }
h1 em { color:var(--red); font-style:normal; }
.shop-intro p { max-width:630px; margin:0; color:var(--muted); font-size:16px; line-height:1.6; }
.shop-intro img { width:280px; height:190px; object-fit:cover; border-radius:22px; }
.shop-notice { padding:17px 21px; border:1px solid #cbbf9c; border-radius:12px; background:#fff9e7; font-size:13px; line-height:1.6; }
.shop-preview { padding:22px; margin:0 0 20px; border:1px solid #a7c4c0; border-radius:14px; background:#eaf4f2; font-size:14px; }
.shop-preview p { margin:9px 0; line-height:1.6; }
.shop-preview-sizes { display:flex; flex-wrap:wrap; gap:9px; margin:13px 0; }
.shop-preview-sizes button { padding:10px 14px; min-height:42px; border:1px solid #8eb7ae; border-radius:999px; background:white; color:#17554d; font:inherit; font-size:13px; font-weight:750; cursor:pointer; }
.shop-preview-sizes button:hover { background:#d8ebe6; }
.shop-steps { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; padding:16px 0 25px; margin:0; list-style:none; font-size:13px; font-weight:700; }
.shop-steps li { display:flex; align-items:center; gap:10px; }
.shop-steps span { display:grid; place-items:center; width:27px; height:27px; background:var(--ink); color:white; border-radius:50%; font-size:12px; }
.shop-search { display:grid; grid-template-columns:330px minmax(0,1fr); gap:24px; align-items:start; scroll-margin-top:20px; }
.shop-filters,.shop-results { padding:27px; background:var(--paper); border:1px solid var(--line); border-radius:20px; }
h2 { margin:0 0 23px; font-size:22px; line-height:1.25; letter-spacing:-.025em; }
.field { display:grid; gap:8px; margin-bottom:21px; }
label,legend { font-size:13px; font-weight:750; }
input,select { width:100%; min-height:47px; padding:11px 12px; border:1px solid #cfc5b8; border-radius:9px; background:white; color:var(--ink); font:inherit; font-size:14px; }
.hint { margin:0; color:var(--muted); font-size:12px; line-height:1.55; }
fieldset { margin:0 0 20px; padding:0; border:0; }
legend { margin-bottom:10px; }
.choice { display:flex; align-items:center; gap:10px; padding:12px 0; font-weight:500; cursor:pointer; }
.choice input { width:18px; min-height:18px; margin:0; accent-color:var(--red); }
.shop-results { min-height:300px; }
.button { width:100%; min-height:49px; padding:12px 22px; background:var(--red); color:white; border:0; border-radius:999px; font:inherit; font-size:14px; font-weight:800; cursor:pointer; }
.shop-results .tire-search-status { margin:17px 0 22px; }
.shop-results .tire-search-results { grid-template-columns:repeat(2,minmax(0,1fr)); }
.tire-seasons { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
.tire-seasons label { position:relative; cursor:pointer; }
.tire-seasons input { position:absolute; width:1px; min-height:1px; height:1px; opacity:0; }
.tire-seasons label>span { display:grid; place-items:center; gap:7px; padding:12px 3px; border:1px solid var(--line); border-radius:10px; background:white; font-size:10px; font-weight:750; }
.tire-seasons b { font-size:23px; font-weight:500; line-height:1; }
.tire-seasons input:checked+span { color:#a91d18; background:#fff0ed; border-color:var(--red); box-shadow:0 0 0 1px var(--red); }
.tire-seasons input:focus-visible+span { outline:3px solid var(--red); outline-offset:3px; }
.tire-dimensions { display:grid; grid-template-columns:1.15fr 1fr 1fr; gap:8px; }
.tire-dimensions>div { display:grid; gap:6px; }
.tire-dimensions label { color:var(--muted); font-size:12px; font-weight:600; }
.tire-dimensions select { padding-left:9px; padding-right:2px; }
.size-direct-label { margin-top:7px; color:var(--muted); font-size:12px; font-weight:600; }
.tire-sort { display:flex; justify-content:flex-end; align-items:center; gap:10px; margin:0 0 20px; padding-top:16px; border-top:1px solid var(--line); }
.tire-sort label { font-size:12px; color:var(--muted); font-weight:600; }
.tire-sort select { width:auto; max-width:230px; min-height:39px; padding:8px 11px; font-size:12px; }
.tire-mounting-note { padding:15px; margin-bottom:19px; border-radius:10px; background:#efeee8; font-size:13px; }
.tire-mounting-note p { margin:6px 0 0; color:var(--muted); line-height:1.6; font-size:12px; }
.shop-results .tire-search-results { grid-template-columns:1fr; }
.shop-results .tire-result { display:grid; grid-template-columns:112px minmax(0,1fr) 145px; gap:10px 16px; align-items:start; }
.shop-results .tire-result-media { grid-column:1; grid-row:1; min-width:0; width:100%; color:var(--muted); }
.shop-results .tire-result-image-box { border-radius:10px; background:#f6f4ef; overflow:hidden; }
.shop-results .tire-result-image { mix-blend-mode:multiply; }
.shop-results .tire-result-image-placeholder { max-width:90px; padding:10px; text-align:center; font-size:11px; line-height:1.5; }
.shop-results .tire-result-identity { grid-column:2; min-width:0; }
.shop-results .tire-result-pricing { grid-column:3; min-width:0; text-align:right; }
.shop-results .tire-result-unit { justify-content:flex-end; gap:4px; margin-bottom:11px; }
.shop-results .tire-result-unit strong { font-size:26px; }
.shop-results .tire-result-total { display:grid; justify-content:end; gap:5px; padding-top:10px; margin-top:0; font-size:11px; }
.shop-results .tire-result-total strong { font-size:25px; }
.shop-results .tire-result-detail { grid-column:1/-1; }
.shop-results .tire-result-detail dl { margin:4px 0 9px; padding-top:12px; border-top:1px solid var(--line); }
.tire-result-stock { display:inline-block; margin:2px 0 10px; padding:5px 8px; border-radius:6px; background:#edf6f0; color:#2c6745; font-size:11px; font-weight:650; }
.tire-pagination { grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; padding:15px 0 2px; font-size:12px; }
.tire-pagination button { border:1px solid var(--line); border-radius:999px; background:white; color:var(--ink); padding:10px 16px; font:inherit; font-weight:750; cursor:pointer; }
.tire-pagination button:disabled { opacity:.4; cursor:default; }
.shop-help { display:flex; justify-content:space-between; align-items:center; gap:25px; margin:35px 0; padding:27px; background:#e8e3da; border-radius:16px; }
.shop-help h2 { margin-bottom:8px; font-size:20px; }
.shop-help p { margin:0; color:var(--muted); font-size:13px; line-height:1.6; }
.shop-help a { flex-shrink:0; font-size:13px; font-weight:800; }
.shop-footer { display:flex; flex-wrap:wrap; gap:20px; padding:24px 0; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.shop-footer span { margin-right:auto; }
.tire-result-label { font-size:12px; line-height:1.6; color:var(--muted); }
.tire-result-label-link { display:inline-block; margin:0 0 15px; font-size:12px; font-weight:700; }
.tire-result-closed { color:var(--muted); font-size:12px; }
.shop-results .tire-result-select { margin-top:14px; background:var(--red); }
.shop-results .tire-result-select:hover { background:#b82019; }
.selection-intro { padding:42px 0 26px; }
.selection-intro p { color:var(--muted); line-height:1.6; }
.selection-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr); gap:24px; align-items:start; }
.selection-product,.selection-summary { min-width:0; padding:28px; border:1px solid var(--line); border-radius:20px; background:var(--paper); }
.selection-badge { display:inline-block; padding:8px 12px; margin-bottom:26px; border-radius:999px; background:#eaf5ee; color:#286644; font-size:12px; font-weight:750; }
.selection-product-main { display:grid; grid-template-columns:160px minmax(0,1fr); gap:24px; }
.selection-product-main h2 { margin-bottom:12px; overflow-wrap:anywhere; }
.selection-photo { margin:0; }
.selection-image-box { display:grid; place-items:center; height:180px; border-radius:12px; background:#f6f4ef; }
.selection-image-box img { display:block; width:160px; max-width:100%; height:180px; object-fit:contain; mix-blend-mode:multiply; }
.selection-image-box span,.selection-photo figcaption { color:var(--muted); font-size:11px; line-height:1.55; }
.selection-image-box span { padding:18px; text-align:center; }
.selection-photo figcaption { margin-top:10px; }
.selection-meta { color:var(--muted); font-size:14px; line-height:1.6; }
.selection-stock { display:inline-block; padding:6px 9px; margin:0 0 14px; border-radius:7px; background:#edf6f0; color:#2c6745; font-size:12px; }
.selection-unit { display:grid; gap:5px; margin:0; }
.selection-unit strong { font-size:28px; }
.selection-unit span { font-size:12px; color:var(--muted); }
.selection-fulfillment { margin-top:26px; padding-top:22px; border-top:1px solid var(--line); font-size:13px; line-height:1.65; }
.selection-fulfillment h3 { margin:0 0 10px; font-size:16px; }
.selection-fulfillment p { margin:0 0 13px; }
.selection-summary dl { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; margin:25px 0; font-size:13px; }
.selection-summary dt { color:var(--muted); }
.selection-summary dd { margin:0; text-align:right; font-variant-numeric:tabular-nums; }
.selection-total { display:grid; gap:8px; border-top:1px solid var(--line); padding-top:20px; font-size:13px; font-weight:750; }
.selection-total strong { font-size:36px; letter-spacing:-.03em; font-variant-numeric:tabular-nums; }
.selection-price-time { margin:16px 0 24px; color:var(--muted); font-size:11px; line-height:1.65; }
.selection-primary { display:flex; align-items:center; justify-content:center; text-align:center; text-decoration:none; font-size:13px; }
.selection-refresh { display:block; margin-top:17px; text-align:center; font-size:12px; font-weight:650; }
.selection-notice { margin:25px 0 35px; }
.selection-notice p { margin:7px 0 0; }
.shop-categories { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:0 0 24px; }
.shop-categories a { display:grid; gap:6px; padding:19px 22px; border:1px solid var(--line); border-radius:13px; background:var(--paper); text-decoration:none; font-size:15px; font-weight:800; }
.shop-categories a span { color:var(--muted); font-size:11px; font-weight:500; }
.shop-categories a[aria-current="page"] { border-color:var(--red); background:#fff0ed; color:#a91d18; box-shadow:inset 0 0 0 1px var(--red); }
.shop-categories a:hover { border-color:var(--red); }
.tire-result-test { display:grid; gap:5px; padding:11px 12px; margin:2px 0 14px; border:1px solid #b9cfc6; border-radius:8px; background:#edf6f0; color:#235641; font-size:11px; line-height:1.5; }
.tire-result-testnote { font-size:14px; font-weight:800; }
.tire-result-test-source { color:#496354; }
.tire-result-test-link { font-weight:650; }
.tire-result-test p { margin:0; }
.tire-result-testnote.is-unrated { color:var(--muted); font-size:11px; font-weight:500; }
.tire-result-test.is-unrated { border-color:var(--line); background:#f5f2ec; color:var(--muted); }
.selection-product .tire-result-test { margin-top:22px; }
.rim-search { margin-top:24px; }
.product-identifiers { display:grid; grid-template-columns:auto minmax(0,1fr); gap:9px 20px; margin:22px 0; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.product-identifiers dt { color:var(--muted); }
.product-identifiers dd { margin:0; }
.set-requirements { margin:24px 0; }
.set-parts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin:26px 0; }
.set-parts b { color:var(--red); font-size:12px; }
.set-parts h3 { font-size:16px; margin:10px 0; }
.set-parts p { color:var(--muted); font-size:13px; line-height:1.65; }
@media(max-width:760px) { .shop-categories a { padding:14px 11px; font-size:13px; } .set-parts { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) { .shop-categories { gap:6px; } .shop-categories a { font-size:12px; padding:13px 9px; } .shop-categories a span { font-size:10px; } .set-parts { grid-template-columns:1fr; gap:12px; } }
@media(max-width:760px) { .selection-layout { grid-template-columns:1fr; } .selection-intro { padding-top:30px; } }
@media(max-width:480px) { .selection-product,.selection-summary { padding:20px; } .selection-product-main { grid-template-columns:90px minmax(0,1fr); gap:15px; } .selection-image-box,.selection-image-box img { height:145px; } .selection-product-main h2 { font-size:20px; } .selection-unit strong { font-size:25px; } }
@media(max-width:1050px) { .shop-results .tire-search-results { grid-template-columns:1fr; } .shop-results .tire-result { grid-template-columns:96px minmax(0,1fr); gap:10px 14px; } .shop-results .tire-result-media { grid-row:1/span 2; } .shop-results .tire-result-pricing { grid-column:2; text-align:left; } .shop-results .tire-result-unit { justify-content:flex-start; } .shop-results .tire-result-total { justify-content:start; } }
@media(max-width:760px) { .shop-intro { padding-top:30px; } .shop-intro img { display:none; } .shop-search { grid-template-columns:1fr; } .shop-help { display:block; } .shop-help a { display:inline-block; margin-top:17px; } .shop-steps { font-size:11px; gap:12px; } .shop-header nav { gap:15px; } .shop-header .shop-phone { display:none; } }
@media(max-width:420px) { .wrap { width:calc(100% - 28px); } .shop-filters,.shop-results { padding:21px; } .shop-brand img { width:155px; } .shop-header nav { font-size:11px; } }
@media(max-width:540px) { .shop-results .tire-result { grid-template-columns:84px minmax(0,1fr); gap:10px 12px; } .shop-results .tire-result-media { grid-row:1; } .shop-results .tire-result-pricing { grid-column:1/-1; text-align:left; } .shop-results .tire-result-unit { justify-content:flex-start; } .shop-results .tire-result-total { display:flex; justify-content:space-between; align-items:center; } .catalog-private { display:none; } .tire-sort { justify-content:space-between; } }
.rim-search .tire-result { grid-template-columns:164px minmax(0,1fr) 145px; }
.rim-search .rim-result-media { max-width:none; min-height:190px; margin:0; }
.rim-search .rim-result-image-box { width:100%; height:160px; display:grid; place-items:center; }
.rim-search .rim-result-image { display:block; width:100%; height:160px; object-fit:contain; mix-blend-mode:normal; }
.rim-search .tire-result-image-caption { display:block; margin-top:8px; color:var(--muted); font-size:11px; line-height:1.5; }
.rim-selection-main { grid-template-columns:200px minmax(0,1fr); }
.selection-rim-image-box,.selection-rim-image-box img { width:200px; max-width:100%; height:200px; mix-blend-mode:normal; }
@media(max-width:1050px) { .rim-search .tire-result { grid-template-columns:128px minmax(0,1fr); } }
@media(max-width:540px) { .rim-search .tire-result { grid-template-columns:104px minmax(0,1fr); } .rim-search .rim-result-image-box,.rim-search .rim-result-image { height:140px; } }
@media(max-width:480px) { .rim-selection-main { grid-template-columns:1fr; } .selection-rim-photo { width:200px; max-width:100%; margin:0 auto; } }

.catalog-page {
  background:#f6f5f2;
  --line:#e2dfd9;
  --paper:#fff;
}
.catalog-page .wrap { width:min(1320px,calc(100% - 48px)); }
.catalog-page .shop-header nav { min-height:70px; }
.catalog-page .shop-intro { padding:25px 0 19px; }
.catalog-page .shop-intro h1 { margin:5px 0 6px; font-size:clamp(36px,4.7vw,56px); }
.catalog-page .shop-intro p { font-size:14px; }
.catalog-page .shop-categories { max-width:620px; margin-bottom:23px; }
.catalog-page .shop-categories a { padding:13px 18px; text-align:center; }
.shop-vehicle { margin:0 0 22px; padding:17px 20px; background:var(--paper); border:1px solid var(--line); border-radius:14px; }
.shop-vehicle h2 { margin:0 0 4px; font-size:18px; }
.shop-vehicle-intro p { margin:0 0 13px; color:var(--muted); font-size:13px; }
.shop-vehicle-mode { display:flex; flex-wrap:wrap; gap:8px 18px; margin:0 0 12px; padding:0; border:0; }
.shop-vehicle-mode legend { margin:0 0 5px; font-size:12px; color:var(--muted); }
.shop-vehicle-mode label { display:flex; align-items:center; gap:6px; }
.shop-vehicle-mode input { width:16px; min-height:16px; margin:0; padding:0; accent-color:var(--red); }
.shop-vehicle-fields { display:grid; grid-template-columns: minmax(115px,155px) minmax(130px,205px) minmax(150px,190px); align-items:end; gap:12px; }
.shop-vehicle-fields[hidden] { display:none; }
.shop-vehicle-fields .field { margin:0; }
.shop-vehicle [data-rim-vehicle-lookup] { width:auto; margin-top:12px; min-height:41px; padding-block:9px; border-radius:9px; }
.shop-vehicle-status:not(:empty) { margin:12px 0 0; }
.shop-vehicle-status:empty { display:none; }
.shop-vehicle-choices { display:flex; flex-wrap:wrap; gap:8px; }
.shop-vehicle-choices:not(:empty) { margin-top:10px; }
.shop-vehicle-choices button,.shop-vehicle-reset { padding:8px 12px; border:1px solid var(--line); border-radius:8px; background:var(--paper); color:var(--ink); font:inherit; cursor:pointer; }
.shop-vehicle-reset:not([hidden]) { margin-top:10px; }
.catalog-page .shop-search { grid-template-columns:250px minmax(0,1fr); gap:26px; margin-top:0; }
.catalog-page .shop-filters { padding:20px; border-radius:14px; }
.catalog-page .shop-filters summary { margin:0; font-size:16px; font-weight:800; cursor:pointer; }
.catalog-page .shop-filters[open] summary { margin-bottom:20px; }
.catalog-page .field { gap:6px; margin-bottom:16px; }
.catalog-page .field input,.catalog-page .field select { min-height:41px; padding-block:8px; }
.catalog-page .tire-dimensions { grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; }
.catalog-page .tire-dimensions select { padding-inline:5px 0; }
.filter-optional { color:var(--muted); font-weight:400; }
.catalog-page .shop-filters .button { border-radius:9px; }
.catalog-page .shop-results { padding:0; border:0; background:none; border-radius:0; }
.catalog-page .shop-results-bar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px 18px; }
.catalog-page .shop-results h2 { margin:0; font-size:24px; }
.shop-catalog-meta { margin:4px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }
.catalog-page .tire-sort { justify-content:flex-start; padding:0; margin:0; border:0; }
.catalog-page .shop-results .tire-search-status { margin:12px 0 14px; font-size:12px; }
.catalog-page .shop-results .tire-search-results { grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr)); gap:16px; }
.catalog-page .shop-results .tire-result { display:flex; flex-direction:column; align-items:stretch; gap:13px; padding:14px; border-radius:14px; }
.catalog-page .tire-result .tire-result-media { width:100%; max-width:none; min-height:0; margin:0; }
.catalog-page .tire-result .tire-result-image-box { display:grid; place-items:center; width:100%; height:168px; background:#f3f3f0; }
.catalog-page .tire-result .tire-result-image { display:block; width:100%; height:155px; padding:7px; object-fit:contain; }
.catalog-page .tire-result .tire-result-image-caption { margin:5px 0 0; font-size:10px; line-height:1.4; }
.catalog-page .tire-result .tire-result-image-caption:empty { display:none; }
.catalog-page .tire-result .tire-result-image-placeholder { max-width:none; padding:4px 8px; text-align:center; font-size:11px; color:#585d5a; }
.catalog-page .tire-result-image-placeholder::before {
  content:"";
  display:block;
  width:102px;
  height:100px;
  margin:0 auto 5px;
  background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 104 100'%3E%3Cellipse cx='52' cy='92' rx='37' ry='4' fill='%23d8d9d5'/%3E%3Cpath d='M50 7c-17 0-34 12-38 36-4 24 7 45 24 48l19 2 9-84z' fill='%233a403f'/%3E%3Cpath d='M33 17l17 1M23 29l18 3M18 43l17 3M16 57l17 4M19 71l17 3M24 82l17 3' fill='none' stroke='%236f7774' stroke-width='3'/%3E%3Cellipse cx='61' cy='50' rx='30' ry='43' transform='rotate(8 61 50)' fill='%23272d2c' stroke='%23545c59' stroke-width='3'/%3E%3Cellipse cx='62' cy='50' rx='17' ry='29' transform='rotate(8 62 50)' fill='%23f3f3f0' stroke='%2369726f' stroke-width='5'/%3E%3C/svg%3E");
}
.catalog-page .rim-search .tire-result-image-placeholder::before {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 104 100'%3E%3Cellipse cx='52' cy='92' rx='39' ry='4' fill='%23d8d9d5'/%3E%3Ccircle cx='52' cy='49' r='41' fill='%23656d6a' stroke='%23505a56' stroke-width='3'/%3E%3Ccircle cx='52' cy='49' r='35' fill='%23313937' stroke='%23b8bfbc' stroke-width='5'/%3E%3Cpath d='M52 48 50 15M52 48l31-10M52 48l20 28M52 48 31 75M52 48 21 36' fill='none' stroke='%23b8bfbc' stroke-width='8' stroke-linecap='round'/%3E%3Ccircle cx='52' cy='49' r='11' fill='%238c9590' stroke='%23cfd4d1' stroke-width='2'/%3E%3Ccircle cx='52' cy='49' r='4' fill='%2349524e'/%3E%3C/svg%3E");
}
.catalog-page .tire-result h3 { font-size:17px; }
.catalog-page .tire-result-meta { margin:4px 0 8px; font-size:12px; }
.rim-fitment-models { border-top:1px solid var(--line); margin:8px 0; padding-top:8px; font-size:12px; }
.rim-fitment-caption { margin:0 0 5px; color:var(--muted); }
.rim-fitment-model { margin:5px 0 8px; overflow-wrap:anywhere; }
.rim-fitment-model span { display:block; color:var(--muted); }
.rim-fitment-models summary { cursor:pointer; }
.catalog-page .tire-result-stock { margin:4px 0 0; }
.catalog-page .shop-results .tire-result-pricing { margin-top:auto; text-align:left; }
.catalog-page .shop-results .tire-result-unit { justify-content:flex-start; margin:0 0 8px; }
.catalog-page .shop-results .tire-result-total { display:flex; justify-content:space-between; align-items:baseline; }
.catalog-page .shop-results .tire-result-total strong { font-size:18px; }
.catalog-page .tire-result-detail dl { font-size:11px; }
.catalog-page .tire-result-validity { margin-bottom:10px; }
.catalog-page .tire-result-select { border-radius:8px; }
.catalog-page .tire-pagination { grid-column:1/-1; }

@media(max-width:1000px) {
  .catalog-page .shop-search { grid-template-columns:220px minmax(0,1fr); gap:17px; }
  .catalog-page .shop-filters { padding:16px; }
}
@media(max-width:700px) {
  .catalog-page .wrap { width:calc(100% - 28px); }
  .catalog-page .shop-header nav { min-height:61px; }
  .catalog-page .shop-intro { padding:17px 0 13px; }
  .catalog-page .shop-categories { margin-bottom:12px; }
  .catalog-page .shop-categories a { padding:11px 7px; }
  .catalog-page .shop-search { grid-template-columns:1fr; gap:14px; }
  .catalog-page .shop-results .tire-search-results { gap:10px; }
  .catalog-page .shop-filters { padding:13px 16px; }
}
@media(max-width:500px) {
  .shop-vehicle-fields { grid-template-columns:1fr 1fr; }
}
