/* Shared commerce controls use the same two type families and restrained palette. */
.product-page-image:not(:has(img)), .product-photo-pending { aspect-ratio:1; display:grid; place-items:center; width:100%; color:var(--text2); font:500 14px var(--sans); }
/* Keep the footer below the initial viewport while the private basket hydrates. */
body[data-commerce="checkout"] .commerce-page,body[data-commerce="cart"] .commerce-page{min-height:100svh}
.commerce-page{max-width:1240px;margin:auto;padding:48px clamp(20px,5vw,70px) 80px;min-height:60vh}.commerce-breadcrumb{font:11px/1.8 var(--sans);color:var(--muted);margin-bottom:44px}.commerce-page h1{font:400 clamp(34px,4.5vw,62px)/1.16 var(--serif);letter-spacing:-.035em;overflow-wrap:anywhere;margin:12px 0 22px}.commerce-page h2{font:400 30px/1.2 var(--serif)}.commerce-intro{color:var(--text2);margin-bottom:40px}.product-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(24px,5vw,70px)}.product-page-image{background:var(--surface);border:1px solid var(--hairline);align-self:start}.product-page-image img{width:100%;height:auto;display:block}.product-page-copy{line-height:1.9;margin:24px 0;white-space:pre-line;font-size:14px;color:var(--text2)}.product-page-price{font:500 20px var(--sans);color: var(--accent-text, var(--green))}.product-spec{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:22px 0;border-block:1px solid var(--hairline);font-size:12px;margin:28px 0}.product-spec dt{color:var(--muted)}.product-spec dd{margin:0;overflow-wrap:anywhere}.commerce-field{display:grid;gap:9px;font:500 12px var(--sans);margin:18px 0}.commerce-field select,.commerce-field input,.commerce-field textarea,.checkout select{width:100%;padding:13px;border:1px solid var(--hairline);background:var(--surface);color:var(--text);font:400 14px var(--sans);box-sizing:border-box;border-radius:3px}.product-reviews{border-top:1px solid var(--hairline);padding-top:40px;margin-top:70px}.product-review{border-bottom:1px solid var(--hairline);padding:20px 0}.product-review strong{color: var(--accent-text, var(--green));letter-spacing:3px}.product-review p{font-size:14px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.product-review small{color:var(--muted)}.commerce-review-form{max-width:650px;margin-top:40px}.commerce-review-form p{font-size:12px;color:var(--text2);line-height:1.8}.basket-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(250px,1fr);gap:50px}.basket-line{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:20px;padding:25px 0;border-bottom:1px solid var(--hairline)}.basket-line img{width:90px;height:100px;object-fit:cover}.basket-line h2{font-size:22px;margin:0 0 10px}.basket-line p{font-size:12px;color:var(--muted)}.basket-line>strong{font:500 13px var(--sans)}.basket-summary{background:var(--surface);border:1px solid var(--hairline);padding:28px;align-self:start}.basket-summary p{font-size:12px;line-height:1.8;display:flex;justify-content:space-between;gap:20px;margin:20px 0}.basket-summary .btn{width:100%;justify-content:center;margin:20px 0}.commerce-embedded{display:block!important;position:static!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}.commerce-embedded>.checkout__scrim,.commerce-embedded .checkout__head>[data-close-checkout]{display:none}.commerce-embedded>.checkout__panel{position:static!important;transform:none!important;width:100%;max-width:850px;max-height:none;margin:0 auto;overflow:visible;box-shadow:none}.checkout__row>*{min-width:0}.member-address-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:32px}.member-address,.member-invitation{padding:20px;border:1px solid var(--member-line,var(--hairline));border-radius:4px;margin-bottom:18px;overflow-wrap:anywhere}.member-address h3,.member-invitation h4{font:400 24px var(--serif);margin:0 0 14px}.member-address p,.member-invitation p{font-size:12px;line-height:1.9}.member-address .member-text-button{font-size:11px}.member-profile-nav{gap:4px}.member-profile-nav button{padding-block:12px}.member-loyalty a{color:inherit}.member-order__detail a{text-decoration:underline}.footer-newsletter{border-top:1px solid #ffffff25;margin-top:40px;padding:35px 0 15px;display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer-newsletter h2{font:400 29px var(--serif);margin:0 0 12px}.footer-newsletter p,.footer-newsletter label{font:400 12px/1.8 var(--sans);color:inherit}.footer-newsletter form>div{display:flex;border-bottom:1px solid #ffffff66;margin:12px 0}.footer-newsletter input[type=email]{background:transparent;border:0;color:inherit;padding:12px 0;min-width:0;flex:1;font:13px var(--sans)}.footer-newsletter input::placeholder{color:#ffffff88}.footer-newsletter button{background:none;border:0;color:inherit;cursor:pointer;padding:10px;font:12px var(--sans)}.newsletter-consent{display:flex;gap:10px;align-items:flex-start}.newsletter-consent input{flex:0 0 auto;margin-top:5px}.footer__social a{display:inline-flex;align-items:center;gap:6px}.footer__social svg{width:18px;height:18px}.footer-cookie-button{color:inherit;font:11px var(--sans);margin-top:25px;background:none;border:0;text-decoration:underline;cursor:pointer}.intro-brief{position:fixed;inset:0;background:#fdfdfb;z-index:9999;display:grid;place-items:center;pointer-events:none;animation:brief-fade 1.15s ease forwards}.intro-brief img{width:clamp(130px,20vw,250px);animation:brief-zoom 1.15s cubic-bezier(.19,1,.22,1) forwards}@keyframes brief-zoom{0%{transform:scale(.75);opacity:0}25%{opacity:1}80%,100%{transform:scale(1.4);opacity:0}}@keyframes brief-fade{75%{opacity:1}100%{opacity:0;visibility:hidden}}
@media(min-width:901px){.nav{position:relative;display:grid;grid-template-columns:1fr auto 1fr;gap:16px}.nav__brand{grid-column:2;grid-row:1;justify-self:center}.nav__links{grid-column:1;grid-row:1}.nav__actions{grid-column:3;grid-row:1;justify-self:end}.nav__links{gap:clamp(12px,2vw,30px)}.nav__actions{gap:7px}.nav__actions .nav__link{font-size:10px}.nav__brand .wordmark{font-size:17px}}
@media(max-width:900px){.product-layout,.basket-layout{grid-template-columns:1fr}.product-page-image{max-width:600px;width:100%;margin:auto}.product-layout{gap:32px}.commerce-page{padding-top:30px}.commerce-breadcrumb{margin-bottom:25px}.footer-newsletter{grid-template-columns:1fr;gap:18px}.basket-summary{margin-top:10px}}
@media(max-width:480px){.basket-line{grid-template-columns:65px minmax(0,1fr);gap:15px}.basket-line img{width:65px;height:80px}.basket-line>strong{grid-column:2}.member-address-list{grid-template-columns:1fr}.commerce-embedded>.checkout__panel{padding:0}.product-spec{grid-template-columns:85px minmax(0,1fr)}.commerce-page h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){.intro-brief{display:none}}

/* Accessible skip link, consistent page offset under the fixed brand header. */
.skip-content{position:fixed;top:8px;left:12px;transform:translateY(-150%);z-index:10010;background:var(--bg);padding:12px;border:1px solid var(--green)}
.skip-content:focus{transform:none}
.commerce-page{padding-top:128px}
.member-profile-main .member-loyalty p{max-width:60ch;font-size:12px;line-height:1.85}
.member-profile-main .member-loyalty+p{margin:18px 0 28px}
@media(min-width:901px){.nav{position:fixed}.commerce-page{padding-top:128px}}
@media(max-width:900px){
 /* Header layout and touch targets are shared with mobile.css. */
 .commerce-page{padding-top:128px}
}
.product-thumbnails{display:flex;flex-wrap:wrap;gap:10px;padding:12px 0}.product-thumbnails button{border:1px solid currentColor;padding:3px;background:transparent;color:inherit;cursor:pointer}.product-thumbnails button[aria-pressed="true"]{outline:2px solid #115706}.product-thumbnails img{display:block;width:70px;height:70px;object-fit:contain}.product-page-image>img{width:100%;height:auto;object-fit:contain}
