@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');

:root{
    --ink:#28221f;
    --muted:#746b66;
    --cream:#fbf7f2;
    --paper:#fffdfb;
    --rose:#ead1cf;
    --rose-dark:#a75f58;
    --plum:#4d3a4b;
    --line:#e9dfda;
    --shadow:0 20px 60px rgba(57,42,38,.10);
    --serif:'Cormorant Garamond', Georgia, serif;
    --sans:'DM Sans', Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1160px,92%);margin:auto}
.announcement{background:var(--plum);color:#fff;text-align:center;padding:7px 12px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,253,251,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(233,223,218,.8)}
.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;gap:11px}
.brand-mark{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:var(--rose);color:var(--plum);font:700 13px var(--serif);letter-spacing:.08em}
.brand strong{display:block;font:700 23px var(--serif);line-height:1}
.brand small{display:block;margin-top:4px;color:var(--muted);font-size:9px;letter-spacing:.16em;text-transform:uppercase}
.main-nav{display:flex;align-items:center;gap:25px;font-size:13px}
.main-nav>a:not(.nav-cta){padding:29px 0;position:relative;color:#4c4541}
.main-nav>a.active:not(.nav-cta)::after{content:"";position:absolute;bottom:20px;left:0;right:0;height:2px;background:var(--rose-dark)}
.nav-cta{background:var(--ink);color:#fff!important;padding:11px 16px;border-radius:99px;font-weight:600}
.menu-toggle{display:none;border:0;background:none;font-size:24px}
.hero{background:linear-gradient(120deg,#fcf8f4 0%,#f5e5e2 52%,#eee0e7 100%);overflow:hidden}
.hero-grid{min-height:610px;display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:30px}
.eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--rose-dark);font-weight:700}
.hero h1,.page-hero h1{font:600 clamp(50px,6vw,78px)/.88 var(--serif);letter-spacing:-.035em;margin:18px 0 25px;max-width:720px}
.hero h1 em{color:var(--rose-dark);font-style:normal}
.hero-copy>p{max-width:570px;color:var(--muted);font-size:16px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:3px;padding:13px 20px;font-size:12px;font-weight:700;letter-spacing:.05em;transition:.2s ease}
.btn-primary{background:var(--rose-dark);color:#fff}
.btn-primary:hover{transform:translateY(-2px);filter:brightness(.95)}
.btn-ghost{border:1px solid #cdbab4;background:rgba(255,255,255,.5)}
.btn-light{background:#fff;color:var(--ink)}
.hero-points{display:flex;flex-wrap:wrap;gap:16px;color:#625954;font-size:11px}
.hero-art{height:510px;position:relative}
.glow{position:absolute;width:390px;height:390px;border-radius:50%;background:rgba(255,255,255,.55);filter:blur(3px);left:70px;top:50px}
.hero-candle{position:absolute;bottom:55px;border-radius:48% 48% 14px 14px;box-shadow:0 25px 35px rgba(60,37,38,.16)}
.hero-candle span,.garden-candle:before{content:"";position:absolute;width:13px;height:28px;background:radial-gradient(ellipse at center bottom,#ffdf82 0 35%,#b76c3f 50%,transparent 53%);left:50%;top:-28px;transform:translateX(-50%);filter:drop-shadow(0 0 12px #e9a04d)}
.hero-candle-one{width:180px;height:150px;background:linear-gradient(135deg,#d8c4a6,#a88e69);left:85px;bottom:95px}
.hero-candle-two{width:220px;height:185px;background:linear-gradient(135deg,#8d7791,#55455c);left:215px;bottom:62px}
.hero-candle-three{width:130px;height:110px;background:linear-gradient(135deg,#e6c7c9,#b77978);right:40px;bottom:120px}
.petal{position:absolute;border-radius:100% 0 100% 0;background:rgba(180,133,140,.45);width:90px;height:45px;transform:rotate(25deg)}
.p1{left:20px;top:100px}.p2{right:30px;top:70px;transform:rotate(-30deg)}.p3{left:70px;bottom:30px;transform:rotate(-20deg)}
.section{padding:90px 0}
.section-tight{padding-top:55px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:35px}
.section-head h2,.soft-panel h2,.story-grid h2,.contact-card h2{font:600 46px/.95 var(--serif);margin:10px 0 0;letter-spacing:-.02em}
.text-link{font-size:12px;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:4px}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.product-card{border:1px solid var(--line);background:#fff;transition:.25s ease}
.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.product-image{display:block;aspect-ratio:1/1;position:relative;overflow:hidden;background:#f4eeeb}
.product-image img{width:100%;height:100%;object-fit:cover;transition:.4s ease}
.product-card:hover .product-image img{transform:scale(1.04)}
.pill{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.9);border-radius:99px;padding:5px 9px;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.product-body{padding:17px}
.product-body h3{font:600 25px var(--serif);margin:0 0 6px}
.product-body p{font-size:12px;color:var(--muted);margin:0 0 15px;min-height:58px}
.product-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:13px}
.product-meta strong{font-size:14px}
.product-meta a{font-size:11px;font-weight:700;color:var(--rose-dark)}
.tag-row{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:13px}
.tag-row span{font-size:9px;background:#f7f0ed;padding:4px 7px;border-radius:99px;color:#6c5a55}
.split-section{background:#f7f0ec;padding:85px 0}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.soft-panel{padding:20px}
.soft-panel>p{color:var(--muted);max-width:520px}
.benefits{margin-top:30px}
.benefits>div{display:flex;gap:18px;padding:17px 0;border-top:1px solid #ddcfca}
.benefits b{font:600 23px var(--serif);color:var(--rose-dark)}
.benefits strong,.benefits small{display:block}.benefits strong{font-size:13px}.benefits small{font-size:11px;color:var(--muted)}
.image-panel{min-height:450px;border-radius:2px;background:radial-gradient(circle at 50% 45%,#f9e6d2 0 8%,transparent 9%),linear-gradient(135deg,#d7b8a8,#5a4850);position:relative;overflow:hidden;box-shadow:var(--shadow)}
.image-panel:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.3),transparent 28%)}
.garden-candle{position:absolute;width:190px;height:125px;border-radius:50% 50% 16px 16px;background:#efe7d8;left:50%;top:48%;transform:translate(-50%,-50%);box-shadow:0 30px 40px rgba(40,24,25,.2);z-index:2}
.garden-candle:before{top:-38px}.mini-flame{position:absolute;top:-60px;left:50%;width:16px;height:30px;background:radial-gradient(ellipse,#fff2a6 0 30%,#c97d46 50%,transparent 55%);transform:translateX(-50%);filter:blur(.2px)}
.image-panel>span{position:absolute;left:28px;bottom:25px;color:#fff;font:600 25px var(--serif);z-index:3}
.dark-banner{padding:75px 0;background:#1e1a1c;color:#fff;text-align:center}
.dark-banner .eyebrow{color:#dfb6b0}.dark-banner h2{font:600 55px/.95 var(--serif);margin:13px auto 25px;max-width:800px}
.dark-banner p{color:#cfc5c4}.testimonials{background:#faf6f5}.centered{justify-content:center;text-align:center}
.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
blockquote{margin:0;padding:28px;background:#fff;border:1px solid var(--line);font:500 20px/1.25 var(--serif)}
blockquote cite{display:block;margin-top:20px;font:600 10px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--rose-dark)}
.page-hero{padding:90px 0 70px;background:linear-gradient(130deg,#fbf6f1,#f1e0e3)}
.page-hero h1{font-size:66px;max-width:850px}
.page-hero p{max-width:700px;color:var(--muted);font-size:15px}
.narrow{max-width:900px}
.filters{display:grid;grid-template-columns:1fr 250px auto;gap:10px;margin-bottom:30px}
.filters input,.filters select,.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);background:#fff;padding:13px 14px;font:inherit;outline:none}
.filters input:focus,.filters select:focus,.contact-form input:focus,.contact-form textarea:focus{border-color:#c89b95}
.empty-state{text-align:center;padding:80px;border:1px dashed var(--line)}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.detail-image{background:#f4eeeb;box-shadow:var(--shadow)}
.detail-copy h1{font:600 62px/.9 var(--serif);margin:12px 0}
.price{font-size:20px;font-weight:700;margin-bottom:20px}
.lead{font-size:16px;color:var(--muted);max-width:560px}
.detail-actions{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}
.info-note{padding:18px;background:#f7f0ed;font-size:12px;color:var(--muted);border-left:3px solid var(--rose-dark)}
.story-grid{display:grid;grid-template-columns:1fr .8fr;gap:80px;align-items:start}
.story-grid p{color:var(--muted)}
.story-card{background:#f7f0ec;padding:35px}
.story-number{font:600 35px var(--serif);color:var(--rose-dark);margin-top:10px}.story-card h3{font:600 25px var(--serif);margin:0}.story-card p{margin-top:2px}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px}
.contact-card{background:#f7f0ec;padding:40px}
.contact-card p{color:var(--muted);font-size:14px}
.contact-lines{margin-top:35px;border-top:1px solid #ded0cb}.contact-lines div{padding:15px 0;border-bottom:1px solid #ded0cb}.contact-lines strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.contact-lines span{font-size:13px;color:var(--muted)}
.contact-form{display:grid;gap:16px}.contact-form label{font-size:12px;font-weight:700}.contact-form input,.contact-form textarea{display:block;margin-top:6px}.contact-form textarea{resize:vertical}.contact-form small{font-size:10px;color:var(--muted)}.success{background:#e9f4e9;border:1px solid #c7dec7;padding:12px;font-size:12px}
.site-footer{background:#241e20;color:#fff;padding-top:60px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.3fr 1fr;gap:35px;padding-bottom:50px}.footer-brand{font:600 32px var(--serif)}.site-footer p{color:#bcb1b1;font-size:12px}.site-footer h4{margin:4px 0 15px;font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#d7b0aa}.site-footer a,.site-footer span{display:block;color:#c6bcbc;font-size:11px;margin:8px 0}.footer-bottom{border-top:1px solid #3d3537;padding:16px 0;color:#8e8485;font-size:10px}.floating-wa{position:fixed;right:22px;bottom:22px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#2d8b55;color:#fff;font-weight:700;font-size:12px;box-shadow:0 12px 25px rgba(0,0,0,.2);z-index:30}
.muted{color:#aaa!important}

@media(max-width:900px){
    .main-nav{gap:15px}.product-grid{grid-template-columns:repeat(2,1fr)}
    .hero-grid,.split-grid,.detail-grid,.story-grid,.contact-grid{grid-template-columns:1fr}
    .hero-art{height:430px}.quote-grid{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
    .menu-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:78px;background:#fff;padding:15px 4%;box-shadow:0 20px 30px rgba(0,0,0,.08);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav>a:not(.nav-cta){padding:10px 0}.main-nav>a.active:not(.nav-cta)::after{display:none}.nav-cta{text-align:center}.brand strong{font-size:20px}
    .hero-grid{min-height:auto;padding:65px 0 35px}.hero h1{font-size:54px}.hero-art{height:330px}.hero-candle-one{left:15px}.hero-candle-two{left:105px}.hero-candle-three{right:5px}
    .section{padding:60px 0}.section-head{display:block}.section-head h2,.soft-panel h2,.story-grid h2,.contact-card h2{font-size:38px}.text-link{display:inline-block;margin-top:15px}
    .product-grid{grid-template-columns:1fr 1fr;gap:12px}.product-body{padding:12px}.product-body h3{font-size:21px}.product-body p{min-height:80px}
    .filters{grid-template-columns:1fr}.page-hero{padding:60px 0 50px}.page-hero h1{font-size:52px}.detail-copy h1{font-size:52px}
    .footer-grid{grid-template-columns:1fr}.dark-banner h2{font-size:43px}
}
@media(max-width:460px){.product-grid{grid-template-columns:1fr}.hero-points{display:block}.hero-points span{display:block;margin:5px 0}}
