/* Leewood AI — inner-page layer. Import after globals.css base.
   Reuses the home page tokens: --bg --bg-elev --bg-tint --ink --ink-deep --muted --hair --moss --olive */

/* ---------- Header state ---------- */
.site-header nav a.is-current{color:var(--bg)}
.site-header nav a.is-current::after{right:0}

/* ---------- Dark page hero ---------- */
.page-hero{position:relative;overflow:hidden;color:var(--bg);background:radial-gradient(circle at 82% 42%,rgba(62,95,91,.18),transparent 26rem),linear-gradient(140deg,#101f1d 0%,var(--ink-deep) 56%,#0b1716 100%);isolation:isolate}
.page-hero::after{content:"";position:absolute;inset:0;z-index:2;opacity:.035;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
.page-hero .site-header{border-bottom-color:rgba(200,209,199,.18)}
.hero-rings{position:absolute;top:-58%;right:-14%;z-index:0;width:900px;aspect-ratio:1;border-radius:50%;opacity:.22;background:repeating-radial-gradient(circle,transparent 0 26px,var(--moss) 27px 28px,transparent 29px 41px);transform:scaleX(1.3) rotate(-11deg);pointer-events:none}
.hero-tree{position:absolute;right:-4%;bottom:-6%;z-index:0;width:min(40vw,520px);opacity:.16;object-fit:contain;pointer-events:none}
.page-hero-inner{position:relative;z-index:3;padding:96px 0 78px}
.page-hero-inner.has-art{max-width:min(74%,860px)}
.page-h1{max-width:24ch;margin:0;color:var(--bg);font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,5.6vw,84px);font-weight:400;line-height:1.02;letter-spacing:-.05em;text-wrap:pretty}
.page-h1 em{color:var(--bg-tint);font-style:italic}
.page-hero .section-kicker,.band-dark .section-kicker,.cta-band .section-kicker{color:rgba(238,241,236,.66)}
.page-hero .section-kicker::before,.band-dark .section-kicker::before,.cta-band .section-kicker::before{background:var(--moss)}
.band-dark .mono-label,.founder-mark .founder-meta .mono-label,.plan .mono-label,.tier-featured .mono-label{color:var(--bg-tint)}
.band-dark .num-rows article>span,.plan-grid .mono-label{color:rgba(238,241,236,.72)}
.page-lead{max-width:62ch;margin:32px 0 0;color:rgba(238,241,236,.74);font-size:clamp(17px,1.2vw,20px);line-height:1.6}
.page-hero-meta{position:relative;z-index:3;display:flex;flex-wrap:wrap;gap:34px;padding:22px 0;border-top:1px solid rgba(200,209,199,.16);color:rgba(238,241,236,.5);font-family:var(--font-geist-mono),monospace;font-size:9px;letter-spacing:.15em;text-transform:uppercase}
.page-hero-meta span{color:var(--bg-tint)}

/* ---------- Section helpers ---------- */
.band-elev{background:linear-gradient(rgba(26,46,43,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(26,46,43,.025) 1px,transparent 1px),var(--bg-elev);background-size:64px 64px}
.band-tint{background:var(--bg-tint)}
.band-dark{position:relative;overflow:hidden;color:var(--bg);background:var(--ink-deep)}
.section-heading.stacked{grid-template-columns:1fr;gap:26px;max-width:56ch}
.section-heading.stacked h2{font-size:clamp(40px,4.2vw,60px)}
h2.section-title{margin:0;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(40px,4.2vw,62px);font-weight:400;line-height:1.05;letter-spacing:-.045em;text-wrap:pretty}
.band-dark h2.section-title,.band-dark .section-heading h2{color:var(--bg)}
.band-dark .section-heading>p:last-child{color:rgba(238,241,236,.66)}
.body-copy{margin:0;color:var(--muted);font-size:17px;line-height:1.7;max-width:66ch;text-wrap:pretty}
.body-copy+.body-copy{margin-top:18px}
.body-copy.lede{margin-top:28px}
.button-ghost{border-color:var(--hair);color:var(--ink);background:transparent}
.split-grid .sticky-col .button{margin-top:36px}
.band-dark .body-copy{color:rgba(238,241,236,.68)}
.mono-label{color:var(--moss);font-family:var(--font-geist-mono),monospace;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}

/* ---------- Numbered rows (values, points) ---------- */
.num-rows{border-top:1px solid var(--hair)}
.num-rows article{display:grid;grid-template-columns:52px 1fr;gap:26px;padding:34px 0;border-bottom:1px solid var(--hair)}
.num-rows article>span{margin-top:6px;color:var(--moss);font-family:var(--font-geist-mono),monospace;font-size:10px;letter-spacing:.14em}
.num-rows h3{margin:0;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(24px,2.1vw,31px);font-weight:400;letter-spacing:-.03em}
.num-rows p{margin:11px 0 0;max-width:70ch;color:var(--muted);font-size:15px;line-height:1.65}
.band-tint .num-rows,.band-tint .num-rows article{border-color:rgba(26,46,43,.18)}
.band-dark .num-rows,.band-dark .num-rows article{border-color:rgba(238,241,236,.14)}
.band-dark .num-rows h3{color:var(--bg)}
.band-dark .num-rows p{color:rgba(238,241,236,.62)}
.split-grid{display:grid;grid-template-columns:.82fr 1fr;gap:96px;align-items:start}
.split-grid .sticky-col{position:sticky;top:52px;align-self:start}

/* ---------- Founder ---------- */
.founder-grid{position:relative;z-index:1;display:grid;grid-template-columns:.72fr 1fr;gap:86px;align-items:start}
.founder-mark{display:flex;flex-direction:column;gap:30px;padding:38px 34px;border:1px solid rgba(238,241,236,.16);background:rgba(238,241,236,.035)}
.founder-mark img{width:64px;height:64px;object-fit:contain;filter:grayscale(1) brightness(2.2);opacity:.78}
.founder-mark blockquote{display:flex;flex-direction:column;margin:0;color:var(--bg);font-family:Georgia,"Times New Roman",serif;font-size:clamp(27px,2.6vw,38px);line-height:1.12;letter-spacing:-.035em}
.founder-mark blockquote span:last-child{color:var(--bg-tint);font-style:italic}
.founder-mark .founder-meta{display:flex;flex-direction:column;gap:7px;padding-top:22px;border-top:1px solid rgba(238,241,236,.16)}
.founder-sig{margin-top:30px;color:var(--bg-tint);font-family:Georgia,"Times New Roman",serif;font-size:24px;font-style:italic}

/* ---------- Card grid (credentials) ---------- */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.card-grid article{display:flex;flex-direction:column;gap:12px;padding:32px 28px 34px;background:var(--bg)}
.card-grid .mark{width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--moss);border-radius:50%;color:var(--moss);font-size:10px}
.card-grid h3{margin:0;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:22px;font-weight:400;letter-spacing:-.02em}
.card-grid p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}

/* ---------- Stack columns ---------- */
.stack-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;border-top:1px solid var(--hair);padding-top:34px}
.stack-grid ul{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:11px}
.stack-grid li{color:var(--ink);font-size:15px}

