:root { --font-display:"Cormorant Garamond"; --font-sans:"Manrope"; --ink:#233127; --muted:#617066; --cream:#f7f3e9; --paper:#fffdf8; --olive:#5f725d; --olive-dark:#3e533f; --gold:#c79b5d; --line:rgba(35,49,39,.13); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-sans),Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { align-items:center; backdrop-filter:blur(16px); background:rgba(255,253,248,.9); border-bottom:1px solid var(--line); display:grid; grid-template-columns:1fr auto 1fr; min-height:84px; padding:14px clamp(24px,5vw,78px); position:sticky; top:0; z-index:20; }
.brand { align-items:center; display:inline-flex; gap:11px; justify-self:start; }
.brand-mark { align-items:center; background:var(--olive-dark); border-radius:50%; color:#fffaf0; display:inline-flex; font-family:var(--font-display),Georgia,serif; font-size:17px; height:44px; justify-content:center; letter-spacing:-.04em; width:44px; }
.brand-copy { display:flex; flex-direction:column; line-height:1; }
.brand-copy strong { font-family:var(--font-display),Georgia,serif; font-size:24px; font-weight:600; letter-spacing:-.03em; }
.brand-copy small { color:var(--muted); font-size:9px; letter-spacing:.34em; margin-top:5px; }
nav { display:flex; gap:clamp(22px,3vw,42px); }
nav a { color:#49564d; font-size:13px; font-weight:650; }
nav a:hover,.text-link:hover { color:var(--olive); }
.button { align-items:center; background:var(--olive-dark); border:1px solid var(--olive-dark); border-radius:999px; color:#fff; display:inline-flex; font-size:13px; font-weight:700; justify-content:center; min-height:50px; padding:0 25px; transition:transform 180ms ease,background 180ms ease; }
.button:hover { background:#2d4431; transform:translateY(-2px); }
.button-small { justify-self:end; min-height:42px; padding:0 20px; }
.hero { background:linear-gradient(115deg,rgba(249,245,235,.98) 0%,rgba(244,238,223,.94) 48%,rgba(233,234,220,.35) 100%); display:grid; grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr); min-height:670px; overflow:hidden; padding:70px clamp(24px,6.5vw,104px) 64px; position:relative; }
.hero-content { align-self:center; max-width:680px; position:relative; z-index:2; }
.eyebrow { color:var(--olive); font-size:11px; font-weight:800; letter-spacing:.22em; margin:0 0 22px; text-transform:uppercase; }
h1,h2 { font-family:var(--font-display),Georgia,serif; font-weight:500; letter-spacing:-.045em; margin:0; }
h1 { font-size:clamp(54px,6.2vw,88px); line-height:.94; max-width:760px; }
.hero-description { color:var(--muted); font-size:17px; line-height:1.75; margin:28px 0 33px; max-width:570px; }
.hero-actions { align-items:center; display:flex; gap:27px; }
.text-link { border-bottom:1px solid rgba(62,83,63,.35); font-size:13px; font-weight:750; padding-bottom:4px; }
.hero-notes { display:flex; flex-wrap:wrap; gap:14px 28px; margin-top:54px; }
.hero-notes span { color:#59665c; font-size:11px; font-weight:700; }
.hero-notes span::before { color:var(--gold); content:"✦"; margin-right:8px; }
.hero-visual { align-self:stretch; background-image:linear-gradient(90deg,rgba(244,238,223,.92) 0%,rgba(244,238,223,.2) 24%,transparent 52%),url('./natural-glow-hero.png'); background-position:center,right center; background-repeat:no-repeat; background-size:cover; border-radius:240px 0 0 240px; box-shadow:0 30px 70px rgba(53,67,50,.14); margin:-6px -104px -6px 10px; min-height:520px; }
.trust-strip { align-items:center; background:var(--olive-dark); color:#f7f3e9; display:flex; gap:30px; justify-content:center; min-height:76px; padding:18px 24px; }
.trust-strip p { font-size:11px; font-weight:700; letter-spacing:.09em; margin:0; text-transform:uppercase; }
.trust-strip span { background:rgba(255,255,255,.32); border-radius:50%; height:4px; width:4px; }
.products-section { padding:112px clamp(24px,6.5vw,104px) 120px; }
.section-heading { align-items:end; display:grid; gap:60px; grid-template-columns:1.2fr .8fr; margin-bottom:54px; }
.section-heading h2,.about-copy h2,.business-intro h2,.legal-section h2 { font-size:clamp(43px,5vw,66px); line-height:1; }
.section-heading>p { color:var(--muted); font-size:15px; line-height:1.8; margin:0 0 5px auto; max-width:460px; }
.product-grid { display:grid; gap:22px; grid-template-columns:1.18fr .82fr .82fr; }
.product-card { background:#f1ecdf; border-radius:4px; min-height:510px; overflow:hidden; position:relative; }
.product-card img { height:100%; left:0; object-fit:cover; position:absolute; top:0; transition:transform 450ms ease; width:100%; }
.product-card:hover img { transform:scale(1.035); }
.product-card:nth-child(3) img { object-position:64% center; }
.product-card::after { background:linear-gradient(transparent 50%,rgba(28,38,29,.7)); content:""; inset:0; position:absolute; }
.card-copy { align-items:flex-start; bottom:0; color:white; display:flex; gap:18px; left:0; padding:28px; position:absolute; right:0; z-index:2; }
.card-copy>span { border:1px solid rgba(255,255,255,.6); border-radius:50%; display:grid; flex:0 0 auto; font-size:10px; height:34px; place-items:center; width:34px; }
.card-copy p { font-family:var(--font-display),Georgia,serif; font-size:28px; line-height:1; margin:1px 0 8px; }
.card-copy small { color:rgba(255,255,255,.83); font-size:11px; line-height:1.45; }
.catalog-cta { align-items:center; background:var(--olive-dark); color:#fff; display:grid; gap:42px; grid-template-columns:1fr 1fr auto; margin-top:22px; padding:34px 38px; }
.catalog-cta .eyebrow { color:#d9c49c; margin-bottom:8px; }
.catalog-cta h3 { font-family:var(--font-display),Georgia,serif; font-size:31px; font-weight:500; margin:0; }
.catalog-cta>p { color:rgba(255,255,255,.72); font-size:12px; line-height:1.7; margin:0; }
.button-light { background:#f7f3e9; border-color:#f7f3e9; color:var(--olive-dark); white-space:nowrap; }
.button-light:hover { background:#fff; }
.about-section { background:#f2eee2; display:grid; gap:8vw; grid-template-columns:.7fr 1.3fr; padding:120px clamp(24px,9vw,144px); }
.about-label { align-self:start; border-left:1px solid var(--gold); display:flex; flex-direction:column; padding:4px 0 4px 20px; }
.about-label span { font-family:var(--font-display),Georgia,serif; font-size:28px; }
.about-label small { color:var(--muted); font-size:10px; letter-spacing:.17em; margin-top:8px; text-transform:uppercase; }
.about-copy>p:not(.eyebrow) { color:var(--muted); font-size:16px; line-height:1.9; margin:30px 0 0; max-width:720px; }
.values-grid { border-top:1px solid var(--line); display:grid; gap:0; grid-template-columns:repeat(3,1fr); margin-top:56px; }
.values-grid>div { border-right:1px solid var(--line); padding:28px 24px 10px 0; }
.values-grid>div+div { padding-left:24px; }
.values-grid>div:last-child { border-right:0; }
.values-grid strong { color:var(--gold); font-size:10px; letter-spacing:.14em; }
.values-grid p { font-family:var(--font-display),Georgia,serif; font-size:21px; margin:10px 0 8px; }
.values-grid small { color:var(--muted); font-size:11px; line-height:1.55; }
.business-section { display:grid; gap:7vw; grid-template-columns:.85fr 1.15fr; padding:120px clamp(24px,7vw,112px); }
.business-intro>p:not(.eyebrow) { color:var(--muted); font-size:15px; line-height:1.8; margin:28px 0 34px; max-width:500px; }
.business-card { background:#fff; border:1px solid var(--line); box-shadow:0 25px 70px rgba(44,58,45,.09); font-style:normal; padding:36px 40px; }
.business-card-header { align-items:center; border-bottom:1px solid var(--line); display:flex; gap:14px; padding-bottom:28px; }
.business-card-header>div { display:flex; flex-direction:column; }
.business-card-header strong { font-family:var(--font-display),Georgia,serif; font-size:28px; font-weight:600; }
.business-card-header small { color:var(--muted); font-size:10px; margin-top:3px; }
.business-card dl { margin:4px 0 0; }
.business-card dl>div { display:grid; gap:18px; grid-template-columns:190px 1fr; padding:18px 0; }
.business-card dl>div+div { border-top:1px solid var(--line); }
.business-card dt { color:var(--muted); font-size:11px; font-weight:650; }
.business-card dd { font-size:13px; line-height:1.6; margin:0; }
.business-card dd a { border-bottom:1px solid rgba(35,49,39,.28); }
.legal-section { background:#eee8d9; display:grid; gap:7vw; grid-template-columns:.8fr 1.2fr; padding:96px clamp(24px,7vw,112px); }
.legal-grid { border-top:1px solid rgba(35,49,39,.22); }
.legal-grid details { border-bottom:1px solid rgba(35,49,39,.22); padding:24px 0; }
.legal-grid summary { cursor:pointer; font-family:var(--font-display),Georgia,serif; font-size:23px; list-style:none; position:relative; }
.legal-grid summary::after { content:"+"; font-family:var(--font-sans),Arial,sans-serif; font-size:19px; font-weight:400; position:absolute; right:0; top:1px; }
.legal-grid details[open] summary::after { content:"–"; }
.legal-grid details p { color:var(--muted); font-size:12px; line-height:1.8; margin:16px 44px 0 0; }
footer { align-items:start; background:#26382b; color:#f7f3e9; display:grid; gap:24px; grid-template-columns:1.2fr 1fr 1fr; padding:66px clamp(24px,7vw,112px) 34px; }
.footer-brand .brand-mark { background:#f7f3e9; color:var(--olive-dark); }
.footer-brand .brand-copy small { color:rgba(255,255,255,.6); }
footer>p { color:rgba(255,255,255,.63); font-size:12px; line-height:1.7; margin:0; max-width:330px; }
.footer-links { display:flex; flex-direction:column; font-size:12px; gap:12px; justify-self:end; }
footer>small { border-top:1px solid rgba(255,255,255,.12); color:rgba(255,255,255,.52); font-size:10px; grid-column:1/-1; margin-top:25px; padding-top:24px; width:100%; }

@media(max-width:1050px){ .product-grid{grid-template-columns:1fr 1fr}.product-card-large{grid-column:1/-1;min-height:540px}.catalog-cta{grid-template-columns:1fr 1fr}.catalog-cta .button{justify-self:start}.about-section,.business-section,.legal-section{gap:60px;grid-template-columns:1fr}.about-label{display:none} }
@media(max-width:900px){ .site-header{grid-template-columns:1fr auto} nav{display:none}.hero{grid-template-columns:1fr;padding-bottom:0}.hero-visual{border-radius:180px 180px 0 0;margin:45px -24px 0;min-height:450px}.hero-content{padding-top:10px}.section-heading{gap:24px;grid-template-columns:1fr}.section-heading>p{margin:0;max-width:570px}.business-card dl>div{grid-template-columns:170px 1fr} }
@media(max-width:680px){ .product-grid{grid-template-columns:1fr}.product-card-large{grid-column:auto}.product-card{min-height:450px}.catalog-cta{gap:22px;grid-template-columns:1fr;padding:30px}.values-grid{grid-template-columns:1fr}.values-grid>div,.values-grid>div+div{border-bottom:1px solid var(--line);border-right:0;padding:22px 0}.values-grid>div:last-child{border-bottom:0}.business-card{padding:28px 24px}.business-card dl>div{gap:8px;grid-template-columns:1fr}.legal-section{gap:42px}footer{grid-template-columns:1fr}.footer-links{justify-self:start} }
@media(max-width:560px){ .site-header{min-height:72px;padding:11px 18px}.brand-mark{height:38px;width:38px}.brand-copy strong{font-size:20px}.button-small{min-height:38px;padding:0 15px}.hero{min-height:auto;padding:58px 20px 0}h1{font-size:51px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-notes{flex-direction:column;gap:11px;margin-top:42px}.hero-visual{background-position:center;margin:36px -20px 0;min-height:320px}.trust-strip{align-items:flex-start;flex-direction:column;gap:10px;padding:22px 28px}.trust-strip span{display:none}.products-section{padding-top:84px}.product-card{min-height:410px}.about-section,.business-section{padding-top:84px;padding-bottom:84px}.legal-section{padding-top:74px;padding-bottom:74px} }
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.product-card img{transition:none}}
