/* Shared storefront refinements, loaded after the active app theme. */
.wb-body .wb-ui-arrow { display:inline-block; flex:none; width:18px; height:18px; vertical-align:-4px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.wb-body .wb-region-dialog__head { align-items:center; margin-bottom:24px; gap:14px; }
.wb-body .wb-region-dialog h2 { margin:0; }
.wb-body .wb-region-dialog__head .wb-contact-panel__close { margin:0; }
.wb-body .wb-region-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
.wb-body .wb-region-choice { align-items:center; min-width:0; }
.wb-body .wb-region-choice svg { flex:none; width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.wb-body .wb-contact-panel__head { display:grid; grid-template-columns:28px minmax(0,1fr) 28px; align-items:center; }
.wb-body .wb-contact-panel__head .wb-contact-panel__eyebrow { grid-column:2; padding-top:5px; text-align:center; }
.wb-body .wb-contact-panel__head .wb-contact-panel__close { margin:0; }
.wb-body .wb-messenger { flex:none; }
.wb-body .wb-messenger .wb-messenger__max { display:block; flex:none; width:18px; height:18px; overflow:visible; }
.wb-body .wb-brand-catalog .wb-brand-hero { display:block; padding-block:22px 32px; }
.wb-body .wb-brand-catalog .wb-brand-hero--categories { display:grid; grid-template-columns:minmax(240px,.8fr) minmax(0,1.65fr); align-items:start; gap:40px; }
.wb-body .wb-brand-hero__intro { min-width:0; max-width:560px; }
.wb-body .wb-brand-hero__logo { display:block; width:230px; max-width:100%; height:90px; object-fit:contain; object-position:left center; margin-bottom:22px; }
.wb-body .wb-brand-hero__intro .wb-prose { margin:14px 0 0; }
.wb-body .wb-brand-categories { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:18px; min-width:0; }
.wb-body .wb-brand-category { min-width:0; padding:14px; border:1px solid #dceae4; border-radius:12px; background:#fffaf8; }
.wb-body .wb-brand-category__main { display:flex; align-items:center; gap:12px; font:600 15px/1.45 Manrope,Arial,sans-serif; color:#366d54; }
.wb-body .wb-brand-category__main img { display:block; flex:none; width:62px; height:82px; border-radius:7px; object-fit:cover; }
.wb-body .wb-brand-category__main > span { flex:1; min-width:0; overflow-wrap:anywhere; }
.wb-body .wb-brand-category__main small { display:block; margin-top:6px; color:#7c988b; font:400 11px/1.5 Manrope,Arial,sans-serif; }
.wb-body .wb-brand-category__main svg { width:17px; height:17px; flex:none; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.wb-body .wb-brand-category ul { display:grid; gap:8px; padding:0; margin:15px 0 0; list-style:none; }
.wb-body .wb-brand-category ul ul { margin:9px 0 0 10px; padding-left:10px; border-left:1px solid #d1e4db; }
.wb-body .wb-brand-category li { font:400 12px/1.55 Manrope,Arial,sans-serif; color:#648878; }
.wb-body .wb-brand-category a:hover { color:#366f55; text-decoration:underline; text-underline-offset:3px; }
.wb-body .wb-product-page .product-groups:not(:empty) { padding-top:20px; border-top:1px solid #d4e6de; }
.wb-body .wb-product-toolbar__cover { display:block; flex:none; width:45px; height:60px; border-radius:7px; overflow:hidden; background:#f6efeb; }
.wb-body .wb-product-toolbar__cover img { display:block; width:100%; height:100%; object-fit:cover; object-position:center top; }
.wb-body .wb-review-page__layout { grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr); gap:38px; }
.wb-body .wb-review-page__aside { position:static; min-width:0; padding:28px; }
.wb-body .wb-review-form__additional { display:flex; flex-direction:column; gap:18px; }
.wb-body .wb-review-form__additional textarea { min-height:104px; }
.wb-body .wb-review-form__recommend { flex-direction:row; align-items:flex-start; gap:10px; cursor:pointer; }
.wb-body .wb-review-form__recommend input { flex:none; width:18px; height:18px; margin:2px 0 0; accent-color:#4d8b6f; }
.wb-body [data-wb-pointer-focus]:focus { outline:none!important; }
.wb-body .wb-buy-form .wb-sku-options[hidden] { display:none!important; }
.wb-body .wb-seofilter-links { margin-block:40px 42px; }
.wb-body .wb-subcategories:has(+ [data-wb-seofilter-links-slot] .wb-seofilter-links) { margin-bottom:40px; }
.wb-body .wb-category-page > [data-wb-seofilter-links-slot]:has(.wb-seofilter-links) + .wb-catalog-layout { margin-top:42px; }
/* Both rails use a compact extension. Its clipping allowance is fully offset,
   never turned into permanent blank space between the sections. */
.wb-body .wb-home-products { padding-block:40px; }
.wb-body .wb-product-heading .wb-product-actions,.wb-body .wb-product-heading .wb-product-action,.wb-body .wb-product-heading .wb-product-rating a { font-size:13px; }
@media(min-width:801px) and (hover:hover) and (pointer:fine) {
 .wb-body :is(.wb-home-products,.wb-detail-products) { position:relative; }
 .wb-body :is(.wb-home-products,.wb-detail-products):has(.wb-product:is(:hover,:focus-within)) { z-index:3; }
 .wb-body .wb-detail-products .wb-product-track { margin-bottom:calc(12px - var(--wb-rail-detail-space,130px)); }
 .wb-body .wb-product--catalog:has(.wb-card-details)::before { box-shadow:0 0 7px #28493a0d; }
 .wb-body .wb-card-details__content { box-shadow:0 5px 6px -4px #28493a18; }
 .wb-body :is(.wb-home-products,.wb-detail-products) .wb-card-details__content { display:flex; flex-wrap:wrap; align-items:center; gap:7px 10px; padding-bottom:10px; }
 .wb-body :is(.wb-home-products,.wb-detail-products) .wb-card-details__sizes { gap:4px; font-size:13px; }
 .wb-body :is(.wb-home-products,.wb-detail-products) .wb-card-details__sizes > span { min-width:27px; padding:3px 5px; }
 .wb-body :is(.wb-home-products,.wb-detail-products) .wb-card-details__article { margin:0; font-size:11px; }
 .wb-body :is(.wb-home-products,.wb-detail-products) .wb-card-split { flex-basis:100%; min-width:0; margin:0; padding-top:6px; }
}
@media(min-width:1101px) { .wb-body .wb-favorites-page .wb-products-grid { grid-template-columns:repeat(5,minmax(0,1fr)); } }
@media(min-width:901px) and (max-width:1100px) { .wb-body .wb-review-page__layout { grid-template-columns:minmax(0,1fr) minmax(380px,1fr); gap:26px; } }
@media(max-width:900px) {
 .wb-body .wb-brand-catalog .wb-brand-hero--categories { grid-template-columns:minmax(0,1fr); gap:26px; }
 .wb-body .wb-review-page__layout { grid-template-columns:minmax(0,1fr); gap:30px; }
 .wb-body .wb-product-page { padding-top:13px; }
 .wb-body .wb-product-page [data-wb-mobile-gallery][hidden],.wb-body .wb-product-page [data-wb-photo-grid][hidden] { display:none!important; }
}
@media(max-width:860px) {
 .wb-body .wb-header { box-shadow:0 4px 13px #2a4f3e12; }
 .wb-body--mobile-navigation .wb-topbar__left,.wb-body--mobile-navigation .wb-topbar__contacts { font-size:13px; }
}
@media(max-width:800px) {
 .wb-body .wb-catalog-results:not([data-wb-mobile-columns="1"]) .wb-product--catalog { border:1px solid #dceae4; border-radius:12px; background:#fffdfa; overflow:visible; }
 .wb-body .wb-catalog-results:not([data-wb-mobile-columns="1"]) .wb-product--catalog .wb-product__media { border-radius:11px 11px 0 0; }
 .wb-body .wb-catalog-results:not([data-wb-mobile-columns="1"]) .wb-product--catalog .wb-product__body { padding:10px 9px 12px; }
 .wb-body .wb-product--catalog .wb-product__name { min-height:0; margin-bottom:0; }
 .wb-body .wb-product--catalog .wb-product__price-row { min-height:0; margin-top:6px; align-items:flex-start; }
}
@media(max-width:700px) {
 .wb-body .wb-seofilter-links { margin-block:30px 32px; }
 .wb-body .wb-subcategories:has(+ [data-wb-seofilter-links-slot] .wb-seofilter-links) { margin-bottom:30px; }
 .wb-body .wb-category-page > [data-wb-seofilter-links-slot]:has(.wb-seofilter-links) + .wb-catalog-layout { margin-top:32px; }
}
@media(max-width:650px) {
 .wb-body .wb-home-products { padding-block:28px; }
 .wb-body .wb-detail-products [data-wb-product-track] { touch-action:pan-y pinch-zoom; }
 .wb-body .wb-detail-products .wb-product--catalog { border:1px solid #dceae4; border-radius:12px; background:#fffdfa; }
 .wb-body .wb-detail-products .wb-product--catalog .wb-product__media { border-radius:11px 11px 0 0; }
 .wb-body .wb-detail-products .wb-product--catalog .wb-product__body { padding:10px 9px 12px; }
}
@media(max-width:640px) {
 .wb-body .wb-brand-categories { grid-template-columns:minmax(0,1fr); gap:12px; }
 .wb-body .wb-brand-category__main img { width:54px; height:72px; }
 .wb-body .wb-region-dialog { padding:24px 18px; }
 .wb-body .wb-region-dialog__head { margin-bottom:22px; }
 .wb-body .wb-region-list { gap:9px; }
 .wb-body .wb-region-choice { padding:12px 9px; gap:5px; font-size:12px; line-height:1.45; }
 .wb-body .wb-region-choice svg { width:15px; height:15px; }
}
@media(max-width:380px) { .wb-body .wb-review-page__aside { padding:21px 18px; }.wb-body .wb-region-dialog h2 { font-size:28px; }.wb-body .wb-product-heading .wb-product-actions,.wb-body .wb-product-heading .wb-product-action,.wb-body .wb-product-heading .wb-product-rating a { font-size:12px; } }