/* ---------- Services detail ---------- */
.svc-detail{border-top:1px solid var(--hair)}
.svc-detail>article{display:grid;grid-template-columns:132px minmax(0,1fr) 250px;gap:44px;padding:56px 0;border-bottom:1px solid var(--hair)}
.svc-detail .svc-tag{display:flex;flex-direction:column;gap:9px}
.svc-detail .svc-tag b{color:var(--moss);font-family:var(--font-geist-mono),monospace;font-size:10px;font-weight:600;letter-spacing:.16em}
.svc-detail h2{margin:0;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,2.9vw,44px);font-weight:400;line-height:1.06;letter-spacing:-.04em;text-wrap:pretty}
.svc-detail .svc-say{margin:16px 0 0;color:var(--muted);font-size:16px;line-height:1.7;max-width:62ch}
.svc-detail .svc-say em{color:var(--ink);font-style:italic}
.svc-detail ul{margin:26px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}
.svc-detail li{position:relative;padding:11px 0 11px 22px;border-top:1px solid var(--hair);color:var(--ink);font-size:14.5px;line-height:1.5}
.svc-detail li::before{content:"";position:absolute;top:21px;left:0;width:11px;height:1px;background:var(--moss)}
.svc-meta{display:grid;gap:6px;align-content:start;padding-left:26px;border-left:1px solid var(--hair)}
.svc-meta p{margin:0 0 18px;color:var(--muted);font-size:14px;line-height:1.6}
.svc-meta p:last-child{margin-bottom:0}

