*,:before,:after{box-sizing:border-box}*{margin:0}html,body{height:100%}body{-webkit-font-smoothing:antialiased;line-height:1.5}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}:root{--color-bg:#f8f8f8;--color-text:#1a1a1a;--color-accent:#e5e5e5;--space-xs:.5rem;--space-s:.75rem;--space-m:1rem;--space-l:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--font-family-heading:"Helvetica Neue", Helvetica, Arial, sans-serif;--font-family-body:"Helvetica Neue", Helvetica, Arial, sans-serif;--font-size-base:clamp(1rem, .95rem + .25vw, 1.25rem);--font-size-h1:clamp(2.5rem, 2rem + 2.5vw, 5rem);--font-size-h2:clamp(2rem, 1.75rem + 1.25vw, 3.25rem);--font-size-h3:clamp(1.5rem, 1.25rem + 1.25vw, 2.5rem);--transition-base:all .3s ease}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-family-body);font-size:var(--font-size-base)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);margin-bottom:var(--space-l);font-weight:700;line-height:1.1}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}p{margin-bottom:var(--space-m);max-width:75ch}a{color:var(--color-text);transition:var(--transition-base);text-decoration:none}a:hover{text-decoration:underline}main{padding-top:var(--space-2xl)}.viewbox{max-width:1200px;padding-left:var(--space-l);padding-right:var(--space-l);width:100%;margin-left:auto;margin-right:auto}.btn,.btn-outline,.btn-ghost{justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-m) var(--space-l);font-size:var(--font-size-base);text-align:center;cursor:pointer;transition:var(--transition-base);text-transform:uppercase;letter-spacing:.05em;font-weight:700;font-family:var(--font-family-body);border:1px solid #0000;border-radius:0;text-decoration:none;display:inline-flex}.btn{background-color:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.btn:hover{background-color:var(--color-bg);color:var(--color-text)}.btn-outline{color:var(--color-text);border-color:var(--color-text);background-color:#0000}.btn-outline:hover{background-color:var(--color-text);color:var(--color-bg)}.btn-ghost{color:var(--color-text);background-color:#0000;border:none}.btn-ghost:hover{opacity:.7}.btn-sm{padding:var(--space-xs) var(--space-m);font-size:.875rem}.btn-md{padding:var(--space-s) var(--space-l)}.btn-lg{padding:var(--space-m) var(--space-xl);font-size:1.125rem}.back-button-container{padding:var(--space-l) 0;width:100%}.back-button img{filter:invert();width:20px;height:20px;transition:inherit}.back-button:hover img{filter:invert(0)}.back-text{display:none}@media (width>=768px){.back-text{display:inline}}@media (width<=768px){.back-button{background:0 0;border:none;padding:0}.back-button img{width:32px;height:32px}.back-button:hover{opacity:.7;background:0 0}.back-button:hover img{filter:invert()}.back-button-container{padding:0}}.navbar{background-color:var(--color-bg);border-bottom:1px solid var(--color-accent);z-index:1000;width:100%;transition:var(--transition-base);position:fixed;top:0;left:0}.navbar-inner{padding-top:var(--space-m);padding-bottom:var(--space-m);justify-content:space-between;align-items:center;display:flex}.navbar-logo a{display:block}.navbar-logo img{width:auto;height:2rem}.navbar-links{display:none}.navbar-menu-toggle{top:var(--space-m);right:var(--space-l);cursor:pointer;z-index:1020;background:0 0;border:none;padding:0;display:block;position:fixed}.hamburger-icon{width:24px;height:18px;position:relative}.hamburger-icon span{background:var(--color-text);opacity:1;border-radius:2px;width:100%;height:2px;transition:all .25s ease-in-out;display:block;position:absolute;left:0}.hamburger-icon span:first-child{top:0}.hamburger-icon span:nth-child(2){top:8px}.hamburger-icon span:nth-child(3){top:16px}.mobile-menu-open .hamburger-icon span:first-child{top:8px;transform:rotate(135deg)}.mobile-menu-open .hamburger-icon span:nth-child(2){opacity:0;left:-24px}.mobile-menu-open .hamburger-icon span:nth-child(3){top:8px;transform:rotate(-135deg)}.mobile-nav{background-color:var(--color-bg);z-index:1005;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;transition:transform .4s cubic-bezier(.77,0,.175,1);display:flex;position:fixed;top:0;left:0;transform:translate(100%)}.mobile-menu-open .mobile-nav{transform:translate(0)}.mobile-nav a{font-size:var(--font-size-h2);margin:var(--space-m) 0;text-transform:uppercase;font-weight:700}@media (width>=768px){.navbar-menu-toggle{display:none}.navbar-links{gap:var(--space-l);display:flex}.navbar-links a{font-weight:600;font-size:var(--font-size-base);text-transform:uppercase;border-bottom:1px solid #0000;align-items:center;display:flex}.navbar-links a:hover{border-bottom-color:var(--color-text);text-decoration:none}}.cart-icon{cursor:pointer;background:0 0;border:none;border-bottom:1px solid #0000;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.cart-icon:hover{border-bottom-color:var(--color-text)}.cart-icon img{width:20px;height:20px;filter:invert(var(--navbar-invert,0))}.cart-badge{background:var(--color-text);color:var(--color-bg);border-radius:50%;justify-content:center;align-items:center;min-width:1rem;height:1rem;padding:2px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-5px;right:-8px}.mobile-cart-container .cart-icon{border:none;padding:0}.mobile-cart-container .cart-icon img{width:32px;height:32px}.footer{background-color:var(--color-bg);border-top:1px solid var(--color-accent);padding:var(--space-2xl) 0;color:var(--color-text)}.footer-content{justify-content:space-between;gap:var(--space-xl);margin-bottom:var(--space-2xl);display:flex}.footer-heading{font-family:var(--font-family-heading);font-size:var(--font-size-base);margin-bottom:var(--space-m);text-transform:uppercase;font-weight:700}.footer-section ul{margin:0;padding:0;list-style:none}.footer-section li{margin-bottom:var(--space-xs)}.footer-section a{color:var(--color-text);transition:var(--transition-base);text-decoration:none}.footer-section a:hover{text-decoration:underline}.footer-bottom{text-align:center;font-size:var(--space-s);border-top:1px solid var(--color-accent);padding-top:var(--space-l)}.cookie-banner{bottom:var(--space-l);left:var(--space-l);right:var(--space-l);background-color:var(--color-text);color:var(--color-bg);padding:var(--space-l);z-index:1000;max-width:600px;margin-left:auto;position:fixed;box-shadow:0 4px 20px #0003}.cookie-banner.hidden{display:none}.cookie-content h3{margin-bottom:var(--space-s);color:var(--color-bg);font-size:1.25rem}.cookie-content p{margin-bottom:var(--space-l);font-size:.875rem;line-height:1.4}.cookie-content a{color:var(--color-bg);text-decoration:underline}.cookie-actions{gap:var(--space-s);flex-wrap:wrap;align-items:center;display:flex}.cookie-banner .btn{padding:var(--space-xs) var(--space-m);border:1px solid var(--color-bg);cursor:pointer;color:var(--color-bg);transition:var(--transition-base);background:0 0;font-size:.875rem}.cookie-banner .btn-primary{background-color:var(--color-bg);color:var(--color-text)}.cookie-banner .btn-primary:hover{opacity:.9}.cookie-banner .btn-link{border:none;padding:0;text-decoration:underline}.cookie-modal{z-index:1001;background:#000c;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.cookie-modal.hidden{display:none}.modal-content{background:var(--color-bg);color:var(--color-text);padding:var(--space-xl);width:90%;max-width:500px}.setting-item{margin:var(--space-l) 0;justify-content:space-between;align-items:flex-start;gap:var(--space-m);display:flex}.setting-info p{opacity:.8;font-size:.75rem}.modal-actions{margin-top:var(--space-xl);justify-content:flex-end;display:flex}@media (width<=600px){.cookie-banner{max-width:100%;bottom:0;left:0;right:0}}.cart-drawer-overlay{z-index:2000;opacity:0;pointer-events:none;background:#0003;width:100%;height:100%;transition:opacity .3s;position:fixed;top:0;left:0}.cart-drawer-overlay.open{opacity:1;pointer-events:auto}.cart-drawer{background:var(--color-bg);z-index:2001;width:100%;max-width:450px;height:100%;color:var(--color-text);flex-direction:column;transition:transform .4s cubic-bezier(.77,0,.175,1);display:flex;position:fixed;top:0;right:-100%;box-shadow:-5px 0 15px #0000000d}.cart-drawer.open{right:0;transform:none}.cart-drawer-header{border-bottom:1px solid var(--color-text);justify-content:space-between;align-items:center;padding:2rem;display:flex}.cart-drawer-header h2{text-transform:uppercase;margin:0;font-size:1.5rem}.cart-close{cursor:pointer;background:0 0;border:none;padding:.5rem}.cart-close img{width:24px;height:24px;transform:rotate(0)}.cart-items{flex:1;padding:2rem;overflow-y:auto}.cart-item{grid-template-columns:80px 1fr auto;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;display:grid}.cart-item-image{object-fit:cover;background:var(--color-bg);border:1px solid var(--color-text);width:80px;height:100px}.cart-item-details h3{text-transform:uppercase;margin:0 0 .5rem;font-size:1rem}.cart-item-price{margin-bottom:1rem;font-size:.9rem}.cart-item-controls{align-items:center;gap:1rem;display:flex}.cart-item-controls button{border:1px solid var(--color-text);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:28px;height:28px;font-size:1.2rem;transition:all .2s;display:flex}.cart-item-controls button:hover{background:var(--color-text);color:var(--color-bg)}.remove-item{cursor:pointer;opacity:.5;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1;transition:opacity .2s}.remove-item:hover{opacity:1}.cart-footer{border-top:1px solid var(--color-text);background:var(--color-bg);padding:2rem}.cart-total{text-transform:uppercase;justify-content:space-between;margin-bottom:2rem;font-size:1.2rem;font-weight:700;display:flex}.empty-cart{text-align:center;opacity:.6;margin-top:4rem}.page-hero{padding:var(--space-2xl) 0;text-align:center}.page-hero h1{margin-bottom:var(--space-s)}.page-hero p{opacity:.8;max-width:60ch;margin-left:auto;margin-right:auto;line-height:1.6}@media (width<=768px){.page-hero{padding:var(--space-xl) 0}}
