:root{
  --ink:#0A0908; --ink2:#1C1916;
  --white:#FFFFFF; --cream:#F7F3EE; --cream2:#EDE8DF;
  --gray:#6B6156; --line:#D5CEC5; --line-dk:rgba(255,255,255,0.12);
  --gold:#B89A65; --gold-h:#9A7E50; --gold-dk:#7A5D33;
  --on-dk:#F0EBE3; --on-dk2:#9A8A7A;
  --max:1160px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'DM Sans',sans-serif; font-size:17px; line-height:1.65;
  color:var(--ink); background:var(--cream); -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:'Playfair Display',serif;}
a{color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 32px;}

/* scroll progress bar */
#prog{position:fixed;top:0;left:0;height:3px;background:var(--gold);width:0;z-index:999;transition:width 0.1s linear;}

/* nav */
header{
  position:sticky;top:0;z-index:40;
  background:rgba(10,9,8,0.93);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,0.07);
}
nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 32px;max-width:var(--max);margin:0 auto;
}
.logo-img{height:34px;width:auto;display:block;filter:invert(1);}
.nav-links{display:flex;gap:30px;}
.nav-links a{
  text-decoration:none;color:rgba(255,255,255,0.72);
  font-size:14px;font-weight:500;transition:color .2s;letter-spacing:.01em;
}
.nav-links a:hover{color:#fff;}
.nav-links a.active{color:var(--gold);}
.nav-right{display:flex;align-items:center;gap:20px;}
.nav-cta{
  border:1px solid var(--gold);color:var(--gold);padding:8px 20px;
  font-size:13px;font-weight:600;text-decoration:none;letter-spacing:.03em;
  transition:background .2s,color .2s;
  border-radius:2px 12px 2px 12px;
}

/* ── MOBILE MENU ── */
.menu-toggle{
  display:none;background:none;border:none;cursor:pointer;padding:8px;
  flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;
}
.menu-toggle span{display:block;width:100%;height:2px;background:#fff;transition:transform .3s ease,opacity .2s ease;}
.menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.menu-toggle.open span:nth-child(2){opacity:0;}
.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu{
  position:fixed;inset:0;z-index:100;
  background:rgba(10,9,8,0.98);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;
  opacity:0;pointer-events:none;transform:translateY(-10px);
  transition:opacity .3s ease,transform .3s ease;
}
.mobile-menu.open{opacity:1;pointer-events:auto;transform:translateY(0);}
.mobile-menu-close{
  position:absolute;top:20px;right:20px;background:none;border:none;
  color:#fff;font-size:34px;line-height:1;cursor:pointer;padding:10px;
}
.mobile-menu a{
  font-family:'Playfair Display',serif;font-size:26px;font-weight:500;
  color:#fff;text-decoration:none;letter-spacing:.01em;
}
.mobile-menu a:hover,.mobile-menu a.active{color:var(--gold);}
.mobile-menu a.btn{
  font-family:'DM Sans',sans-serif;font-size:14px;margin-top:10px;
}
body.menu-open{overflow:hidden;}
@media(max-width:900px){
  .menu-toggle{display:flex;}
}
.nav-cta:hover{background:var(--gold);color:var(--ink);}

/* Gold on light backgrounds fails WCAG AA (2.2-2.7:1) — use a darker shade there */
.features .eyebrow,.founder .eyebrow,.why .eyebrow,.steps .eyebrow,.contact .eyebrow,
.about-story .eyebrow,.care-areas .eyebrow{color:var(--gold-dk);}

/* buttons — same carved-corner signature as the photo shapes: one arch
   corner pair (top-right/bottom-left), sharp on the other pair */
.btn{
  display:inline-block;text-decoration:none;font-weight:600;
  font-size:14px;padding:14px 32px;letter-spacing:.03em;
  border-radius:2px 18px 2px 18px;
  transition:transform .2s,box-shadow .2s,background .2s,color .2s;border:none;cursor:pointer;
}
.btn-gold{background:var(--gold);color:var(--ink);}
.btn-gold:hover{background:var(--gold-h);transform:translateY(-2px);box-shadow:0 8px 28px rgba(184,154,101,.4);}
.btn-outline-lt{border:1px solid rgba(255,255,255,.45);color:#fff;background:transparent;}
.btn-outline-lt:hover{background:rgba(255,255,255,.1);transform:translateY(-2px);}
.btn-outline-dk{border:1px solid var(--ink);color:var(--ink);background:transparent;}
.btn-outline-dk:hover{background:var(--ink);color:var(--cream);transform:translateY(-2px);}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;}

/* eyebrow */
.eyebrow{
  font-family:'DM Sans',sans-serif;font-size:11px;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;color:var(--gold);
  display:block;margin-bottom:14px;
}

/* reveal */
.rev{opacity:0;transform:translateY(22px);transition:opacity .75s cubic-bezier(.2,.8,.2,1),transform .75s cubic-bezier(.2,.8,.2,1);}
.rev.in{opacity:1;transform:translateY(0);}
.d1{transition-delay:.1s;}.d2{transition-delay:.2s;}.d3{transition-delay:.3s;}.d4{transition-delay:.4s;}.d5{transition-delay:.5s;}
@media(prefers-reduced-motion:reduce){.rev{opacity:1;transform:none;transition:none;}}

/* ── HERO ── */
.hero{
  position:relative;height:100vh;min-height:640px;
  display:flex;align-items:flex-end;overflow:hidden;
}
.hvid{position:absolute;inset:0;z-index:0;overflow:hidden;}
.hvid iframe{
  position:absolute;top:50%;left:50%;
  width:177.78vh;height:56.25vw;
  min-width:100%;min-height:100%;
  transform:translate(-50%,-50%);
  pointer-events:none;border:none;
}
.hovl{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(to bottom, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.15) 25%, rgba(8,6,4,.12) 50%, rgba(8,6,4,.78) 75%, rgba(8,6,4,.93) 100%);
}
.hcontent{
  position:relative;z-index:2;width:100%;
  padding:0 32px 80px;max-width:calc(var(--max) + 64px);margin:0 auto;
}
.hero h1{
  font-size:clamp(2.6rem,5.8vw,5.2rem);font-weight:700;
  line-height:1.06;color:#fff;letter-spacing:-.02em;
  max-width:820px;margin-bottom:20px;
}
.hero h1 em{font-style:italic;font-weight:400;}
.hero .sub{
  font-size:17px;color:rgba(255,255,255,.8);
  max-width:520px;margin-bottom:16px;line-height:1.65;
}
.hero-loc{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--gold);font-size:13px;font-weight:600;
  letter-spacing:.05em;margin-bottom:32px;
}
.hero-loc::before{content:"";font-size:14px;}

