@font-face{font-family:Outfit;src:url('assets/outfit.ttf') format('truetype');font-weight:100 900;font-display:swap;}
@font-face{font-family:Bricolage;src:url('assets/bricolage.ttf') format('truetype');font-weight:200 800;font-display:swap;}
:root{--display:Bricolage,Outfit,Arial,sans-serif;--body:Outfit,Arial,sans-serif;}
body,button,input,select,textarea,dialog,.product-page{font-family:var(--body);}
h1,h2,.shop-content h2,.site-menu-content nav>a,.polaroid-caption,.footer-school,.type-wall,.hero-tools,.gallery-tools{font-family:var(--display);}
h1,h2,.shop-content h2,.site-menu-content nav>a{font-weight:700;}
button,.buy,.drop-signup,.add-button,.checkout-button,.product-bag,.bag-open,.motion-toggle,.drop-submit{border-radius:999px;}
.polaroid-caption small{font-family:var(--body);}
.design-choice,.design-thumb{border-radius:18px;}
.garment-tabs,.garment-tabs button,.size-options span,.quantity-control,.quantity-control button{border-radius:999px;}
.design-collections{border:0;gap:8px;flex-wrap:wrap;}
.design-collections button{padding:10px 15px;border:0;background:#f4f4f4;font-weight:600;}
.design-collections button.selected{background:var(--maroon);color:white;}
.product-detail .design-field>legend{border-radius:18px;}
.product-header .product-brand{grid-column:2;grid-row:1;justify-self:center;}
.product-header-actions{display:contents;}
.product-header .product-bag{grid-column:1;grid-row:1;justify-self:start;}
.product-header .menu-toggle{grid-column:3;grid-row:1;justify-self:end;}
.product-brand img{width:40px;height:50px;}
.product-detail{max-width:1480px;grid-template-columns:1.2fr 1fr;padding:40px 5% 84px;gap:64px;}
.product-detail .preview-pane{padding:0;min-height:0;border:0;background:transparent;box-shadow:none;border-radius:0;}
.product-detail .preview-heading{max-width:540px;margin:0 auto 12px;font-family:var(--body);}
.product-detail .preview-heading>img{display:none;}
.product-detail .preview-heading>span{font-size:10px;letter-spacing:1px;}
.product-detail .preview-heading b{font-size:13px;letter-spacing:1px;}
.product-detail .preview-heading button{width:42px;height:42px;border-radius:50%;background:#f5f5f5;}
.product-detail #garment-preview{position:relative;background:#fff;width:min(100%,540px);aspect-ratio:2/3;max-height:none;height:auto;margin:auto;overflow:hidden;border:0;border-radius:18px;box-shadow:none;}
.product-detail #garment-preview.zoomed{transform:none;}
.product-detail #garment-preview.zoomed .mockup-object{transform:scale(1.1);}
.mockup-object{position:relative;isolation:isolate;width:100%;height:100%;aspect-ratio:2/3;transition:transform .3s ease;}
.product-detail .mockup-base,.bag-preview .mockup-base{width:100%;height:100%;object-fit:contain;filter:none;}
.mockup-object .mockup-base{position:relative;z-index:0;}
.mockup-object .garment-print,.mockup-object .sleeve-print{z-index:1;}
.mockup-hardware{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;}
.catalog-score,.catalog-framed{display:block;width:100%;height:auto;max-height:100%;overflow:hidden;}
.product-detail .preview-caption{max-width:540px;margin:12px auto 0;line-height:1.6;}
.product-detail #preview-color-name{font-size:11px;letter-spacing:1px;}
.product-detail #preview-placement{font-size:13px;font-family:var(--body);}
.product-detail #product-form{padding-top:14px;}
.product-detail #product-title{font-family:var(--display);font-weight:800;letter-spacing:-1.1px;line-height:1.08;}
.bag-preview.garment-thumbnail{display:block;aspect-ratio:2/3;height:auto;background:#fff;border-radius:16px;overflow:hidden;}
.spirit-drops{gap:32px;}
.spirit-drops h2{font-family:var(--display);font-weight:800;letter-spacing:-1.2px;max-width:650px;}
.spirit-drops p{font-family:var(--body);font-size:14px;}
.drops-action{width:min(100%,460px);text-align:left;flex-shrink:0;}
.drop-email-field{display:flex;gap:6px;padding:6px;background:#fff;border-radius:999px;}
.drop-email-field input{min-width:0;flex:1;width:100%;border:0;border-radius:999px;padding:12px 15px;background:#fff;color:#171717;font:14px var(--body);outline-offset:2px;}
.drop-submit{display:flex;align-items:center;justify-content:space-between;gap:16px;white-space:nowrap;border:0;background:var(--gold);color:#171717;padding:15px 20px;font-size:11px;font-weight:700;letter-spacing:.6px;min-height:48px;}
.drop-submit:hover{background:#ffd46c;}
.drop-submit:disabled{opacity:.65;cursor:wait;}
.drops-action .drop-status{margin:10px 10px 0;font-size:11px;line-height:1.6;color:#ffffffa6;min-height:18px;}
.drop-status[data-state=success]{color:#ffe292;}
.drop-status[data-state=error]{color:#ffb6ac;}
.drop-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
@media(max-width:1100px){.spirit-drops{align-items:flex-start;flex-direction:column;}.drops-action{width:min(100%,540px);}.product-detail{gap:36px;padding-left:4%;padding-right:4%;}}
@media(max-width:809px){
 .product-header{grid-template-columns:1fr auto 1fr;padding:16px 20px;}
 .product-header .product-brand{grid-column:2;}.product-brand img{width:32px;height:41px;}
 .product-detail{display:block;padding:28px 22px 55px;}
 .product-detail .preview-pane{padding:0;}.product-detail #garment-preview{width:min(100%,400px);aspect-ratio:2/3;max-width:none;}
 .product-detail .preview-heading,.product-detail .preview-caption{max-width:400px;}
 .product-detail #product-form{padding-top:40px;}.product-detail #product-title{font-size:38px;}
 .spirit-drops h2{font-size:34px;line-height:1.12;}.drops-action{width:100%;}
 .drop-email-field input{padding-left:12px;font-size:13px;}.drop-submit{padding:14px 16px;gap:10px;font-size:10px;}
 .product-detail .design-thumb{height:82px;}.product-detail .design-name{font-size:11px;}
}
@media(prefers-reduced-motion:reduce){.mockup-object{transition:none;}}
