
:root{
  --ink:#17110D;--ink-deep:#0E0A07;--ink-line:rgba(247,239,226,.14);
  --cream-on-ink:#F7EFE2;--cream-on-ink-soft:rgba(247,239,226,.74);
  --gold:#C9A15C;--gold-soft:#E4C892;--rose-script:#E39C93;
  --cream:#FBF5EA;--cream-deep:#F3E9D6;--wax-white:#FFFDF9;
  --coffee:#2E1D14;--coffee-soft:#4A3527;--caramel:#B8752F;--caramel-deep:#96591E;
  --line:rgba(46,29,20,.14);--shadow:0 28px 70px -42px rgba(46,29,20,.48)
}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--coffee);font-family:'DM Sans',sans-serif;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,.display{font-family:'Fraunces',serif;font-weight:450;letter-spacing:-.01em}.script{font-family:'Parisienne',cursive}.label{font-family:'Space Mono',monospace;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem}.wrap{max-width:1180px;margin:0 auto;padding:0 32px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* nav */
header.nav{position:absolute;top:0;left:0;right:0;z-index:40;padding:26px 0;color:var(--cream-on-ink)}header.nav.nav-dark{position:relative;background:var(--ink-deep);border-bottom:1px solid var(--ink-line)}.nav-inner{display:flex;align-items:center;justify-content:space-between}.logo-block{display:flex;align-items:baseline;gap:10px}.logo-mark-text{font-family:'Fraunces',serif;font-size:1.5rem;letter-spacing:.04em}.logo-sub{font-family:'Space Mono',monospace;font-size:.58rem;letter-spacing:.22em;color:var(--gold-soft);text-transform:uppercase}.links{display:flex;gap:34px;align-items:center}.links a{font-family:'Space Mono',monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-on-ink-soft);transition:.25s}.links a:hover,.links a[aria-current=page]{color:var(--gold-soft)}.menu-btn{display:none;background:none;border:1px solid var(--ink-line);color:var(--cream-on-ink);padding:9px 11px;font-family:'Space Mono',monospace;text-transform:uppercase;letter-spacing:.1em;font-size:.64rem}
/* hero */
.hero{position:relative;min-height:88vh;background:var(--ink);display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;inset:0 0 0 auto;width:62%}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:60% 32%}.hero-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,rgba(23,17,13,.72) 26%,rgba(23,17,13,.12) 58%,rgba(23,17,13,.04) 100%)}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--ink) 0%,rgba(23,17,13,0) 22%)}.hero-inner{position:relative;z-index:5;padding:150px 0 90px;max-width:620px}.hero-eyebrow{color:var(--gold-soft);margin-bottom:22px;display:inline-block}.hero h1{color:var(--cream-on-ink);font-size:clamp(2.7rem,5.4vw,4.5rem);line-height:1.02}.hero h1 .script-line{display:block;font-family:'Parisienne',cursive;color:var(--rose-script);font-size:1.55em;line-height:1;margin-top:4px}.hero-sub{margin-top:26px;color:var(--cream-on-ink-soft);font-size:1.05rem;max-width:470px}.hero-cta,.btn{display:inline-block;margin-top:34px;padding:15px 30px;border:1px solid var(--gold);font-family:'Space Mono',monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;transition:.25s}.hero-cta{color:var(--cream-on-ink)}.hero-cta:hover,.btn.primary{background:var(--gold);color:var(--ink-deep)}.btn.primary:hover{background:var(--gold-soft);border-color:var(--gold-soft)}.btn.secondary{color:var(--coffee);border-color:rgba(46,29,20,.34);margin-left:10px}.btn.secondary:hover{border-color:var(--caramel-deep);color:var(--caramel-deep)}
/* features */
.features{background:var(--cream);padding:56px 0;border-bottom:1px solid var(--line)}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.feature{text-align:center;padding:0 12px}.feature svg{width:30px;height:30px;margin:0 auto 16px;stroke:var(--caramel-deep)}.feature h3{font-size:.98rem;margin-bottom:6px}.feature p{font-size:.84rem;color:var(--coffee-soft)}
/* collection */
.collection{background:var(--ink-deep);padding:106px 0 100px}.collection-head{text-align:center;margin-bottom:60px}.collection-head .label{color:var(--gold-soft)}.collection-head h2{color:var(--cream-on-ink);font-size:clamp(2rem,3.4vw,2.7rem);margin:16px 0 14px}.collection-head p{color:var(--cream-on-ink-soft);font-size:.98rem;max-width:680px;margin:0 auto}.divider-flourish{width:46px;height:1px;background:var(--gold);margin:22px auto 0;position:relative}.divider-flourish:after{content:"✦";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--gold);font-size:.7rem;background:var(--ink-deep);padding:0 8px}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px 30px}.candle-card{text-align:center}.candle-photo{aspect-ratio:4/5;border-radius:14px;overflow:hidden;border:1px solid var(--ink-line);margin-bottom:20px;background:#241a14}.candle-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.candle-card:hover .candle-photo img{transform:scale(1.035)}.candle-card h3{color:var(--cream-on-ink);font-size:1.08rem;margin-bottom:4px}.candle-card .note{font-family:'Space Mono',monospace;font-size:.64rem;letter-spacing:.09em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:12px}.candle-card .shop-link{display:inline-block;font-family:'Space Mono',monospace;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cream-on-ink-soft);border-bottom:1px solid var(--ink-line);padding-bottom:3px;transition:.25s}.candle-card .shop-link:hover{color:var(--gold-soft);border-color:var(--gold)}.collection-more{text-align:center;margin-top:56px}.collection-more .btn{color:var(--cream-on-ink);margin:0}
/* story + SEO copy */
.story{background:var(--cream);padding:110px 0}.story-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.story-photo{border-radius:16px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:.763}.story-photo img{width:100%;height:100%;object-fit:cover}.story-text .label{color:var(--caramel-deep)}.story-text h2{font-size:clamp(1.9rem,3vw,2.5rem);margin:16px 0 22px}.story-text p{color:var(--coffee-soft);font-size:1rem;max-width:500px}.story-text p+p{margin-top:16px}.story-sign{margin-top:30px;font-family:'Parisienne',cursive;font-size:1.7rem;color:var(--caramel-deep)}.seo-copy{padding:86px 0;background:var(--cream-deep);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.seo-copy-inner{max-width:850px}.seo-copy .label{color:var(--caramel-deep)}.seo-copy h2{font-size:clamp(1.8rem,3vw,2.35rem);margin:13px 0 18px}.seo-copy p{color:var(--coffee-soft)}.seo-copy p+p{margin-top:12px}
/* contact */
.contact{background:var(--ink);padding:106px 0 88px}.contact-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.contact .label{color:var(--gold-soft)}.contact h2{color:var(--cream-on-ink);margin-top:14px;font-size:clamp(1.9rem,3vw,2.4rem)}.contact .intro{color:var(--cream-on-ink-soft);margin-top:18px;max-width:400px}.contact-detail{display:flex;gap:16px;margin-top:30px;align-items:flex-start}.contact-detail .icon{width:38px;height:38px;border-radius:50%;border:1px solid var(--ink-line);display:flex;align-items:center;justify-content:center;color:var(--gold-soft);font-family:'Fraunces',serif;flex-shrink:0}.contact-detail strong{display:block;color:var(--cream-on-ink);font-size:.92rem;margin-bottom:2px}.contact-detail span,.contact-detail a{color:var(--cream-on-ink-soft);font-size:.92rem}.contact-detail a:hover{color:var(--gold-soft)}form#contact-form{display:flex;flex-direction:column;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}form label{font-family:'Space Mono',monospace;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cream-on-ink-soft);display:block;margin-bottom:8px}form input,form select,form textarea{width:100%;background:rgba(247,239,226,.05);border:1px solid var(--ink-line);color:var(--cream-on-ink);padding:13px 14px;font:inherit;font-size:.94rem;border-radius:4px}form select option{background:#fff;color:#17110D}form textarea{min-height:110px;resize:vertical}form input::placeholder,form textarea::placeholder{color:rgba(247,239,226,.35)}form input:focus,form select:focus,form textarea:focus{outline:1px solid var(--gold);border-color:var(--gold)}.submit-btn{align-self:flex-start;background:var(--gold);color:var(--ink-deep);border:0;padding:15px 32px;font-family:'Space Mono',monospace;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:4px}.submit-btn:hover{background:var(--gold-soft)}.form-note{font-size:.78rem;color:var(--cream-on-ink-soft)}
/* inner pages */
.page-hero{background:var(--ink-deep);color:var(--cream-on-ink);padding:86px 0 72px;border-bottom:1px solid var(--ink-line)}.page-hero .label{color:var(--gold-soft)}.page-hero h1{font-size:clamp(2.3rem,5vw,4rem);margin:12px 0}.page-hero p{max-width:690px;color:var(--cream-on-ink-soft);font-size:1.02rem}.breadcrumbs{font-family:'Space Mono',monospace;font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--cream-on-ink-soft);margin-bottom:24px}.breadcrumbs a:hover{color:var(--gold-soft)}
.product-main{padding:78px 0 96px}.product-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:start}.gallery-main{border-radius:18px;overflow:hidden;background:#eee;box-shadow:var(--shadow);aspect-ratio:4/5}.gallery-main img{width:100%;height:100%;object-fit:cover}.thumb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.thumb{border:1px solid var(--line);padding:0;background:none;border-radius:10px;overflow:hidden;cursor:pointer;aspect-ratio:1/1}.thumb img{width:100%;height:100%;object-fit:cover}.thumb[aria-current=true]{outline:2px solid var(--caramel-deep);outline-offset:2px}.product-info{position:sticky;top:28px}.product-info .label{color:var(--caramel-deep)}.product-info h1{font-size:clamp(2.15rem,4vw,3.2rem);line-height:1.08;margin:10px 0 10px}.product-notes{font-family:'Space Mono',monospace;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;color:var(--caramel-deep);margin-bottom:24px}.product-price{display:flex;align-items:baseline;gap:12px;margin:-8px 0 24px;padding-bottom:18px;border-bottom:1px solid var(--line)}.price-amount{font-family:'Fraunces',serif;font-size:1.55rem;font-weight:600;color:var(--coffee)}.price-source{font-family:'Space Mono',monospace;font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:#7d6757}.product-info .lead{font-size:1.08rem;color:var(--coffee-soft);margin-bottom:18px}.product-info p+p{margin-top:13px}.details{margin:28px 0 0;border-top:1px solid var(--line)}.details li{list-style:none;display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--coffee-soft);font-size:.92rem}.details li:before{content:'✦';color:var(--caramel-deep);font-size:.65rem;margin-top:4px}.cta-row{margin-top:28px;display:flex;flex-wrap:wrap;align-items:center}.missing-note{margin-top:13px;font-size:.82rem;color:#765d4d}.disclosure{margin-top:28px;padding:16px 18px;background:var(--cream-deep);border-left:3px solid var(--gold);font-size:.82rem;color:var(--coffee-soft)}
.related{padding:72px 0;background:var(--ink-deep)}.related h2{color:var(--cream-on-ink);text-align:center;font-size:2rem;margin-bottom:32px}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1040px;margin:0 auto}
.related-card{display:flex;align-items:center;gap:14px;min-height:118px;padding:12px;background:#17110d;border:1px solid var(--ink-line);border-radius:14px;overflow:hidden;transition:transform .2s ease,border-color .2s ease}
.related-card:hover{transform:translateY(-2px);border-color:rgba(228,200,146,.35)}
.related-card img{flex:0 0 92px;width:92px;height:92px;object-fit:contain;object-position:center;background:#F3E9D6;border-radius:10px;padding:6px}
.related-card div{min-width:0;padding:0 4px}
.related-card h3{color:var(--cream-on-ink);font-size:1rem;line-height:1.22;margin:0 0 7px}
.related-card p{color:var(--gold-soft);font-family:'Space Mono',monospace;font-size:.57rem;letter-spacing:.06em;text-transform:uppercase;line-height:1.45;margin:0}
/* collection page */
.catalog{padding:80px 0 100px;background:var(--cream)}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 28px}.catalog-card{background:var(--wax-white);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 18px 45px -38px rgba(46,29,20,.7)}.catalog-card img{width:100%;aspect-ratio:4/5;object-fit:cover}.catalog-card .content{padding:20px}.catalog-card h2{font-size:1.25rem}.catalog-card .note{font-family:'Space Mono',monospace;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--caramel-deep);margin:4px 0 10px}.catalog-card p{font-size:.9rem;color:var(--coffee-soft)}.catalog-card .view{display:inline-block;margin-top:13px;font-family:'Space Mono',monospace;font-size:.64rem;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--line);padding-bottom:2px}.catalog-card .view:hover{color:var(--caramel-deep);border-color:var(--caramel-deep)}
/* footer */
footer{background:var(--ink-deep);padding:34px 0;border-top:1px solid var(--ink-line)}footer .wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}footer .logo{font-family:'Fraunces',serif;color:var(--cream-on-ink);font-size:1.02rem}footer p{color:var(--cream-on-ink-soft);font-size:.82rem}
@media(max-width:900px){.links{display:none}.menu-btn{display:block}.links.open{display:flex;position:absolute;top:78px;left:20px;right:20px;background:var(--ink-deep);border:1px solid var(--ink-line);padding:18px;flex-direction:column;align-items:flex-start;gap:18px}.hero{min-height:78vh}.hero-photo{width:100%;opacity:.56}.hero-photo:before{background:linear-gradient(180deg,rgba(23,17,13,.5) 0%,var(--ink) 82%)}.hero-inner{max-width:100%;padding:130px 0 70px}.features-grid{grid-template-columns:repeat(2,1fr)}.collection-grid,.catalog-grid{grid-template-columns:repeat(2,1fr)}.story-inner,.contact-inner,.product-grid{grid-template-columns:1fr}.product-info{position:static}.related-grid{grid-template-columns:1fr;max-width:620px}.related-card{grid-template-columns:128px 1fr;min-height:138px}.related-card img{width:128px;height:138px}}
@media(max-width:560px){.wrap{padding:0 20px}.collection-grid,.catalog-grid{grid-template-columns:1fr}.related{padding:52px 0}.related h2{font-size:1.65rem;margin-bottom:22px}.related-grid{grid-template-columns:1fr;gap:12px}.related-card{grid-template-columns:104px 1fr;min-height:112px}.related-card img{width:104px;height:112px;padding:5px}.related-card div{padding:11px 13px}.related-card h3{font-size:.92rem}.related-card p{font-size:.54rem}.form-row{grid-template-columns:1fr}.features-grid{grid-template-columns:1fr 1fr;gap:34px 16px}.hero h1{font-size:2.7rem}.btn.secondary{margin-left:0}.cta-row{gap:8px}.thumb-grid{gap:8px}.page-hero{padding:66px 0 54px}.product-main{padding:50px 0 70px}}

