/* A shared finish for buying, browsing and account tools. */
:root{--premium-edge:#9ddbee33;--premium-radius:22px;--premium-copy:#bdd0dc}
.premium-panel{border:1px solid var(--premium-edge);border-radius:var(--premium-radius);background:linear-gradient(135deg,#1a3544d9,#0d202de8);box-shadow:inset 0 1px #d6f2ff18,0 18px 48px #00101c30;padding:32px}
.button{min-height:48px;border-radius:12px;line-height:1.4;transition:background .2s,box-shadow .2s,transform .2s}
.button:active:not(:disabled){transform:translateY(1px)}
.button:disabled{box-shadow:none;cursor:not-allowed}
.section-heading{gap:24px}.section-heading h2{margin-bottom:0}
p{ text-wrap:pretty }
.product-page{grid-template-columns:minmax(0,1.03fr) minmax(0,1fr);gap:clamp(32px,4vw,64px);align-items:start}
.product-page .detail-gallery{position:sticky;top:125px;min-width:0}
.product-page .detail-image{height:clamp(440px,43vw,610px);border-radius:26px;border-color:#94d8eb45;box-shadow:inset 0 1px #e2f9ff33,0 26px 70px #00132450}
.product-page .detail-image:not(:has(img[src$=".jpg"])){background:radial-gradient(ellipse at 48% 42%,#1e5671ad,transparent 65%),linear-gradient(145deg,#142b3cdd,#091723ee)}
.product-page .detail-image .small-badge{font-size:10px;font-weight:800;padding:8px 11px;letter-spacing:.06em}
.product-page .image-note{font-size:11px;line-height:1.75;color:var(--premium-copy);padding:15px 4px}
.product-page .detail-copy{padding-top:8px;min-width:0}
.product-page .detail-copy .eyebrow{font-size:10px;line-height:1.8;letter-spacing:.1em}
.product-page .detail-copy h1{color:#eff7fc;margin:18px 0 14px;max-width:16ch;text-wrap:balance}
.product-page .detail-tagline{font-size:15px;line-height:1.7;color:#c4d7e3;margin:0}
.product-page .detail-badges{gap:8px;margin:22px 0}
.product-page .detail-badges span{font-size:11px;padding:8px 12px;background:#b3dff00a;border-color:#8ec0d040;color:#d3e6ee;font-weight:600}
.product-page .product-description{font-size:14px;line-height:1.85;color:var(--premium-copy);max-width:58ch;margin-bottom:26px}
.purchase-panel{border:1px solid #d7b86b52;background:linear-gradient(130deg,#b88c3b13,#1b3a4c9c 65%);border-radius:20px;padding:24px;box-shadow:inset 0 1px #ffe2a821}
.purchase-panel>.eyebrow{color:#e7cf93}
.purchase-panel .purchase-price{margin:14px 0 22px;gap:16px;justify-content:space-between;flex-wrap:wrap}
.purchase-panel .purchase-price strong{font-size:36px;color:#f9e3aa;font-weight:800}
.purchase-panel .stock-label{font-size:11px}
.purchase-panel .purchase-buttons .button{min-height:52px;font-size:13px}
.purchase-panel .size-picker{flex-wrap:wrap;gap:10px}
.purchase-panel .size-picker legend{font-size:13px;line-height:1.6}
.purchase-panel .size-picker legend span{font-size:11px}
.purchase-panel .size-picker label>span{min-height:46px;display:grid;place-items:center;font-size:13px;padding:10px 15px}
.product-page .purchase-note{font-size:11px;line-height:1.7;padding:17px 0;color:#b3cbd7}
.product-page .product-facts{padding:24px;border:1px solid #8fbfce30;border-radius:20px;background:#102636b5;margin-top:24px}
.product-page .product-facts h2{font-size:23px;margin:0 0 18px}
.product-page .product-facts dl>div{font-size:12px;padding:12px 0;line-height:1.7}
.product-page .product-facts dt{color:#aac5d4}.product-page .product-facts dd{color:#e2edf3;max-width:65%}
.product-card .product-meta{font-size:10px;line-height:1.7;color:#a9c3d2}
.product-card .product-title{display:block;margin-top:9px;margin-bottom:7px;min-height:2.9em}
.product-card .product-bottom{padding-top:14px;gap:8px}
.product-card .product-bottom strong{font-weight:800}
.product-card .quick-add{min-height:44px}
#overlay .dialog-heading h2{line-height:1.2}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .product-page .image-expand:hover{transform:scale(1.06);background:#244b60}
 .button:hover:not(:disabled){box-shadow:0 8px 24px #061c2b44}
}
@media(max-width:1000px) and (min-width:761px){
 .product-page{gap:26px}.purchase-panel{padding:18px}.purchase-panel .purchase-price strong{font-size:30px}
 .product-page .detail-copy h1{font-size:34px}.product-page .detail-image{height:440px;padding:35px}
}
@media(max-width:760px){
 .premium-panel{padding:23px;border-radius:18px}
 .product-page{grid-template-columns:minmax(0,1fr);gap:24px}
 .product-page .detail-gallery{position:static}
 .product-page .detail-image{height:clamp(320px,94vw,480px);padding:42px;border-radius:22px}
 .product-page .image-note{font-size:10px;margin:0;padding:12px 2px}
 .product-page .detail-copy{padding:0 2px}
 .product-page .detail-copy h1{font-size:clamp(31px,8.2vw,43px);margin:15px 0 12px}
 .product-page .detail-tagline{font-size:14px}.product-page .product-description{font-size:14px;line-height:1.85}
 .product-page .detail-badges{margin:18px 0}.product-page .detail-badges span{font-size:11px}
 .purchase-panel{padding:20px;border-radius:18px}.purchase-panel .purchase-price strong{font-size:32px}
 .purchase-panel .stock-label{font-size:11px}
 .purchase-panel .purchase-buttons .button{min-height:50px;font-size:12px}
 .product-page .product-facts{padding:20px}.product-page .product-facts h2{font-size:22px}
 .product-card .product-title{font-size:13px;line-height:1.5;min-height:3em}
 .product-card .product-meta{font-size:10px}
 .product-card .product-bottom{flex-wrap:wrap;row-gap:2px}
 .mobile-purchase{border-radius:17px;box-shadow:0 -10px 45px #03142380,inset 0 1px #e2f9ff20}
 .mobile-purchase strong{font-size:21px}.mobile-purchase small{font-size:10px}
 .mobile-purchase .button{min-height:48px}
 .page-intro p{font-size:13px;line-height:1.8;max-width:55ch}
 .account-tabs a{font-weight:700}
}
@media(forced-colors:active){
 .premium-panel,.purchase-panel,.product-page .product-facts{background:Canvas;border:1px solid CanvasText;box-shadow:none}
 .purchase-panel .purchase-price strong,.product-page :is(p,dt,dd,span){color:CanvasText}
}
@media(max-width:760px){
 /* Put product identity above the photograph without duplicating heading content. */
 .product-page{display:flex;flex-direction:column;gap:0}
 .product-page .detail-copy{display:contents}
 .product-page .detail-copy>*{order:4;width:100%}
 .product-page .detail-copy>.eyebrow{order:0}
 .product-page .detail-copy>h1{order:1;max-width:none}
 .product-page .detail-copy>.detail-tagline{order:2;margin-bottom:24px}
 .product-page .detail-gallery{order:3;width:100%}
 .product-page .purchase-panel{margin-top:0}
 .product-page .compare-button{margin-top:14px}
}
.product-page .source-comparison{border-radius:20px;padding:24px}
.product-page .source-heading{font-size:13px;font-weight:700}
.product-page :is(.source-condition,.source-status,.source-provenance,.source-footnote,.pricing-refresh-status){font-size:11px;line-height:1.75}
.product-page .provider-name{font-size:12px}
.quick-view-copy h2{color:#eff7fc}.quick-view-copy>p{font-size:14px;line-height:1.8;color:#bdd0dc}
@media(max-width:760px){.product-page .source-comparison{padding:20px}.product-page .source-price{font-size:30px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}.button:active:not(:disabled){transform:none}}
html[data-motion="off"] .button{transition:none}html[data-motion="off"] .button:active:not(:disabled){transform:none}
