/* =====================================================================
   GROUNDED. SITE STYLES (shared by every page)
   ===================================================================== */
:root{
  --bg:#FAF7F2; --bg-deep:#F2ECE0; --ink:#2C1810; --ink-soft:#6B5A4D; --line:#E2D8C3; --card:#FFFFFF;
  --gold:#8B5E1A; --gold-deep:#6E4A14; --sage:#5F7D48;
  --holy:#5B3A22; --meaning:#8B5E1A; --mind:#7D6B57; --community:#9A5B34; --body:#5F7D48; --hope:#C07A26;
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --page-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.24 0 0 0 0 0.16 0 0 0 0 0.08 0 0 0 0.32 -0.12'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#1F1A14; --bg-deep:#171310; --ink:#F3EDE3; --ink-soft:#C2B6A4; --line:#3A322A; --card:#2A241D;
    --gold:#D9A847; --gold-deep:#C8923A; --sage:#9DB883;
    --holy:#C99A73; --meaning:#D9A847; --mind:#B8A590; --community:#D6906A; --body:#9DB883; --hope:#E8A955;
    --page-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 0.92 0 0 0 0 0.8 0 0 0 0.3 -0.11'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:84px;}
body{background-color:var(--bg);background-image:var(--page-grain);color:var(--ink);font-family:'Barlow',sans-serif;font-size:19px;line-height:1.7;}
a{color:inherit;}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
.wrap{max-width:1060px;margin:0 auto;padding:0 22px;}
.wrap-narrow{max-width:760px;margin:0 auto;padding:0 22px;}
.icon{display:inline-block;vertical-align:middle;flex-shrink:0;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.skip{position:absolute;left:-999px;top:8px;background:var(--card);padding:8px 14px;border-radius:8px;z-index:100;}
.skip:focus{left:12px;}

/* ---------- TOP BAR (every page) ---------- */
.topbar{position:sticky;top:0;z-index:60;background:var(--card);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px);}
.topbar-inner{display:flex;align-items:center;gap:14px;min-height:68px;}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--gold);margin-right:auto;}
.brand-icon{width:auto;height:46px;}
.brand-word{height:21px;width:auto;color:var(--ink);}
.site-menu{display:flex;align-items:center;gap:2px;}
.site-menu a{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:15px;letter-spacing:1px;text-transform:uppercase;text-decoration:none;color:var(--ink-soft);padding:10px 11px;border-radius:8px;white-space:nowrap;}
.site-menu a:hover,.site-menu a.current{color:var(--gold);}
.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:10px;color:var(--ink);width:46px;height:42px;cursor:pointer;align-items:center;justify-content:center;}
@media(max-width:880px){
  .menu-btn{display:flex;}
  .site-menu{display:none;position:absolute;left:0;right:0;top:100%;background:var(--card);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:8px 16px 16px;box-shadow:0 12px 24px rgba(0,0,0,0.12);}
  .site-menu.open{display:flex;}
  .site-menu a{font-size:18px;padding:14px 10px;border-bottom:1px solid var(--line);}
  .site-menu a:last-child{border-bottom:none;}
  .brand-icon{height:40px;}
  .brand-word{height:18px;}
}