/* ── PAIN ── */
.pain{background:var(--ink2);color:var(--on-dk);padding:96px 0;}
.pain .sh{max-width:640px;margin-bottom:52px;}
.pain h2{font-size:clamp(1.9rem,3.2vw,2.7rem);color:#fff;margin-top:10px;line-height:1.2;}
.pcards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:60px;}
.pcard{
  border:1px solid var(--line-dk);padding:32px;
  border-radius:0 48px 0 48px / 0 36px 0 36px;
  transition:border-color .3s,transform .3s;
}
.pcard:hover{border-color:rgba(255,255,255,.28);transform:translateY(-4px);}
.pcard-accent{width:32px;height:2px;background:var(--gold);margin-bottom:20px;}
.pcard h3{font-family:'DM Sans',sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:10px;}
.pcard p{font-size:14.5px;color:var(--on-dk2);line-height:1.65;}
.pquote{
  border-top:1px solid rgba(255,255,255,.14);padding-top:52px;
  font-family:'Playfair Display',serif;font-style:italic;font-weight:500;
  font-size:clamp(1.4rem,2.8vw,2.1rem);color:#fff;max-width:800px;line-height:1.45;
}

/* ── FEATURES ── */
.features{background:var(--cream);padding:96px 0;}
.features .sh{max-width:580px;margin-bottom:52px;}
.features h2{font-size:clamp(1.9rem,3vw,2.5rem);margin-top:10px;line-height:1.2;color:var(--ink);}
.fgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.fcard{
  background:var(--white);border:1px solid var(--line);padding:30px;
  transition:box-shadow .3s,transform .3s;
}
.fcard:hover{box-shadow:0 12px 40px rgba(10,9,8,.1);transform:translateY(-4px);}
.fnum{
  font-family:'Playfair Display',serif;font-size:52px;font-weight:700;
  color:var(--line);line-height:1;margin-bottom:14px;
}
.fcard h3{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;margin-bottom:8px;color:var(--ink);}
.fcard p{font-size:14px;color:var(--gray);line-height:1.65;}

