:root{--bg: #fdf9f3;--surface: #ffffff;--ink: #1f1a17;--ink-soft: #5b524b;--line: #e8ddcc;--accent: #d97706;--accent-hover: #b85f04;--accent-soft: #fff1dc;--grass: #3f6b3b;--shadow-sm: 0 1px 2px rgba(31,26,23,.06);--shadow-md: 0 8px 24px rgba(31,26,23,.08);--shadow-lg: 0 24px 48px rgba(31,26,23,.12);--radius: 14px;--radius-sm: 8px;--ease: cubic-bezier(.16, 1, .3, 1);--serif: "Fraunces", "Cormorant Garamond", Georgia, serif;--sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--container: 1240px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--sans);color:var(--ink);background:var(--bg);line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}.container{max-width:var(--container);margin:0 auto;padding:0 1.5rem}.eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--accent)}.h-display{font-family:var(--serif);font-weight:600;font-size:clamp(2.75rem,6vw,4.75rem);line-height:1.02;letter-spacing:-.03em}.h-section{font-family:var(--serif);font-weight:600;font-size:clamp(2rem,4vw,3rem);line-height:1.08;letter-spacing:-.02em}.h-card{font-family:var(--serif);font-weight:600;font-size:clamp(1.25rem,2.4vw,1.6rem);line-height:1.2;letter-spacing:-.01em}.lede{font-size:1.15rem;line-height:1.7;color:var(--ink-soft)}.muted{color:var(--ink-soft)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.95rem 1.6rem;border-radius:999px;font-weight:600;font-size:.95rem;letter-spacing:.01em;transition:transform .28s var(--ease),box-shadow .28s var(--ease),background .28s var(--ease);min-height:44px;white-space:nowrap}.btn-primary{background:var(--ink);color:var(--bg)}.btn-primary:hover{background:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-ghost{border:1.5px solid var(--ink);color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--bg);transform:translateY(-2px)}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.reveal{animation:fadeUp .7s var(--ease) both}.reveal-2{animation:fadeUp .7s var(--ease) .12s both}.reveal-3{animation:fadeUp .7s var(--ease) .24s both}.reveal-4{animation:fadeUp .7s var(--ease) .36s both}.site-header{position:sticky;top:0;z-index:50;background:#fdf9f3;border-bottom:1px solid var(--line);min-height:68px;padding:calc(.9rem + env(safe-area-inset-top,0px)) 0 .9rem}.header-inner{max-width:var(--container);margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;gap:1rem}.brand{font-family:var(--serif);font-weight:700;font-size:1.4rem;letter-spacing:-.02em;display:inline-flex;align-items:center;gap:.5rem;flex:0 0 auto}.brand-dot{width:12px;height:12px;border-radius:50%;background:var(--accent);display:inline-block}.nav{margin-left:auto;display:flex;align-items:center;gap:1.8rem}.nav a{font-size:.95rem;font-weight:500;transition:color .2s var(--ease)}.nav a:hover{color:var(--accent)}.cart-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;padding:.5rem .9rem;border:1.5px solid var(--ink);border-radius:999px;transition:all .2s var(--ease)}.cart-link:hover{background:var(--ink);color:var(--bg)}.menu-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;margin-left:auto;border-radius:8px}.menu-toggle span{display:block;width:22px;height:2px;background:var(--ink);position:relative}.menu-toggle span:before,.menu-toggle span:after{content:"";position:absolute;left:0;width:22px;height:2px;background:var(--ink)}.menu-toggle span:before{top:-7px}.menu-toggle span:after{top:7px}@media(max-width:860px){.nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--surface);border-bottom:1px solid var(--line);padding:.5rem 1rem 1rem;display:none;box-shadow:var(--shadow-md)}.nav.open{display:flex}.nav a{padding:.85rem .5rem;border-bottom:1px solid var(--line)}.nav a:last-child{border:0}.nav .cart-link{margin-top:.6rem;align-self:flex-start}.menu-toggle{display:inline-flex}}.hero{padding:4rem 0 5rem;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;align-items:center}.hero-copy .eyebrow{margin-bottom:1rem}.hero-copy h1{margin-bottom:1.5rem}.hero-copy h1 em{font-style:italic;color:var(--accent)}.hero-copy .lede{max-width:38ch;margin-bottom:2rem}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap}.hero-visual{position:relative;aspect-ratio:4/5;border-radius:28px;overflow:hidden;box-shadow:var(--shadow-lg)}.hero-visual img{width:100%;height:100%;object-fit:cover}.hero-badge{position:absolute;bottom:1.25rem;left:1.25rem;background:var(--surface);padding:.85rem 1.1rem;border-radius:999px;font-size:.85rem;font-weight:600;display:inline-flex;align-items:center;gap:.5rem;box-shadow:var(--shadow-md)}.hero-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--grass)}@media(max-width:880px){.hero{padding:2.5rem 0 3rem}.hero-grid{grid-template-columns:1fr;gap:2rem}.hero-visual{aspect-ratio:4/3;max-height:480px}}.stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.stat{padding:2rem 1rem;border-right:1px solid var(--line)}.stat:last-child{border-right:0}.stat-num{font-family:var(--serif);font-size:2.2rem;font-weight:600;letter-spacing:-.02em;color:var(--accent)}.stat-label{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-top:.4rem}@media(max-width:720px){.stats-grid{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}}.section{padding:6rem 0}.section-sm{padding:4rem 0}.section-header{display:flex;align-items:end;justify-content:space-between;margin-bottom:3rem;gap:2rem;flex-wrap:wrap}.section-header h2{max-width:22ch}.section-header p{max-width:38ch;color:var(--ink-soft)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:2rem 1.5rem}.product-card{background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);transition:transform .28s var(--ease),box-shadow .28s var(--ease);display:flex;flex-direction:column}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.product-media{aspect-ratio:1/1;background:var(--accent-soft);overflow:hidden}.product-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.product-card:hover .product-media img{transform:scale(1.05)}.product-body{padding:1.25rem 1.25rem 1.4rem;display:flex;flex-direction:column;gap:.6rem;flex:1}.product-body h3 a{transition:color .2s}.product-body h3 a:hover{color:var(--accent)}.product-desc{font-size:.92rem;color:var(--ink-soft);flex:1}.product-foot{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.6rem}.product-price{font-family:var(--serif);font-size:1.3rem;font-weight:600}.add-btn{background:var(--ink);color:var(--bg);padding:.6rem 1rem;border-radius:999px;font-size:.85rem;font-weight:600;transition:background .2s var(--ease),transform .2s var(--ease);min-height:40px}.add-btn:hover{background:var(--accent);transform:translateY(-1px)}.zig{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;margin-bottom:5rem}.zig:nth-child(2n) .zig-media{order:2}.zig:last-child{margin-bottom:0}.zig-media{aspect-ratio:5/4;border-radius:22px;overflow:hidden;box-shadow:var(--shadow-md)}.zig-media img{width:100%;height:100%;object-fit:cover}.zig-copy h3{margin:.8rem 0 1rem}.zig-copy p{color:var(--ink-soft);margin-bottom:1rem}.zig-list{list-style:none}.zig-list li{padding:.5rem 0 .5rem 1.5rem;position:relative;border-top:1px solid var(--line);font-size:.95rem}.zig-list li:first-child{border-top:0}.zig-list li:before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;border-radius:50%;background:var(--accent);transform:translateY(-50%)}@media(max-width:880px){.zig{grid-template-columns:1fr;gap:1.5rem;margin-bottom:3.5rem}.zig:nth-child(2n) .zig-media{order:0}}.store{background:var(--ink);color:var(--bg);border-radius:28px;overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr}.store-copy{padding:4rem 3rem}.store-copy .eyebrow{color:#f5b66c}.store-copy h2{color:var(--bg);margin:1rem 0 1.5rem}.store-copy p{color:#d6cfc7;max-width:42ch;margin-bottom:1.5rem}.store-info{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;border-top:1px solid rgba(255,255,255,.12);padding-top:1.5rem;margin-bottom:1.75rem}.store-info dt{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:#f5b66c;margin-bottom:.4rem}.store-info dd{font-size:.95rem;line-height:1.55;color:var(--bg)}.store-actions{display:flex;gap:.6rem;flex-wrap:wrap}.store-actions .btn{background:var(--bg);color:var(--ink)}.store-actions .btn:hover{background:var(--accent);color:var(--bg)}.store-actions .btn-ghost{background:transparent;color:var(--bg);border-color:#fff6}.store-actions .btn-ghost:hover{background:var(--bg);color:var(--ink)}.store-visual{position:relative;min-height:420px}.store-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}@media(max-width:880px){.store{grid-template-columns:1fr;border-radius:22px}.store-copy{padding:2.5rem 1.75rem}.store-info{grid-template-columns:1fr;gap:1rem}.store-visual{min-height:280px;order:-1}}.subscribe{position:relative;background:linear-gradient(135deg,var(--accent-soft),#ffe4c0);border-radius:28px;padding:4rem 3rem;overflow:hidden}.subscribe:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 20%,rgba(217,119,6,.15),transparent 60%)}.subscribe-grid{position:relative;display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;align-items:center}.subscribe h2{margin:1rem 0}.subscribe p{color:var(--ink-soft);max-width:44ch;margin-bottom:1.5rem}.sub-points{display:grid;gap:.9rem}.sub-point{background:var(--surface);padding:1.1rem 1.25rem;border-radius:14px;display:flex;align-items:start;gap:.85rem;box-shadow:var(--shadow-sm)}.sub-num{font-family:var(--serif);font-weight:600;color:var(--accent);font-size:1.4rem;line-height:1;flex:0 0 auto}.sub-point strong{display:block;margin-bottom:.2rem}.sub-point span{color:var(--ink-soft);font-size:.92rem}@media(max-width:880px){.subscribe{padding:2.5rem 1.5rem;border-radius:22px}.subscribe-grid{grid-template-columns:1fr;gap:2rem}}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.review{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.75rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.stars{color:#e0a93a;letter-spacing:.1em;font-size:.95rem}.review-body{font-family:var(--serif);font-size:1.15rem;line-height:1.5}.review-by{font-size:.85rem;color:var(--ink-soft);margin-top:auto;padding-top:.5rem;border-top:1px solid var(--line)}@media(max-width:880px){.reviews-grid{grid-template-columns:1fr}}.pdp{padding:3rem 0 5rem}.pdp-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:4rem}.pdp-media{aspect-ratio:1/1;border-radius:22px;overflow:hidden;background:var(--accent-soft);box-shadow:var(--shadow-md)}.pdp-media img{width:100%;height:100%;object-fit:cover}.pdp-info .eyebrow{margin-bottom:1rem}.pdp-info h1{font-family:var(--serif);font-weight:600;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.02em;line-height:1.05;margin-bottom:1rem}.pdp-price{font-family:var(--serif);font-size:1.75rem;font-weight:600;margin:1rem 0 1.5rem}.pdp-desc{color:var(--ink-soft);margin-bottom:1.75rem;line-height:1.7}.pdp-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:2rem}.pdp-actions .add-btn{padding:1rem 1.75rem;font-size:1rem;min-height:50px}.pdp-meta{display:grid;grid-template-columns:1fr 1fr;gap:1rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.25rem 0;margin-bottom:2rem}.pdp-meta div strong{display:block;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.3rem}.pdp-meta div span{font-size:.95rem}.pdp-reviews{padding:4rem 0;border-top:1px solid var(--line)}@media(max-width:880px){.pdp-grid{grid-template-columns:1fr;gap:2rem}}.shop-header{padding:4rem 0 2rem}.shop-header h1{font-family:var(--serif);font-weight:600;font-size:clamp(2.5rem,5vw,3.75rem);letter-spacing:-.02em;line-height:1.05}.shop-header p{max-width:50ch;color:var(--ink-soft);margin-top:1rem;font-size:1.1rem}.site-footer{background:var(--ink);color:#d6cfc7;padding:5rem 0 2rem;margin-top:4rem}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.12)}.footer-brand .brand{color:var(--bg)}.footer-brand p{margin:1rem 0 1.25rem;max-width:32ch;color:#aea69d}.newsletter{display:flex;gap:0;max-width:360px;border:1px solid rgba(255,255,255,.2);border-radius:999px;overflow:hidden}.newsletter input{flex:1;background:transparent;border:0;padding:.75rem 1rem;color:var(--bg);font-family:inherit;font-size:.9rem}.newsletter input::placeholder{color:#8a8278}.newsletter input:focus{outline:none}.newsletter button{background:var(--accent);color:var(--bg);padding:.75rem 1.25rem;font-weight:600;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase}.footer-col h4{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bg);margin-bottom:1rem;font-weight:600}.footer-col ul{list-style:none;display:grid;gap:.6rem}.footer-col a{color:#aea69d;font-size:.92rem;transition:color .2s}.footer-col a:hover{color:var(--accent)}.footer-col details{color:#aea69d;font-size:.92rem;cursor:pointer}.footer-col details+details{margin-top:.5rem}.footer-col summary{padding:.3rem 0;list-style:none}.footer-col summary::-webkit-details-marker{display:none}.footer-col summary:after{content:" +";color:var(--accent)}.footer-col details[open] summary:after{content:" −"}.footer-col details p{font-size:.85rem;line-height:1.6;padding:.5rem 0;color:#8a8278}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;font-size:.82rem;color:#8a8278;flex-wrap:wrap;gap:1rem}@media(max-width:880px){.footer-top{grid-template-columns:1fr 1fr;gap:2rem}.footer-brand{grid-column:1 / -1}}@media(max-width:520px){.footer-top{grid-template-columns:1fr}}
