:root{--bg: #f6efe4;--bg-2: #fffaf2;--surface: #ffffff;--surface-2: #faf4ea;--border: rgba(166, 124, 26, .22);--text: #2a2118;--muted: #7a6a56;--gold: #a67c1a;--gold-2: #8a6414;--gold-light: #e9c766;--shadow: 0 10px 30px -12px rgba(90, 64, 20, .25);--radius: 18px;--serif: "Cormorant Garamond", Georgia, serif;--sans: "Inter", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.55;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}a{color:var(--gold-2)}h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0}.nav{position:fixed;inset:0 0 auto 0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:16px clamp(16px,4vw,48px);background:#f6efe4bf;border-bottom:1px solid rgba(166,124,26,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.logo{font-family:var(--serif);font-size:1.65rem;font-weight:700;letter-spacing:.02em;color:var(--text);text-decoration:none;display:flex;align-items:baseline;gap:10px}.logo b{color:var(--gold);font-weight:700}.logo .ar{font-family:Amiri,serif;font-size:1.1rem;color:var(--muted);white-space:nowrap}.nav nav{display:flex;gap:clamp(10px,2.5vw,28px);align-items:center}.nav nav a{color:var(--text);text-decoration:none;font-size:.9rem;opacity:.8}.nav nav a:hover{opacity:1;color:var(--gold-2)}.nav-cta{border:1px solid var(--gold);padding:8px 16px;border-radius:999px;opacity:1!important;white-space:nowrap}.hero{position:relative;min-height:100vh;min-height:100svh;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;padding:100px clamp(16px,6vw,96px) 80px;gap:24px;background:radial-gradient(ellipse 60% 55% at 75% 50%,#fffaf0 0%,transparent 70%),radial-gradient(ellipse 80% 60% at 10% 100%,#efdfc4 0%,transparent 60%),var(--bg)}.hero-content{position:relative;z-index:2;max-width:640px}.carousel-wrap{position:relative;height:520px;perspective:1100px;display:grid;place-items:center}.carousel-wrap:after{content:"";position:absolute;left:15%;right:15%;bottom:40px;height:40px;background:radial-gradient(ellipse at center,rgba(120,85,30,.22),transparent 70%);filter:blur(6px)}.carousel{--card-w: 160px;position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(-6deg);cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.carousel:active{cursor:grabbing}.c-item{position:absolute;left:50%;top:50%;width:var(--card-w);margin:calc(var(--card-w) * -.75) 0 0 calc(var(--card-w) / -2);padding:10px 10px 12px;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:0 18px 40px -18px #5a401473;cursor:pointer;font:inherit;color:var(--text);text-align:left;backface-visibility:hidden}.c-item img{display:block;width:100%;aspect-ratio:1;object-fit:contain;border-radius:10px;background:#fff;pointer-events:none}.c-item span{display:block;margin-top:8px;font-size:.8rem;font-weight:600;line-height:1.25}.c-item small{display:block;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:600}.c-item:focus-visible{outline:2px solid var(--gold)}.carousel-hint{position:absolute;bottom:0;margin:0;font-size:.75rem;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;font-weight:600;color:var(--gold);margin:0 0 14px}.hero h1{font-size:clamp(2.8rem,7vw,5.4rem);line-height:1}.hero h1 em{color:var(--gold);font-style:italic}.lead{color:var(--muted);font-size:clamp(1rem,1.6vw,1.15rem);max-width:540px;margin:22px 0 30px}.search{display:flex;gap:8px;padding:6px;border-radius:999px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);max-width:580px}.search input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--text);font:inherit;padding:10px 16px}.search input::placeholder{color:#a8998a}.search button,.btn-gold{border:0;cursor:pointer;font:600 .9rem var(--sans);color:#fff;background:linear-gradient(135deg,#c79a2c,#9a7215);padding:12px 22px;border-radius:999px;white-space:nowrap;transition:transform .2s,box-shadow .2s}.search button:hover,.btn-gold:hover{transform:translateY(-1px);box-shadow:0 8px 22px #a67c1a59}.stats{display:flex;gap:clamp(20px,5vw,48px);margin-top:36px}.stats strong{display:block;font-family:var(--serif);font-size:2rem;color:var(--gold);line-height:1}.stats span{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.scroll-hint{position:absolute;bottom:28px;left:50%;z-index:2;width:24px;height:40px;border:1.5px solid var(--gold);border-radius:14px;transform:translate(-50%)}.scroll-hint:after{content:"";position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;background:var(--gold);border-radius:2px;animation:wheel 1.8s infinite}@keyframes wheel{to{transform:translateY(12px);opacity:0}}.section{padding:90px clamp(16px,5vw,64px);max-width:1280px;margin:0 auto}.section-head{margin-bottom:36px}.section-head h2{font-size:clamp(2rem,4vw,3rem)}.section-head p{color:var(--muted);max-width:640px;margin:8px 0 0}.filters{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:28px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip,#sort{background:var(--surface);color:var(--text);border:1px solid var(--border);padding:8px 16px;border-radius:999px;font:500 .85rem var(--sans);cursor:pointer}.chip.active{background:var(--gold);color:#fff;border-color:var(--gold)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px;perspective:1200px}.card{--rx: 0deg;--ry: 0deg;--gx: 50%;--gy: 50%;cursor:pointer;outline:none}.card-inner{position:relative;height:100%;padding:26px 22px 20px;border-radius:var(--radius);background:radial-gradient(circle at var(--gx) var(--gy),color-mix(in srgb,var(--tint) 16%,transparent),transparent 60%),var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .25s ease-out,border-color .25s,box-shadow .25s}.card:hover .card-inner,.card:focus-visible .card-inner{border-color:var(--gold);box-shadow:0 26px 50px -20px color-mix(in srgb,var(--tint) 60%,rgba(90,64,20,.4))}.card-photo{position:relative;height:170px;margin:-10px -6px 16px;border-radius:12px;background:#fff;display:grid;place-items:center;transform:translateZ(35px)}.card-photo img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;padding:8px;border-radius:12px}.card-bottle{width:46px;height:64px;position:relative;border-radius:10px;border:1.5px solid rgba(90,64,20,.25);background:linear-gradient(135deg,#fff,#f0e6d699)}.card-bottle:before{content:"";position:absolute;left:50%;top:-16px;width:22px;height:14px;margin-left:-11px;background:linear-gradient(135deg,var(--gold-light),#9a7215);border-radius:3px}.card-bottle i{position:absolute;top:22px;right:5px;bottom:5px;left:5px;border-radius:6px;background:linear-gradient(to bottom,color-mix(in srgb,var(--tint) 65%,white),var(--tint))}.badge{position:absolute;top:8px;right:8px;font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:999px;background:#eaf6ea;color:#2e7d32;border:1px solid #cfe8cf}.card-brand{margin:0;font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.card h3{font-size:1.7rem;line-height:1.1;margin:4px 0 6px;transform:translateZ(20px)}.card-meta{margin:0 0 18px;font-size:.8rem;color:var(--muted)}.card-dupe{padding:12px 14px;border-radius:12px;background:var(--surface-2);border:1px solid rgba(166,124,26,.12);transform:translateZ(25px)}.card-dupe small{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.card-dupe strong{display:block;font-size:.95rem}.card-dupe span{font-size:.8rem;color:var(--gold-2);font-weight:500}.card-count{margin:14px 0 0;font-size:.82rem;font-weight:600;color:var(--gold-2)}.empty{text-align:center;color:var(--muted);padding:40px 0}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}.step{padding:28px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.step span{font-family:var(--serif);font-size:2.6rem;color:var(--gold);line-height:1}.step h3{font-size:1.5rem;margin:10px 0 6px}.step p{margin:0;color:var(--muted)}.suggest-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:860px;padding:26px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.suggest-form label{display:flex;flex-direction:column;gap:6px;font-size:.75rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.suggest-form label span{text-transform:none;letter-spacing:0;font-weight:400}.suggest-form label.wide{grid-column:1 / -1}.suggest-form input,.suggest-form textarea{font:400 .95rem var(--sans);color:var(--text);text-transform:none;letter-spacing:0;resize:vertical;background:var(--bg-2);border:1px solid rgba(166,124,26,.25);border-radius:10px;padding:10px 12px;min-width:0}.suggest-form input:focus,.suggest-form textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #a67c1a26}.suggest-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.btn-gold:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}#suggest-msg{color:#2e7d32;font-size:.9rem}#suggest-msg.error{color:#a14b1c}footer{border-top:1px solid var(--border);background:var(--bg-2);padding:40px clamp(16px,5vw,64px);text-align:center;color:var(--muted)}footer strong{color:var(--text);font-family:var(--serif);font-size:1.2rem}footer strong b{color:var(--gold)}.fine{font-size:.78rem;max-width:760px;margin:10px auto 0;opacity:.85}dialog{width:min(1100px,calc(100vw - 32px));max-height:calc(100vh - 40px);padding:0;border:1px solid var(--border);border-radius:24px;color:var(--text);background:var(--bg-2);overflow:auto;box-shadow:0 40px 80px -30px #3c280a73}dialog::backdrop{background:#3c2d1959;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}dialog[open]{animation:pop .35s ease-out}@keyframes pop{0%{opacity:0;transform:translateY(20px) scale(.97)}}.close{position:absolute;top:14px;right:16px;z-index:3;width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:1.5rem;cursor:pointer;line-height:1}.modal-body{display:grid;grid-template-columns:1fr 1fr}.showcase{display:flex;flex-direction:column;gap:18px;padding:28px;background:radial-gradient(circle at 50% 35%,#fff,#f1e7d6 80%);border-right:1px solid var(--border)}.photo{position:relative;aspect-ratio:1;border-radius:18px;background:#fff;overflow:hidden;display:grid;place-items:center;box-shadow:var(--shadow)}.photo img{width:100%;height:100%;object-fit:contain;padding:18px;transition:opacity .3s,transform .4s}.photo.loading img{opacity:0;transform:scale(.97)}.photo.loading:before{content:"";position:absolute;width:36px;height:36px;border-radius:50%;border:3px solid rgba(166,124,26,.2);border-top-color:var(--gold);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.photo-fallback{display:none;position:absolute;top:0;right:0;bottom:0;left:0;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background:linear-gradient(160deg,#fffaf2,#efe2cb)}.photo.missing img{display:none}.photo.missing .photo-fallback{display:flex}.photo-fallback small{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:600}.photo-fallback strong{font-family:var(--serif);font-size:2rem;line-height:1.1;margin:6px 0 10px}.photo-fallback span{font-size:.8rem;color:var(--muted)}.save-pill{position:absolute;top:14px;left:14px;padding:6px 12px;border-radius:999px;background:#2e7d32;color:#fff;font-size:.8rem;font-weight:700}.versus{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;text-align:center}.versus i{font-family:var(--serif);font-size:1.3rem;color:var(--gold)}.versus small{display:block;font-size:.66rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}.versus strong{display:block;font-family:var(--serif);font-size:1.15rem;line-height:1.2}.versus span{font-size:.85rem;color:var(--muted)}.shop.big{text-align:center;padding:12px 18px;font-size:.95rem}.details{padding:36px 32px 32px}.details h2{font-size:2.6rem;line-height:1.05;margin-bottom:20px}.details h3{font-size:1.4rem;margin:26px 0 12px;color:var(--gold-2)}.pyramid{display:grid;gap:10px}.pyramid div{padding:10px 14px;border-left:3px solid var(--gold);background:var(--surface);border-radius:0 10px 10px 0}.pyramid small{text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;font-weight:600;color:var(--gold)}.pyramid p{margin:2px 0 0;font-size:.9rem}.dupes{list-style:none;padding:0;margin:0;display:grid;gap:12px}.dupe{border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--surface);transition:border-color .2s,box-shadow .2s}.dupe.selected{border-color:var(--gold);box-shadow:0 0 0 3px #a67c1a1f}.dupe-select{display:flex;width:100%;align-items:center;gap:12px;background:none;border:0;color:inherit;text-align:left;cursor:pointer;padding:0;font:inherit}.thumb{width:52px;height:52px;flex:none;border-radius:10px;background:#fff;border:1px solid rgba(166,124,26,.18);display:grid;place-items:center;overflow:hidden}.thumb img{width:100%;height:100%;object-fit:contain;padding:3px}.thumb span{width:14px;height:30px;border-radius:4px}.dupe-name{flex:1;min-width:0}.dupe-name small,.dupe-nums small{display:block;font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.dupe-name strong{font-size:1.02rem}.dupe-nums{text-align:right;flex:none}.dupe-nums strong{color:var(--gold-2)}.meter{position:relative;height:22px;margin:12px 0 0;border-radius:6px;background:#f1e9dc;overflow:hidden;display:flex;justify-content:space-between;align-items:center;padding:0 8px;font-size:.72rem;font-weight:500}.meter i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#f3dc9a,#e2bd56)}.meter span{position:relative}.meter .save{color:#2e7d32;font-weight:700}.dupe-desc{margin:10px 0 0;font-size:.86rem;color:var(--muted)}.shops{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.shop{text-decoration:none;font-size:.82rem;font-weight:600;padding:8px 14px;border-radius:999px;transition:transform .15s,filter .15s}.shop:hover{transform:translateY(-1px);filter:brightness(.96)}.shop-noon{background:#feee00;color:#1a1a1a}.shop-amazon{background:#f90;color:#131921}.shop-other{background:transparent;border:1px solid var(--gold);color:var(--gold-2)}@media(max-width:860px){.modal-body{grid-template-columns:1fr}.showcase{border-right:0;border-bottom:1px solid var(--border);padding:20px}.photo{aspect-ratio:auto;height:300px}.hero{grid-template-columns:1fr;padding-top:110px}.carousel-wrap{height:380px}.details{padding:26px 18px}}@media(max-width:600px){.nav nav a:not(.nav-cta){display:none}.logo .ar{display:none}.nav-cta{padding:7px 12px;font-size:.82rem!important}.carousel-wrap{height:320px}.search{flex-direction:column;border-radius:20px}.search button{width:100%}.suggest-form{grid-template-columns:1fr;padding:18px}.stats strong{font-size:1.6rem}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