/* ── DAILY LIFE ── */
.daily{background:var(--ink);color:var(--on-dk);padding:96px 0;}
.daily .inner{max-width:720px;}
.daily h2{font-size:clamp(1.9rem,3.2vw,2.7rem);color:#fff;margin-top:10px;margin-bottom:24px;line-height:1.2;}
.daily p{font-size:17px;color:var(--on-dk2);line-height:1.8;margin-bottom:18px;}
.daily-closer{
  font-family:'Playfair Display',serif;font-style:italic;
  font-size:clamp(1.3rem,2.4vw,1.85rem);color:var(--gold);
  margin:32px 0 44px;line-height:1.45;
}

/* ── FOUNDER ── */
.founder{background:var(--white);padding:96px 0;}
.founder .inner{max-width:660px;}
.founder h2{font-size:clamp(1.9rem,3vw,2.4rem);margin-top:10px;margin-bottom:22px;color:var(--ink);}
.founder p{font-size:17px;color:var(--gray);line-height:1.8;margin-bottom:16px;}
.sig{font-family:'Playfair Display',serif;font-style:italic;font-size:19px;margin-top:26px;color:var(--ink);}
.sig span{display:block;font-style:normal;font-family:'DM Sans',sans-serif;font-size:13px;color:var(--gray);margin-top:4px;}

/* ── SERVE ── */
.serve{background:var(--ink2);color:var(--on-dk);padding:96px 0;}
.serve h2{font-size:clamp(1.9rem,3.2vw,2.7rem);color:#fff;margin-top:10px;margin-bottom:40px;line-height:1.2;}
.sgrid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.1);margin-bottom:44px;}
.sitem{background:var(--ink2);padding:24px 28px;display:flex;align-items:flex-start;gap:12px;transition:background .25s;}
.sitem:hover{background:#12100D;}
.sdash{color:var(--gold);font-size:18px;flex-shrink:0;margin-top:2px;}
.sitem p{font-size:15.5px;color:var(--on-dk);line-height:1.5;}
.notbox{border:1px solid rgba(255,255,255,.14);padding:28px 30px;max-width:680px;border-radius:0 56px 0 56px / 0 42px 0 42px;}
.notbox .nlbl{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;display:block;font-weight:700;}
.notbox p{font-size:15px;color:var(--on-dk2);line-height:1.65;}

/* ── WHY ── */
.why{background:var(--cream2);padding:96px 0;}
.why h2{font-size:clamp(1.9rem,3vw,2.5rem);margin-top:10px;margin-bottom:48px;color:var(--ink);}

/* ── STEPS ── */
.steps{background:var(--cream);padding:96px 0;}
.steps h2{font-size:clamp(1.9rem,3vw,2.5rem);margin-top:10px;margin-bottom:52px;color:var(--ink);}
.stepgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;}
.stepline{position:absolute;top:32px;left:8%;right:8%;height:1px;background:var(--line);z-index:0;}
.step{position:relative;padding-right:20px;}
.stepnum{
  width:64px;height:64px;border-radius:50%;background:var(--cream);
  border:1px solid var(--ink);display:flex;align-items:center;justify-content:center;
  font-family:'Playfair Display',serif;font-size:20px;font-weight:500;
  margin-bottom:18px;position:relative;z-index:1;
}
.step h3{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;margin-bottom:8px;color:var(--ink);}
.step p{font-size:14px;color:var(--gray);}

