/* Non-layout-shifting polish. Main V11.2 design, colours, geometry and placement are intentionally unchanged. */
.button.primary,.nav-link,.category-chip,.product-card,.site-header .icon-button{transition-property:background-color,color,border-color,box-shadow,transform;transition-duration:.18s;transition-timing-function:ease-out}
.button.primary{box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 5px 14px rgba(4,37,55,.09)}
.button.primary:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 9px 24px rgba(4,37,55,.18)}
.product-card:hover,.product-card:focus-within{box-shadow:0 15px 36px rgba(12,46,63,.12)}
.site-header .nav-link:focus-visible,.product-card button:focus-visible{outline:2px solid #168ba4;outline-offset:3px}
.site-header .brand-mark img{filter:drop-shadow(0 2px 3px rgba(3,47,65,.1))}
@media(prefers-reduced-motion:reduce){.button.primary,.nav-link,.category-chip,.product-card,.site-header .icon-button{transition:none!important;transform:none!important}}
.product-media::after{content:"";pointer-events:none;position:absolute;inset:0;background:linear-gradient(120deg,transparent 34%,rgba(255,255,255,.14) 50%,transparent 66%);opacity:0;transition:opacity .2s ease}
.product-card:hover .product-media::after,.product-card:focus-within .product-media::after{opacity:1}
@media(prefers-reduced-motion:reduce){.product-media::after{transition:none}}

/* Staging fixes: clearly separate guest checkout title and explanation. */
.cart-checkout-assurance-v102{display:flex;align-items:flex-start;gap:8px}
.cart-checkout-assurance-v102>span{display:flex;flex-direction:column;gap:4px;min-width:0}
.cart-checkout-assurance-v102>span>strong,.cart-checkout-assurance-v102>span>small{display:block;line-height:1.45}
.cart-checkout-assurance-v102>span>small{white-space:normal}
.payment-option.card-payment:has(input:disabled){opacity:.6;cursor:not-allowed}