/* ---------- Pricing ---------- */
.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tier{position:relative;display:flex;flex-direction:column;padding:36px 30px 32px;border:1px solid var(--hair);background:var(--bg)}
.tier-featured{border-color:var(--ink);background:var(--ink);color:var(--bg)}
.tier-badge{position:absolute;top:-11px;left:30px;padding:5px 11px;color:var(--bg);background:var(--moss);font-family:var(--font-geist-mono),monospace;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.tier h3{margin:14px 0 0;font-family:Georgia,"Times New Roman",serif;font-size:31px;font-weight:400;letter-spacing:-.03em}
.tier-featured h3,.tier-featured .tier-price-num{color:var(--bg)}
.tier-price{display:flex;align-items:baseline;gap:9px;margin:16px 0 0}
.tier-price-pre{color:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.tier-featured .tier-price-pre,.tier-featured .tier-blurb{color:var(--hair)}
.tier-price-num{color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:44px;letter-spacing:-.04em}
.tier-blurb{margin:14px 0 0;color:var(--muted);font-size:14.5px;line-height:1.6}
.tier ul{margin:26px 0 30px;padding:22px 0 0;border-top:1px solid var(--hair);list-style:none;display:grid;gap:11px}
.tier-featured ul{border-top-color:rgba(238,241,236,.18)}
.tier li{position:relative;padding-left:20px;font-size:14.5px;line-height:1.5}
.tier li::before{content:"";position:absolute;top:9px;left:0;width:10px;height:1px;background:var(--moss)}
.tier-featured li{color:var(--bg)}
.tier .button{margin-top:auto;min-width:0;width:100%;justify-content:space-between}
.button-outline{border-color:var(--hair);color:var(--ink);background:transparent}
.button-outline:hover{color:var(--bg);background:var(--ink)}
.tier-featured .button-outline{border-color:rgba(238,241,236,.4);color:var(--bg)}
.tier-featured .button-outline:hover{color:var(--ink);background:var(--bg)}
.lineitems{margin:0;padding:0;list-style:none;border-top:1px solid var(--hair)}
.lineitems li{display:flex;justify-content:space-between;align-items:baseline;gap:26px;padding:22px 0;border-bottom:1px solid var(--hair)}
.lineitems b{display:block;color:var(--ink);font-size:16px;font-weight:600}
.lineitems small{display:block;margin-top:5px;color:var(--muted);font-size:13px}
.lineitems .price{color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:24px;white-space:nowrap}
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(238,241,236,.14);border:1px solid rgba(238,241,236,.14)}
.plan{display:flex;flex-direction:column;gap:14px;padding:34px 28px;background:var(--ink-deep)}
.plan .plan-price{color:var(--bg);font-family:Georgia,"Times New Roman",serif;font-size:42px;letter-spacing:-.04em}
.plan .plan-price span{color:rgba(238,241,236,.5);font-size:14px}
.plan ul{margin:10px 0 0;padding:20px 0 0;border-top:1px solid rgba(238,241,236,.14);list-style:none;display:grid;gap:10px}
.plan li{color:rgba(238,241,236,.78);font-size:14.5px}
.usage-note{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:44px;padding-top:34px;border-top:1px solid rgba(238,241,236,.14)}
.usage-note h3{margin:0 0 12px;color:var(--bg);font-family:Georgia,"Times New Roman",serif;font-size:24px;font-weight:400}

/* ---------- FAQ ---------- */
.faq-layout{display:grid;grid-template-columns:240px 1fr;gap:96px;align-items:start}
.faq-side{position:sticky;top:52px}
.faq-jump{display:flex;flex-direction:column;margin-top:16px}
.faq-jump a{padding:13px 0;border-top:1px solid var(--hair);color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:18px;text-decoration:none}
.faq-jump a:first-child{border-top-color:var(--ink)}
.faq-jump a:hover{color:var(--moss)}
.faq-group{margin:0 0 60px}
.faq-group:last-child{margin-bottom:0}
.faq-group>h2{margin:0 0 8px;padding-bottom:16px;border-bottom:1px solid var(--hair);color:var(--moss);font-family:var(--font-geist-mono),monospace;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;scroll-margin-top:40px}
.faq-item{border-bottom:1px solid var(--hair)}
.faq-item summary{display:flex;justify-content:space-between;align-items:baseline;gap:26px;padding:24px 0;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(20px,1.8vw,25px);letter-spacing:-.025em;cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary span{color:var(--moss);font-family:var(--font-geist-mono),monospace;font-size:16px;transition:transform 200ms ease}
.faq-item[open] summary span{transform:rotate(45deg)}
.faq-item>div{padding:0 0 26px}
.faq-item p{margin:0 0 12px;max-width:70ch;color:var(--muted);font-size:15.5px;line-height:1.72}
.faq-item p:last-child{margin-bottom:0}
.faq-item strong{color:var(--ink)}

/* ---------- Legal ---------- */
.legal-body>.legal-intro{margin:0 0 44px;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:23px;line-height:1.35;max-width:56ch}
.legal-body h2{margin:56px 0 20px;padding-bottom:16px;border-bottom:1px solid var(--hair);color:var(--moss);font-family:var(--font-geist-mono),monospace;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;scroll-margin-top:40px}
.legal-body h2:first-of-type{margin-top:0}
.legal-body h3{margin:32px 0 10px;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:23px;font-weight:400}
.legal-body p{margin:0 0 14px;max-width:68ch;color:var(--muted);font-size:15.5px;line-height:1.72}
.legal-body ul{margin:16px 0 22px;padding:0;list-style:none;max-width:68ch}
.legal-body li{position:relative;padding:11px 0 11px 24px;border-top:1px solid var(--hair);color:var(--muted);font-size:15px;line-height:1.6}
.legal-body li:last-child{border-bottom:1px solid var(--hair)}
.legal-body li::before{content:"";position:absolute;top:22px;left:0;width:12px;height:1px;background:var(--moss)}
.legal-note{margin-top:56px;padding-top:30px;border-top:1px solid var(--hair);color:var(--muted);font-size:14px}
.legal-note a{color:var(--ink)}

/* ---------- Contact page ---------- */
.contact-page-grid{position:relative;z-index:3;display:grid;grid-template-columns:.86fr 1fr;gap:96px;align-items:start;padding:78px 0 96px}
.contact-page-grid .contact-details{margin-top:38px}
.next-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--hair)}
.next-steps article{display:flex;flex-direction:column;min-height:250px;padding:32px 28px 28px;border-right:1px solid var(--hair)}
.next-steps article:first-child{border-left:1px solid var(--hair)}
.next-steps article>span{color:var(--moss);font-family:var(--font-geist-mono),monospace;font-size:10px;letter-spacing:.16em}
.next-steps article>div{margin-top:auto}
.next-steps h3{margin:0 0 12px;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:29px;font-weight:400}
.next-steps p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.next-steps small{margin-top:24px;color:var(--moss);font-family:var(--font-geist-mono),monospace;font-size:9px;letter-spacing:.13em;text-transform:uppercase}

