:root{--bg:#ffffff;--ink:#111111;--ink-soft:#5a5a5a;--line:#e8e8e8;--pink:#f5c9c9;--matcha:#b8d68a;--butter:#f5e08a;--lav:#c9c4e8;--sky:#b8d4e8;--cream:#f0e8d4;--peach:#f5d0b8;--mint:#d0e8c9}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:Inter,sans-serif;background:var(--bg);color:var(--ink);font-weight:400;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}input,textarea,select{font-family:inherit}img{max-width:100%;display:block;height:auto}.script{font-family:Caveat,cursive;font-weight:600}nav{position:sticky;top:0;z-index:100;background:#ffffffeb;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:6px 32px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line)}.nav-links{display:flex;gap:28px;list-style:none;font-size:13px;font-weight:500}.nav-links a{transition:opacity .2s}.nav-links a:hover{opacity:.55}.logo{font-family:Fraunces,Times New Roman,serif;font-style:italic;font-weight:400;font-variation-settings:"opsz" 144;font-size:30px;color:var(--ink);letter-spacing:-.025em;line-height:1;justify-self:center;display:inline-flex;align-items:baseline;gap:4px;transition:color .2s ease}.logo:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--matcha);align-self:flex-end;margin-bottom:6px;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.logo:hover:after{transform:scale(1.4)}.logo:has(img):after{display:none}.logo img{display:block;height:112px;width:auto;transition:opacity .2s ease,transform .3s cubic-bezier(.2,.8,.2,1)}.logo:hover img{opacity:.85}.nav-right{display:flex;gap:20px;justify-self:end;font-size:13px;font-weight:500;align-items:center}.nav-right a{transition:opacity .2s}.nav-right a:hover{opacity:.55}.cart-btn{display:flex;align-items:center;gap:4px}.hero{padding:80px 24px 40px;display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1400px;margin:0 auto}.hero-tile{background:var(--matcha);border-radius:8px;aspect-ratio:1/1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-tile.pink{background:var(--pink)}.hero-tile-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.hero-tile:hover .hero-tile-img{transform:scale(1.03)}.hero-tile-label{position:absolute;top:20px;left:20px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--ink);background:#ffffffd9;backdrop-filter:blur(8px);padding:8px 14px;border-radius:999px;z-index:2}.hero-tile-script{position:absolute;bottom:20px;right:20px;font-family:Caveat,cursive;font-weight:700;font-size:34px;color:var(--ink);transform:rotate(-5deg);line-height:.9;text-align:right;background:#ffffffd9;backdrop-filter:blur(8px);padding:10px 18px;border-radius:16px;z-index:2}.hero-copy{background:#fff;border-radius:8px;padding:48px 40px;display:flex;flex-direction:column;justify-content:space-between;position:relative;border:1px solid var(--line);aspect-ratio:1/1}.hero-headline{font-family:Caveat,cursive;font-weight:700;font-size:clamp(56px,7vw,104px);line-height:.85;color:var(--ink);letter-spacing:-.01em;transform:rotate(-1deg)}.hero-copy p{font-size:14px;color:var(--ink);max-width:360px;margin-bottom:20px}.hero-copy .cta-row{display:flex;gap:10px}.btn{padding:12px 22px;border-radius:999px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn-filled{background:var(--ink);color:#fff}.btn-filled:hover{background:#333}.btn-outline{border:1px solid var(--ink);color:var(--ink)}.btn-outline:hover{background:var(--ink);color:#fff}section{padding:60px 24px;max-width:1400px;margin:0 auto}.section-top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.section-top h2{font-family:Caveat,cursive;font-weight:700;font-size:clamp(40px,5vw,64px);line-height:.9;color:var(--ink);transform:rotate(-1deg)}.section-top .view-all{font-size:13px;font-weight:500;border-bottom:1px solid var(--ink);padding-bottom:2px;transition:opacity .2s}.section-top .view-all:hover{opacity:.55}.shop-header{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:36px}.shop-header h2{font-family:Caveat,cursive;font-weight:700;font-size:clamp(48px,6vw,80px);line-height:.85;color:var(--ink);transform:rotate(-1deg)}.shop-sub{font-size:13px;color:var(--ink-soft);letter-spacing:.04em;margin-top:10px}.shop-filters{display:flex;gap:6px;flex-wrap:wrap}.filter-btn{padding:10px 18px;border-radius:999px;font-size:13px;font-weight:500;color:var(--ink-soft);transition:all .2s;border:1px solid transparent}.filter-btn:hover{color:var(--ink);border-color:var(--line)}.filter-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}.shop-intro{max-width:1400px;margin:0 auto;padding:60px 24px 20px}.shop-intro-eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);font-weight:500;margin-bottom:14px;display:inline-flex;align-items:center;gap:10px}.shop-intro-eyebrow:before{content:"";width:20px;height:1px;background:var(--ink-soft)}.shop-intro h1{font-family:Caveat,cursive;font-weight:700;font-size:clamp(56px,8vw,110px);line-height:.85;color:var(--ink);transform:rotate(-1deg);max-width:800px}.shop-intro p{font-size:16px;color:var(--ink);max-width:440px;margin-top:18px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 24px}.product{cursor:pointer;position:relative}.product.hidden{display:none}.product-tile{aspect-ratio:1/1;overflow:hidden;border-radius:4px;background:#f5f2ec;position:relative}.product-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.product:hover .product-img{transform:scale(1.04)}.product-badge{display:inline-block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--ink-soft);margin-bottom:4px}.product-badge:before{content:"●";margin-right:5px;font-size:8px;color:var(--ink);vertical-align:1px}.product-info{padding:14px 0 0;display:flex;justify-content:space-between;align-items:baseline;gap:12px}.product-info-main{flex:1;min-width:0}.product-name{font-size:14px;font-weight:500;color:var(--ink);letter-spacing:-.005em}.product-type{font-size:12px;color:var(--ink-soft);margin-top:2px}.product-price{font-size:14px;font-weight:500;color:var(--ink);white-space:nowrap}.shop-cta{max-width:1400px;margin:20px auto;padding:0 24px}.shop-cta-inner{background:var(--matcha);border-radius:10px;padding:60px 48px;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:end}.shop-cta h2{font-family:Caveat,cursive;font-weight:700;font-size:clamp(48px,6vw,88px);line-height:.85;color:var(--ink);transform:rotate(-1deg)}.shop-cta p{font-size:15px;color:var(--ink);max-width:340px;margin-bottom:20px}.shop-cta-right{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:40px 24px;max-width:1400px;margin:0 auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feature{display:flex;flex-direction:column;gap:6px}.feature-label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-weight:500}.feature-text{font-family:Fraunces,Times New Roman,serif;font-weight:400;font-variation-settings:"opsz" 24;font-size:20px;letter-spacing:-.01em;color:var(--ink)}.about-split{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:60px 24px;max-width:1400px;margin:0 auto}.about-img{aspect-ratio:4/5;border-radius:8px;background:var(--matcha);position:relative;overflow:hidden}.about-img-tag{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.about-img:hover .about-img-tag{transform:scale(1.03)}.about-img-label{position:absolute;top:20px;left:20px;z-index:2;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--ink);background:#ffffffe6;padding:8px 14px;border-radius:999px;backdrop-filter:blur(6px)}.about-img-caption{position:absolute;bottom:20px;left:20px;z-index:2;font-family:Caveat,cursive;font-weight:700;font-size:26px;color:var(--ink);line-height:1;transform:rotate(-3deg);background:#ffffffe0;padding:12px 18px;border-radius:16px;backdrop-filter:blur(6px)}.about-text{padding:20px;display:flex;flex-direction:column;justify-content:center;gap:18px}.about-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);font-weight:500;display:flex;align-items:center;gap:12px}.about-label:before{content:"";width:24px;height:1px;background:var(--ink-soft)}.about-text h2{font-family:Caveat,cursive;font-weight:700;font-size:clamp(44px,5vw,72px);line-height:.9;color:var(--ink);transform:rotate(-1deg);max-width:440px;margin:4px 0}.about-text p{font-size:16px;max-width:440px;color:var(--ink);line-height:1.55}.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:10px 0 6px;max-width:440px}.about-stat-num{font-family:Caveat,cursive;font-weight:700;font-size:34px;color:var(--ink);line-height:.9;margin-bottom:6px;transform:rotate(-2deg);display:inline-block}.about-stat-label{font-size:11px;letter-spacing:.1em;color:var(--ink-soft);text-transform:uppercase}.about-cta{align-self:flex-start;margin-top:4px}.ritual-strip{background:var(--ink);color:#fff;padding:60px 24px;border-radius:8px;margin:0 24px}.ritual-inner{max-width:1400px;margin:0 auto}.ritual-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px}.ritual-head h2{font-family:Caveat,cursive;font-weight:700;font-size:clamp(40px,5vw,64px);color:#fff;transform:rotate(-1deg);line-height:.9}.ritual-head p{font-size:14px;color:#fff9;max-width:280px;text-align:right}.ritual-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.ritual-step{padding:24px;background:#ffffff0d;border-radius:6px}.ritual-num{font-family:Caveat,cursive;font-weight:700;font-size:40px;color:var(--matcha);line-height:1;margin-bottom:16px}.ritual-step h4{font-size:18px;font-weight:600;margin-bottom:8px}.ritual-step p{font-size:13px;color:#ffffffb3}.press{padding:50px 24px;max-width:1400px;margin:0 auto;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.press-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:24px;font-weight:500}.press-logos{display:flex;justify-content:center;gap:56px;flex-wrap:wrap;align-items:center}.press-logo{font-family:Caveat,cursive;font-weight:600;font-size:22px;color:var(--ink);opacity:.5;transition:opacity .2s}.press-logo.serif{font-family:Georgia,serif;font-style:italic;font-weight:400}.press-logo.bold{font-family:Inter,sans-serif;font-weight:700;letter-spacing:.02em;font-size:18px}.press-logo.uc{text-transform:uppercase;letter-spacing:.2em;font-size:14px;font-weight:600}.newsletter{background:var(--pink);border-radius:8px;margin:20px 24px;padding:60px 40px;text-align:center}.newsletter h2{font-family:Fraunces,Times New Roman,serif;font-weight:400;font-style:italic;font-variation-settings:"opsz" 144;font-size:clamp(40px,5vw,68px);line-height:1;letter-spacing:-.02em;color:var(--ink);margin-bottom:14px}.newsletter p{font-size:15px;color:var(--ink);margin-bottom:24px;max-width:400px;margin-left:auto;margin-right:auto}.newsletter-form{display:flex;max-width:400px;margin:0 auto;background:#fff;border-radius:999px;padding:4px}.newsletter-form input{flex:1;padding:12px 18px;border:none;background:transparent;font-family:inherit;font-size:14px;outline:none;color:var(--ink)}.newsletter-form button{padding:12px 22px;background:var(--ink);color:#fff;border-radius:999px;font-size:13px;font-weight:500;transition:all .2s}.newsletter-form button:hover{background:#333}footer{padding:24px 24px 20px;background:#fff;border-top:1px solid var(--line)}.footer-top{max-width:1400px;margin:0 auto 16px;display:grid;grid-template-columns:1fr;padding-bottom:16px;border-bottom:1px solid var(--line)}.footer-brand{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.footer-brand .logo{font-size:42px;margin-bottom:0;justify-self:start}.footer-brand .logo:after{width:8px;height:8px;margin-bottom:8px}.footer-brand .logo img{height:48px}.footer-brand p{font-size:14px;color:var(--ink-soft);max-width:300px}.footer-col h5{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:16px;font-weight:500}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}.footer-col a{font-size:14px;color:var(--ink);transition:opacity .2s}.footer-col a:hover{opacity:.55}.footer-bottom{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;font-size:12px;color:var(--ink-soft)}.footer-credit{text-align:center;color:var(--ink-soft);transition:color .2s}.footer-credit:hover{color:var(--ink)}.footer-bottom-links{text-align:right}.cart-overlay{position:fixed;inset:0;background:#1116;z-index:200;opacity:0;pointer-events:none;transition:opacity .3s}.cart-overlay.open{opacity:1;pointer-events:all}.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:420px;max-width:100vw;background:#fff;z-index:201;transform:translate(100%);transition:transform .4s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column}.cart-drawer.open{transform:translate(0)}.cart-header{padding:20px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.cart-header h3{font-family:Caveat,cursive;font-weight:700;font-size:30px;transform:rotate(-2deg)}.cart-close{font-size:13px;font-weight:500;border-bottom:1px solid var(--ink);padding-bottom:1px}.cart-items{flex:1;overflow-y:auto;padding:8px 24px}.cart-empty{text-align:center;padding:60px 20px;color:var(--ink-soft)}.cart-empty .script{font-size:44px;color:var(--ink);opacity:.3;margin-bottom:8px;transform:rotate(-4deg);display:inline-block}.cart-item{display:grid;grid-template-columns:72px 1fr auto;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);align-items:flex-start}.cart-item-tile{width:72px;height:72px;border-radius:6px;overflow:hidden;background:#f5f2ec;position:relative}.cart-item-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cart-item-name{font-size:14px;font-weight:500;margin-bottom:2px}.cart-item-type{font-size:12px;color:var(--ink-soft)}.qty-control{display:flex;align-items:center;gap:10px;margin-top:8px}.qty-btn{width:22px;height:22px;border-radius:50%;border:1px solid var(--ink);font-size:11px;display:flex;align-items:center;justify-content:center;transition:all .15s}.qty-btn:hover{background:var(--ink);color:#fff}.qty{font-size:13px;min-width:14px;text-align:center}.cart-item-total{font-size:14px;font-weight:500}.remove-btn{font-size:11px;color:var(--ink-soft);text-decoration:underline;margin-top:6px}.cart-footer{padding:20px 24px;border-top:1px solid var(--line);background:#fafafa}.cart-subtotal{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.cart-subtotal span:first-child{font-size:14px;font-weight:500}.cart-subtotal span:last-child{font-size:20px;font-weight:600}.cart-note{font-size:12px;color:var(--ink-soft);margin-bottom:16px}.checkout-btn{width:100%;padding:14px;background:var(--ink);color:#fff;border-radius:999px;font-weight:500;font-size:14px;transition:all .2s}.checkout-btn:hover{background:#333}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(120%);background:var(--ink);color:#fff;padding:12px 22px;border-radius:999px;font-size:13px;z-index:300;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.toast.show{transform:translate(-50%) translateY(0)}@media(max-width:900px){nav{grid-template-columns:auto 1fr auto;padding:12px 16px;gap:12px}.nav-links{display:flex;gap:16px;font-size:13px}.nav-links li:nth-child(n+3){display:none}.logo{font-size:26px}.logo img{height:76px}.footer-brand .logo img{height:44px}.nav-right{gap:14px;font-size:13px}.hero{grid-template-columns:1fr;padding:40px 16px 20px}.hero-copy{padding:32px 24px;aspect-ratio:auto;min-height:340px}section{padding:40px 16px}.shop-intro{padding:40px 16px 20px}.shop-header{flex-direction:column;align-items:flex-start;gap:20px}.shop-filters{width:100%;overflow-x:auto;padding-bottom:4px}.product-grid{grid-template-columns:1fr 1fr;gap:28px 14px}.shop-cta{padding:0 16px}.shop-cta-inner{grid-template-columns:1fr;padding:40px 28px;gap:20px}.features{grid-template-columns:1fr 1fr;padding:32px 16px}.about-split{grid-template-columns:1fr;padding:40px 16px}.about-text{padding:20px 0 0}.ritual-strip{margin:0 16px;padding:40px 24px}.ritual-head{flex-direction:column;align-items:flex-start;gap:16px}.ritual-head p{text-align:left}.ritual-grid{grid-template-columns:1fr 1fr;gap:12px}.newsletter{margin:16px;padding:40px 24px}.newsletter-form input{font-size:16px}.footer-bottom{grid-template-columns:1fr;gap:8px;text-align:center}.footer-bottom-links{text-align:center}.footer-bottom a{padding:6px 2px;display:inline-block}.cart-drawer{width:100vw}.cart-item-name,.cart-item-type{font-size:14px}.qty-btn{width:30px;height:30px;font-size:14px}.checkout-btn{font-size:16px;padding:16px}.toast{bottom:20px;font-size:14px;padding:14px 22px}}@media(max-width:380px){.logo{font-size:22px}.logo img{height:60px}.nav-links{gap:12px;font-size:12px}.nav-right{gap:10px;font-size:12px}section{padding:32px 14px}}