/* ---------- BUTTONS & LINKS ---------- */
.btn{display:inline-block;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:16px;letter-spacing:1px;text-transform:uppercase;text-decoration:none;padding:13px 26px;border-radius:30px;border:none;cursor:pointer;transition:background 0.2s,color 0.2s;}
.btn-light{background:#fff;color:#6E4A14;}
.btn-light:hover{background:#F2ECE0;}
.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,0.65);}
.btn-ghost:hover{background:rgba(255,255,255,0.14);}
.btn-primary{background:var(--gold);color:#fff;}
.btn-primary:hover{background:var(--gold-deep);}
.btn-secondary{background:var(--card);color:var(--ink);border:1px solid var(--line);}
.btn-secondary:hover{background:var(--bg-deep);}
@media (prefers-color-scheme: dark){.btn-primary{color:#1F1A14;}}
.text-link{color:var(--gold);font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;}
.text-link:hover{color:var(--gold-deep);}

/* ---------- HERO ---------- */
.hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;text-align:center;padding:52px 22px 64px;
  background:
    repeating-radial-gradient(circle at 50% 36%, rgba(255,255,255,0) 0 21px, rgba(255,255,255,0.06) 22px 23.5px, rgba(255,255,255,0) 25px 33px),
    repeating-radial-gradient(circle at 50% 36%, rgba(0,0,0,0) 0 49px, rgba(60,30,0,0.07) 50px 52px, rgba(0,0,0,0) 53px 71px),
    radial-gradient(ellipse 65% 55% at 50% 36%, #A6752A 0%, #8B5E1A 55%, #744D12 100%);}
.hero::before{content:'';position:absolute;inset:0;background-image:var(--grain);opacity:0.45;mix-blend-mode:overlay;pointer-events:none;z-index:0;}
.hero > *{position:relative;z-index:1;}
.hero-tree{width:clamp(220px,32vw,330px);height:auto;display:block;margin:0 auto 26px;color:#FAF7F2;opacity:0;animation:rise 1s ease 0.1s forwards;}
.hero h1{margin:0;line-height:0;}
.hero-word{width:clamp(250px,52vw,540px);height:auto;color:#fff;opacity:0;animation:rise 1s ease 0.35s forwards;}
.tagline{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(23px,3.4vw,30px);margin-top:16px;opacity:0;animation:rise 1s ease 0.55s forwards;}
.hero-sub{font-size:18px;color:rgba(255,255,255,0.86);max-width:580px;margin:14px auto 0;opacity:0;animation:rise 1s ease 0.7s forwards;}
.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:30px;opacity:0;animation:rise 1s ease 0.85s forwards;}
@keyframes rise{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion: reduce){.hero-tree,.hero-word,.tagline,.hero-sub,.hero-actions{animation:none;opacity:1;}}

/* ---------- SECTIONS ---------- */
section{padding:72px 0;}
section + section{border-top:1px solid var(--line);}
.eyebrow{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:15px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:8px;}
h2{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:clamp(36px,5vw,48px);line-height:1.1;margin-bottom:16px;}
h3{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:29px;line-height:1.2;}
.lead{font-size:20px;color:var(--ink-soft);max-width:700px;}
.grid-1{display:grid;grid-template-columns:1fr;gap:20px;margin-top:34px;}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:34px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px;}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:28px 26px;}
.card p{font-size:18px;color:var(--ink-soft);margin-top:8px;}
.mission-icon{width:58px;height:58px;border-radius:50%;border:2px solid var(--gold);color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.chip{font-size:16px;padding:6px 14px;border-radius:20px;background:var(--bg-deep);color:var(--ink);}
.card .btn{margin-top:20px;}
.card-links{margin-top:14px;font-size:17px;}
.badge{display:inline-block;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;padding:4px 12px;border-radius:20px;background:var(--bg-deep);color:var(--ink-soft);margin-bottom:8px;}
.badge.live{background:var(--gold);color:#fff;}
@media (prefers-color-scheme: dark){.badge.live{color:#1F1A14;}}
.note{font-size:17px;color:var(--ink-soft);margin-top:24px;font-style:italic;}

/* ---------- STORY CARDS ---------- */
.story{display:flex;flex-direction:column;border-left:4px solid var(--gold);}
.story-sub{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:19px;color:var(--ink-soft);margin-top:2px;}
.story-quote{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:22px;line-height:1.45;color:var(--ink);margin:10px 0 16px;flex:1;}
.story .card-actions,.preview .card-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;}
.story .text-link,.preview .text-link{font-size:17px;}
.stories-foot{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:30px;}
.stories-foot p{font-size:18px;color:var(--ink-soft);}
.preview{border-left:4px solid var(--gold);}
.preview-body{margin:6px 0 18px;position:relative;}
.preview-body p{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:21px;line-height:1.65;color:var(--ink);margin-top:14px;}
.preview-body .fade{height:60px;margin-top:-60px;position:relative;background:linear-gradient(to bottom, transparent, var(--card));}
.preview-body .btn{margin-top:14px;}
.read-full-tag{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--gold);}

/* ---------- STORY PAGE ---------- */
.story-page{padding:52px 22px 20px;}
.back{font-size:17px;color:var(--ink-soft);text-decoration:none;}
.back:hover{color:var(--gold);}
.story-page h1{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:clamp(42px,7vw,64px);line-height:1.05;margin-top:18px;}
.story-page .subtitle{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(22px,3vw,27px);color:var(--ink-soft);margin-top:10px;}
.byline{font-size:16px;color:var(--ink-soft);margin-top:18px;padding-bottom:26px;border-bottom:1px solid var(--line);}
.story-body{margin-top:30px;}
.story-body p{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:23px;line-height:1.7;color:var(--ink);margin-bottom:22px;}
.story-end{margin:40px 0 10px;padding:28px 26px;background:var(--card);border:1px solid var(--line);border-radius:16px;text-align:center;}
.story-end p{font-size:18px;color:var(--ink-soft);}
.story-end .btn{margin-top:16px;}
.more-stories{padding:40px 0 70px;}

/* ---------- TOOLS ---------- */
.tool{display:grid;grid-template-columns:220px 1fr;gap:34px;align-items:center;}
.tool-art{text-align:center;}
.tool-tree{width:100%;max-width:200px;height:auto;}
.tool .btn{margin-top:16px;}
.garden-art{width:150px;height:150px;border-radius:50%;margin:0 auto;display:flex;align-items:center;justify-content:center;background:var(--bg-deep);color:var(--sage);}

/* ---------- ABOUT ---------- */
.about{display:grid;grid-template-columns:280px 1fr;gap:44px;align-items:center;}
.photo{width:100%;max-width:280px;aspect-ratio:1;border-radius:50%;object-fit:cover;display:block;margin:0 auto;border:6px solid var(--card);box-shadow:0 0 0 1px var(--line), 0 12px 30px rgba(44,24,16,0.15);}
.about p{font-size:19px;color:var(--ink-soft);}
.about p + p{margin-top:14px;}
.about .sign{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:26px;color:var(--ink);margin-top:18px;}

/* ---------- CONTACT ---------- */
.contact{text-align:center;}
.contact .lead{margin:0 auto;}
.contact-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:26px;}

/* ---------- FOOTER (every page) ---------- */
.site-footer{text-align:center;padding:48px 0 calc(40px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);}
.foot-brand{display:inline-flex;flex-direction:column;align-items:center;gap:14px;text-decoration:none;}
.foot-tree{width:120px;height:auto;color:var(--gold);}
.foot-word{width:170px;height:auto;color:var(--ink);}
.foot-tag{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:19px;color:var(--ink-soft);margin-top:8px;}
.foot-links{display:flex;gap:10px 20px;justify-content:center;flex-wrap:wrap;margin:18px 0;}
.foot-links a{font-size:16px;}
.copyright{font-size:14px;color:var(--ink-soft);}

@media(max-width:820px){
  .grid-2,.grid-3{grid-template-columns:1fr;}
  .about{grid-template-columns:1fr;gap:26px;text-align:center;}
  .tool{grid-template-columns:1fr;text-align:center;}
  section{padding:56px 0;}
  body{font-size:18px;}
  .story-body p{font-size:21px;}
}