/* ---------- CTA band ---------- */
.cta-band{color:var(--bg);background:var(--ink)}
.cta-inner{display:grid;grid-template-columns:1fr auto;gap:64px;align-items:end;padding:82px 0}
.cta-inner h2{margin:0;max-width:22ch;color:var(--bg);font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,3.5vw,52px);font-weight:400;line-height:1.06;letter-spacing:-.04em;text-wrap:pretty}
.cta-actions{display:flex;flex-direction:column;gap:14px;min-width:330px}
.cta-actions .button{width:100%;min-width:0}
.cta-actions .button-ghost{border-color:rgba(238,241,236,.32);color:var(--bg)}
.cta-actions .button-ghost:hover{color:var(--ink);background:var(--bg)}

/* ---------- Responsive ---------- */
@media (max-width:1020px){
  .page-hero-inner{padding:72px 0 60px}
  .page-hero-inner.has-art{max-width:100%}
  .hero-tree{opacity:.1}
  .split-grid,.founder-grid,.faq-layout,.contact-page-grid{grid-template-columns:1fr;gap:56px}
  .split-grid .sticky-col,.faq-side{position:static}
  .card-grid,.tier-grid,.plan-grid,.stack-grid{grid-template-columns:1fr 1fr}
  .svc-detail>article{grid-template-columns:1fr;gap:26px;padding:44px 0}
  .svc-meta{padding-left:0;border-left:0;border-top:1px solid var(--hair);padding-top:22px}
  .usage-note,.cta-inner{grid-template-columns:1fr;gap:34px}
  .next-steps{grid-template-columns:1fr}
  .next-steps article{min-height:0;border-left:1px solid var(--hair)}
  .cta-actions{min-width:0;width:100%}
}
@media (max-width:720px){
  .page-hero-inner{padding:56px 0 48px}
  .page-h1{font-size:clamp(40px,11vw,56px)}
  .page-lead{margin-top:26px;font-size:17px}
  .page-hero-meta{gap:12px;flex-direction:column}
  .card-grid,.tier-grid,.plan-grid,.stack-grid,.svc-detail ul{grid-template-columns:1fr}
  .num-rows article{grid-template-columns:34px 1fr;gap:16px}
  .faq-side{display:none}
  .lineitems li{flex-direction:column;gap:8px}
  .cta-inner{padding:64px 0}
}

