.site-footer{display:block;text-align:center}
.store-notice{padding:12px 24px;border-bottom:1px solid var(--line);color:var(--muted);text-align:center;font-size:11px;line-height:1.6}
.store-form{display:grid;gap:18px}
.promo-form{padding:20px 0 10px;display:grid;gap:10px;font-size:11px;color:var(--muted)}
.promo-input-row{display:flex;gap:12px;align-items:stretch}
.promo-input-row input{flex:1;min-width:0;width:0;min-height:44px;padding:12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:0;text-transform:uppercase}
.promo-input-row .outline-button{margin:0;min-height:44px;padding:12px 18px}
.promo-input-row .text-button{margin:0;align-self:center}
.filter-menu{position:relative;flex-shrink:0}
.filter-menu summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;font-size:11px;text-transform:uppercase;padding:10px 0;line-height:20px}
.filter-menu summary::-webkit-details-marker{display:none}
.filter-chevron{width:6px;height:6px;border-right:1px solid var(--muted);border-bottom:1px solid var(--muted);transform:rotate(45deg);margin-top:-4px}
.filter-menu[open] .filter-chevron{transform:rotate(225deg);margin-top:3px}
.filter-popover{position:absolute;top:calc(100% + 10px);left:0;z-index:20;width:210px;padding:10px;background:var(--panel);border:1px solid var(--line);box-shadow:0 16px 40px #0007}
.sort-menu .filter-popover,.team-menu .filter-popover{left:auto;right:0}
.filter-popover button{display:block;width:100%;padding:12px;font-size:11px;text-align:left;border:1px solid transparent;line-height:1.4}
.filter-popover button:hover{background:#1a1e1b}
.filter-popover button[aria-pressed=true]{color:var(--accent);border-color:#657944;background:#171d13}
.size-popover{width:210px;padding:12px}
.size-columns,.filter-popover .size-pair{display:grid;grid-template-columns:1fr 18px 1fr;text-align:center;align-items:center}
.size-columns{font-size:9px;text-transform:uppercase;color:var(--muted);padding:0 10px 12px;border-bottom:1px solid var(--line);letter-spacing:.04em}
#size-options{max-height:min(360px,55dvh);overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#555c58 var(--panel);scrollbar-width:thin;padding-top:8px}
.filter-popover .all-sizes{text-align:center;font-size:10px;margin-bottom:4px}
.size-slash{color:var(--muted)}
.filter-popover .letter-size{border-top-color:var(--line);margin-top:8px;text-align:center;font-size:10px}
.size-options .option-button{font-size:11px;min-width:78px;padding:12px}
.detail-msrp{margin:0;font-size:11px;color:var(--muted);line-height:1.7}
.product-page{max-width:1480px;margin:0 auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}
.product-info h1{font-size:clamp(26px,2.6vw,40px);text-transform:uppercase;line-height:1.15;letter-spacing:-.03em;font-weight:400;margin:0 0 12px}
.card-media,.gallery-main{aspect-ratio:1;background:#fff}
.gallery-thumb{height:auto;aspect-ratio:1;background:#fff}
.gallery-thumb img{display:block}
.bag-item img{height:80px;background:#fff}
.site-footer a{display:inline-block;text-decoration:underline;text-underline-offset:4px}
.site-footer .footer-separator{display:inline-block;margin:0 14px}
@media(max-width:760px){.filter-controls{gap:0 16px}.filter-menu summary{font-size:10px;gap:8px}.filter-popover{top:calc(100% + 4px)}.team-menu .filter-popover{left:0;right:auto}.size-options .option-button{font-size:10px;min-width:72px}.site-footer a{display:block;margin:10px 0 0}.site-footer .footer-separator{display:none}}
.store-form label{display:grid;gap:9px;font-size:11px;line-height:1.5;color:var(--muted)}
.store-form input,.store-form select{width:100%;padding:12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:0;min-width:0}
.store-form textarea{width:100%;padding:12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font:inherit;border-radius:0;resize:vertical}
.product-details{border-top:1px solid var(--line);padding-top:16px;margin-top:20px;font-size:11px;color:var(--muted);line-height:1.7}
.product-details summary{cursor:pointer;padding:6px 0;color:var(--ink)}
.product-details .product-code{margin:14px 0}
.gallery-thumbnails:not([hidden]){margin-top:14px}
summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.partner-order-reference{margin:24px 0;padding:24px;border:1px solid var(--line);background:var(--panel)}
.partner-order-reference strong{display:block;font-size:clamp(21px,4vw,34px);line-height:1.4;overflow-wrap:anywhere;color:var(--accent)}
.partner-order-reference p{margin-top:0}
.store-form fieldset,.rate-options{border:1px solid var(--line);padding:16px;margin:0;min-width:0}
.store-form legend{padding:0 6px;font-size:11px;text-transform:uppercase}
.store-form .radio-line{display:flex;gap:12px;align-items:center;color:var(--ink);padding:8px 0}
.store-form input[type=radio],.rate-option input{width:auto;accent-color:var(--accent)}
.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-error{padding:14px;border:1px solid #8e594c;background:#281b16;color:#ffbaab;font-size:12px;line-height:1.6;margin:16px 0}
.checkout-heading{font-size:13px;font-weight:400;text-transform:uppercase;margin:28px 0 16px}
.rate-option{display:flex;align-items:center;gap:12px;font-size:11px;padding:12px 0;line-height:1.6}
.rate-option+ .rate-option{border-top:1px solid var(--line)}
.rate-option span{flex:1}.rate-option strong{font-weight:400}.rate-option small{display:block;color:var(--muted)}
.preview-note a{text-decoration:underline;text-underline-offset:3px}
.document-page{max-width:820px;margin:0 auto;padding:50px 24px;line-height:1.8;font-size:13px}
.document-page h1{font-size:30px;font-weight:400;text-transform:uppercase;line-height:1.3}
.document-page h2{font-size:16px;font-weight:400;text-transform:uppercase;margin-top:36px;color:var(--ink)}
.document-page p{color:var(--muted)}.document-page a{text-decoration:underline;text-underline-offset:4px}
.order-status{border:1px solid var(--line);padding:20px;margin:24px 0;color:var(--accent)}
.order-lines{list-style:none;padding:0;margin:24px 0}
.order-lines li{padding:18px 0;border-top:1px solid var(--line)}
.order-lines small{display:block;color:var(--muted)}
.order-totals{max-width:420px;margin:24px 0}.order-totals p{display:flex;justify-content:space-between;gap:20px}
.order-actions{display:flex;gap:18px;flex-wrap:wrap;margin:24px 0}
@media(max-width:500px){.store-notice{font-size:10px;padding:10px 14px}.document-page{padding-top:30px}.document-page h1{font-size:24px}}
