:root{--plum:#39142d;--berry:#63274d;--pink:#edb9cb;--cream:#faf6ee;--sand:#efe7dc;--ink:#321f29;--muted:#705e67;--line:#d9cdc9;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}button,input,select{font:inherit}button,a{touch-action:manipulation}button,a,input,select,summary{outline-offset:5px}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}img{display:block;max-width:100%}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}.skip{position:fixed;left:20px;top:-80px;z-index:99;background:white;padding:12px}.skip:focus{top:10px}.announcement{background:var(--plum);color:var(--cream);text-align:center;font-size:14px;padding:7px 20px;letter-spacing:.08em}header{height:99px;position:sticky;top:0;z-index:20;background:rgba(250,246,238,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;backdrop-filter:blur(15px)}.wordmark{font-family:var(--serif);font-weight:600;font-size:36px;line-height:1.1;letter-spacing:-.07em}.wordmark span{font-family:var(--sans);font-size:10px;display:block;letter-spacing:.4em;text-align:center;margin-top:7px}nav{display:flex;gap:38px;font-size:15px}nav a{position:relative}nav a:after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:1px;background:var(--berry);transform:scaleX(0);transform-origin:left;transition:transform .3s}nav a:hover:after{transform:scaleX(1)}.header-actions{display:flex;gap:24px}.icon-button,.bag-button{background:none;color:var(--ink);padding:8px;display:flex;align-items:center;gap:8px}.bag-button span{font-size:14px}.hero{min-height:660px;display:grid;grid-template-columns:1fr 1fr;background:var(--plum);color:var(--cream);overflow:hidden}.hero-copy{padding:78px 7% 34px 11%;position:relative}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.15em;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:1.05}h1{font-size:clamp(64px,6.3vw,100px);margin:22px 0 25px}em{font-weight:500;color:var(--berry)}.hero em{color:var(--pink)}.hero-copy p{max-width:375px;color:#e0cfd6;font-size:17px;line-height:1.7;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;min-height:52px;padding:14px 28px;border-radius:2px;transition:background .25s,transform .3s,box-shadow .3s}.button:hover{transform:translateY(-3px);box-shadow:0 7px 20px #39142d20}.cream{color:var(--plum);background:var(--cream)}.cream:hover{background:var(--pink)}.plum{background:var(--plum);color:var(--cream)}.plum:hover{background:var(--berry)}.outline{background:transparent;border:1px solid var(--plum);color:var(--plum)}.hero-note{display:flex;gap:28px;font-size:10px;letter-spacing:.07em;margin-top:60px;color:#d9b9c7}.hero-art{position:relative;display:flex;align-items:center;justify-content:center;background:#d7afbc;overflow:hidden}.hero-art:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 90px #682e5120;pointer-events:none}.hero-art>img{height:100%;width:100%;object-fit:cover;mix-blend-mode:multiply;animation:hero-arrive 1.1s ease both}.hero-orbit{position:absolute;width:85%;aspect-ratio:1;border:1px solid #ffffff60;border-radius:50%;z-index:1;pointer-events:none}.hero-stamp{position:absolute;right:6%;top:7%;border:1px solid var(--plum);width:122px;height:122px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:10px;letter-spacing:.12em;text-align:center;line-height:1.5;color:var(--plum);background:#faf6eea8;transform:rotate(12deg)}.hero-stamp span{font-family:var(--serif);font-size:21px;font-style:italic;letter-spacing:-.04em}.hero-product{position:absolute;left:8%;bottom:6%;background:#faf6eedb;color:var(--plum);padding:18px 24px;backdrop-filter:blur(12px);border-left:2px solid var(--plum)}.hero-product>span{font-size:10px;letter-spacing:.14em;display:block}.hero-product strong{font-family:var(--serif);font-size:23px;font-weight:500;display:block}.hero-product small{font-size:12px;border-bottom:1px solid;margin-top:7px;display:inline-block}.ribbon{background:var(--pink);padding:18px 0;overflow:hidden;font-size:14px;letter-spacing:.14em;color:var(--plum)}.ribbon>div{white-space:nowrap;width:max-content;animation:marquee 35s linear infinite}.ribbon span{margin:0 40px;font-size:22px}.shop-section{padding:95px 5.5% 85px;text-align:center}.section-top{text-align:left;display:flex;justify-content:space-between;align-items:end;margin-bottom:40px}.section-top h2{font-size:52px;margin:15px 0 0}.section-top>p{color:var(--muted);margin:0 0 6px}.shop-controls{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px}#filters{display:flex;gap:8px;flex-wrap:wrap}#filters button{background:transparent;border:1px solid var(--line);border-radius:30px;padding:10px 19px;font-size:14px;color:var(--ink);transition:all .25s}#filters button[aria-pressed=true],#filters button:hover{color:var(--cream);background:var(--plum);border-color:var(--plum)}.sort-label{font-size:12px;white-space:nowrap;color:var(--muted)}select{font-size:13px;border:none;background:none;color:var(--ink);padding:9px 6px;max-width:165px}.results-line{display:flex;justify-content:space-between;align-items:center;margin:22px 0;font-size:11px;color:var(--muted);letter-spacing:.06em}.search-row{padding:24px 0;display:flex;gap:20px;align-items:center}.search-row[hidden]{display:none}.search-row input{background:white;border:1px solid var(--line);padding:12px 16px;flex:1;min-width:0}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 23px;text-align:left}.product-card{min-width:0;animation:fade-up .45s both;animation-delay:calc(var(--i)*40ms)}.product-image{position:relative;background:var(--sand);aspect-ratio:4/5;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}.product-image:hover img{transform:scale(1.055)}.product-image>.image-open{position:absolute;inset:0;background:transparent;width:100%;padding:0}.product-tag{position:absolute;top:13px;left:13px;background:var(--cream);font-size:10px;padding:5px 10px;letter-spacing:.08em;pointer-events:none}.quick-add{position:absolute;bottom:13px;right:13px;background:var(--cream);border-radius:50%;width:42px;height:42px;font-size:23px;color:var(--plum);box-shadow:0 3px 15px #0001;transition:background .2s,transform .2s}.quick-add:hover{background:var(--pink);transform:rotate(90deg)}.quick-add:disabled{font-size:11px;border-radius:2px;width:auto;padding:0 12px;cursor:default}.product-info{padding:15px 0}.product-category{font-size:10px;letter-spacing:.12em;color:var(--muted);text-transform:uppercase}.product-title{font-family:var(--serif);font-size:21px;line-height:1.25;margin:6px 0 9px;background:none;text-align:left;color:var(--ink);padding:0;font-weight:500;display:block}.product-price{font-size:14px}.product-title:hover{text-decoration:underline;text-underline-offset:5px}#load-more{margin-top:33px}.empty{padding:50px 0}.ritual-section{background:#e8e4d8;display:grid;grid-template-columns:1fr 1fr}.ritual-image{position:relative;overflow:hidden;background:#ccc6b5}.ritual-image img{height:100%;width:100%;object-fit:cover;max-height:720px;mix-blend-mode:multiply}.image-caption{position:absolute;left:8%;bottom:30px;color:white;background:#39142d9c;padding:8px 16px;font-size:11px;letter-spacing:.1em}.ritual-copy{padding:80px 11%}.ritual-copy h2{font-size:58px;margin:20px 0 24px}.ritual-copy>p{color:var(--muted);max-width:410px;font-size:16px}.ritual-tabs{display:flex;gap:18px;border-bottom:1px solid #bfb5b3;margin-top:40px}.ritual-tabs button{background:none;padding:12px 0;color:var(--muted);font-size:14px;border-bottom:2px solid transparent}.ritual-tabs button[aria-selected=true]{color:var(--plum);border-color:var(--plum)}#ritual-panel{padding:24px 0;min-height:180px}#ritual-panel h3{font-family:var(--serif);font-size:25px;font-weight:500;margin-bottom:9px}#ritual-panel p{font-size:14px;color:var(--muted)}.text-button{display:inline-block;background:none;padding:0 0 4px;border-bottom:1px solid currentColor;font-size:14px;color:inherit}.story-section{text-align:center;padding:95px 20px 100px;background:var(--plum);color:var(--cream);position:relative;overflow:hidden}.story-section h2{font-size:65px;margin:25px 0}.story-section em{color:var(--pink)}.story-section p{max-width:590px;margin:0 auto 30px;color:#dfcdd6;font-size:17px}.story-flower{position:absolute;font-size:340px;color:#63274d;right:-50px;bottom:-90px;pointer-events:none;z-index:0}.story-section>*:not(.story-flower){position:relative;z-index:1}.faq-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;padding:85px 9%}.faq-section h2{font-size:45px;margin-top:20px}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;font-size:16px}.faq-list summary:after{content:'+';font-size:22px;margin-left:20px}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:14px;color:var(--muted);padding-top:18px;margin-bottom:0}.faq-list p a{text-decoration:underline}footer{background:var(--sand);padding:55px 5.5% 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:45px}.footer-top h2{font-size:35px;margin:0}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.footer-bottom>div{display:flex;gap:20px}.footer-bottom>span:last-child{font-size:10px;letter-spacing:.07em}dialog{border:none;color:var(--ink);background:var(--cream);padding:0;box-shadow:0 30px 100px #0003}dialog::backdrop{background:#1a091f75;backdrop-filter:blur(4px)}dialog[open]{animation:fade-up .3s}.dialog-close{font-size:30px;line-height:1;background:none;position:absolute;right:20px;top:20px;z-index:2;color:var(--ink);width:34px;height:34px;background:var(--cream);border-radius:50%}#product-dialog{width:min(900px,92vw);max-height:90vh;border-radius:3px}#product-detail{display:grid;grid-template-columns:1fr 1fr}#product-detail>img{width:100%;height:100%;object-fit:cover;max-height:680px}.detail-copy{padding:60px 35px 40px}.detail-copy h2{font-size:37px;margin:14px 0 20px}.detail-price{font-size:22px;margin:15px 0}.detail-description{font-size:14px;color:var(--muted);max-height:220px;overflow:auto}.detail-copy select{border:1px solid var(--line);width:100%;max-width:none;margin:10px 0;padding:12px}.detail-copy .button{width:100%;margin-top:16px}.detail-copy small{display:block;margin-top:14px;font-size:12px;color:var(--muted)}.original-link{display:inline-block;font-size:12px;text-decoration:underline;margin-top:15px}#bag-dialog{margin:0 0 0 auto;max-height:100dvh;height:100dvh;width:min(460px,100vw);max-width:100vw;padding:28px 30px;display:none;flex-direction:column}#bag-dialog[open]{display:flex;animation:slide-in .35s}.bag-head{border-bottom:1px solid var(--line);padding-bottom:14px}.bag-head h2{font-size:34px;margin:0 0 10px}#bag-items{overflow:auto;flex:1;padding:20px 0}.bag-item{display:grid;grid-template-columns:75px 1fr;gap:17px;border-bottom:1px solid var(--line);padding:0 0 20px;margin:0 0 20px}.bag-item>img{width:75px;height:100px;object-fit:cover}.bag-item h3{font-family:var(--serif);font-size:18px;font-weight:500;line-height:1.3;margin:0 0 4px}.bag-item p{font-size:13px;margin:0 0 9px}.quantity{display:flex;gap:12px;align-items:center;font-size:13px}.quantity button{background:none;border:1px solid var(--line);width:28px;height:28px}.quantity .remove{border:none;width:auto;color:var(--muted);font-size:11px;text-decoration:underline}.bag-bottom{border-top:1px solid var(--line);padding-top:20px}.subtotal{display:flex;justify-content:space-between}.bag-bottom p{font-size:12px;color:var(--muted)}.bag-bottom .button{width:100%;margin:6px 0 16px}.bag-bottom>.text-button{display:block;margin:auto}.button[aria-disabled=true]{opacity:.5;pointer-events:none}#toast{position:fixed;z-index:50;bottom:25px;left:50%;transform:translate(-50%,30px);background:var(--plum);color:white;padding:13px 25px;font-size:14px;box-shadow:0 6px 25px #0002;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}#toast.show{opacity:1;transform:translate(-50%,0)}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}.js-motion .reveal.visible{opacity:1;transform:none}[hidden]{display:none!important}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes hero-arrive{from{transform:scale(1.05);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fade-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes slide-in{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero{min-height:800px}.hero-art>img{max-height:850px}.hero-copy{padding-top:120px}}@media(max-width:1000px){header{padding:0 4%;height:85px}nav{gap:22px}.hero-copy{padding:55px 8%}.hero{min-height:600px}h1{font-size:70px}.hero-note{display:none}.hero-stamp{width:98px;height:98px}.hero-product{left:6%;right:6%;padding:12px 18px}.hero-product strong{font-size:20px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-controls{align-items:start;flex-direction:column}.ritual-copy{padding:55px 9%}.ritual-copy h2{font-size:47px}.ritual-tabs{gap:12px}.ritual-tabs button{font-size:12px}.section-top h2{font-size:46px}.faq-section{padding:65px 5.5%}}
@media(max-width:650px){html{scroll-padding-top:82px}.announcement{font-size:11px;padding:6px}.wordmark{font-size:29px}.wordmark span{font-size:8px}header{height:76px}.header-actions{gap:6px}nav{gap:15px;font-size:12px}nav a:nth-child(n+2){display:none}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:42px 7% 38px}.hero-copy .eyebrow{font-size:10px}h1{font-size:67px;line-height:.98;margin:20px 0}h1 br:nth-child(2){display:none}.hero-copy p{font-size:15px;max-width:340px;margin-bottom:24px}.hero-art{height:440px}.hero-stamp{top:7%;right:7%}.hero-art>img{object-position:50% 40%}.hero-product{bottom:6%;right:auto;max-width:85%}.ribbon{font-size:11px;padding:12px 0}.ribbon span{margin:0 20px}.shop-section{padding:55px 5%}.section-top{display:block;margin-bottom:28px}.section-top h2{font-size:37px}.section-top>p{font-size:14px;margin-top:20px}.eyebrow{font-size:10px}#filters{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:5px}#filters button{flex-shrink:0;font-size:12px;padding:8px 14px}.shop-controls{gap:4px;padding-bottom:8px;width:100%}.results-line{font-size:10px}.results-line>span:last-child{display:none}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.product-title{font-size:18px}.product-category{font-size:9px}.product-info{padding:12px 0}.product-price{font-size:13px}.product-tag{left:8px;top:8px;padding:4px 7px;font-size:8px}.quick-add{width:34px;height:34px;right:8px;bottom:8px;font-size:20px}.ritual-section{grid-template-columns:1fr}.ritual-image{height:420px}.ritual-image img{object-position:50% 35%}.ritual-copy{padding:45px 7% 30px}.ritual-copy h2{font-size:44px}.ritual-tabs button{font-size:14px}.story-section{padding:65px 7%}.story-section h2{font-size:43px}.story-section p{font-size:15px}.story-flower{font-size:260px;opacity:.6}.faq-section{grid-template-columns:1fr;gap:10px;padding:55px 7%}.faq-section h2{font-size:37px}.faq-list summary{font-size:14px}.footer-top{display:block;padding-bottom:25px}.footer-top h2{font-size:33px;margin:30px 0 25px}.footer-bottom{display:flex;flex-wrap:wrap;gap:15px;font-size:10px}.footer-bottom>span:last-child{width:100%}#product-detail{grid-template-columns:1fr}#product-detail>img{height:300px;object-position:center 35%}.detail-copy{padding:25px}.detail-copy h2{font-size:30px}.detail-description{max-height:150px}.search-row{flex-wrap:wrap;gap:10px}.search-row label{width:100%}.search-row input{width:100%}#toast{width:90%;text-align:center}#bag-dialog{padding:25px}.hero-orbit{width:75%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}.ribbon>div{transform:none}}
.hero-art>img{position:absolute;inset:0}.hero{min-height:720px}@media(max-width:1000px){.hero{min-height:630px}}@media(max-width:650px){.hero{min-height:0}}

.wordmark{font-size:32px;letter-spacing:-.06em}.wordmark span{font-size:9px;letter-spacing:.22em}@media(max-width:650px){.wordmark{font-size:26px}.wordmark span{font-size:8px}}
@media(max-width:650px){h1{font-size:clamp(48px,14vw,57px);line-height:1.05}h1 br:nth-child(2){display:initial}}

.contact-fields{display:grid;gap:12px;max-width:650px;margin-top:30px}.contact-fields input,.contact-fields textarea{font:inherit;padding:12px;border:1px solid var(--line);background:white}.contact-fields button{justify-self:start}
