:root{--ink:#241d18;--muted:#746a61;--cream:#f8f5ef;--paper:#fffdf9;--gold:#a98a4b;--cocoa:#463629;--line:#e7dfd4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}button,a{font:inherit}button{cursor:pointer}.announcement{background:var(--cocoa);color:#fff;text-align:center;padding:9px;font-size:12px;letter-spacing:.08em}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;background:#fffdf9ed;backdrop-filter:blur(18px);z-index:20;border-bottom:1px solid var(--line)}.brand img,footer img{width:120px;height:60px;object-fit:cover}nav{display:flex;gap:30px}a{text-decoration:none;color:inherit}nav a{font-size:13px}.actions{display:flex;gap:8px}.actions button,.filters button{border:0;background:transparent;padding:10px}.actions b{background:var(--cocoa);color:#fff;border-radius:50%;padding:2px 7px}.hero{min-height:76vh;position:relative;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f9f5eefc 0%,#f9f5eed1 34%,transparent 68%)}.hero-copy{position:relative;z-index:1;max-width:620px;margin-left:8vw}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--gold);font-size:11px;font-weight:600}.hero h1,.section h2,.editorial h2,.contact h2,dialog h2{font-family:'Playfair Display',serif;font-weight:500}.hero h1{font-size:clamp(54px,7vw,100px);line-height:.94;margin:22px 0}.hero p{max-width:500px;color:var(--muted);font-size:17px;line-height:1.7;margin-bottom:30px}.primary,.secondary{display:inline-flex;justify-content:center;align-items:center;padding:15px 23px;border-radius:3px;border:1px solid var(--cocoa);margin:4px}.primary{background:var(--cocoa);color:#fff}.secondary{background:transparent}.trust{display:grid;grid-template-columns:repeat(4,1fr);padding:30px 6vw;border-bottom:1px solid var(--line)}.trust div{display:flex;flex-direction:column;gap:6px;padding:10px 24px;border-right:1px solid var(--line)}.trust div:last-child{border:0}.trust span{font-size:12px;color:var(--muted)}.section{padding:100px 6vw}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:42px}.section h2,.editorial h2,.contact h2{font-size:clamp(36px,4vw,58px);margin:10px 0}.filters button{border:1px solid var(--line);border-radius:30px;padding:10px 18px}.filters .active{background:var(--cocoa);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product{cursor:pointer}.product-media{aspect-ratio:4/5;overflow:hidden;background:var(--cream);position:relative}.product-media img{width:100%;height:100%;object-fit:cover;transition:.6s}.product:hover img{transform:scale(1.035)}.badge{position:absolute;top:15px;left:15px;background:#fff;padding:7px 10px;font-size:10px;text-transform:uppercase}.product-info{display:flex;justify-content:space-between;padding:17px 2px;gap:10px}.product-info h3{margin:0 0 5px;font:21px 'Playfair Display'}.product-info p{margin:0;color:var(--muted);font-size:12px}.editorial{margin:30px 6vw 100px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;background:var(--cream)}.editorial img{width:100%;height:620px;object-fit:cover}.editorial div{padding:7vw}.editorial p,.story p{color:var(--muted);line-height:1.8;max-width:650px}.story{text-align:center}.story p{margin:auto}.contact{margin:0 6vw 80px;padding:60px;display:flex;align-items:center;justify-content:space-between;background:var(--cocoa);color:#fff}.contact p{color:#d9d0c5;line-height:1.7}footer{padding:50px 6vw;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}footer div{display:flex;gap:24px}footer p{font-size:12px;color:var(--muted)}dialog{border:0;border-radius:10px;padding:0;max-width:820px;width:90%;box-shadow:0 30px 100px #0004}dialog::backdrop{background:#241d1899;backdrop-filter:blur(5px)}.close{position:absolute;right:16px;top:12px;border:0;background:#fff;font-size:28px;z-index:2}.detail{display:grid;grid-template-columns:1fr 1fr}.detail img{width:100%;height:100%;min-height:520px;object-fit:cover}.detail-copy{padding:60px 45px}.detail-copy h2{font-size:40px}.option{margin:24px 0}.option button{padding:10px 16px;border:1px solid var(--line);background:#fff;margin:3px}.option button.active{background:var(--cream);border-color:var(--cocoa)}aside{position:fixed;right:-440px;top:0;width:min(420px,94vw);height:100vh;background:#fff;z-index:40;transition:.35s;display:flex;flex-direction:column;padding:25px}aside.open{right:0}.drawer-head,.cart-row,.total{display:flex;justify-content:space-between;align-items:center}.drawer-head button,.cart-row button{border:0;background:none;font-size:24px}#cartItems{flex:1;overflow:auto}.cart-row{gap:12px;padding:18px 0;border-bottom:1px solid var(--line)}.cart-row img{width:72px;height:88px;object-fit:cover}.cart-row div{flex:1}.cart-foot{border-top:1px solid var(--line);padding-top:20px}.cart-foot .primary{width:100%;border:0;margin-top:20px}#overlay{position:fixed;inset:0;background:#0007;z-index:30;display:none}#overlay.show{display:block}#checkoutDialog form{padding:55px;display:grid;gap:15px}label{display:grid;gap:6px;font-size:12px}input,textarea,select{padding:13px;border:1px solid var(--line);font:inherit}textarea{min-height:80px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,30px);background:var(--cocoa);color:#fff;padding:13px 20px;opacity:0;transition:.3s;z-index:60}#toast.show{opacity:1;transform:translate(-50%,0)}#menuBtn{display:none}@media(max-width:800px){header nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:25px;flex-direction:column}header nav.open{display:flex}#menuBtn{display:block}.hero:after{background:linear-gradient(90deg,#f9f5eef0,#f9f5ee66)}.hero-copy{margin:0 7vw}.trust{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:1fr 1fr}.editorial{grid-template-columns:1fr}.editorial img{height:420px}.contact,footer{flex-direction:column;align-items:flex-start;gap:24px}.detail{grid-template-columns:1fr}.detail img{min-height:320px;height:360px}}@media(max-width:520px){.product-grid{grid-template-columns:1fr}.section{padding:70px 5vw}.section-head{align-items:flex-start;gap:20px;flex-direction:column}.editorial{margin:0 0 60px}.contact{margin:0;padding:45px 25px}.trust{padding:18px 2vw}.trust div{padding:12px}.hero-copy .secondary{display:none}.detail-copy,#checkoutDialog form{padding:45px 25px}}
