/* Full documents share the storefront typography and native-feeling controls. */
#home-content[hidden] { display:none!important; }
.product-page { padding-top:24px; padding-bottom:64px; }
.product-breadcrumb { display:flex; gap:12px; flex-wrap:wrap; font-size:11px; color:var(--ar-muted); margin-bottom:24px; }
.product-breadcrumb a { text-decoration:underline; text-underline-offset:3px; min-height:24px; }
.product-page .product-layout { height:auto; min-height:0; gap:56px; align-items:start; }
.product-page .product-gallery { height:min(760px,calc(100svh - 180px)); min-height:480px; position:sticky; top:120px; }
.product-page .product-copy { height:auto; overflow:visible; padding:24px 0 0; }
.product-page .product-copy h1 { font-size:clamp(42px,4.2vw,64px); margin:0 0 14px; letter-spacing:-.025em; }
.full-product-link { margin-top:16px; font-size:11px; }
#cart-footer>.continue-shopping { margin:14px auto 0; font-size:11px; min-height:44px; }
.checkout-page { padding-top:48px; padding-bottom:80px; max-width:1180px; }
.checkout-heading { margin-bottom:40px; }
.checkout-page h1 { font:clamp(42px,5vw,68px)/1.04 var(--ar-serif); letter-spacing:-.03em; margin-bottom:20px; }
.checkout-disclaimer { font-size:12px; color:var(--ar-muted); max-width:550px; line-height:1.8; }
.checkout-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); gap:80px; align-items:start; }
.checkout-form>section, .checkout-shipping { margin:0 0 32px; border:0; padding:0; min-width:0; }
.checkout-form h2, .checkout-shipping legend { font:26px/1.3 var(--ar-serif); margin:0 0 20px; padding:0; }
.checkout-form h2>span, .checkout-shipping legend>span { font:10px var(--ar-font); letter-spacing:.06em; margin-right:12px; color:var(--ar-muted); }
.checkout-form label, #checkout-coupon-form>label { display:block; font-size:11px; margin-bottom:16px; }
.checkout-form label>input:not([type=radio]) { display:block; width:100%; min-width:0; min-height:48px; border:1px solid var(--ar-line); background:transparent; border-radius:0; font-size:16px; padding:12px; margin-top:8px; color:var(--ar-ink); box-shadow:none; }
.checkout-field-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.checkout-help { font-size:11px; line-height:1.75; color:var(--ar-muted); margin-top:12px; }
.checkout-shipping>label { display:flex; align-items:center; gap:14px; padding:16px; margin:0 0 10px; border:1px solid var(--ar-line); min-height:72px; }
.checkout-shipping>label:has(input:checked) { border-color:var(--ar-ink); }
.checkout-shipping input { width:16px; height:16px; margin:0; accent-color:var(--ar-ink); flex-shrink:0; }
.checkout-shipping label>span { flex:1; font-size:13px; }
.checkout-shipping small { display:block; font-size:10px; color:var(--ar-muted); margin-top:5px; }
.checkout-shipping strong { font-size:12px; font-weight:400; }
.checkout-payment { border:1px solid var(--ar-line); padding:18px; font-size:13px; }
.checkout-payment small { display:block; color:var(--ar-muted); font-size:11px; line-height:1.75; margin-top:8px; }
.checkout-form>.ar-text-link { margin-top:20px; font-size:11px; min-height:44px; }
.checkout-summary { min-width:0; padding:28px; background:var(--ar-wash); position:sticky; top:126px; }
.checkout-summary-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.checkout-summary h2 { font:32px var(--ar-serif); }
.checkout-summary-heading button { font-size:11px; min-height:44px; }
#checkout-items { list-style:none; padding:0; margin:12px 0 24px; }
.checkout-item { display:grid; grid-template-columns:64px minmax(0,1fr) auto; gap:14px; align-items:center; padding:16px 0; border-bottom:1px solid var(--ar-line); font-size:12px; }
.checkout-item img { width:64px; height:84px; object-fit:contain; }
.checkout-item a { overflow-wrap:anywhere; }
.checkout-item small { display:block; font-size:10px; line-height:1.7; color:var(--ar-muted); margin-top:5px; }
.checkout-item .pack-label { color:#4f624b; }
#checkout-coupon-form>label { margin-bottom:10px; }
#checkout-coupon { font-size:16px; min-height:46px; }
#checkout-amounts>div { display:flex; justify-content:space-between; gap:20px; margin:12px 0; font-size:12px; }
#checkout-amounts .saving { color:#4f624b; }
#checkout-amounts .checkout-total { border-top:1px solid var(--ar-line); padding-top:20px; margin-top:20px; font-size:14px; }
.checkout-total strong { font-size:20px; font-weight:500; font-variant-numeric:tabular-nums; }
.checkout-empty, .checkout-confirmation { max-width:620px; margin:24px auto 40px; }
.checkout-empty>p:not(.ar-eyebrow), .checkout-confirmation>p:not(.ar-eyebrow) { margin:20px 0; line-height:1.8; font-size:13px; }
.checkout-empty>.solid, .checkout-confirmation>.solid { max-width:360px; margin:28px 0 12px; }
.checkout-empty>.ar-text-link, .checkout-confirmation>.ar-text-link { font-size:12px; min-height:44px; }
.checkout-confirmation:focus { outline:none; }
body[data-route=checkout] .desktop-nav, body[data-route=checkout] .search-open, body[data-route=checkout] .mobile-menu { display:none; }
body[data-route=checkout] .header-inner { grid-template-columns:1fr auto; }
body[data-route=checkout] .wordmark { justify-self:start; }
@media(max-width:989px) {
 .product-page .product-layout { display:block; }
 .product-page .product-gallery { position:relative; top:auto; height:auto; min-height:0; }
 .product-page .product-image-stage { height:clamp(300px,50svh,540px); }
 .product-page .product-copy { padding:32px 0 0; }
 .checkout-grid { gap:32px; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); }
 .checkout-summary { padding:20px; }
}
@media(max-width:749px) {
 .product-page { padding-top:20px; padding-bottom:40px; }
 .product-breadcrumb { margin-bottom:16px; font-size:10px; }
 .product-page .product-copy h1 { font-size:42px; }
 .product-page .product-image-stage { height:clamp(300px,50svh,420px); }
 .checkout-page { padding-top:28px; padding-bottom:48px; }
 .checkout-page h1 { font-size:46px; }
 .checkout-heading { margin-bottom:28px; }
 .checkout-grid { display:flex; flex-direction:column; gap:32px; }
 .checkout-summary { position:static; order:-1; width:100%; padding:20px; }
 .checkout-form { width:100%; }
 .checkout-field-grid { gap:12px; }
 .checkout-item { grid-template-columns:54px minmax(0,1fr) auto; gap:10px; }
 .checkout-item img { width:54px; height:72px; }
 .checkout-empty, .checkout-confirmation { margin-top:0; }
}
