:root{--bg:#fff9fb;--ink:#311f27;--primary:#9c315c;--muted:#725968;--border:#ead3dc;--surface:#fff3f7;--gold:#b68b4d;--dark:#3b202c;font-family:"Avenir Next",Avenir,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.site-container{width:min(100% - 40px,1360px);margin:auto}.skip-link{position:fixed;top:-5rem;left:1rem;background:#311f27;color:white;padding:.6rem 1rem;z-index:99}.skip-link:focus{top:1rem}.announcement{min-height:34px;display:grid;place-items:center;padding:6px 16px;background:var(--dark);color:#fff7fa;font-size:.78rem;letter-spacing:.045em;text-align:center}.site-header{position:sticky;top:0;z-index:20;background:#fff9fbec;backdrop-filter:blur(18px);border-bottom:1px solid #ead3dc}.header-inner{height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.wordmark{font-size:1.35rem;font-weight:500;letter-spacing:-.04em;white-space:nowrap}.wordmark span,.eyebrow,.text-link{color:var(--primary)}.wordmark span{font-weight:700}.site-header nav{display:flex;gap:clamp(1.2rem,2.4vw,2.5rem);align-items:center}.site-header nav a{font-size:.9rem;font-weight:600}.site-header nav a:hover{color:var(--primary)}.header-actions{justify-self:end;display:flex;gap:.25rem}.icon-button{border:0;background:transparent;min-width:42px;min-height:42px;border-radius:50%;cursor:pointer;font-size:1.35rem;color:var(--ink)}.icon-button:hover{background:#f9eaf0}.bag-button span{display:inline-grid;place-items:center;background:var(--primary);color:white;border-radius:99px;min-width:18px;height:18px;font-size:.66rem;font-weight:700;vertical-align:middle}.mobile-menu{display:none}.hero-shell{position:relative;min-height:calc(100dvh - 106px);overflow:hidden}.hero-image,.ritual-image-wrap img,.about-image img,.story-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,#fff9fbf7 0%,#fff9fbe0 31%,#fff9fb33 62%,transparent)}.hero-grid{position:relative;min-height:calc(100dvh - 106px);display:grid;align-items:center;grid-template-columns:minmax(0,.92fr) 1.08fr}.hero-copy{max-width:640px;padding:4.5rem 0}.eyebrow{margin:0 0 1rem;font-size:.76rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.hero-copy h1,.page-hero h1,.detail-copy h1{margin:0;max-width:11ch;font-size:clamp(3rem,5.4vw,5.5rem);line-height:.98;letter-spacing:-.065em;font-weight:650}.hero-intro{max-width:37rem;margin:1.5rem 0 0;color:#654654;font-size:1.1rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border-radius:99px;padding:0 1.5rem;border:1px solid transparent;font-weight:700;cursor:pointer}.primary-button{background:var(--primary);color:#fffafd;box-shadow:0 12px 28px #9c315c33}.secondary-button{border-color:#9c315c66;background:#fff9fbc2}.secondary-button:hover{background:#f9eaf0}.promise-strip{border-bottom:1px solid var(--border);background:#fffefe}.promise-grid{display:grid;grid-template-columns:repeat(3,1fr)}.promise-item{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.8rem clamp(1rem,3vw,3rem);border-right:1px solid var(--border)}.promise-item:first-child{padding-left:0}.promise-item:last-child{border:0}.promise-item b,.values-grid b{font-size:1.5rem;color:var(--gold)}.promise-item h2{margin:0;font-size:.96rem}.promise-item p{margin:.25rem 0 0;color:var(--muted);font-size:.87rem;line-height:1.45}.section-space,.shop-section,.reviews-section,.faq-section,.contact-section,.legal-section{padding:clamp(4rem,8vw,8rem) 0}.section-heading{max-width:650px;margin:0 0 3rem}.section-heading h2,.ritual-copy h2,.newsletter-inner h2,.about-feature h2,.story-copy h2{margin:0;font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.03;letter-spacing:-.055em}.section-heading p,.ritual-copy>p:not(.eyebrow),.newsletter-inner p,.about-feature p,.story-copy p{max-width:42rem;margin:1rem 0 0;color:var(--muted)}.featured-products{display:grid;grid-template-columns:1.15fr .92fr .92fr;gap:clamp(1rem,2.3vw,2.4rem);align-items:start}.product-editorial:nth-child(2){margin-top:5.5rem}.product-image-wrap,.shop-card-image{position:relative;display:block;overflow:hidden;border-radius:1rem;background:#f9eaf0}.product-image-wrap{aspect-ratio:4/5}.product-image-wrap img,.shop-card-image img,.detail-image img{width:100%;height:100%;object-fit:cover}.product-image-wrap img{transform:scale(1.72);transition:transform .65s}.product-image-wrap:hover img{transform:scale(1.79)}.product-meta{display:flex;justify-content:space-between;gap:1rem;padding-top:1.15rem}.product-meta h3{margin:0;font-size:1.1rem}.product-meta p{margin:.18rem 0 0;color:var(--muted);font-size:.86rem}.product-meta>span,.shop-card-copy span{color:var(--primary);font-weight:700;white-space:nowrap}.centered-button{display:flex;width:max-content;margin:3.2rem auto 0}.ritual-section{padding-bottom:clamp(5rem,9vw,9rem)}.ritual-grid{display:grid;grid-template-columns:1.1fr .9fr;min-height:680px;background:var(--surface);border-radius:1rem;overflow:hidden}.ritual-image-wrap{position:relative;min-height:580px}.ritual-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2.5rem,7vw,7rem)}.text-link{display:inline-flex;width:max-content;margin-top:1.5rem;font-weight:700}.testimonial-section{padding:clamp(5rem,10vw,9rem) 0;border-block:1px solid var(--border)}.testimonial-inner{text-align:center}.testimonial-inner>p{max-width:27ch;margin:auto;font-size:clamp(1.8rem,3.5vw,3.6rem);line-height:1.15;letter-spacing:-.04em}.testimonial-inner>span{display:block;margin-top:1.4rem;color:var(--muted)}.testimonial-inner .text-link{margin-inline:auto}.newsletter-section{padding:clamp(4rem,8vw,7rem) 0;background:var(--surface)}.newsletter-inner{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:end}.newsletter-form label,.field label{display:block;margin-bottom:.55rem;font-size:.88rem;font-weight:700}.newsletter-form>div{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid #d5aebe}.newsletter-form input{border:0;background:transparent;padding:.95rem .25rem;outline:0}.newsletter-form button{border:0;background:transparent;color:var(--primary);padding:.95rem .25rem .95rem 1rem;font-weight:800;cursor:pointer}.site-footer{padding:5rem 0 1.5rem;background:var(--dark);color:#fff7fa}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:3rem}.site-footer .wordmark{font-size:1.6rem}.footer-brand p{max-width:28rem;color:#e5cbd6}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start;gap:.65rem}.footer-grid h2{margin:0 0 .55rem;color:#d8ab77;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}.footer-grid a{color:#f9eaf0;font-size:.91rem}.footer-contact{color:#e5cbd6;font-size:.88rem}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;padding-top:2rem;margin-top:4rem;border-top:1px solid #ffffff24;color:#d9bdc8;font-size:.78rem}.footer-bottom div{display:flex;gap:1.5rem}.page-hero{padding:clamp(5rem,10vw,9rem) 0 clamp(4rem,7vw,6rem);background:var(--surface);border-bottom:1px solid var(--border)}.page-hero .site-container{max-width:900px}.page-hero p:last-child{max-width:42rem;margin:1.3rem 0 0;color:var(--muted);font-size:1.08rem}.shop-grid,.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.3rem,3vw,3rem)}.shop-card-image{aspect-ratio:4/4.8}.shop-card-copy{padding-top:1rem}.shop-card-copy h2{margin:0;font-size:1.15rem}.shop-card-copy p{margin:.15rem 0 1rem;color:var(--muted);font-size:.9rem}.shop-card-copy>div{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.product-add-button{border:1px solid #9c315c66;background:transparent;color:var(--primary);padding:.55rem .8rem;border-radius:99px;font-size:.82rem;font-weight:700;cursor:pointer}.product-add-button:hover{background:#f9eaf0}.product-detail{padding:clamp(4rem,7vw,7rem) 0}.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,8vw,9rem);align-items:center}.detail-image{height:min(76vh,760px);background:var(--surface);border-radius:1rem;overflow:hidden}.detail-copy{max-width:540px}.detail-copy h1{font-size:clamp(3rem,5vw,5rem)}.detail-subtitle{margin:.8rem 0;color:var(--muted);font-size:1.15rem}.detail-price{display:block;color:var(--primary);font-size:1.4rem;margin:1.2rem 0}.detail-copy>p:not(.eyebrow):not(.detail-subtitle){color:var(--muted)}.detail-copy dl{margin:1.8rem 0}.detail-copy dt{font-weight:700;margin-top:.8rem}.detail-copy dd{margin:0;color:var(--muted)}.about-feature,.story-section{padding:clamp(4rem,8vw,8rem) 0}.about-feature-grid,.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,8rem);align-items:center}.about-image,.story-image{position:relative;min-height:550px;border-radius:1rem;overflow:hidden}.about-feature h2,.story-copy h2{font-size:clamp(2.2rem,4vw,4rem)}.values-section{padding:0 0 clamp(5rem,8vw,8rem)}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.values-grid h2{margin:.8rem 0 0;font-size:1.1rem}.values-grid p{margin:.4rem 0;color:var(--muted)}.faq-layout,.contact-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:clamp(3rem,8vw,10rem)}.faq-accordion{border-top:1px solid var(--border)}details{border-bottom:1px solid var(--border);padding:1.25rem 0}summary{font-weight:700;cursor:pointer;list-style:none}summary:after{content:'+';float:right;font-size:1.4rem;color:var(--primary)}details[open] summary:after{content:'–'}details p{color:var(--muted);max-width:48rem}.faq-help,.contact-aside{height:max-content;padding:2rem;background:var(--surface);border-radius:1rem}.faq-help h2,.contact-aside h2{margin:0;font-size:1.4rem}.faq-help p,.contact-aside p{color:var(--muted)}.contact-form{max-width:760px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.field-row.three{grid-template-columns:1fr 1fr 1fr}.field{margin-bottom:1.2rem}.field label span{color:var(--muted);font-weight:400}.field input,.field textarea,.field select{width:100%;border:1px solid #d5aebe;border-radius:.5rem;background:#fffefe;padding:.75rem .8rem;color:var(--ink)}.contact-aside>div{margin-bottom:2rem}.contact-aside b{font-size:1.4rem;color:var(--gold)}.contact-aside a{color:var(--primary);font-weight:700}.placeholder-note{font-size:.86rem}.form-note{min-height:1.5em;color:var(--primary);font-weight:600}.reviews-grid{grid-template-columns:repeat(3,1fr)}.review-card{padding:2rem;border:1px solid var(--border);border-radius:1rem;background:#fffefe}.review-stars{color:var(--gold);letter-spacing:.12em}.review-card blockquote{margin:1.2rem 0;font-size:1.1rem;line-height:1.5}.review-card p{margin:0}.review-card span{display:block;color:var(--muted);font-size:.85rem}.legal-content{max-width:820px}.effective-date,.legal-note{color:var(--muted);font-size:.9rem}.legal-content section{margin-top:2.5rem}.legal-content h2{margin:0;font-size:1.4rem}.legal-content section p{color:var(--muted)}.cart-page,.checkout-page{padding:clamp(4rem,8vw,8rem) 0}.cart-title h1{margin:0;font-size:clamp(3rem,5vw,5rem);letter-spacing:-.06em}.cart-layout,.checkout-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(2rem,6vw,7rem);margin-top:3rem}.cart-item{display:grid;grid-template-columns:130px 1fr auto;gap:1.4rem;padding:0 0 1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border)}.cart-image{height:150px;border-radius:.8rem;overflow:hidden;background:var(--surface)}.cart-image img{width:100%;height:100%;object-fit:cover}.cart-item h2{margin:0;font-size:1.2rem}.cart-item p{margin:.2rem 0;color:var(--muted)}.quantity-control{display:flex;align-items:center;gap:.7rem;margin-top:1rem}.quantity-control button,.remove-button{border:0;background:transparent;color:var(--primary);font-size:1.25rem;cursor:pointer}.order-summary,.checkout-summary{height:max-content;padding:2rem;background:var(--surface);border-radius:1rem}.order-summary h2,.checkout-summary h2{margin-top:0}.summary-row,.checkout-summary-item,.checkout-summary-row,.checkout-total{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--border)}.order-summary p{color:var(--muted);font-size:.88rem}.order-summary .primary-button{width:100%;margin:1rem 0}.continue-link{display:block;text-align:center;color:var(--primary);font-weight:700}.empty-page{min-height:60vh;display:grid;place-items:center;text-align:center}.empty-state h1{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.06em}.checkout-form{max-width:700px}.back-link{display:inline-block;margin-bottom:2rem;color:var(--primary);font-weight:700}.checkout-heading h1{margin:0 0 2rem;font-size:clamp(2.5rem,4vw,4rem);letter-spacing:-.06em}.payment-choice{border-top:1px solid var(--border);margin-top:2rem;padding-top:1.5rem}.payment-choice h2{font-size:1.25rem}.payment-button{width:100%;margin:.4rem 0}.checkout-summary-item{font-size:.9rem}.checkout-total{font-size:1.1rem;font-weight:700}.drawer,.mobile-drawer{position:fixed;z-index:40;top:0;right:0;width:min(420px,100%);height:100vh;padding:2.5rem 1.5rem;background:var(--bg);box-shadow:-10px 0 40px #311f2722;transform:translateX(110%);transition:transform .25s;overflow:auto}.mobile-drawer{right:auto;left:0;transform:translateX(-110%)}.drawer.open,.mobile-drawer.open{transform:translateX(0)}.drawer-overlay{display:none;position:fixed;z-index:35;inset:0;background:#311f2766}.drawer-overlay.open{display:block}.drawer-close{float:right;border:0;background:none;font-size:2rem;cursor:pointer;color:var(--primary)}.drawer h2{margin-top:2rem}.bag-item{display:grid;grid-template-columns:75px 1fr auto;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border)}.bag-thumb img{width:75px;height:90px;object-fit:cover;border-radius:.5rem}.bag-item h3,.bag-item p{margin:0}.bag-item p{color:var(--muted)}.bag-footer{margin-top:1.5rem}.bag-footer .primary-button,.bag-footer .secondary-button{width:100%;margin:.4rem 0}.bag-total{display:flex;justify-content:space-between;font-size:1.1rem}.reveal-up{animation:reveal .8s both}@keyframes reveal{from{opacity:0;transform:translateY(24px)}}
@media(max-width:900px){.site-header nav,.desktop-search{display:none}.mobile-menu{display:inline-block;justify-self:start}.promise-grid,.ritual-grid,.newsletter-inner,.about-feature-grid,.story-grid,.faq-layout,.contact-grid,.cart-layout,.checkout-layout{grid-template-columns:1fr}.promise-item{border-right:0;border-bottom:1px solid var(--border);padding:1.4rem 0}.promise-item:first-child{padding-left:0}.featured-products{grid-template-columns:1fr 1fr}.product-editorial:first-child{grid-column:1/-1}.product-editorial:nth-child(2){margin:0}.footer-grid{grid-template-columns:1.4fr 1fr}.shop-grid,.reviews-grid{grid-template-columns:1fr 1fr}.product-detail-grid{grid-template-columns:1fr;gap:2rem}.detail-image{height:600px}.hero-grid{grid-template-columns:1fr;align-items:end}.hero-scrim{background:linear-gradient(0deg,#fff9fbfa 0%,#fff9fbcc 48%,#fff9fb10 78%)}}@media(max-width:600px){.site-container{width:min(100% - 32px,1360px)}.header-inner{height:64px}.hero-shell,.hero-grid{min-height:calc(100dvh - 98px)}.hero-image{object-position:64% center}.hero-actions{flex-direction:column}.hero-actions a{width:100%}.featured-products,.shop-grid,.reviews-grid{grid-template-columns:1fr}.product-editorial:first-child{grid-column:auto}.product-image-wrap{aspect-ratio:4/4.6}.ritual-grid{min-height:0}.ritual-image-wrap{min-height:460px}.newsletter-form>div{grid-template-columns:1fr}.newsletter-form button{padding-left:.25rem;text-align:left}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.field-row,.field-row.three{grid-template-columns:1fr}.about-image,.story-image{min-height:400px}.detail-image{height:440px}.cart-item{grid-template-columns:100px 1fr auto}.cart-image{height:125px}.page-hero h1{font-size:clamp(2.8rem,12vw,4.5rem)}}