/* ── FAQ ── */
.faq{background:var(--ink);color:var(--on-dk);padding:96px 0;}
.faq h2{font-size:clamp(1.9rem,3vw,2.5rem);color:#fff;margin-top:10px;margin-bottom:48px;max-width:540px;line-height:1.2;}
.faqlist{max-width:740px;}
.faqitem{border-bottom:1px solid rgba(255,255,255,.12);}
.faqq{
  width:100%;text-align:left;background:none;border:none;cursor:pointer;
  padding:22px 0;display:flex;justify-content:space-between;align-items:center;
  font-family:'DM Sans',sans-serif;font-size:16px;font-weight:600;
  color:#fff;gap:16px;transition:color .2s;
}
.faqq:hover{color:var(--gold);}
.faqicon{font-size:22px;color:var(--gold);flex-shrink:0;transition:transform .3s;line-height:1;}
.faqitem.open .faqicon{transform:rotate(45deg);}
.faqa{
  overflow:hidden;max-height:0;transition:max-height .4s ease,padding-bottom .3s;
  font-size:15.5px;color:var(--on-dk2);line-height:1.75;padding-bottom:0;
}
.faqitem.open .faqa{max-height:500px;padding-bottom:22px;}

/* ── CONTACT ── */
.contact{background:var(--cream);padding:96px 0;}
.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;}
.contact h2{font-size:clamp(2rem,3.5vw,3rem);margin-top:10px;margin-bottom:18px;line-height:1.1;color:var(--ink);}
.contact .lede{font-size:17px;color:var(--gray);margin-bottom:28px;max-width:440px;line-height:1.7;}
.values{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.values li{border:1px solid var(--ink);padding:6px 14px;font-size:13px;font-weight:600;border-radius:30px;letter-spacing:.02em;}
.ccard{background:var(--ink);padding:40px;border-radius:0 56px 0 56px / 0 42px 0 42px;}
.crow{padding:16px 0;border-top:1px solid rgba(255,255,255,.1);}
.crow:first-child{border-top:none;padding-top:0;}
.clbl{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--on-dk2);margin-bottom:4px;font-weight:600;}
.cval{font-size:18px;font-family:'Playfair Display',serif;color:var(--on-dk);}
.cnote{font-size:13px;color:var(--on-dk2);margin-top:4px;line-height:1.5;}
.ccard .btn-gold{width:100%;text-align:center;margin-top:20px;display:block;}

footer{padding:30px 0;text-align:center;font-size:13px;color:var(--gray);border-top:1px solid var(--line);background:var(--cream);}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  .nav-links{display:none;}
  .pcards{grid-template-columns:1fr;}
  .fgrid{grid-template-columns:1fr;}
  .sgrid{grid-template-columns:1fr;}
  .stepgrid{grid-template-columns:1fr 1fr;row-gap:36px;}
  .stepline{display:none;}
  .cgrid{grid-template-columns:1fr;gap:36px;}
}
@media(max-width:560px){
  .wrap{padding:0 20px;}
  .stepgrid{grid-template-columns:1fr;}
  .hero h1{font-size:2.2rem;}
  .pain,.features,.daily,.founder,.serve,.why,.steps,.faq,.contact{padding:68px 0;}
  .hcontent{padding:0 20px 56px;}
  nav{padding:14px 20px;}
}
@media(max-width:380px){
  .nav-cta{padding:8px 14px;}
  .nav-cta-num{display:none;}
}

/* ── STATS ── */
.stats{background:var(--ink);color:var(--on-dk);padding:72px 0;border-top:1px solid rgba(255,255,255,.08);}
.sgrid-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(255,255,255,.08);}
.stat-cell{background:var(--ink);padding:48px 40px;text-align:center;}
.stat-num{
  font-family:"Playfair Display",serif;font-size:clamp(3rem,5vw,4.5rem);
  font-weight:700;color:#fff;line-height:1;display:block;margin-bottom:8px;
}
.stat-label{font-size:14px;color:var(--on-dk2);letter-spacing:.06em;text-transform:uppercase;font-weight:600;}
@media(max-width:560px){.sgrid-stats{grid-template-columns:1fr;}}

/* ── TRUST BADGES ── */
.trust{background:var(--cream2);padding:56px 0;border-bottom:1px solid var(--line);}
.tbadges{display:flex;justify-content:center;flex-wrap:wrap;gap:40px;}
.tbadge{display:flex;align-items:center;gap:12px;}
.tbadge svg{flex-shrink:0;color:var(--gold);}
.tbadge span{font-size:14px;font-weight:600;color:var(--ink);letter-spacing:.02em;}
@media(max-width:560px){.tbadges{gap:24px;}.tbadge span{font-size:13px;}}

/* ── VIDEO SPLIT SECTION ──
   Landscape (16:9) embed as a full-bleed background — same proven cover
   technique as the hero video: size by both vw/vh with min-width/min-height
   100%, so whichever axis is the constraint always fills the container. */
