.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.shipping-promotion-banner{padding:.58rem 1rem;background:var(--navy);color:#fff;font-size:.84rem;font-weight:900;letter-spacing:.035em;text-align:center}.shipping-promotion-inline{margin:0 0 1.35rem;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--navy) 25%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--navy) 7%,#fff);color:var(--navy);font-weight:900;text-align:center}
.cart-benefit-bar{display:flex;align-items:center;justify-content:center;gap:clamp(1.4rem,5vw,5rem);padding:1rem clamp(1.2rem,5vw,4rem);background:var(--benefit-bg,#cf1030);color:var(--benefit-text,#fff)}.cart-benefit-item{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-width:0;font-size:clamp(.8rem,1.25vw,1rem);font-weight:850;text-align:center}.cart-benefit-item svg{width:25px;height:25px;flex:0 0 25px;fill:none;stroke:var(--benefit-icon,#fff);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.mobile-menu-benefits{display:grid;gap:.5rem;margin-top:1rem;padding:1rem;border-radius:10px;background:var(--benefit-bg,#cf1030);color:var(--benefit-text,#fff)}.mobile-menu-benefits .cart-benefit-item{justify-content:flex-start;min-height:40px;text-align:left}.mobile-menu-benefits .cart-benefit-item svg{width:22px;height:22px;flex-basis:22px}
.product-card,.carousel-product{position:relative}
.product-labels{position:absolute;z-index:6;top:12px;right:62px;display:flex;max-width:calc(100% - 76px);flex-direction:column;align-items:flex-end;gap:.38rem;pointer-events:none}.product-label{display:inline-flex;min-height:28px;align-items:center;padding:.36rem .62rem;border-radius:999px;box-shadow:0 4px 12px rgba(7,26,59,.18);font-size:.7rem;font-weight:950;letter-spacing:.055em;line-height:1.15;text-align:center;text-transform:uppercase}.product-label--new{background:var(--osh-label-new-bg,#123568);color:var(--osh-label-new-text,#fff)}.product-label--best-seller{background:var(--osh-label-best-bg,#f4c95d);color:var(--osh-label-best-text,#123568)}.product-label--last-stock{background:var(--osh-label-low-bg,#fff2bf);color:var(--osh-label-low-text,#6f3f00)}.product-label--sold-out{background:var(--osh-label-sold-bg,#e21f2f);color:var(--osh-label-sold-text,#fff)}.carousel-product .product-labels{right:12px}.product-detail-image-wrap .product-labels{right:62px}
.catalog-controls{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;margin:.2rem 0 1rem}.product-view-switch{display:flex;align-items:center;gap:.45rem;margin:0}.product-view-switch button{position:relative;display:block;width:42px;height:42px;padding:0;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);font-size:0;line-height:0;cursor:pointer;appearance:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.product-view-switch button>svg{position:absolute;top:50%;left:50%;display:block;width:21px;height:21px;margin:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transform:translate(-50%,-50%)}.product-view-switch button>svg rect{fill:none}.product-view-switch button::after{position:absolute;right:50%;bottom:calc(100% + 8px);z-index:20;padding:.38rem .52rem;border-radius:6px;background:var(--ink);color:#fff;content:attr(data-view-tooltip);font-size:.72rem;font-weight:800;line-height:1;letter-spacing:0;white-space:nowrap;opacity:0;pointer-events:none;transform:translate(50%,4px);transition:opacity .14s ease,transform .14s ease}.product-view-switch button:hover::after,.product-view-switch button:focus-visible::after{opacity:1;transform:translate(50%,0)}.product-view-switch button:hover,.product-view-switch button:focus-visible,.product-view-switch button[aria-pressed="true"]{border-color:var(--navy);background:var(--navy);color:#fff;outline:0}.product-grid.is-list{grid-template-columns:1fr}.product-grid.is-list .product-card{display:grid;grid-template-columns:minmax(190px,280px) minmax(0,1fr);align-items:stretch}.product-grid.is-list .product-image{height:100%;min-height:220px}.product-grid.is-list .product-card-body{align-self:center}.product-grid.is-list .product-labels{left:12px;right:auto;align-items:flex-start;max-width:calc(100% - 24px)}
.sale-ribbon{position:absolute;z-index:4;top:14px;left:-34px;width:132px;padding:.48rem .35rem;transform:rotate(-45deg);background:var(--osh-label-sale-bg,#e21f2f);box-shadow:0 5px 15px rgba(111,8,19,.28);color:var(--osh-label-sale-text,#fff);font-size:.78rem;font-weight:900;letter-spacing:.15em;text-align:center}
.breadcrumbs{width:min(1180px,calc(100% - 2.4rem));margin:0 auto;padding:1rem 0 0;color:var(--muted);font-size:.82rem}.breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.breadcrumbs li{display:flex;align-items:center;gap:.45rem}.breadcrumbs li+li::before{content:"\203A";color:#98a2b3;font-weight:900}.breadcrumbs a{color:var(--navy);font-weight:800;text-decoration:none}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{color:var(--red);text-decoration:underline;text-underline-offset:.2em}.breadcrumbs [aria-current="page"]{color:var(--muted);font-weight:700}
.product-media .breadcrumbs,.static-page>.breadcrumbs{width:100%;margin:0;padding:0 0 1rem}.product-detail-image-wrap{position:relative}
.product-detail{position:relative}.sale-ribbon-detail{top:2.9rem;left:-2.2rem}
.product-favorite{position:absolute;z-index:5;top:12px;right:12px;display:grid;width:44px;height:44px;padding:8px;place-items:center;border:0;background:transparent;color:var(--navy);cursor:pointer;filter:drop-shadow(0 2px 2px rgba(255,255,255,.95));touch-action:manipulation;transition:color .18s ease,transform .18s ease}
.product-favorite svg{width:100%;height:100%;overflow:visible;fill:transparent;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:fill .18s ease,transform .18s ease}.product-favorite:hover,.product-favorite:focus-visible{color:var(--red);transform:scale(1.12);outline:2px solid transparent}.product-favorite:hover svg,.product-favorite:focus-visible svg{fill:color-mix(in srgb,var(--red) 22%,transparent)}.product-favorite[aria-pressed="true"]{color:var(--red)}.product-favorite[aria-pressed="true"] svg{fill:currentColor}.product-favorite.is-cookie-disabled,.product-favorite.is-cookie-disabled:hover,.product-favorite.is-cookie-disabled:focus-visible{color:#8a8f98;cursor:not-allowed;filter:drop-shadow(0 1px 1px rgba(255,255,255,.9));transform:none}.product-favorite.is-cookie-disabled svg{fill:#d7d9dd}
.catalog-share{position:relative;top:auto;right:auto;align-self:center;margin:0}.catalog-share .product-share-panel{z-index:12}.product-card .product-favorite{right:12px}
.catalog-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-top:2rem}.catalog-pagination a{display:grid;place-items:center;min-width:44px;min-height:44px;padding:.55rem .8rem;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);font-weight:900;text-decoration:none;touch-action:manipulation}.catalog-pagination a:hover,.catalog-pagination a:focus-visible,.catalog-pagination a[aria-current="page"]{border-color:var(--navy);background:var(--navy);color:#fff}
.product-info-links{display:flex;align-items:center;gap:.55rem}.product-packaging-note{margin:-.55rem 0 1rem;color:var(--muted);font-size:.78rem}.policy-dialog-body h3{margin:0 0 .4rem;color:var(--navy)}.policy-dialog-body p{margin:.2rem 0 1.25rem}.policy-dialog-body p:last-child{margin-bottom:0}
.product-reviews{width:min(1180px,calc(100% - 2.4rem));margin:0 auto;padding:0 0 clamp(3rem,7vw,5rem)}.product-reviews-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line)}.product-reviews-heading h2{margin:.2rem 0 1rem;color:var(--navy);font-size:clamp(1.7rem,3vw,2.6rem)}.product-review-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin:1.4rem 0}.product-review{padding:1.2rem;border:1px solid var(--line);border-radius:14px;background:#fff}.product-review p{line-height:1.65}.product-review footer{color:var(--muted);font-weight:800}.review-stars{color:#d79b00;font-size:1.15rem;letter-spacing:.06em}.review-stars span{color:#c9ced8}.product-review-form{display:grid;gap:1rem;max-width:720px;margin-top:2rem;padding:clamp(1.2rem,4vw,2rem);border:1px solid var(--line);border-radius:16px;background:#fff}.product-review-form h3{margin:0;color:var(--navy)}.product-review-form>label,.review-name-fields label{display:grid;gap:.4rem;font-weight:800}.product-review-form textarea,.product-review-form input[type="text"],.review-name-fields input{width:100%;padding:.75rem;border:1px solid var(--line);border-radius:9px;font:inherit}.review-rating,.review-identity{display:flex;flex-wrap:wrap;gap:.65rem}.review-rating legend,.review-identity legend{width:100%;margin-bottom:.35rem;font-size:1rem;font-weight:900}.review-rating label{cursor:pointer}.review-rating input{position:absolute;opacity:0}.review-rating label span[aria-hidden="true"]{display:inline-flex;min-height:44px;align-items:center;padding:.4rem .65rem;border:1px solid var(--line);border-radius:8px;color:#a66f00;background:#fff;font-size:1.05rem}.review-rating input:checked+span,.review-rating input:focus-visible+span{border-color:var(--navy);box-shadow:0 0 0 2px color-mix(in srgb,var(--navy) 20%,transparent)}.review-name-fields{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.product-review-form>small{color:var(--muted)}
.site-header .account-avatar-link{display:inline-grid;place-items:center;width:38px;height:38px;flex:0 0 38px;padding:0;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);text-decoration:none;transition:color .18s ease,border-color .18s ease,background-color .18s ease,transform .18s ease}.site-header .account-avatar-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.site-header .account-avatar-link:hover,.site-header .account-avatar-link:focus-visible{border-color:var(--red);background:color-mix(in srgb,var(--red) 8%,#fff);color:var(--red);transform:translateY(-1px);outline:2px solid color-mix(in srgb,var(--red) 22%,transparent);outline-offset:2px}.site-header .account-avatar-link.is-authenticated{border-color:var(--navy);background:var(--navy);color:#fff}
.account-menu{position:relative;display:inline-flex}.account-menu-panel{position:absolute;top:calc(100% + .65rem);right:0;z-index:40;display:grid;width:190px;padding:.45rem;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 18px 45px rgba(7,26,59,.2);opacity:0;visibility:hidden;transform:translateY(-6px);pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s ease}.account-menu:hover .account-menu-panel,.account-menu:focus-within .account-menu-panel,.account-menu.is-open .account-menu-panel{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.site-header .account-menu-panel a,.site-header .account-menu-panel button{display:block;width:100%;padding:.68rem .75rem;border:0;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:.86rem;font-weight:800;text-align:left;text-decoration:none;cursor:pointer}.site-header .account-menu-panel a:hover,.site-header .account-menu-panel a:focus-visible,.site-header .account-menu-panel button:hover,.site-header .account-menu-panel button:focus-visible{background:color-mix(in srgb,var(--navy) 8%,#fff);color:var(--navy);outline:0}.account-menu-panel form{margin:0;border-top:1px solid var(--line);padding-top:.3rem}.site-header .account-menu-panel form button{color:var(--red)}
@media(max-width:1100px) and (orientation:landscape){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px) and (orientation:portrait){.product-grid{grid-template-columns:1fr}.product-grid.is-list .product-card{display:block}.product-grid.is-list .product-image{height:auto;min-height:0}.sale-ribbon-detail{top:2rem;left:-2rem}.product-reviews-heading{display:block}.review-name-fields{grid-template-columns:1fr}}
@media(orientation:portrait){.cart-benefit-bar{display:none}}
@media(hover:none),(pointer:coarse){.button,.menu-toggle,.mobile-cart-link,.account-avatar-link,.size-option,.product-thumbnail{min-width:44px;min-height:44px;touch-action:manipulation}}
.shop-catalog .section-heading h1 {
    margin: .2rem 0 1.5rem;
    color: var(--navy);
    font-size: clamp(2rem, 4vw, 3.7rem);
}

/* Pagination controls retain contrast independently of body-link theme colors. */
.site-main nav.catalog-pagination a,.site-main nav.catalog-pagination a:visited{background:#fff;color:#123568;border-color:#d8dde7;text-decoration:none}.site-main nav.catalog-pagination a:hover,.site-main nav.catalog-pagination a:focus-visible,.site-main nav.catalog-pagination a[aria-current="page"]{background:#123568;color:#fff;border-color:#123568;text-decoration:none}.site-main nav.catalog-pagination a:focus-visible{outline:3px solid #7d91ae;outline-offset:3px}

/* Public links use hover feedback without text underlines. */
body a,body a:link,body a:visited,body a:hover,body a:active,body a:focus-visible{text-decoration:none!important}
body a:not([aria-disabled="true"]){transition:color .16s ease,background-color .16s ease,filter .16s ease}
body a:not([aria-disabled="true"]):hover{filter:brightness(.82)}
body a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(prefers-reduced-motion:reduce){body a:not([aria-disabled="true"]){transition:none}}