/* SEO-rich product content */
.product-story-section{padding:74px 0 82px;background:var(--cream-deep);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.product-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.product-story-copy .label{color:var(--caramel-deep)}
.product-story-copy h2,.product-story-copy h3{color:var(--coffee);line-height:1.15;margin:12px 0 18px}
.product-story-copy h2{font-size:clamp(1.7rem,3vw,2.35rem)}
.product-story-copy h3{font-size:clamp(1.4rem,2.4vw,1.9rem)}
.product-story-copy p{color:var(--coffee-soft);font-size:.98rem;max-width:620px}
.product-story-copy p+p{margin-top:16px}
.product-story-copy a{color:var(--caramel-deep);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.product-story-copy a:hover{color:var(--coffee)}
.product-care-note{padding-top:16px;border-top:1px solid var(--line)}
@media(max-width:900px){.product-story-grid{grid-template-columns:1fr;gap:38px}.product-story-section{padding:58px 0 64px}}


/* v9 related-product cards: compact on all screen sizes */
@media(max-width:980px){.related-grid{grid-template-columns:1fr 1fr;max-width:760px}.related-card{min-height:110px}.related-card img{flex-basis:84px;width:84px;height:84px}}
@media(max-width:640px){.related{padding:52px 0}.related h2{font-size:1.65rem;margin-bottom:22px}.related-grid{grid-template-columns:1fr;gap:12px;max-width:520px}.related-card{min-height:104px;padding:10px}.related-card img{flex-basis:78px;width:78px;height:78px;padding:5px}.related-card h3{font-size:.94rem}.related-card p{font-size:.53rem}}