.vidsplit{
  position:relative;min-height:80vh;
  display:flex;align-items:center;
  overflow:hidden;background:var(--ink);
}
.vidsplit-bg{position:absolute;inset:0;z-index:0;overflow:hidden;}
.vidsplit-bg iframe{
  position:absolute;top:50%;left:50%;
  width:177.78vh;height:56.25vw;
  min-width:100%;min-height:100%;
  transform:translate(-50%,-50%);
  pointer-events:none;border:none;
}
.vidsplit-overlay{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(
    135deg,
    rgba(8,6,4,.88) 0%,
    rgba(8,6,4,.75) 40%,
    rgba(8,6,4,.55) 70%,
    rgba(8,6,4,.4) 100%
  );
}
.vidsplit-text{
  position:relative;z-index:2;
  max-width:var(--max);margin:0 auto;
  padding:100px 32px;width:100%;
}
.vidsplit-text-inner{max-width:520px;}
.vidsplit-text h2{
  font-size:clamp(2.2rem,4vw,3.6rem);color:#fff;
  margin-top:12px;margin-bottom:24px;line-height:1.08;
  letter-spacing:-.015em;
}
.vidsplit-text p{
  font-size:18px;color:rgba(255,255,255,.8);
  line-height:1.8;margin-bottom:16px;max-width:520px;
}
.vidsplit-text .gold-line{width:56px;height:3px;background:var(--gold);margin-bottom:28px;}
@media(max-width:900px){
  .vidsplit{min-height:60vh;}
  .vidsplit-text{padding:72px 32px;}
  .vidsplit-text-inner{max-width:100%;}
}
@media(max-width:560px){
  .vidsplit{min-height:50vh;}
  .vidsplit-text{padding:56px 20px;}
}

/* ── FEATURES PHOTO SPLIT ── */
.feat-outer{display:grid;grid-template-columns:1fr 480px;gap:0;align-items:stretch;}
.feat-photo{position:relative;overflow:hidden;min-height:600px;}
.feat-photo img{
  position:absolute;top:0;left:0;width:100%;height:100%;
  object-fit:cover;object-position:center 20%;
  transition:transform .6s ease;
}
.feat-photo:hover img{transform:scale(1.035);}
.feat-cards-col,.why-cards-col{padding:56px 44px;background:var(--cream2);}
/* Both sidebars (480px / 440px) are too narrow for a 3-up grid (was ~140px
   per column) — stack as a divided list instead, number beside heading. */
.feat-cards-col .fgrid,.why-cards-col .fgrid{display:flex;flex-direction:column;gap:0;}
.feat-cards-col .fcard,.why-cards-col .fcard{
  display:flex;gap:18px;align-items:flex-start;
  background:transparent;border:none;border-top:1px solid var(--line);
  padding:24px 0;box-shadow:none;transform:none;
}
.feat-cards-col .fcard:first-child,.why-cards-col .fcard:first-child{border-top:none;padding-top:0;}
.feat-cards-col .fcard:hover,.why-cards-col .fcard:hover{box-shadow:none;transform:none;}
.feat-cards-col .fnum,.why-cards-col .fnum{
  font-size:26px;color:var(--gold-dk);flex-shrink:0;width:34px;margin-bottom:0;
}
.feat-cards-col .fcard-body h3,.why-cards-col .fcard-body h3{margin-bottom:8px;}
.feat-cards-col .cta-row,.why-cards-col .cta-row{padding:32px 0 0;}
@media(max-width:900px){.feat-cards-col,.why-cards-col{padding:44px 32px;}}
@media(max-width:900px){
  .feat-outer{grid-template-columns:1fr;}
  .feat-photo{min-height:360px;position:relative;}
  .feat-photo img{position:relative;width:100%;height:360px;object-fit:cover;}
}
.pill{
  background:rgba(255,255,255,0.1); border:1px solid rgba(255,255,255,0.2);
  color:rgba(255,255,255,0.9); padding:14px 18px; border-radius:4px;
  font-size:14px; backdrop-filter:blur(4px); max-width:260px;
  display:flex; flex-direction:column; gap:6px;
}
.pill strong{ font-weight:700; font-size:15px; color:#fff; }
.pill span{ font-size:13px; color:rgba(255,255,255,0.75); line-height:1.5; }
.hero-pills{ display:flex; gap:14px; flex-wrap:wrap; margin-bottom:28px; }
/* ── DAILY CARDS ── */
.daily-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:32px 0 44px;}
.dcard{border:1px solid rgba(255,255,255,.12);padding:28px;border-radius:0 40px 0 40px / 0 30px 0 30px;}
.dcard h3{font-family:"DM Sans",sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:10px;}
.dcard p{font-size:15px;color:var(--on-dk2);line-height:1.65;margin:0;}
@media(max-width:700px){.daily-cards{grid-template-columns:1fr;}}

