@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:wght@400;500&family=Hanken+Grotesk:wght@400;500;600&display=swap');
:root{--color-surface:#f9f9f9;--color-on-surface:#1a1c1c;--color-primary:#000000;--color-on-primary:#ffffff;--color-secondary:#595e6a;--color-outline:#76777b;--color-border:#e2e2e2;--color-error:#ba1a1a;--color-error-container:#ffdad6;--color-surface-container-lowest:#ffffff;--color-surface-container:#eeeeee;--color-surface-container-high:#e8e8e8;--color-surface-container-highest:#e2e2e2;--color-overlay:rgba(17,19,24,0.4);--font-display:'Bodoni Moda',serif;--font-body:'Hanken Grotesk',sans-serif;--font-label:'Hanken Grotesk',sans-serif;--radius-none:0;--radius-sm:0;--radius-md:0;--radius-lg:0;--radius-full:0;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:2rem;--space-xl:4rem;--gutter:1.5rem;--margin:1.25rem;--margin-tablet:2.5rem;--margin-desktop:5rem}
#cart-drawer{position:fixed;inset:0;z-index:9999;display:none}
#cart-drawer.open{display:block}
.cart-backdrop{position:absolute;inset:0;background:var(--color-overlay)}
.cart-panel{position:absolute;top:0;right:0;height:100%;width:100%;max-width:24rem;background:var(--color-surface-container-lowest);border-left:1px solid var(--color-primary);display:flex;flex-direction:column}
.cart-head{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);border-bottom:1px solid var(--color-border)}
[data-cart-close]{background:none;border:none;cursor:pointer;font-size:1.5rem;line-height:1}
.cart-items{flex:1;overflow-y:auto;padding:var(--space-md)}
.cart-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) 0;border-bottom:1px solid var(--color-border)}
.cart-item-img img{width:3rem;height:3rem;object-fit:cover}
.cart-item-title{flex:1;font-family:var(--font-body);font-size:.875rem}
.cart-item-price{font-weight:500}
[data-cart-minus],[data-cart-plus]{background:none;border:1px solid var(--color-border);width:1.5rem;height:1.5rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.cart-qty-value{min-width:1.5rem;text-align:center}
[data-cart-remove]{border:none;background:none;color:var(--color-error);cursor:pointer;font-size:.75rem}
.cart-empty{text-align:center;padding:var(--space-xl) var(--space-md)}
.cart-empty a{color:var(--color-primary);text-decoration:underline}
.cart-foot{border-top:1px solid var(--color-border);padding:var(--space-md)}
.cart-foot>div{display:flex;justify-content:space-between;margin-bottom:var(--space-sm)}
[data-cart-subtotal]{font-weight:bold}
.cart-checkout-btn{display:block;width:100%;padding:.75rem 2rem;background:var(--color-primary);color:var(--color-on-primary);border:none;text-align:center;text-transform:uppercase;letter-spacing:.12em;font-family:var(--font-label);font-size:.75rem;font-weight:600;cursor:pointer}
#checkout-root{display:flex;gap:var(--space-xl);max-width:1200px;margin:0 auto;padding:var(--margin)}
#checkout-form{flex:2}
.checkout-field{margin-bottom:var(--space-md)}
.checkout-field label{display:block;margin-bottom:var(--space-xs);font-family:var(--font-label);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}
.checkout-field input,.checkout-field select,.checkout-field textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);background:var(--color-surface-container-lowest);font-family:var(--font-body);font-size:1rem}
.checkout-field input:focus,.checkout-field select:focus,.checkout-field textarea:focus{outline:none;border-color:var(--color-primary)}
.checkout-submit-btn{background:var(--color-primary);color:var(--color-on-primary);border:none;padding:1rem 2rem;text-transform:uppercase;letter-spacing:.12em;font-family:var(--font-label);font-size:.75rem;font-weight:600;cursor:pointer}
.checkout-summary{flex:1;border:1px solid var(--color-border);padding:var(--space-lg);height:fit-content}
[data-checkout-items]{margin-bottom:var(--space-md)}
.order-line{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border)}
.order-line img{width:3rem;height:3rem;object-fit:cover}
.order-line .title{flex:1;font-family:var(--font-body);font-size:.875rem}
.order-line .qty-price{font-size:.875rem}
[data-checkout-subtotal]{font-weight:bold;text-align:right}
[data-order-thanks]{text-align:center;padding:var(--space-xl) var(--space-md)}
[data-order-thanks] a{color:var(--color-primary);text-decoration:underline}
.prose{font-family:var(--font-body);color:var(--color-on-surface);line-height:1.6}
.prose h1,.prose h2,.prose h3{font-family:var(--font-display);font-weight:400;color:var(--color-primary)}
.prose h1{font-size:2.5rem;line-height:1.2}
.prose h2{font-size:1.75rem;line-height:1.3}
.prose h3{font-size:1.25rem;line-height:1.4}
.prose p{margin:var(--space-md) 0}
.prose a{color:var(--color-primary);text-decoration:underline}
.prose ul,.prose ol{padding-left:1.5rem;margin:var(--space-md) 0}
.prose li{margin-bottom:var(--space-xs)}
.text-small{font-size:.875rem}
.text-muted{color:var(--color-secondary)}
.lead{font-size:1.125rem;font-weight:400}
.fallback-nav{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--margin);border-bottom:1px solid var(--color-border);background:var(--color-surface-container-lowest)}
.fallback-nav a{font-family:var(--font-label);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-on-surface);text-decoration:none;margin-left:var(--space-md)}
.fallback-nav a:first-child{margin-left:0}
.fallback-nav a:hover{color:var(--color-primary)}
.aux-input,.aux-select,.aux-textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);background:var(--color-surface-container-lowest);font-family:var(--font-body);font-size:1rem;transition:border-color .15s ease}
.aux-input:focus,.aux-select:focus,.aux-textarea:focus{outline:none;border-color:var(--color-primary)}
.aux-button{display:inline-block;padding:.75rem 2rem;background:var(--color-primary);color:var(--color-on-primary);border:none;text-transform:uppercase;letter-spacing:.12em;font-family:var(--font-label);font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}
.aux-button:hover{background:var(--color-surface-container-lowest);color:var(--color-primary);outline:1px solid var(--color-primary)}
.aux-button-secondary{display:inline-block;padding:.75rem 2rem;background:transparent;color:var(--color-primary);border:1px solid var(--color-primary);text-transform:uppercase;letter-spacing:.12em;font-family:var(--font-label);font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}
.aux-button-secondary:hover{background:var(--color-primary);color:var(--color-on-primary)}
@media(max-width:768px){#checkout-root{flex-direction:column;padding:var(--margin)}.cart-panel{max-width:100%}.prose h1{font-size:2rem}.prose h2{font-size:1.5rem}.fallback-nav{flex-wrap:wrap;gap:var(--space-sm)}}
@media(max-width:480px){.cart-head,.cart-foot{padding:var(--space-sm)}.cart-item{flex-wrap:wrap}.cart-item-title{width:100%;margin-bottom:var(--space-xs)}.order-line{flex-wrap:wrap}.order-line .title{width:100%;margin-bottom:var(--space-xs)}.aux-button,.aux-button-secondary{display:block;width:100%;text-align:center;margin-bottom:var(--space-sm)}}