/* ============================================================
   Shadowbiz — site styles
   Forest ink · one lime accent · cream paper. 4px rhythm.
   ============================================================ */
:root{
  --ink:#1d3a2e;--ink2:#2e4a3e;--ink60:#5a6b5e;--ink40:#8a9a8e;--ink20:#bcc7c0;
  --lime:#84cc16;--lime-deep:#65a30d;--lime-soft:#a3e635;--lime-pale:#e8f5d0;
  --shadow-olive:#2e5016;
  --teal:#0a2828;--cream:#f5f1e8;--cream-soft:#faf6ed;--cream-deep:#ebe4d4;
  --line:rgba(29,58,46,.12);--line-soft:rgba(29,58,46,.07);
  --sans:'Inter',system-ui,-apple-system,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --r-sm:8px;--r-md:14px;--r-lg:24px;--r-pill:999px;
  --gut:clamp(20px,5vw,72px);--maxw:1240px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
::selection{background:var(--lime);color:var(--ink)}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
img,svg{display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut)}
.section{position:relative;padding:clamp(72px,11vw,150px) 0}
.eyebrow{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--ink60);display:inline-flex;align-items:center;gap:10px}
.eyebrow .num{color:var(--lime-deep)}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--ink20);display:inline-block}
.rule{height:1px;background:var(--line);width:100%}
.display{font-weight:800;letter-spacing:-.035em;line-height:1.0;font-size:clamp(44px,7.6vw,104px)}
h2.title{font-weight:800;letter-spacing:-.03em;line-height:1.04;font-size:clamp(32px,4.4vw,58px)}
h3.sub{font-weight:700;letter-spacing:-.02em;font-size:clamp(20px,2vw,26px);line-height:1.12}
.lede{font-size:clamp(17px,1.5vw,21px);line-height:1.62;color:var(--ink60);font-weight:400}
.lede b{color:var(--ink);font-weight:600}
.mono-tag{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink60)}
.btn{display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:600;letter-spacing:-.01em;padding:14px 22px;border-radius:var(--r-pill);transition:transform .25s cubic-bezier(.2,.7,.2,1),background .25s,color .25s,box-shadow .25s;white-space:nowrap}
.btn .ar{transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.btn:hover .ar{transform:translateX(4px)}
.btn-primary{background:var(--lime);color:var(--ink);box-shadow:0 1px 0 rgba(0,0,0,.04)}
.btn-primary:hover{background:var(--lime-soft);transform:translateY(-2px);box-shadow:0 14px 30px -16px rgba(101,163,13,.7)}
.btn-ink{background:var(--ink);color:var(--cream)}
.btn-ink:hover{background:var(--ink2);transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(29,58,46,.7)}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1px var(--ink);transform:translateY(-2px)}
.btn-ondark{background:transparent;color:var(--cream);box-shadow:inset 0 0 0 1px rgba(245,241,232,.22)}
.btn-ondark:hover{box-shadow:inset 0 0 0 1px rgba(245,241,232,.5);transform:translateY(-2px)}
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.js .reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.06s}.reveal.d2{transition-delay:.12s}.reveal.d3{transition-delay:.18s}
.reveal.d4{transition-delay:.24s}.reveal.d5{transition-delay:.30s}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}*{animation:none !important}}