/* ---------- Static-site chrome: mobile drawer + link defaults ---------- */
a:hover{color:var(--moss)}
.site-header nav a:hover,.header-cta:hover,.footer-top>div a:hover,.brand:hover{color:var(--bg)}
.header-end{justify-self:end;display:flex;align-items:center;gap:18px}
.nav-toggle{display:none;align-items:center;gap:9px;padding:10px 14px;border:1px solid rgba(200,209,199,.3);border-radius:3px;color:var(--bg);background:transparent;cursor:pointer;font-family:var(--font-geist-mono),monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.nav-toggle>span:first-child{width:14px;height:8px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}
.nav-toggle[aria-expanded="true"]>span:first-child{border-bottom-color:transparent}
.nav-drawer{position:relative;z-index:6;padding:0 0 18px;border-bottom:1px solid rgba(200,209,199,.18)}
.nav-drawer nav{display:flex;flex-direction:column;width:min(calc(100% - 64px),var(--max));margin:0 auto}
.nav-drawer a{display:flex;align-items:center;min-height:52px;border-bottom:1px solid rgba(200,209,199,.14);color:rgba(238,241,236,.82);font-family:Georgia,"Times New Roman",serif;font-size:20px;text-decoration:none}
.nav-drawer a:last-child{border-bottom:0}
.nav-drawer a:hover{color:var(--bg)}
html.drawer-open{overflow:hidden}
@media (max-width:1100px){.nav-toggle{display:inline-flex}}
@media (max-width:720px){.header-cta .nav-toggle-text{display:none}.nav-drawer nav{width:calc(100% - 36px)}}

/* ---------- Hero branch badges (number in place of an icon) ---------- */
.branch-icon{font-family:var(--font-geist-mono),monospace;font-size:11px;font-weight:500;letter-spacing:.06em}

/* ---------- Leewood Learning band ---------- */
.learn-grid{display:grid;grid-template-columns:1fr .8fr;gap:96px;align-items:start}
.learn-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--hair)}
.learn-list li{display:flex;flex-direction:column;gap:6px;padding:22px 0;border-bottom:1px solid var(--hair)}
.learn-list b{color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:22px;font-weight:400;letter-spacing:-.02em}
.learn-list small{color:var(--muted);font-size:14px;line-height:1.6}
@media (max-width:1020px){.learn-grid{grid-template-columns:1fr;gap:48px}}

/* ---------- Platform rail: keep the last item reachable below the desktop width ---------- */
@media (max-width:1020px){
  .tool-track{justify-content:flex-start;animation:rail-scroll 26s linear infinite}
  @keyframes rail-scroll{from{transform:translateX(0)}to{transform:translateX(-55%)}}
}
@media (prefers-reduced-motion:reduce){
  .tool-rail{overflow-x:auto}
  .tool-track{animation:none!important}
}

/* ---------- Five nav items + CTA: tighten the gap before the drawer takes over ---------- */
@media (max-width:1400px){.site-header nav{gap:22px}}

/* ---------- Hero headline: lighter weight, less condensed feel ---------- */
.hero h1{font-weight:500;line-height:.9;letter-spacing:-.045em}
.hero h1 em{font-size:1em;letter-spacing:-.03em}
@media (max-width:720px){.hero h1{line-height:.93}}