/* ── SERVE CARDS ── */
.serve-welcome{font-size:17px;color:var(--on-dk2);line-height:1.8;margin-bottom:12px;max-width:720px;}
.serve-welcome strong{color:var(--on-dk);}
.serve-subhead{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:28px;display:block;}
.wcards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:40px;}
.wcard-serve{border:1px solid rgba(255,255,255,.12);padding:28px;border-radius:0 40px 0 40px / 0 30px 0 30px;transition:border-color .3s;}
.wcard-serve:hover{border-color:rgba(255,255,255,.3);}
.wcard-serve h3{font-family:"DM Sans",sans-serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:8px;}
.wcard-serve p{font-size:14.5px;color:var(--on-dk2);line-height:1.6;margin:0;}
@media(max-width:700px){.wcards{grid-template-columns:1fr;}}

/* ── HERO LOGO OVERLAY ── */
.hero-logo-overlay{
  height:58px; width:auto; display:block;
  filter:invert(1) brightness(1.1) drop-shadow(0 2px 8px rgba(0,0,0,0.6));
  margin-bottom:28px; opacity:0.95;
}

/* ── PILLS STRIP (below hero) ── */
.pillstrip{background:var(--ink);padding:0;border-bottom:1px solid rgba(255,255,255,.08);}
.pillstrip-inner{
  max-width:var(--max);margin:0 auto;padding:0 32px;
  display:grid;grid-template-columns:repeat(3,1fr);
  divide:rgba(255,255,255,.1);
}
.pill-item{
  padding:28px 32px;
  border-right:1px solid rgba(255,255,255,.08);
  display:flex;flex-direction:column;gap:10px;
}
.pill-item:last-child{border-right:none;}
.pill-item strong{
  display:block;font-family:"Playfair Display",serif;
  font-size:19px;font-weight:500;color:#fff;margin-bottom:8px;
}
.pill-item span{font-size:14.5px;color:var(--on-dk2);line-height:1.6;}
@media(max-width:760px){
  .pillstrip-inner{grid-template-columns:1fr;}
  .pill-item{border-right:none;border-bottom:1px solid rgba(255,255,255,.08);padding:28px 24px;}
  .pill-item:last-child{border-bottom:none;}
}

/* ── WHY PHOTO SPLIT ── */
.why-outer{display:grid;grid-template-columns:1fr 440px;gap:0;align-items:stretch;}
.why-photo-col{position:relative;overflow:hidden;min-height:500px;}
.why-photo-col img{
  position:absolute;top:0;left:0;width:100%;height:100%;
  object-fit:cover;object-position:center center;
  transition:transform .6s ease;
}
.why-photo-col:hover img{transform:scale(1.04);}
@media(max-width:900px){
  .why-outer{grid-template-columns:1fr;}
  .why-photo-col{min-height:300px;}
}
@media(max-width:560px){
  .why-cards-col{padding:36px 20px;}
}

/* ══════════════════════════════
   SHAPED PHOTO TREATMENTS
   ══════════════════════════════ */

/* ── Carved photo shape: large arch on two opposite corners, sharp on the
   other two. Uses border-radius (computed independently per axis from the
   box's own width/height) rather than an SVG clip-path (computed on a
   normalized 0-1 bounding box, which distorts badly once a full-bleed 1fr
   grid column's width/height ratio departs from what the shape assumed). */
.feat-photo,
.why-photo-col{
  background:var(--cream2);
  border-radius:0 220px 0 220px / 0 170px 0 170px;
}
@media(max-width:900px){
  .feat-photo,.why-photo-col{border-radius:0 100px 0 100px / 0 80px 0 80px;}
}

/* ── Features photo: gold corner accent on the sharp bottom-right corner ── */
.feat-photo::after{
  content:"";
  position:absolute;bottom:-2px;right:-2px;
  width:72px;height:72px;
  background:var(--gold);opacity:.7;
  clip-path:polygon(100% 0,100% 100%,0 100%);
  z-index:2;
}


