/* Garazhero commerce surfaces. Native WB classes and event hooks remain intact. */
.gr-catalog-page,.gr-search-page { padding-block:28px 48px; color:var(--gr-ink,#18211d); }
.gr-catalog-heading { margin-bottom:24px; }
.gr-catalog-page .gr-catalog-heading h1,.gr-search-page h1 { margin:0 0 10px; color:var(--gr-ink,#18211d); font:800 clamp(30px,3.7vw,48px)/1.12 Manrope,Arial,sans-serif; letter-spacing:-.04em; }
.gr-catalog-heading>p { margin:0; color:#626b67; font-size:17px; line-height:1.6; }
.gr-vehicle-finder { padding:22px 24px; margin:0 0 30px; border:1px solid var(--gr-line,#e1e5df); border-radius:6px; background:linear-gradient(120deg,#f1eee7,#f8f7f3); }
.gr-vehicle-finder__heading { display:flex; align-items:center; gap:16px; margin-bottom:20px; }
.gr-vehicle-finder__heading>svg,.gr-fitment-help>svg,.gr-catalog-help>svg { width:40px; height:40px; flex:none; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.gr-vehicle-finder h2 { margin:0 0 4px; color:var(--gr-ink,#18211d); font:750 20px/1.35 Manrope,Arial,sans-serif; letter-spacing:-.025em; }
.gr-vehicle-finder p { margin:0; color:#626b67; font-size:14px; line-height:1.6; }
.gr-vehicle-finder__vin { display:inline-flex; align-items:center; gap:14px; margin-left:auto; color:var(--gr-accent,#e05a2b); font-size:14px; font-weight:650; }
.gr-vehicle-finder__form { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,220px); gap:12px; }
.gr-vehicle-finder__form label { min-width:0; }
.gr-vehicle-finder__form input { box-sizing:border-box; width:100%; min-height:50px; border:1px solid #dce1db; border-radius:4px; padding:12px 16px; background:#fff; color:var(--gr-ink,#18211d); font:400 14px/1.5 Manrope,Arial,sans-serif; }
.gr-vehicle-finder__form input::placeholder { color:#767e7a; }
.gr-vehicle-finder__form .wb-btn { gap:18px; min-height:50px; margin:0; border-radius:4px; font:650 14px/1.4 Manrope,Arial,sans-serif; }
.gr-catalog-page .wb-catalog-layout { grid-template-columns:230px minmax(0,1fr); align-items:start; gap:28px; margin-top:24px; }
.gr-catalog-page .wb-catalog-sidebar { min-width:0; padding:0 24px 0 0; border-right:1px solid var(--gr-line,#e1e5df); }
.gr-category-nav { display:grid; margin-bottom:22px; padding-bottom:22px; border-bottom:1px solid var(--gr-line,#e1e5df); }
.gr-category-nav h2 { margin:0 0 12px; font:750 18px/1.4 Manrope,Arial,sans-serif; color:var(--gr-ink,#18211d); }
.gr-category-nav a { padding:8px 10px; border-left:2px solid transparent; color:#444e48; font-size:14px; line-height:1.45; text-decoration:none; }
.gr-category-nav a:hover,.gr-category-nav a[aria-current] { border-color:var(--gr-accent,#e05a2b); background:#f5f4ef; color:var(--gr-accent,#e05a2b); }
.gr-catalog-page .wb-catalog-filter-panel { border:0; border-radius:0; background:transparent; }
.gr-catalog-page .wb-filter-panel-title { padding:0 0 16px; color:var(--gr-ink,#18211d); font-size:17px; }
.gr-catalog-page .wb-filter-form { padding:0; }
.gr-catalog-page .wb-filter-group { border-color:var(--gr-line,#e1e5df); }
.gr-catalog-page .wb-filter-group>summary { padding-block:17px 12px; color:var(--gr-ink,#18211d); font-size:15px; }
.gr-catalog-page .wb-filter-choice { color:#46504a; font-size:14px; min-height:34px; }
.gr-catalog-page .wb-filter-range input,.gr-catalog-page .wb-filter-search input { border-color:#dce1db; background:#fff; color:var(--gr-ink,#18211d); border-radius:4px; }
.gr-catalog-page .wb-filter-unit,.gr-catalog-page .wb-filter-feedback,.gr-catalog-page .wb-filter-range label { color:#66706a; }
.gr-catalog-page .wb-filter-values { scrollbar-color:#ccd2cb transparent; }
.gr-catalog-page .wb-filter-actions .wb-btn { min-height:46px; border-radius:4px; }
.gr-catalog-page .wb-filter-actions>a { display:flex; justify-content:center; align-items:center; min-height:44px; border:1px solid #d5dcd4; border-radius:4px; color:var(--gr-ink,#18211d); text-decoration:none; background:#fff; }
.gr-catalog-page .wb-catalog-toolbar--category { display:grid; grid-template-columns:auto minmax(0,1fr); gap:14px; align-items:center; margin:0 0 20px; }
.gr-catalog-page .wb-catalog-total { color:var(--gr-ink,#18211d); font-size:15px; font-weight:650; white-space:nowrap; }
.gr-catalog-page .wb-catalog-total strong { font-weight:800; }
.gr-catalog-page .wb-catalog-toolbar--category .wb-catalog-tools { width:auto; justify-content:flex-end; gap:10px; }
.gr-catalog-page .wb-catalog-selection { grid-column:1/-1; }
.gr-catalog-page .wb-active-filters { margin:0; }
.gr-catalog-page .wb-catalog-sort,.gr-catalog-page .wb-catalog-page-size { color:var(--gr-ink,#18211d); }
.gr-catalog-page .wb-catalog-sort summary,.gr-catalog-page .wb-catalog-page-size summary { min-height:42px; border-color:var(--gr-line,#e1e5df); border-radius:4px; background:#fff; }
.gr-catalog-page .wb-catalog-sort nav { border-color:var(--gr-line,#e1e5df); border-radius:6px; }
.gr-catalog-page .wb-catalog-sort nav a:hover,.gr-catalog-page .wb-catalog-sort nav a[aria-current] { color:var(--gr-accent,#e05a2b); background:#fff3ec; }
.gr-catalog-page .wb-catalog-views { margin:0; padding:2px; border-color:var(--gr-line,#e1e5df); border-radius:4px; background:#fff; }
.gr-catalog-page .wb-catalog-views button { border-radius:3px; color:#6a746d; }
.gr-catalog-page .wb-catalog-views button[aria-pressed=true] { color:var(--gr-accent,#e05a2b); background:#fff1e9; box-shadow:none; }
.gr-catalog-page .wb-filter-chip { background:#f3f4f0; color:#445048; border-color:#dce1db; border-radius:4px; }
.gr-catalog-page .wb-filter-reset,.gr-catalog-page .wb-filter-more { color:var(--gr-accent,#e05a2b); }
.gr-catalog-page .wb-catalog-results .wb-products-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.gr-catalog-page .wb-catalog-results[data-wb-columns="3"] .wb-products-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.gr-catalog-page .wb-pagination-nav { margin:24px 0 0; }
.gr-catalog-page .wb-pagination { gap:6px; }
.gr-catalog-page .wb-pagination a,.gr-catalog-page .wb-pagination span { border-radius:4px; }
.gr-catalog-page .wb-pagination .selected a,.gr-catalog-page .wb-pagination .selected span { border-color:var(--gr-accent,#e05a2b); background:var(--gr-accent,#e05a2b); color:#fff; }
.gr-catalog-page .wb-subcategory-card__visual { aspect-ratio:4/3; border-radius:4px; background:#f3f1eb; }
.gr-catalog-page .wb-subcategory-card__visual img { object-fit:contain; }
.gr-catalog-page .wb-subcategories__heading { font:750 22px/1.3 Manrope,Arial,sans-serif; color:var(--gr-ink,#18211d); }
.gr-catalog-page .wb-subcategory-card__caption { color:var(--gr-ink,#18211d); }
.gr-catalog-help { display:flex; align-items:center; gap:22px; margin-top:32px; padding:26px 28px; border-radius:5px; background:var(--gr-forest,#23463a); color:#fff; }
.gr-catalog-help h2 { margin:0 0 6px; color:#fff; font:750 23px/1.3 Manrope,Arial,sans-serif; letter-spacing:-.025em; }
.gr-catalog-help p { margin:0; color:#e0eae3; font-size:14px; line-height:1.6; }
.gr-body .gr-catalog-help .wb-btn.wb-btn--ghost { flex:none; margin-left:auto; background:#fff; color:var(--gr-forest,#23463a); border-color:#fff; border-radius:4px; font:650 14px/1.4 Manrope,Arial,sans-serif; }
.gr-body .gr-catalog-help .wb-btn.wb-btn--ghost:hover { background:#edf2ed; color:var(--gr-forest,#23463a); border-color:#edf2ed; }
/* Shared product cards: catalog, home, search and native recommendation rails. */
.wb-product.gr-product-card { box-sizing:border-box; display:flex; flex-direction:column; border:1px solid var(--gr-line,#e1e5df); border-radius:5px; background:#fff; padding:0; min-width:0; box-shadow:none; }
.gr-product-card .wb-product__media { aspect-ratio:1/1; padding:12px 10px 4px; margin:0; border-radius:4px 4px 0 0; background:#fff; overflow:hidden; }
.gr-product-card .wb-card-gallery__link img { object-fit:contain; object-position:center; }
.gr-product-card .wb-product__body { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1fr); grid-template-areas:"brand brand" "name name" "article article" "stock stock" "base base" "bonus bonus" "price cart" "details details"; gap:5px 8px; flex:1; min-width:0; margin:0; padding:10px 12px 14px; }
.gr-product-card__brand { grid-area:brand; color:#69736b; font:500 11px/1.5 Manrope,Arial,sans-serif; text-transform:uppercase; letter-spacing:.045em; }
.gr-product-card .wb-product__name { grid-area:name; display:block; min-height:3em; margin:0; color:var(--gr-ink,#18211d); font:600 13px/1.5 Manrope,Arial,sans-serif; text-decoration:none; overflow-wrap:anywhere; }
.gr-product-card .wb-product__name:hover { color:var(--gr-accent,#e05a2b); }
.gr-product-card__article { grid-area:article; color:#737c76; font:400 11px/1.5 Manrope,Arial,sans-serif; overflow-wrap:anywhere; }
.gr-product-card .wb-product__availability { grid-area:stock; margin:0 0 3px; min-height:23px; }
.gr-product-card .wb-product__stock { margin:0; color:#35825b; font-size:11px; font-weight:500; }
.gr-product-card .wb-product__stock--unavailable { color:#71796f; }
.gr-product-card .wb-base-price { grid-area:base; font-size:11px; color:#68716a; margin:0; }
.gr-product-card .wb-product__bonus { grid-area:bonus; width:fit-content; margin:0 0 4px; color:var(--gr-forest,#23463a); background:#edf3ed; font-size:11px; }
.gr-product-card .wb-product__price-row { grid-area:price; align-self:end; min-height:42px; margin:0; padding:0; align-items:center; flex-wrap:wrap; gap:4px; }
.gr-product-card .wb-product__price-values { align-items:flex-start; flex-direction:column; gap:1px; }
.gr-product-card .wb-product__price { color:var(--gr-ink,#18211d); font-size:19px; font-weight:800; line-height:1.3; letter-spacing:-.035em; white-space:nowrap; }
.gr-product-card .wb-product__compare { color:#778077; font-size:11px; }
.gr-product-card .wb-product__saving { padding:3px 5px; background:#fff1e9; border-color:#f1d4c5; color:#b74720; border-radius:4px; font-size:10px; }
.gr-product-card .wb-product__saving-percent { border-color:#f1d4c5; font-size:11px; }
.gr-product-card .wb-product__meta { grid-area:cart; min-width:0; align-self:end; margin:0; padding:0; justify-content:flex-end; gap:4px; }
.gr-product-card .wb-card-cart { min-width:0; width:100%; }
.gr-product-card .wb-product__quick { box-sizing:border-box; display:inline-flex; justify-content:center; min-width:0; width:100%; min-height:42px; height:auto; gap:6px; padding:9px 7px; border-radius:4px; border:1px solid var(--gr-accent,#e05a2b); background:var(--gr-accent,#e05a2b); color:#fff; font:650 11px/1.4 Manrope,Arial,sans-serif; white-space:normal; }
.gr-product-card .wb-product__quick:hover { background:#c74720; border-color:#c74720; color:#fff; }
.gr-product-card .wb-product__quick svg { flex:none; width:17px; height:17px; }
.gr-product-card .wb-product__details { min-height:42px; display:inline-flex; justify-content:center; align-items:center; color:var(--gr-accent,#e05a2b); font-size:12px; }
.gr-product-card .wb-product__fav,.gr-product-card .wb-compare-toggle { box-sizing:border-box; position:absolute; z-index:4; top:7px; right:7px; display:inline-flex; justify-content:center; align-items:center; width:30px; height:32px; min-height:32px; padding:4px; border:0; border-radius:4px; background:#fff; color:#667269; font-size:25px; box-shadow:none; }
.gr-product-card .wb-compare-toggle { right:40px; font-size:12px; }
.gr-product-card .wb-compare-toggle span { display:none; }
.gr-product-card .wb-compare-toggle svg { width:17px; height:17px; }
.gr-product-card .wb-product__fav[aria-pressed=true],.gr-product-card .wb-compare-toggle[aria-pressed=true] { color:var(--gr-accent,#e05a2b); background:#fff1e9; }
.gr-product-card .wb-card-details { grid-area:details; margin-top:4px; }
.gr-product-card .wb-card-details__content { color:var(--gr-ink,#18211d); background:#fff; border-radius:0 0 5px 5px; }
.gr-product-card .wb-card-details__feature>dt,.gr-product-card .wb-card-details__article { color:#68756b; }
.gr-product-card .wb-card-details__article { display:none; }
.gr-product-card .wb-card-details__values>span { border-color:#d9e0d7; color:#3c5144; border-radius:4px; font-size:11px; }
.gr-product-card .wb-product__badge { left:10px; top:10px; background:#fff0e7; color:#c44c23; border-radius:3px; font-size:11px; }
.gr-product-card .wb-card-rating { color:#926315; }
.gr-product-card .wb-card-rating__stars { width:45px; height:10px; -webkit-mask-size:9px 10px; mask-size:9px 10px; }
.gr-product-card .wb-card-rating b { font-size:11px; }
.gr-catalog-page :is(a,button,input,summary):focus-visible,.gr-product-card :is(a,button):focus-visible,.gr-vehicle-finder :is(a,button,input):focus-visible { outline:2px solid var(--gr-accent,#e05a2b); outline-offset:3px; }
@media(max-width:1200px) {
 .gr-catalog-page .wb-catalog-layout { grid-template-columns:210px minmax(0,1fr); gap:20px; }
 .gr-catalog-page .wb-catalog-sidebar { padding-right:18px; }
 .gr-catalog-page .wb-catalog-results .wb-products-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:900px) {
 .gr-catalog-page .wb-catalog-layout { grid-template-columns:minmax(0,1fr); gap:18px; }
 .gr-catalog-page .wb-catalog-sidebar { border:0; padding:0; }
 .gr-category-nav { display:flex; overflow:auto; gap:4px; align-items:center; margin-bottom:16px; padding-bottom:10px; }
 .gr-category-nav h2 { display:none; }
 .gr-category-nav a { flex:none; padding:9px 12px; border:1px solid var(--gr-line,#e1e5df); border-radius:4px; background:#fff; }
 .gr-catalog-page .wb-catalog-filter-panel { padding:14px 16px; border:1px solid var(--gr-line,#e1e5df); border-radius:5px; background:#fff; }
 .gr-catalog-page .wb-filter-panel-title { padding:0; }
 .gr-catalog-page .wb-catalog-filter-panel[open] .wb-filter-panel-title { padding-bottom:14px; }
}
@media(max-width:640px) {
 .gr-catalog-page,.gr-search-page { padding-top:18px; }
 .gr-catalog-heading>p { font-size:14px; }
 .gr-vehicle-finder { padding:18px; margin-bottom:22px; }
 .gr-vehicle-finder__heading { flex-wrap:wrap; gap:10px; margin-bottom:14px; }
 .gr-vehicle-finder__heading>svg { width:30px; height:30px; }
 .gr-vehicle-finder h2 { font-size:16px; }
 .gr-vehicle-finder p { font-size:12px; }
 .gr-vehicle-finder__vin { flex-basis:100%; margin-left:40px; font-size:12px; }
 .gr-vehicle-finder__form { grid-template-columns:minmax(0,1fr); gap:9px; }
 .gr-vehicle-finder__form input { font-size:14px; }
 .gr-catalog-page .wb-catalog-toolbar--category { grid-template-columns:1fr; gap:10px; }
 .gr-catalog-page .wb-catalog-toolbar--category .wb-catalog-tools { justify-content:space-between; flex-wrap:wrap; }
 .gr-catalog-page .wb-catalog-selection { grid-column:auto; }
 .gr-catalog-page .wb-catalog-results .wb-products-grid,.gr-catalog-page .wb-catalog-results[data-wb-columns="3"] .wb-products-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .gr-catalog-page .wb-catalog-results[data-wb-mobile-columns="1"] .wb-products-grid { grid-template-columns:minmax(0,1fr); }
 .gr-product-card .wb-product__body { padding:8px 9px 12px; gap:4px; grid-template-areas:"brand brand" "name name" "article article" "stock stock" "base base" "bonus bonus" "price price" "cart cart" "details details"; }
 .gr-product-card .wb-product__name { font-size:12px; }
 .gr-product-card .wb-product__price-row { min-height:32px; }
 .gr-product-card .wb-product__price { font-size:18px; }
 .gr-product-card .wb-product__quick { min-height:42px; font-size:12px; }
 .gr-product-card .wb-product__availability { flex-wrap:wrap; }
 .gr-product-card .wb-card-rating { margin-left:0; }
 .gr-catalog-help { flex-wrap:wrap; gap:14px; padding:22px 18px; }
 .gr-catalog-help h2 { font-size:19px; }
 .gr-catalog-help p { font-size:13px; }
 .gr-catalog-help .wb-btn { margin:0; width:100%; }
}
