@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--purple:#482152;--green:#365441;--cream:#fbf8f2;--muted:#716b70}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--purple);font-family:'DM Sans',sans-serif}button,a,input{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #9a6835;outline-offset:5px}.wrap{max-width:1240px;width:calc(100% - 96px);margin:auto}.topline{background:var(--green);color:#fff;text-align:center;font-size:11px;letter-spacing:1.4px;padding:11px}header{height:108px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{font-weight:700;font-size:34px;letter-spacing:-1.5px;position:relative;padding-left:49px;line-height:1}.mark{position:absolute;left:0;top:0;border:2px solid var(--purple);border-radius:50%;width:37px;height:37px;text-align:center;font-size:29px}.mark span{position:absolute;font-size:18px;right:-9px;top:-12px;background:var(--cream)}.logo-small{display:block;font-size:8px;letter-spacing:2px;margin-top:9px}nav{display:flex;gap:30px;font-size:13px}nav a:hover{text-decoration:underline}.bag{border:1px solid #d8cdda;background:transparent;border-radius:28px;padding:11px 17px;font-size:12px;white-space:nowrap}.bag span{background:var(--purple);color:white;border-radius:50%;padding:3px 7px;margin-left:8px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;padding-top:18px;padding-bottom:66px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--green);margin:0 0 23px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:7px}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.12;letter-spacing:-2px;margin:0}h1{font-size:clamp(42px,4.6vw,68px)}em{color:var(--green);font-weight:500}p{line-height:1.7}.intro{max-width:385px;color:var(--muted);font-size:14px;margin:25px 0 30px}.primary{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;background:var(--purple);color:white;padding:17px 25px;border:0;border-radius:7px;font-weight:600;font-size:13px;min-height:49px}.primary:hover{background:#64316f}.primary span{font-size:20px}.hero-notes{display:flex;gap:22px;font-size:10px;color:var(--muted);margin-top:29px}.hero-photo{position:relative;height:475px;padding-bottom:20px}.hero-photo>img{height:100%;width:100%;object-fit:cover;border-radius:130px 12px 12px 12px;background:#e4d8cd}.photo-label{position:absolute;bottom:0;left:-23px;background:#e9eddf;padding:22px 70px 22px 24px;font-family:'Playfair Display',serif;font-size:20px;transform:rotate(-5deg);box-shadow:0 5px 15px #00000008}.photo-label strong{font-weight:600}.photo-label span{position:absolute;right:18px;top:25px;font-size:39px;color:var(--green)}.round-label{position:absolute;right:-18px;top:27px;border-radius:50%;background:var(--purple);color:#fff;width:105px;height:105px;text-align:center;padding:21px 10px;font-size:10px;letter-spacing:1px;line-height:1.5;transform:rotate(12deg)}.round-label b{font-size:24px}.ribbon{display:flex;justify-content:space-around;align-items:center;gap:25px;background:#eee9ef;padding:20px 25px;font-size:10px;font-weight:600;letter-spacing:1.7px}.ribbon i{font-style:normal;font-size:24px}.menu{padding-top:76px;padding-bottom:66px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px}.section-head p:last-child{color:var(--muted);font-size:13px}h2{font-size:43px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0}.filters button{border:1px solid #dfd9df;border-radius:30px;background:transparent;color:var(--muted);padding:11px 20px;font-size:12px}.filters .selected{background:var(--purple);color:#fff;border-color:var(--purple)}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.product{background:#fff;border:1px solid #eee8e7;border-radius:13px;overflow:hidden}.product-image{height:225px;position:relative;background:#e8e4dc}.product img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;top:14px;left:14px;background:var(--cream);padding:6px 10px;border-radius:20px;font-size:9px;font-weight:700;letter-spacing:.6px}.product-body{padding:23px}.product small{color:var(--green);font-size:10px;letter-spacing:1.5px}.product h3{font-size:19px;margin:8px 0}.product p{font-size:12px;color:var(--muted);min-height:40px;margin:9px 0 22px}.product-bottom{display:flex;justify-content:space-between;align-items:center}.product-bottom strong{font-size:19px}.product-bottom button{border:0;background:var(--purple);color:white;width:38px;height:38px;border-radius:50%;font-size:25px}.demo-note{text-align:center;color:var(--muted);font-size:10px;margin-top:24px}.custom-section{background:#e9eddf;padding:70px 0}.custom{display:grid;grid-template-columns:1fr 1fr;gap:80px}.custom p{font-size:13px;color:#586354}.custom h2{font-size:48px}.custom .primary{margin-top:15px}.steps{padding:0;margin:0;list-style:none;display:grid;gap:27px}.steps li{display:flex;gap:23px;align-items:start;border-bottom:1px solid #cdd4c6;padding-bottom:24px}.steps li:last-child{border:0;padding-bottom:0}.steps li>span{font-family:Georgia,serif;font-size:32px;color:#718168}.steps h3{font-size:18px;margin:1px 0 8px}.steps p{margin:0;max-width:310px}.essence{text-align:center;padding-top:76px;padding-bottom:76px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:65px;margin:43px 0}.values article>span{font-size:30px;color:var(--green)}.values h3{font-size:16px}.values p{font-size:12px;color:var(--muted)}.review{border-top:1px solid #e3dce1;padding-top:32px}.review>span{font-size:9px;letter-spacing:2px;color:var(--green)}.review p{font-family:'Playfair Display',serif;font-size:25px;margin:15px 0}.review small{font-size:10px;color:var(--muted)}footer{background:var(--purple);color:#eee5ed;padding:49px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.footer-logo{font-size:39px;letter-spacing:-2px;font-weight:600}.footer-grid p{font-size:12px;opacity:.75}.footer-grid h3{font-size:13px;margin-top:14px}.footer-bottom{border-top:1px solid #ffffff22;display:flex;justify-content:space-between;margin-top:35px;padding-top:20px;font-size:9px;opacity:.65}.skip{position:absolute;left:10px;top:-100px;background:#fff;padding:15px;z-index:10}.skip:focus{top:10px}dialog{border:0;border-radius:18px;background:var(--cream);color:var(--purple);padding:28px;width:min(540px,calc(100% - 24px));max-height:88dvh;overflow:auto}dialog::backdrop{background:#21102599;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;gap:15px;align-items:start}.dialog-head h2{font-size:31px;letter-spacing:-1px}.dialog-head .eyebrow{margin-bottom:8px}.close{background:transparent;border:0;color:var(--purple);font-size:30px;padding:0 6px}dialog p{font-size:13px}fieldset{border:0;padding:0;margin:25px 0}legend{font-weight:700;font-size:13px;margin-bottom:13px}.options{display:flex;flex-wrap:wrap;gap:10px}.options label{padding:12px;background:#eee8ed;border-radius:7px;font-size:12px;cursor:pointer}.options input{accent-color:var(--purple)}.allergy{font-size:11px!important;color:var(--muted)}.full{width:100%;justify-content:center}.cart-item{border-bottom:1px solid #ded4df;padding:18px 0}.cart-item h3{font-size:15px;margin:0}.cart-item p{color:var(--muted);font-size:11px}.quantity{display:flex;align-items:center;gap:12px}.quantity button{border:1px solid #cfc1d1;border-radius:5px;background:transparent;min-width:34px;min-height:34px;color:var(--purple)}.quantity strong{margin-left:auto}.total{display:flex;justify-content:space-between;margin-top:24px}#orderMessage{white-space:pre-wrap;background:#e9eddf;border-radius:6px;padding:0}#orderMessage:not(:empty){padding:15px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--green);color:white;padding:14px 24px;border-radius:30px;font-size:13px;z-index:20;opacity:0;pointer-events:none;transition:opacity .2s;width:max-content;max-width:90%}#toast.visible{opacity:1}@media(min-width:1450px){.hero-photo{height:540px}}@media(max-width:900px){.wrap{width:calc(100% - 48px)}nav{gap:16px;font-size:11px}.hero{gap:25px}.hero-photo{height:420px}h1{font-size:47px}.hero-notes{flex-direction:column;gap:10px}.product-image{height:180px}.product-body{padding:17px}.custom{gap:35px}.values{gap:30px}}@media(max-width:650px){.wrap{width:calc(100% - 36px)}header{height:88px}nav{display:none}.logo{font-size:29px}.bag{font-size:11px}.topline{font-size:9px;letter-spacing:.7px}.hero{grid-template-columns:1fr;padding-top:22px;gap:35px;padding-bottom:43px}h1{font-size:48px}.eyebrow{font-size:9px;margin-bottom:20px}.intro{font-size:13px;margin:21px 0}.hero-notes{flex-direction:row;font-size:9px;gap:18px;margin-top:22px}.hero-photo{height:370px;width:calc(100% - 13px);margin-left:4px}.hero-photo>img{border-top-left-radius:95px}.photo-label{left:-4px;font-size:19px;padding:17px 65px 17px 21px}.round-label{right:-12px;width:90px;height:90px;font-size:9px;padding-top:15px}.ribbon{font-size:8px;letter-spacing:.7px;gap:12px;padding:15px 18px}.ribbon span:nth-of-type(3),.ribbon i:last-child{display:none}.ribbon i{font-size:18px}.menu{padding-top:48px;padding-bottom:40px}.section-head{display:block}.section-head>p{display:none}h2{font-size:35px}.filters{gap:7px;margin:25px 0}.filters button{font-size:10px;padding:10px 12px}.products{grid-template-columns:1fr;gap:22px}.product-image{height:255px}.product-body{padding:22px}.product p{min-height:0}.custom-section{padding:45px 0}.custom{grid-template-columns:1fr;gap:38px}.custom h2{font-size:40px}.steps{gap:20px}.steps li{padding-bottom:20px}.essence{padding-block:48px}.values{grid-template-columns:1fr;gap:20px;margin:35px 0}.values article{max-width:280px;margin:auto}.values h3{margin:8px 0}.values p{margin:7px 0}.review p{font-size:23px}.footer-grid{grid-template-columns:1fr 1fr;gap:15px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:10px;font-size:9px}.dialog-head h2{font-size:27px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
