/* One compact card hierarchy across Campaign, native Woo and recommendation rails. */
html[data-kb-theme] body.kb-storefront #main :is(.kbcs .kbcs-layout-grid .kbcs-product-copy,.products.row>.product-small.col .box-text,.kb-recs-strips .kb-recs-b){
 display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 24px minmax(0,1fr) auto;gap:6px;align-items:start;align-content:start;min-width:0;padding:14px;text-align:left;font-size:17px;
}
html[data-kb-theme] body.kb-storefront #main .products.row>.product-small.col :is(.title-wrapper,.price-wrapper){display:contents;margin:0;padding:0}
html[data-kb-theme] body.kb-storefront #main :is(.kbcs .kbcs-layout-grid .kbcs-product-copy h3,.products.row>.product-small.col .product-title,.kb-recs-strips .kb-recs-copy-link){
 grid-row:1;min-width:0;min-height:1.3em;margin:0;padding:0;font-size:17px;line-height:1.3;font-weight:700;
}
html[data-kb-theme] body.kb-storefront #main :is(.kbcs .kbcs-layout-grid .kbcs-product-copy h3 a,.products.row>.product-small.col .product-title a,.kb-recs-nm){
 display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.3;font-size:inherit;font-weight:700;color:var(--kb-site-ink)!important;text-decoration:none;
}
html[data-kb-theme] body.kb-storefront #main .kb-tile-reviews{grid-row:2;display:flex;align-items:center;gap:6px;min-width:0;min-height:24px;width:max-content;max-width:100%;margin:0;padding:0;color:var(--kb-site-muted)!important;font-size:12px;line-height:1.4;font-weight:400;text-decoration:none}
html[data-kb-theme] body.kb-storefront #main a.kb-tile-reviews:is(:hover,:focus-visible){color:var(--kb-site-link,var(--kb-site-accent))!important;text-decoration:underline;text-underline-offset:3px}
html[data-kb-theme] body.kb-storefront #main .kb-tile-reviews .star-rating{display:block;float:none;flex:none;margin:0;font-size:12px;height:1em;line-height:1;color:#b87916}
html[data-kb-theme] body.kb-storefront #main .kb-tile-reviews .star-rating span:before{color:#b87916}
html[data-kb-theme=night] body.kb-storefront #main .kb-tile-reviews .star-rating,html[data-kb-theme=night] body.kb-storefront #main .kb-tile-reviews .star-rating span:before{color:#e3b45e}
html[data-kb-theme] body.kb-storefront #main .kb-tile-price-row{grid-row:3;display:flex;flex-wrap:wrap;align-items:flex-end;align-content:start;gap:4px 8px;margin:0;min-width:0;max-width:100%;font-size:16px;line-height:1.35}
html[data-kb-theme] body.kb-storefront #main .kb-tile-price-row :is(.kbcs-price,.price,.kb-recs-pr){flex:0 1 auto;min-width:0;max-width:100%;margin:0!important;padding:0!important;font-size:16px;line-height:1.35;color:var(--kb-site-ink)!important;text-decoration:none!important;font-weight:700}
html[data-kb-theme] body.kb-storefront #main .kb-tile-price-row del{display:block;color:var(--kb-site-muted);font-size:.85em;font-weight:400;opacity:1;line-height:1.35}
html[data-kb-theme] body.kb-storefront #main .kb-tile-price-row ins{display:inline;background:none;text-decoration:none}
html[data-kb-theme] body.kb-storefront #main .kb-tile-price-row .amount{white-space:nowrap}
html[data-kb-theme] body.kb-storefront #main .kb-tile-grade,html[data-kb-theme] body.kb-storefront .kb-search-host .kb-tile-grade{display:inline-flex;align-items:center;flex:0 0 auto;max-width:100%;padding:3px 8px;margin:0;border:0;border-radius:6px;background:#e2ebdf;color:#2f553c;font-size:11px;line-height:1.35;font-weight:600;white-space:normal;overflow-wrap:anywhere;letter-spacing:.01em}
html[data-kb-theme=night] body.kb-storefront #main .kb-tile-grade,html[data-kb-theme=night] body.kb-storefront .kb-search-host .kb-tile-grade{background:#2b403b;color:#c2dfce}
html[data-kb-theme] body.kb-storefront #main :is(.kbcs .kbcs-layout-grid .kbcs-product-copy>.kbcs-product-button,.products.row>.product-small.col .add-to-cart-button,.kb-recs-strips .kb-recs-b>.kb-recs-btn,.kb-tile-simple-actions){grid-row:4;align-self:end;justify-self:start;margin:0!important}
html[data-kb-theme] body.kb-storefront #main :is(.kbcs .kbcs-layout-grid .kbcs-product-copy>.kbcs-product-button,.products.row>.product-small.col .add-to-cart-button a,.kb-recs-strips .kb-recs-btn){font-size:14px;line-height:1.4;min-height:44px;padding:10px 20px;margin:0!important;width:auto}
html[data-kb-theme] body.kb-storefront #main .kb-tile-simple-actions{display:grid;gap:4px}
html[data-kb-theme] body.kb-storefront #main .kb-tile-simple-actions .kb-recs-details{min-height:24px;font-size:12px;margin:0}
html[data-kb-theme] body.kb-storefront #main .kb-recs-strips .kb-recs-card{position:relative}
html[data-kb-theme] body.kb-storefront #main .kb-recs-strips .kb-recs-image-link{display:block;position:relative;aspect-ratio:1;overflow:hidden}
html[data-kb-theme] body.kb-storefront #main .kb-recs-strips .kb-recs-image-link img{width:100%;height:100%;object-fit:contain;aspect-ratio:1}
html[data-kb-theme] body.kb-storefront #main :is(.kbcs-product-media>.kbcs-product-reason,.kb-recs-image-link>.kb-recs-reason){position:absolute;bottom:8px;left:8px;top:auto;margin:0;max-width:calc(100% - 16px);padding:3px 7px;border-radius:5px;background:var(--kb-site-paper);color:var(--kb-site-ink);font-size:11px;line-height:1.4}
html[data-kb-theme] body.kb-storefront #main :is(#reviews,#review_form){scroll-margin-top:calc(var(--kb-ui-header-bottom,100px) + 16px)}
body.kb-storefront .kb-search-option-title .kb-tile-grade{margin-left:8px!important}
body.kb-storefront .kb-search-host a.kb-search-unrated{display:inline-flex;min-height:24px;align-items:center;color:var(--kb-site-muted);font-size:12px;text-decoration:underline;text-underline-offset:3px}
/* The launcher grows into its available column instead of adding a divider. */
html[data-kb-theme] body.kb-storefront #main .kbcs-discovery-home .kbcs-launcher-previews{border:0;padding-left:6px;padding-right:4px}
html[data-kb-theme] body.kb-storefront #main .kbcs-discovery-home .kbcs-launcher-copy h2{font-size:clamp(26px,2.4vw,34px);line-height:1.15;margin-bottom:6px}
html[data-kb-theme] body.kb-storefront #main .kbcs-discovery-home .kbcs-launcher-copy p{font-size:clamp(16px,1.4vw,18px);line-height:1.4}
html[data-kb-theme] body.kb-storefront #main .kbcs.kbcs-discovery-home #kbcs-featured-products.kbcs-discovery-launcher a.kbcs-launcher-button{min-height:52px;font-size:17px;padding:14px 24px;gap:16px;line-height:1.3}
@media(max-width:700px){
 html[data-kb-theme] body.kb-storefront #main :is(.kbcs .kbcs-layout-grid .kbcs-product-copy,.products.row>.product-small.col .box-text,.kb-recs-strips .kb-recs-b){padding:10px;gap:5px;font-size:15px;grid-template-rows:auto 24px minmax(0,1fr) auto}
 html[data-kb-theme] body.kb-storefront #main :is(.kbcs .kbcs-layout-grid .kbcs-product-copy h3,.products.row>.product-small.col .product-title,.kb-recs-strips .kb-recs-copy-link){font-size:15px}
 html[data-kb-theme] body.kb-storefront #main .kb-tile-price-row :is(.kbcs-price,.price,.kb-recs-pr){font-size:14px}
 html[data-kb-theme] body.kb-storefront #main .kb-tile-grade{font-size:10px;padding:3px 6px}
 html[data-kb-theme] body.kb-storefront #main :is(.kbcs .kbcs-layout-grid .kbcs-product-copy>.kbcs-product-button,.products.row>.product-small.col .add-to-cart-button,.kb-recs-strips .kb-recs-b>.kb-recs-btn,.kb-tile-simple-actions){justify-self:stretch;width:100%}
 html[data-kb-theme] body.kb-storefront #main :is(.kbcs .kbcs-layout-grid .kbcs-product-copy>.kbcs-product-button,.products.row>.product-small.col .add-to-cart-button a,.kb-recs-strips .kb-recs-btn){display:flex;width:100%;padding:10px 12px;font-size:14px}
 html[data-kb-theme] body.kb-storefront #main .kbcs-discovery-home .kbcs-launcher-copy h2{font-size:22px;line-height:1.2}
 html[data-kb-theme] body.kb-storefront #main .kbcs-discovery-home .kbcs-launcher-copy p{font-size:15px}
 html[data-kb-theme] body.kb-storefront #main .kbcs.kbcs-discovery-home #kbcs-featured-products.kbcs-discovery-launcher a.kbcs-launcher-button{font-size:16px;min-height:50px;padding:12px 16px}
}
@media(forced-colors:active){html[data-kb-theme] body.kb-storefront #main .kb-tile-grade{background:Canvas;color:CanvasText;border:1px solid CanvasText}}
/* Stock state uses colour, border pattern and native text; OOS remains selectable. */
html[data-kb-theme] body.kb-storefront .kb-variation-choices .kb-variation-choice{background:#f2f8f0;color:#173e2b;border:2px solid #6a8c75;opacity:1;box-shadow:none}
html[data-kb-theme] body.kb-storefront .kb-variation-choices .kb-variation-choice.is-out-of-stock{background:#efe4df;color:#6d463e;border:2px dashed #9d7a6c;opacity:1}
html[data-kb-theme] body.kb-storefront .kb-variation-choices .kb-variation-choice[aria-checked=true]{background:#2f6b4e;color:#fff;border:2px solid #214e39;box-shadow:inset 0 0 0 1px #ffffff55}
html[data-kb-theme] body.kb-storefront .kb-variation-choices .kb-variation-choice.is-out-of-stock[aria-checked=true]{background:#82584f;color:#fff;border:2px dashed #5d3831;box-shadow:none}
html[data-kb-theme=night] body.kb-storefront .kb-variation-choices .kb-variation-choice{background:#1b3f32;color:#d3eadb;border-color:#6caa88}
html[data-kb-theme=night] body.kb-storefront .kb-variation-choices .kb-variation-choice.is-out-of-stock{background:#402a2d;color:#f1d5d2;border-color:#b57d79}
html[data-kb-theme=night] body.kb-storefront .kb-variation-choices .kb-variation-choice[aria-checked=true]{background:#9acdb1;color:#10251a;border-color:#d3eadb;box-shadow:none}
html[data-kb-theme=night] body.kb-storefront .kb-variation-choices .kb-variation-choice.is-out-of-stock[aria-checked=true]{background:#7b454d;color:#fff4f3;border-color:#e3b0b2;box-shadow:none}
html[data-kb-theme] body.kb-storefront .kb-variation-choices .kb-variation-choice:disabled{background:#e7e7e2;color:#63675f;border:2px dotted #9fa49b;opacity:1;box-shadow:none}
html[data-kb-theme=night] body.kb-storefront .kb-variation-choices .kb-variation-choice:disabled{background:#293136;color:#bbc4c7;border-color:#77868b}
html[data-kb-theme] body.kb-storefront .kb-variation-choice-stock{color:inherit!important;font-weight:500;opacity:1}
@media(forced-colors:active){html[data-kb-theme] body.kb-storefront .kb-variation-choices .kb-variation-choice{background:Canvas;color:CanvasText;border-color:ButtonText}html[data-kb-theme] body.kb-storefront .kb-variation-choices .kb-variation-choice[aria-checked=true]{background:Highlight;color:HighlightText;border-color:Highlight}}

/* The native formatter already inserts a break after del; block del supplies it. */
html[data-kb-theme] body.kb-storefront #main .kb-tile-price-row del+br{display:none}
html[data-kb-theme] body.kb-storefront #main .kb-tile-price-row :is(.price,.kbcs-price,.kb-recs-pr){line-height:1.3!important}

/* Theme the result rows too: Search deliberately supplies white row surfaces. */
html[data-kb-theme] body.kb-storefront .kb-search-completions :is(a[role=option],button[role=option]){background:var(--kb-site-paper)!important;color:var(--kb-site-ink)!important}
html[data-kb-theme] body.kb-storefront .kb-search-completions :is(a[role=option],button[role=option]):is(:hover,:focus-visible,[aria-selected=true]){background:var(--kb-site-tonal)!important;color:var(--kb-site-ink)!important}
html[data-kb-theme] body.kb-storefront .kb-search-completions .kb-search-completion-all{border-top-color:var(--kb-site-line)}
html[data-kb-theme] body.kb-storefront .kb-search-completions .kb-search-completion-name{color:inherit!important}
html[data-kb-theme] body.kb-storefront .kb-search-completions small{color:var(--kb-site-muted)!important}
/* Selection is already represented by the checked radio; keep only its live announcement. */
html[data-kb-theme] body.kb-storefront .kb-variation-choices .kb-variation-caption{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
html[data-kb-theme] body.kb-storefront form.kb-variation-choices-ready .variations tr{position:relative}
html[data-kb-theme] body.kb-storefront form.kb-variation-choices-ready .variations th.label{padding-right:64px}
html[data-kb-theme] body.kb-storefront form.kb-variation-choices-ready .variations td.value{position:static!important}
html[data-kb-theme] body.kb-storefront form.kb-variation-choices-ready .variations .reset_variations{position:absolute!important;top:-12px!important;right:0!important;bottom:auto!important;left:auto!important;min-height:44px;min-width:52px;justify-content:center;line-height:1.2;font-size:12px;margin:0;padding:0 4px}