/* ── Ghost/watermark text behind section headlines ── */
.ghost-word{
  position:relative;
  z-index:1;
}
.ghost-word::before{
  content:attr(data-ghost);
  position:absolute;
  top:50%;left:0;
  transform:translateY(-60%);
  font-family:"Playfair Display",serif;
  font-size:clamp(80px,12vw,180px);
  font-weight:700;
  font-style:italic;
  color:var(--ink);
  opacity:.055;
  white-space:nowrap;
  pointer-events:none;
  user-select:none;
  line-height:1;
  z-index:0;
}

/* Light sections: ghost text is darker */
.features .ghost-word::before,
.why .ghost-word::before,
.steps .ghost-word::before,
.about-story .ghost-word::before{
  color:var(--ink);
  opacity:.05;
}

/* Dark sections: ghost text is lighter */
.pain .ghost-word::before,
.daily .ghost-word::before,
.serve .ghost-word::before,
.faq .ghost-word::before,
.ahero .ghost-word::before,
.mission .ghost-word::before{
  color:#fff;
  opacity:.04;
}

/* ══════════════════════════════
   ABOUT PAGE
   ══════════════════════════════ */

/* ── About hero ── */
.ahero{background:var(--ink);color:var(--on-dk);padding:150px 0 96px;position:relative;overflow:hidden;}
.ahero .inner{max-width:760px;}
.ahero h1{font-size:clamp(2.4rem,5vw,4rem);color:#fff;margin-top:10px;line-height:1.15;letter-spacing:-.015em;}
.ahero h1 em{font-style:italic;font-weight:400;color:var(--gold);}
.ahero .sub{font-size:19px;color:var(--on-dk2);margin-top:22px;max-width:600px;line-height:1.75;}

/* ── Story (grandmother narrative) — editorial drop-cap ── */
.about-story{background:var(--white);padding:96px 0;}
.about-story .inner{max-width:680px;}
.about-story h2{font-size:clamp(1.9rem,3vw,2.4rem);margin-top:10px;margin-bottom:28px;color:var(--ink);line-height:1.2;}
.about-story p{font-size:18px;color:var(--gray);line-height:1.85;margin-bottom:20px;}
.about-story p.lead::first-letter{
  font-family:'Playfair Display',serif;font-style:italic;font-weight:700;
  font-size:4.2em;float:left;line-height:0.8;margin:0.06em 0.08em 0 0;color:var(--gold-dk);
}

/* ── Experience stats ── */
.experience{background:var(--ink2);color:var(--on-dk);padding:80px 0;}
.experience .exp-head{max-width:720px;margin-bottom:48px;}
.experience h2{font-size:clamp(1.9rem,3.2vw,2.5rem);color:#fff;margin-top:10px;line-height:1.2;}
.experience p{font-size:17px;color:var(--on-dk2);line-height:1.8;margin-top:20px;}

/* ── Areas of care grid ── */
.care-areas{background:var(--cream2);padding:96px 0;}
.care-areas h2{font-size:clamp(1.9rem,3vw,2.5rem);margin-top:10px;margin-bottom:12px;color:var(--ink);}
.care-areas .lede{font-size:17px;color:var(--gray);max-width:600px;margin-bottom:44px;line-height:1.7;}
.care-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.care-tag{
  background:var(--white);border:1px solid var(--line);padding:22px 24px;
  font-family:'DM Sans',sans-serif;font-size:15px;font-weight:600;color:var(--ink);
  border-radius:2px 26px 2px 26px;
  transition:box-shadow .3s,transform .3s,border-color .3s;
}
.care-tag:hover{box-shadow:0 8px 28px rgba(10,9,8,.08);transform:translateY(-2px);border-color:var(--gold);}
@media(max-width:760px){.care-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.care-grid{grid-template-columns:1fr;}}

/* ── Mission / vision quote ── */
.mission{background:var(--ink);color:var(--on-dk);padding:96px 0;}
.mission .inner{max-width:760px;}
.mission p{font-size:18px;color:var(--on-dk2);line-height:1.85;margin-bottom:20px;}
.mission .mquote{
  font-family:'Playfair Display',serif;font-style:italic;font-weight:500;
  font-size:clamp(1.5rem,3vw,2.2rem);color:var(--gold);line-height:1.45;
  margin:36px 0;max-width:700px;
}

/* ── Closing / signature CTA ── */
.closing{background:var(--white);padding:96px 0;}
.closing .inner{max-width:660px;}
.closing p{font-size:18px;color:var(--gray);line-height:1.85;margin-bottom:18px;}
.closing .sig{font-size:21px;margin-top:32px;}
