:root{
  --cream:#F1E7D7; --cream-2:#EADBC7; --paper:#F6EEE2; --blush:#E7CBBA;
  --terra:#AF4E37; --terra-deep:#8C3C29; --sage:#6E7355; --sage-deep:#535941;
  --ink:#3D2F27; --ink-soft:#705F53; --line:#D8C6B0;
  --disp:"Amatic SC",Georgia,cursive;
  --body:"Manrope",system-ui,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:var(--body);
  font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.28em;text-transform:uppercase;
  color:var(--terra);font-weight:500}
.eyebrow.sage{color:var(--sage-deep)}

/* leaf sprig divider */
.sprig{display:block;margin:0 auto;width:120px;height:auto;color:var(--sage)}

/* top bar */
.bar{position:sticky;top:0;z-index:50;background:rgba(241,231,215,.86);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.bar .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:12px;font-family:var(--disp);
  font-size:31px;font-weight:700;letter-spacing:.02em}
.brand img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.brand b{color:var(--terra);font-weight:600}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);
  font-size:13px;letter-spacing:.04em;font-weight:500;padding:13px 22px;border-radius:2px;
  border:1px solid transparent;cursor:pointer;transition:transform .18s ease,background .18s ease}
.btn-primary{background:var(--terra);color:#F6EEE2}
.btn-primary:hover{background:var(--terra-deep);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}
.btn-light{background:var(--paper);color:var(--terra-deep)}
.btn-light:hover{transform:translateY(-2px)}
.btn-olive{background:var(--sage);color:#F6EEE2}
.btn-olive:hover{background:var(--sage-deep);transform:translateY(-2px)}
.bar-cta{display:flex;gap:10px;align-items:center}
.bar .btn{padding:10px 18px}

/* hero */
.hero{padding:72px 0 84px;position:relative}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero h1{font-family:var(--disp);font-weight:700;line-height:.86;
  font-size:clamp(4.2rem,9.5vw,7.2rem);letter-spacing:.015em;margin:12px 0 0}
.hero h1 .green{color:var(--sage-deep)}
.hero h1 .red{color:var(--terra)}
.role{font-family:var(--mono);font-size:13px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--sage-deep);margin-top:18px}
.motto{font-family:var(--disp);font-weight:700;font-size:clamp(2.3rem,4.2vw,3.1rem);
  line-height:1.02;color:var(--ink);margin:26px 0 8px;max-width:24ch}
.lede{color:var(--ink-soft);max-width:46ch;margin-top:14px}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.hero-fig{position:relative;justify-self:center}
.hero-fig .sun{position:absolute;width:150px;height:150px;border-radius:50%;
  background:radial-gradient(circle at 38% 35%,#C9694B,var(--terra));
  top:-34px;left:-30px;z-index:0;opacity:.92}
.portrait{position:relative;z-index:1;width:min(440px,84vw);aspect-ratio:4/5;
  border-radius:210px 210px 14px 14px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 30px 60px -34px rgba(61,47,39,.5)}
.portrait img{width:100%;height:100%;object-fit:cover}
.leaf-tr{position:absolute;right:-26px;bottom:18px;width:88px;color:var(--sage);z-index:2;opacity:.9}

/* generic section */
section{padding:78px 0}
.sec-head{text-align:center;max-width:620px;margin:0 auto 14px}
.sec-head h2{font-family:var(--disp);font-weight:700;font-size:clamp(3rem,6vw,4.4rem);
  line-height:1.05;margin:16px 0 0}

/* about */
.about{background:var(--paper)}
.about .quote{font-family:var(--disp);font-size:clamp(2.5rem,5.2vw,3.8rem);
  line-height:1.02;font-weight:700;max-width:24ch;margin:0 auto 10px;text-align:center}
.about .quote .hl{color:var(--terra)}
.about p{max-width:60ch;margin:22px auto 0;text-align:center;color:var(--ink-soft);font-size:18px}

/* method */
.method-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:44px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:4px;
  padding:30px 28px;position:relative;overflow:hidden}
.card .num{font-family:var(--mono);font-size:13px;color:var(--terra);letter-spacing:.1em}
.card h3{font-family:var(--disp);font-size:2.4rem;font-weight:700;line-height:.95;margin:8px 0 10px;line-height:1.1}
.card p{color:var(--ink-soft);font-size:15.5px}
.card.with-img{padding:0;display:grid;grid-template-columns:1.1fr .9fr}
.card.with-img .txt{padding:30px 28px}
.card.with-img .ph{position:relative;min-height:200px}
.card.with-img .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* results */
.results{background:var(--cream-2)}
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:30px auto 0;max-width:720px}
.chip{font-family:var(--mono);font-size:12.5px;letter-spacing:.03em;color:var(--sage-deep);
  background:var(--paper);border:1px solid var(--line);padding:9px 15px;border-radius:40px}
