@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap";:root{--bg-color:#fafaf8;--text-color:#2d2d2a;--accent-color:#d4c3b3;--font-serif:"Playfair Display", serif;--font-sans:"Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-color);color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:400}a{color:inherit;text-decoration:none;transition:opacity .2s}a:hover{opacity:.7}ul{list-style:none}button{font-family:var(--font-sans);cursor:pointer;background:0 0;border:none}.linen-texture{position:relative}.linen-texture:after{content:"";pointer-events:none;z-index:10;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.03'/%3E%3C/svg%3E");position:absolute;inset:0}.app-container{flex-direction:column;min-height:100vh;display:flex}.header{background-color:var(--bg-color);z-index:100;border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;width:100%;padding:1.5rem 4rem;transition:background-color .4s,border-color .4s;display:flex;position:fixed;top:0;left:0}.header.transparent{background-color:#0000;border-bottom-color:#0000}.header .logo-container{transition:opacity .4s}.header.transparent .logo-container{opacity:0;pointer-events:none}.main-page{padding-top:90px}.header-left,.header-nav-right{letter-spacing:.05em;gap:2rem;font-size:.85rem;font-weight:400;display:flex}.header-center{justify-content:center;display:flex;position:absolute;left:50%;transform:translate(-50%)}.logo-container{flex-direction:column;align-items:center;gap:.5rem;display:flex}.logo-icon{object-fit:contain;width:auto;height:40px}.logo-text{font-family:var(--font-serif);letter-spacing:.1em;font-size:1.5rem}.header-right{align-items:center;gap:3rem;display:flex}.header-icons{color:var(--text-color);gap:1.25rem;display:flex}.header-icons button{color:inherit;justify-content:center;align-items:center;transition:opacity .2s;display:flex}.header-icons button:hover{opacity:.6}.hero{width:100%;height:100vh;position:relative;overflow:hidden}.hero-image{object-fit:cover;object-position:center;width:100%;height:100%}.hero-overlay{pointer-events:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.hero-logo-large{width:28%;max-width:350px;height:auto}.product-split-section{border-bottom:1px solid #0000000d;min-height:80vh;display:flex}.product-split-section.reverse{flex-direction:row-reverse}.product-context-img-container{flex:2;overflow:hidden}.product-context-img{object-fit:cover;width:100%;height:100%;transition:transform .8s}.product-split-section:hover .product-context-img{transform:scale(1.02)}.product-info-side{background-color:var(--bg-color);flex-direction:column;flex:1;justify-content:center;min-width:400px;padding:4rem;display:flex}.info-content{flex-direction:column;gap:1.5rem;display:flex}.product-title-large{font-family:var(--font-serif);letter-spacing:.05em;font-size:2rem;line-height:1.2}.product-material{font-family:var(--font-sans);color:#777;letter-spacing:.1em;text-transform:uppercase;font-size:.85rem}.product-price-large{font-size:1.5rem;font-weight:300}.color-swatches{gap:1rem;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:24px;height:24px;transition:transform .2s,border-color .2s;display:inline-block;box-shadow:0 0 0 1px #0000001a}.swatch:hover{transform:scale(1.1)}.swatch.selected{border-color:#2d2d2a;box-shadow:inset 0 0 0 2px #fff,0 0 0 1px #2d2d2a}.size-selection{margin-top:1.5rem}.size-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.size-guide-link{color:#777;font-size:.8rem;text-decoration:underline}.size-buttons{flex-wrap:wrap;gap:.8rem;display:flex}.size-btn{font-family:var(--font-sans);cursor:pointer;background:0 0;border:1px solid #ddd;padding:.6rem 1.2rem;font-size:.85rem;transition:all .2s}.size-btn:hover:not(:disabled){border-color:#2d2d2a}.size-btn.selected{color:#fff;background-color:#2d2d2a;border-color:#2d2d2a}.size-btn.out-of-stock{opacity:.4;cursor:not-allowed;text-decoration:line-through}.error-msg{color:#b83c3c;margin-top:.5rem;font-size:.85rem}.size-guide-section{background-color:var(--bg-color);border-top:1px solid #0000000d;justify-content:center;padding:4rem;display:flex}.size-guide-content{text-align:center;max-width:800px}.size-guide-content h2{font-family:var(--font-serif);margin-bottom:1.5rem;font-size:1.8rem}.size-guide-content p{color:#555;margin-bottom:2rem;line-height:1.6}.size-table{border-collapse:collapse;text-align:left;width:100%}.size-table th,.size-table td{border-bottom:1px solid #0000000d;padding:1rem}.size-table th{text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:500}.product-short-desc{color:#444;margin-top:1rem;font-size:.95rem;line-height:1.7}.scopri-btn{color:var(--text-color);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--text-color);text-align:center;background-color:#0000;align-self:flex-start;margin-top:2rem;padding:.8rem 2.5rem;font-size:.85rem;font-weight:500;transition:all .3s;display:inline-block}.scopri-btn:hover{background-color:var(--text-color);color:var(--bg-color)}.add-to-cart-btn{background-color:var(--text-color);color:var(--bg-color);border:1px solid var(--text-color);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;font-weight:500;transition:all .3s}.add-to-cart-btn:hover{color:var(--text-color);background-color:#0000}.product-page-container{min-height:90vh;display:flex}.product-gallery-side{flex-direction:column;flex:3;display:flex}.main-image-wrapper{flex:1;width:100%;height:55vh}.gallery-main-img{object-fit:cover;width:100%;height:100%}.gallery-thumbnails{background-color:var(--bg-color);border-top:1px solid #0000000d;gap:1rem;padding:1.5rem 4rem;display:flex;overflow-x:auto}.thumbnail{object-fit:cover;cursor:pointer;opacity:.5;width:100px;height:100px;transition:opacity .3s}.thumbnail:hover,.thumbnail.active{opacity:1}.detail-page-info{border-left:1px solid #0000000d;justify-content:flex-start;padding-top:6rem}.color-selection p{letter-spacing:.05em;text-transform:uppercase;margin-bottom:.5rem;font-size:.9rem}.product-full-desc{color:#333;margin-top:1rem;font-size:1rem;line-height:1.8}.large-btn{width:100%;margin-top:2rem;padding:1.2rem}.footer{background-color:var(--bg-color);border-top:1px solid #0000000d;flex-direction:column;align-items:center;padding:4rem 4rem 2rem;display:flex}.footer-content{grid-template-columns:1fr 1fr 1fr;gap:4rem;width:100%;max-width:1200px;margin-bottom:4rem;display:grid}.footer-brand{flex-direction:column;gap:1rem;display:flex}.footer-logo{align-items:center;gap:.5rem;display:flex}.footer-logo-icon{height:24px}.footer-logo-text{font-family:var(--font-serif);letter-spacing:.1em;font-size:1.2rem}.footer-mission{color:#555;font-size:.9rem;line-height:1.8}.footer-newsletter h3{font-family:var(--font-sans);letter-spacing:.1em;margin-bottom:1rem;font-size:.9rem;font-weight:500}.newsletter-form{border-bottom:1px solid var(--text-color);padding-bottom:.5rem;display:flex}.newsletter-form input{font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1;font-size:.9rem}.newsletter-form button{letter-spacing:.05em;text-transform:uppercase;font-size:.8rem;font-weight:500}.footer-social{justify-content:flex-end;align-items:flex-start;gap:1.5rem;display:flex}.footer-social a{color:var(--text-color);transition:opacity .2s}.footer-social a:hover{opacity:.6}.footer-bottom{text-align:center;color:#777;letter-spacing:.05em;border-top:1px solid #0000000d;width:100%;padding-top:2rem;font-size:.8rem}@media (width<=1024px){.product-split-section,.product-page-container{flex-direction:column}.product-info-side{min-width:100%;padding:3rem}.detail-page-info{border-left:none;padding-top:3rem}}.cart-icon-btn{position:relative}.cart-badge{color:#fff;background-color:#b83c3c;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-8px;right:-8px}.cart-overlay{z-index:999;opacity:0;pointer-events:none;background-color:#0006;width:100vw;height:100vh;transition:opacity .3s;position:fixed;top:0;left:0}.cart-overlay.open{opacity:1;pointer-events:all}.cart-sidebar{background-color:var(--bg-color);z-index:1000;flex-direction:column;width:400px;height:100vh;transition:right .3s;display:flex;position:fixed;top:0;right:-400px;box-shadow:-5px 0 15px #0000000d}.cart-sidebar.open{right:0}.cart-header{border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:2rem;display:flex}.cart-header h2{letter-spacing:.1em;font-size:1.2rem}.cart-body{flex:1;padding:2rem;overflow-y:auto}.empty-cart-msg{text-align:center;color:#777;margin-top:2rem}.cart-item{border-bottom:1px solid #0000000d;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.cart-item-img{object-fit:cover;width:80px;height:100px}.cart-item-info h4{font-family:var(--font-sans);margin-bottom:.25rem;font-size:.9rem}.cart-item-variant{color:#666;margin-bottom:.25rem;font-size:.8rem}.cart-item-price{margin-bottom:.25rem;font-size:.9rem}.cart-item-qty{color:#777;margin-bottom:.5rem;font-size:.8rem}.remove-item-btn{color:#777;font-size:.75rem;text-decoration:underline}.cart-footer{background-color:var(--bg-color);border-top:1px solid #0000000d;padding:2rem}.cart-total{justify-content:space-between;margin-bottom:.5rem;font-size:1.2rem;display:flex}.cart-tax-notice{color:#777;margin-bottom:1.5rem;font-size:.75rem}.checkout-btn{background-color:var(--text-color);width:100%;color:var(--bg-color);letter-spacing:.1em;text-transform:uppercase;padding:1rem;font-size:.9rem;transition:opacity .3s}.checkout-btn:hover{opacity:.8}