.results p{max-width:62ch;margin:30px auto 0;text-align:center;color:var(--ink-soft);font-size:18px}

/* lead magnet */
.lead{background:var(--sage-deep);color:var(--paper)}
.lead .wrap{display:grid;grid-template-columns:1.3fr .9fr;gap:40px;align-items:center}
.lead .eyebrow{color:#D9C9A6}
.lead h2{font-family:var(--disp);font-weight:700;font-size:clamp(2.9rem,5.5vw,4rem);
  line-height:1.06;margin:14px 0 16px}
.lead p{color:#E7DDC9;max-width:48ch;margin-bottom:10px}
.lead .note{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:#C7BC9E;margin-top:18px}
.lead-card{background:rgba(246,238,226,.07);border:1px solid rgba(246,238,226,.22);
  border-radius:6px;padding:30px;text-align:center}
.lead-card .step{font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:#D9C9A6;text-transform:uppercase}
.lead-card .big{font-family:var(--disp);font-weight:700;font-size:2.7rem;line-height:.95;margin:2px 0 22px}

/* prices */
.price-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:44px}
.price{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:34px 30px;
  display:flex;flex-direction:column}
.price .tag{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--terra)}
.price h3{font-family:var(--disp);font-size:2.5rem;font-weight:700;line-height:.95;margin:10px 0 4px;line-height:1.1}
.price .sub{color:var(--ink-soft);font-size:15px;margin-bottom:22px}
.price .rows{border-top:1px solid var(--line);margin-top:auto}
.price .row{display:flex;justify-content:space-between;align-items:baseline;
  padding:14px 0;border-bottom:1px solid var(--line)}
.price .row .where{font-size:15px;color:var(--ink)}
.price .row .amt{font-family:var(--mono);font-size:1.2rem;font-weight:600;color:var(--terra-deep)}
.price .btn{margin-top:24px;justify-content:center}

/* footer */
footer{background:var(--ink);color:var(--paper);padding:70px 0 40px}
.foot-top{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:start}
.foot-brand{display:flex;align-items:center;gap:14px;font-family:var(--disp);font-size:40px;font-weight:700}
.foot-brand img{width:54px;height:54px;border-radius:50%}
.foot-brand b{color:#D98C6F;font-weight:600}
.foot-motto{font-family:var(--disp);font-weight:700;font-size:2.1rem;margin-top:18px;color:#E7DDC9;max-width:26ch}
.links{display:flex;flex-direction:column;gap:2px}
.links .lab{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:#A89A8C;margin-bottom:8px}
.links a{padding:7px 0;color:#E7DDC9;transition:color .15s;font-size:15.5px}
.links a:hover{color:#D98C6F}
.foot-bottom{margin-top:50px;padding-top:24px;border-top:1px solid rgba(246,238,226,.16);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;
  font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:#A89A8C}

/* reveal */
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

@media(max-width:860px){
  .hero{padding:48px 0 56px}
  .hero-grid{grid-template-columns:1fr;gap:42px}
  .hero-fig{order:-1}
  .method-grid,.price-grid{grid-template-columns:1fr}
  .card.with-img{grid-template-columns:1fr}
  .card.with-img .ph{min-height:230px;order:-1}
  .lead .wrap{grid-template-columns:1fr;gap:28px}
  .foot-top{grid-template-columns:1fr;gap:30px}
  section{padding:58px 0}
  .bar .brand span.full{display:none}
}
@media(max-width:600px){
  .bar-cta .btn-olive{display:none}
}
