
/* ===== SM DESIGN SYSTEM v2 — tokens (calibrated to the app) ===== */
:root{
  /* color — calibrated: canvas/ink/lime measured from the app; forest/sage from brief */
  --canvas:#F5F3EC; --surface:#FAF9F5; --surface-raised:#FFFFFF;
  --ink:#20231F; --ink-muted:#6E7169;
  --forest:#1E2B22; --forest-deep:#202820;
  --lime:#C8F43D; --lime-deep:#A8D94F; --lime-text:#5C761D; --lime-soft:#E9F7C0; --sage:#E2EADF;
  --line:rgba(25,38,27,.12); --line-strong:rgba(25,38,27,.22);
  /* legacy aliases (existing rules keep working) */
  --charcoal:#262A24; --offwhite:var(--canvas); --white:var(--surface-raised); --muted:var(--ink-muted);
  /* type */
  --font-ui:'Instrument Sans','Space Grotesk',system-ui,sans-serif;
  --font-mono:'Space Mono',monospace; --font-hand:'Caveat',cursive;
  --fs-display:clamp(40px,5.4vw,72px); --fs-h2:clamp(28px,3.4vw,44px); --fs-h3:clamp(18px,2vw,22px);
  --fs-body:clamp(15px,1.15vw,17px); --fs-small:13.5px; --fs-meta:11.5px;
  /* space & shape */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:72px;
  --r-sm:10px; --r-md:14px; --r-lg:20px; --r-xl:28px; --radius:20px;
  --shadow-sm:0 2px 8px -4px rgba(32,35,31,.16);
  --shadow-soft:0 10px 30px -12px rgba(32,35,31,.14);
  --shadow:0 24px 60px -20px rgba(32,35,31,.18);
  /* layout: breakpoints designed at 1600/1440/1280/1024/768/430/390/360 */
  --maxw:1180px;
  /* layers */
  --z-nav:100; --z-menu:99; --z-modal:200; --z-toast:210;
  /* motion */
  --dur-1:.25s; --dur-2:.45s; --dur-3:.7s; --ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Instrument Sans','Space Grotesk',system-ui,sans-serif;color:var(--ink);background:linear-gradient(180deg,#FDFCF8 0%,#F0EFE7 100%);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh;min-height:100svh;position:relative}
a{color:inherit;text-decoration:none}
.wrap,
[data-y~="wrap"]{max-width:1140px;margin:0 auto;padding:0 24px;position:relative;z-index:2}
.eyebrow{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--lime-text);font-weight:700;display:block;margin-bottom:14px}
h1{font-size:clamp(42px,6.4vw,74px);letter-spacing:-.02em;line-height:1.02;font-weight:700}
h1 .hl,
h1 [data-y~="hl"]{position:relative;white-space:nowrap;z-index:1}
h1 .hl::after,
h1 [data-y~="hl"]::after{content:"";position:absolute;left:-4px;right:-4px;bottom:.06em;height:.32em;background:var(--lime);z-index:-1;border-radius:4px;transform:rotate(-1.2deg)}
.lime-dot{display:inline-block;width:.6em;height:.6em;border-radius:50%;background:var(--lime);vertical-align:-.05em;margin-left:-.34em;position:relative;z-index:-1}
/* ambient background */
.bg,
[data-y~="bg"]{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.bg .grid,
[data-y~="bg"] [data-y~="grid"]{position:absolute;inset:0;background-image:radial-gradient(rgba(20,20,20,.06) 1.3px,transparent 1.3px);background-size:30px 30px;mask-image:radial-gradient(ellipse 90% 80% at 50% 20%,#000 40%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 20%,#000 40%,transparent 100%);animation:griddrift 22s linear infinite}
@keyframes griddrift{from{background-position:0 0}to{background-position:30px 30px}}
.bg .glow,
[data-y~="bg"] [data-y~="glow"]{position:absolute;border-radius:50%;filter:blur(12px)}
.bg .g1,
[data-y~="bg"] [data-y~="g1"]{top:-160px;right:-90px;width:560px;height:560px;background:radial-gradient(circle,rgba(200,244,61,.55),rgba(200,244,61,0) 62%);}
.bg .g2,
[data-y~="bg"] [data-y~="g2"]{bottom:-160px;left:-120px;width:480px;height:480px;background:radial-gradient(circle,rgba(200,244,61,.32),rgba(200,244,61,0) 65%);}
/* reveal */
.reveal,
[data-y~="reveal"]{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.in,
[data-y~="reveal"].in{opacity:1;transform:none}
.reveal.d1,
[data-y~="reveal"][data-y~="d1"]{transition-delay:.08s}.reveal.d2,
[data-y~="reveal"][data-y~="d2"]{transition-delay:.16s}.reveal.d3,
[data-y~="reveal"][data-y~="d3"]{transition-delay:.24s}
/* buttons */
.btn,
[data-y~="btn"]{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-weight:600;font-size:16px;padding:14px 26px;border-radius:999px;border:1.5px solid transparent;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .2s,border-color .2s;white-space:nowrap;font-family:inherit;position:relative;overflow:hidden}
.btn-primary,
[data-y~="btn-primary"]{background:var(--ink);color:#fff;box-shadow:0 10px 26px -10px rgba(32,35,31,.55),0 0 0 1px rgba(32,35,31,.9) inset}
.btn-primary::before,
[data-y~="btn-primary"]::before{content:"";width:13px;height:13px;flex:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23D1F349' d='m12 2-2 6-6 2 6 2 2 6 2-6 6-2-6-2z'/%3E%3C/svg%3E") center/contain no-repeat}
.btn-primary:hover,
[data-y~="btn-primary"]:hover{box-shadow:0 14px 32px -10px rgba(32,35,31,.6),0 0 0 3px rgba(200,244,61,.45)}
.bg-ink .btn-primary,.final .btn-primary,.followbuild .btn-primary,
.bg-ink [data-y~="btn-primary"],.final [data-y~="btn-primary"],[data-y~="followbuild"] [data-y~="btn-primary"]{background:var(--lime);color:var(--ink);box-shadow:0 10px 26px -10px rgba(168,201,59,.7)}
.bg-ink .btn-primary::before,.final .btn-primary::before,.followbuild .btn-primary::before,
.bg-ink [data-y~="btn-primary"]::before,.final [data-y~="btn-primary"]::before,[data-y~="followbuild"] [data-y~="btn-primary"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2320231F' d='m12 2-2 6-6 2 6 2 2 6 2-6 6-2-6-2z'/%3E%3C/svg%3E")}
.btn-primary::after,
[data-y~="btn-primary"]::after{content:"";position:absolute;top:0;left:-130%;width:55%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-18deg);transition:left .6s var(--ease)}
.btn-primary:hover::after,
[data-y~="btn-primary"]:hover::after{left:140%}
.btn-primary:hover,
[data-y~="btn-primary"]:hover{transform:translateY(-2px);box-shadow:0 14px 30px -8px rgba(168,201,59,.9)}
.btn-ghost,
[data-y~="btn-ghost"]{background:transparent;color:var(--ink);border-color:rgba(20,20,20,.18)}
.btn-ghost:hover,
[data-y~="btn-ghost"]:hover{border-color:var(--ink);transform:translateY(-2px)}
/* nav */
.nav,
[data-y~="nav"]{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:100;width:calc(100% - 32px);max-width:1220px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 14px 11px 24px;border-radius:20px;background:rgba(255,255,255,.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(32,35,31,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 12px 32px -16px rgba(20,20,20,.24)}
.logo,
[data-y~="logo"]{position:relative;display:inline-flex;align-items:center;font-weight:700;font-size:22px;letter-spacing:-.03em}
.logo img,
[data-y~="logo"] img{height:40px;width:auto;display:block}
.logo .brandmark,
[data-y~="logo"] [data-y~="brandmark"]{height:40px;width:auto;display:block}
.nav-links,
[data-y~="nav-links"]{display:flex;gap:22px;align-items:center;flex-wrap:nowrap}
.nav-links a,
[data-y~="nav-links"] a{position:relative;font-size:14.5px;opacity:.82;transition:opacity .2s;white-space:nowrap}
.nav-links a::after,
[data-y~="nav-links"] a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;border-radius:2px;background:var(--lime-deep);transform:scaleX(0);transform-origin:left;transition:transform .28s var(--ease);box-shadow:0 0 8px rgba(200,244,61,.85)}
.nav-links a:hover,
[data-y~="nav-links"] a:hover{opacity:1}.nav-links a:hover::after,
[data-y~="nav-links"] a:hover::after{transform:scaleX(1)}
.nav-links a[aria-current="page"],
[data-y~="nav-links"] a[aria-current="page"]{opacity:1}.nav-links a[aria-current="page"]::after,
[data-y~="nav-links"] a[aria-current="page"]::after{transform:scaleX(1)}
.nav-cta,
[data-y~="nav-cta"]{display:flex;gap:12px;align-items:center}
.nav .btn,
[data-y~="nav"] [data-y~="btn"]{padding:10px 18px;font-size:14.5px;white-space:nowrap}
.nav-login,
[data-y~="nav-login"]{display:inline-flex;align-items:center;font-size:14.5px;font-weight:600;color:var(--ink);padding:9px 16px;white-space:nowrap;border-radius:999px;border:1.5px solid rgba(20,20,20,.16);transition:transform .25s var(--ease),border-color .25s,background .25s,box-shadow .25s}
.nav-login:hover,
[data-y~="nav-login"]:hover{border-color:var(--ink);background:rgba(20,20,20,.05);transform:translateY(-1px);box-shadow:0 7px 16px -10px rgba(20,20,20,.55)}
@media(max-width:1120px){.nav-links,
[data-y~="nav-links"]{gap:16px}.nav-links a,
[data-y~="nav-links"] a{font-size:14px}}
@media(max-width:980px){.nav-links,.nav-login,
[data-y~="nav-links"],[data-y~="nav-login"]{display:none}}
/* layout */
.page,
[data-y~="page"]{padding:158px 0 100px}
.head,
[data-y~="head"]{max-width:640px;margin-bottom:56px}
.head p,
[data-y~="head"] p{font-size:19px;color:var(--muted);margin-top:18px;max-width:520px}
.tag,
[data-y~="tag"]{font-family:'Caveat',cursive;font-size:32px;color:var(--lime-text);margin-bottom:8px;display:block}
.head-badges,
[data-y~="head-badges"]{display:flex;gap:20px;margin-top:26px;flex-wrap:wrap}
.head-badges span,
[data-y~="head-badges"] span{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted);font-family:'Space Mono',monospace}
.head-badges svg,
[data-y~="head-badges"] svg{flex:none}
.grid,
[data-y~="grid"]{display:grid;grid-template-columns:1.3fr .9fr;gap:36px;align-items:stretch}
/* form card */
.card{position:relative;background:var(--white);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:36px;overflow:hidden;display:flex;flex-direction:column}
.card::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--lime),var(--lime-deep))}
#formCard .form-body{flex:1;display:flex;flex-direction:column}
#formCard form{flex:1;display:flex;flex-direction:column}
#contactForm .grow{flex:1;display:flex;flex-direction:column}
#contactForm .grow textarea{flex:1}
.field{margin-bottom:18px}
.field label{display:block;font-size:13px;font-weight:600;margin-bottom:7px}
.field input,.field select,.field textarea{width:100%;font-family:inherit;font-size:15px;color:var(--ink);background:var(--offwhite);border:1px solid var(--line);border-radius:12px;padding:13px 14px;transition:border-color .2s,box-shadow .2s;outline:none}
.field textarea{min-height:132px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--lime-deep);box-shadow:0 0 0 4px rgba(200,244,61,.28);background:#fff}
.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-actions{display:flex;align-items:center;gap:14px;margin-top:8px;flex-wrap:wrap}
.form-note{font-family:'Space Mono',monospace;font-size:12.5px;color:var(--muted)}
.success{display:none;text-align:center;padding:34px 10px}
.success .ic{width:70px;height:70px;border-radius:50%;background:var(--lime);color:var(--ink);display:grid;place-items:center;margin:0 auto 20px;box-shadow:0 0 0 8px rgba(200,244,61,.22)}
.success h3{font-size:26px;margin-bottom:8px}
.success p{color:var(--muted);max-width:420px;margin:0 auto}
.sent .form-body{display:none}.sent .success{display:block}
/* info side */
.info{display:flex;flex-direction:column;gap:16px}
.info-card{position:relative;background:var(--ink);color:#fff;border-radius:24px;padding:30px;box-shadow:var(--shadow);overflow:hidden}
.info-card .spark{position:absolute;top:-40px;right:-40px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(200,244,61,.35),transparent 65%)}
.info-card h3{font-size:19px;margin-bottom:6px}
.info-card p{color:rgba(255,255,255,.72);font-size:14.5px;margin-bottom:18px}
.info-item{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-top:1px solid rgba(255,255,255,.12)}
.info-item .ii{flex:none;width:36px;height:36px;border-radius:10px;background:rgba(200,244,61,.18);color:var(--lime);display:grid;place-items:center}
.info-item b{display:block;font-size:14.5px}
.info-item span{font-size:13px;color:rgba(255,255,255,.65)}
.info-item a{color:var(--lime)}
.reasons{background:var(--white);border:1px solid var(--line);border-radius:24px;padding:26px}
.reasons h4{font-size:13px;font-family:'Space Mono',monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:14px}
.reasons ul{list-style:none;display:flex;flex-direction:column;gap:12px}
.reasons li{display:flex;gap:10px;font-size:14.5px;color:var(--ink);line-height:1.4}
.reasons li .d{width:8px;height:8px;border-radius:50%;background:var(--lime-deep);margin-top:7px;flex:none}
/* footer (identical to homepage) */
.footer,
[data-y~="footer"]{position:relative;z-index:2;background:var(--canvas);padding:26px 16px 20px;margin-top:20px;color:rgba(245,242,233,.66)}
.footer .wrap,
[data-y~="footer"] [data-y~="wrap"]{position:relative;overflow:hidden;max-width:min(1500px,calc(100% - 0px));width:100%;background:radial-gradient(circle at 92% 0%,rgba(204,255,63,.12),transparent 30%),linear-gradient(145deg,#1C2921 0%,#26372D 60%,#2C3830 100%);border:1px solid rgba(250,251,248,.14);border-radius:28px;box-shadow:0 2px 6px rgba(18,28,22,.08),0 18px 44px rgba(18,28,22,.16),inset 0 1px 0 rgba(255,255,255,.10);padding:46px 46px 26px}
.footer .wrap::before,
[data-y~="footer"] [data-y~="wrap"]::before{content:"";position:absolute;top:0;left:1px;right:1px;height:2px;border-radius:27px 27px 0 0;background:linear-gradient(90deg,#CCFF3F,#CFE9DD 58%,rgba(207,233,221,0));z-index:2}
@media(max-width:640px){.footer,
[data-y~="footer"]{padding:16px 10px 14px}.footer .wrap,
[data-y~="footer"] [data-y~="wrap"]{padding:34px 24px 20px}}
.footer-grid,
[data-y~="footer-grid"]{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;margin-bottom:40px}
.footer .logo,
[data-y~="footer"] [data-y~="logo"]{color:#F5F2E9;margin-bottom:14px;display:inline-block}
.footer p,
[data-y~="footer"] p{font-size:14.5px;max-width:280px;color:rgba(245,242,233,.66)}
.footer h4,
[data-y~="footer"] h4{color:rgba(245,242,233,.55);font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px;font-family:'Space Mono',monospace}
.footer ul,
[data-y~="footer"] ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer a,
[data-y~="footer"] a{font-size:14.5px;color:rgba(245,242,233,.78);transition:color .2s}
.footer a:hover,
[data-y~="footer"] a:hover{color:#CCFF3F}
.footer-bot,
[data-y~="footer-bot"]{max-width:1180px;margin-left:auto;margin-right:auto;border-top:1px solid rgba(245,242,233,.14);color:rgba(245,242,233,.5);padding-top:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;font-family:'Space Mono',monospace}
@media(max-width:900px){.footer-grid,
[data-y~="footer-grid"]{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer-grid,
[data-y~="footer-grid"]{grid-template-columns:1fr}}
@media(max-width:900px){.grid,
[data-y~="grid"]{grid-template-columns:1fr}}
@media(max-width:520px){.row{grid-template-columns:1fr}.page,
[data-y~="page"]{padding:126px 0 72px}}

/* ===== roadmap page ===== */
.page.rm .head,
[data-y~="page"][data-y~="rm"] [data-y~="head"]{max-width:760px}
.rm-legend,
[data-y~="rm-legend"]{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:8px 0 44px;padding:16px 22px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft)}
.rm-legend .lg,
[data-y~="rm-legend"] [data-y~="lg"]{display:flex;align-items:center;gap:8px;font-size:12.5px;font-family:'Space Mono',monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.rm-legend i,
[data-y~="rm-legend"] i{width:12px;height:12px;border-radius:50%;display:inline-block}
.s-done,
[data-y~="s-done"]{background:var(--lime-deep)}
.s-prog,
[data-y~="s-prog"]{background:#f0a500}
.s-plan{background:rgba(20,20,20,.22)}
.rm-legend .rm-cta,
[data-y~="rm-legend"] [data-y~="rm-cta"]{margin-left:auto;font-weight:600;font-size:14px;border-bottom:2px solid var(--lime)}
.rm-legend .rm-cta:hover,
[data-y~="rm-legend"] [data-y~="rm-cta"]:hover{border-bottom-color:var(--lime-deep)}
.sprint,
[data-y~="sprint"]{margin-bottom:34px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(24px,3.4vw,36px);box-shadow:var(--shadow-soft)}
.sprint-head,
[data-y~="sprint-head"]{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:24px}
.sprint-head h2,
[data-y~="sprint-head"] h2{font-size:clamp(20px,2.6vw,26px)}
.sp-tag,
[data-y~="sp-tag"]{font-family:'Space Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.09em;padding:6px 12px;border-radius:99px}
.sp-tag.done,
[data-y~="sp-tag"][data-y~="done"]{background:var(--lime);color:var(--ink)}
.sp-tag.prog,
[data-y~="sp-tag"][data-y~="prog"]{background:#ffe4a3;color:#7a5600}
.sp-tag.plan,
[data-y~="sp-tag"][data-y~="plan"]{background:rgba(20,20,20,.08);color:var(--ink)}
.sprint-groups,
[data-y~="sprint-groups"]{display:flex;flex-direction:column;gap:24px}
.grp h3,
[data-y~="grp"] h3{font-size:12.5px;font-family:'Space Mono',monospace;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);display:flex;align-items:center;gap:8px;margin-bottom:14px}
.grp h3 i,
[data-y~="grp"] h3 i{width:10px;height:10px;border-radius:50%;display:inline-block}
.grp ul,
[data-y~="grp"] ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:11px 30px}
.grp li,
[data-y~="grp"] li{position:relative;padding-left:26px;font-size:14.5px;color:#2a2a2a;line-height:1.5}
.grp li::before,
[data-y~="grp"] li::before{content:"";position:absolute;left:0;top:7px;width:9px;height:9px;border-radius:2px}
.grp.done li::before,
[data-y~="grp"][data-y~="done"] li::before{content:"✓";top:0;left:3px;color:var(--lime-text);font-weight:700;width:auto;height:auto;border-radius:0}
.grp.prog li::before,
[data-y~="grp"][data-y~="prog"] li::before{background:#f0a500}
.grp.plan li::before,
[data-y~="grp"][data-y~="plan"] li::before{background:rgba(20,20,20,.25)}
/* locked sprints (founding members only) */
.s-lock,
[data-y~="s-lock"]{background:var(--ink)}
.lock-badge,
[data-y~="lock-badge"]{display:inline-flex;align-items:center;gap:6px;margin-left:auto;font-family:'Space Mono',monospace;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;background:var(--ink);color:var(--lime);padding:6px 12px;border-radius:99px;white-space:nowrap}
.lock-sub,
[data-y~="lock-sub"]{font-size:14.5px;color:#4a4a4a;line-height:1.6;max-width:640px;margin:0 0 18px}
.lock-sub b,
[data-y~="lock-sub"] b{color:var(--ink)}
.lock-rows,
[data-y~="lock-rows"]{display:flex;flex-direction:column;gap:10px;margin-bottom:6px}
.lock-rows span,
[data-y~="lock-rows"] span{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,rgba(20,20,20,.1),rgba(20,20,20,.05));filter:blur(2.5px)}
.lock-cta,
[data-y~="lock-cta"]{margin-top:16px}
.sprint.locked,
[data-y~="sprint"][data-y~="locked"]{background:linear-gradient(180deg,#fff 0%,#fbfcf6 100%)}
@media(max-width:640px){.lock-badge,
[data-y~="lock-badge"]{margin-left:0}}
.rm-foot,
[data-y~="rm-foot"]{margin-top:10px;text-align:center;color:var(--muted);font-size:14.5px;line-height:1.6}
@media(max-width:720px){.grp ul,
[data-y~="grp"] ul{grid-template-columns:1fr}.rm-legend .rm-cta,
[data-y~="rm-legend"] [data-y~="rm-cta"]{margin-left:0}}

/* ===== follow the build ===== */
.followbuild,
[data-y~="followbuild"]{margin-top:40px;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;background:var(--ink);color:#fff;border-radius:22px;padding:clamp(26px,3.5vw,38px)}
.followbuild h3,
[data-y~="followbuild"] h3{font-size:clamp(19px,2.4vw,24px);margin-bottom:8px}
.followbuild .fb-copy p,
[data-y~="followbuild"] [data-y~="fb-copy"] p{color:rgba(255,255,255,.72);font-size:14.5px;line-height:1.55;max-width:420px}
.fb-form,
[data-y~="fb-form"]{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.fb-form input,
[data-y~="fb-form"] input{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#fff;border-radius:12px;padding:14px 16px;font-size:15px;min-width:230px;font-family:inherit}
.fb-form input::placeholder,
[data-y~="fb-form"] input::placeholder{color:rgba(255,255,255,.5)}
.fb-form input:focus,
[data-y~="fb-form"] input:focus{outline:none;border-color:var(--lime);background:rgba(255,255,255,.14)}
.fb-ok,
[data-y~="fb-ok"]{flex-basis:100%;color:var(--lime);font-size:14px;margin-top:4px}
@media(max-width:860px){.road{grid-template-columns:1fr}.followbuild,
[data-y~="followbuild"]{flex-direction:column;align-items:flex-start}}


/* mobile menu */
.nav-burger,
[data-y~="nav-burger"]{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;border:none;background:transparent;cursor:pointer;border-radius:12px;flex:none}
.nav-burger span,
[data-y~="nav-burger"] span{display:block;height:2px;width:22px;background:var(--ink);border-radius:2px;transition:transform .3s var(--ease),opacity .2s}
.nav-burger.open span:nth-child(1),
[data-y~="nav-burger"].open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger.open span:nth-child(2),
[data-y~="nav-burger"].open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3),
[data-y~="nav-burger"].open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu,
[data-y~="mobile-menu"]{position:fixed;top:82px;left:16px;right:16px;z-index:99;background:rgba(255,255,255,.97);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(20,20,20,.08);border-radius:20px;box-shadow:0 24px 60px -18px rgba(20,20,20,.35);padding:10px;display:none;flex-direction:column}
.mobile-menu.open,
[data-y~="mobile-menu"].open{display:flex}
.mobile-menu>a,
[data-y~="mobile-menu"]>a{padding:13px 16px;font-size:16px;font-weight:600;border-radius:12px}
.mobile-menu>a:hover,.mobile-menu>a:active,
[data-y~="mobile-menu"]>a:hover,[data-y~="mobile-menu"]>a:active{background:rgba(200,244,61,.25)}
.mm-cta,
[data-y~="mm-cta"]{display:flex;flex-direction:column;gap:10px;padding:12px 6px 6px;border-top:1px solid var(--line);margin-top:8px}
.mm-cta .btn,
[data-y~="mm-cta"] [data-y~="btn"]{width:100%;justify-content:center}
@media(max-width:980px){.nav-burger,
[data-y~="nav-burger"]{display:flex}}
@media(max-width:600px){.nav .nav-start,
[data-y~="nav"] [data-y~="nav-start"]{display:none}}

/* ===== Yieldfund-signature motion ===== */
.btn .bl,
[data-y~="btn"] .bl{display:inline-flex;overflow:hidden}
.btn .ch,
[data-y~="btn"] .ch{display:inline-block;overflow:hidden;height:1.25em}
.btn .ch i,
[data-y~="btn"] .ch i{display:block;font-style:normal;line-height:1.25;transition:transform .55s var(--ease);transition-delay:calc(var(--i,0)*12ms)}
.btn:hover .ch i,
[data-y~="btn"]:hover .ch i{transform:translateY(-100%)}
.btn-primary::after,
[data-y~="btn-primary"]::after{content:"";position:absolute;left:50%;top:50%;width:150%;aspect-ratio:1/1;border-radius:50%;background:var(--lime);transform:translate(-50%,-50%) scale(0);transition:transform .7s cubic-bezier(.4,0,0,1);pointer-events:none;z-index:0}
.btn-primary:hover::after,
[data-y~="btn-primary"]:hover::after{transform:translate(-50%,-50%) scale(1)}
.btn-primary:hover,
[data-y~="btn-primary"]:hover{color:var(--ink)}
.btn-primary::before,
[data-y~="btn-primary"]::before{position:relative;z-index:1}
.btn-primary .bl,.btn-primary>span,.btn-primary>svg,
[data-y~="btn-primary"] .bl,[data-y~="btn-primary"]>span,[data-y~="btn-primary"]>svg{position:relative;z-index:1}
.btn-primary:hover::before,
[data-y~="btn-primary"]:hover::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2320231F' d='m12 2-2 6-6 2 6 2 2 6 2-6 6-2-6-2z'/%3E%3C/svg%3E")}
.bg-ink .btn-primary::after,.final .btn-primary::after,.followbuild .btn-primary::after,.tier.pop .btn-primary::after,
.bg-ink [data-y~="btn-primary"]::after,.final [data-y~="btn-primary"]::after,[data-y~="followbuild"] [data-y~="btn-primary"]::after,.tier.pop [data-y~="btn-primary"]::after{background:var(--ink)}
.bg-ink .btn-primary:hover,.final .btn-primary:hover,.followbuild .btn-primary:hover,.tier.pop .btn-primary:hover,
.bg-ink [data-y~="btn-primary"]:hover,.final [data-y~="btn-primary"]:hover,[data-y~="followbuild"] [data-y~="btn-primary"]:hover,.tier.pop [data-y~="btn-primary"]:hover{color:#fff}
.bg-ink .btn-primary:hover::before,.final .btn-primary:hover::before,.followbuild .btn-primary:hover::before,.tier.pop .btn-primary:hover::before,
.bg-ink [data-y~="btn-primary"]:hover::before,.final [data-y~="btn-primary"]:hover::before,[data-y~="followbuild"] [data-y~="btn-primary"]:hover::before,.tier.pop [data-y~="btn-primary"]:hover::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23D1F349' d='m12 2-2 6-6 2 6 2 2 6 2-6 6-2-6-2z'/%3E%3C/svg%3E")}
h1 .hl::after,
h1 [data-y~="hl"]::after{transform:rotate(-1.2deg) scaleX(0);transform-origin:0 100%;transition:transform .85s var(--ease) .35s}
body.ld h1 .hl::after,
body.ld h1 [data-y~="hl"]::after{transform:rotate(-1.2deg) scaleX(1)}
@media(prefers-reduced-motion:reduce){
  .btn-primary::after,
[data-y~="btn-primary"]::after{display:none}
  .btn .ch i,
[data-y~="btn"] .ch i{transition:none}
  h1 .hl::after,
h1 [data-y~="hl"]::after{transform:rotate(-1.2deg) scaleX(1);transition:none}
}

/* ===== SM DESIGN SYSTEM v2 — foundation components ===== */
.skip-link,
[data-y~="skip-link"]{position:absolute;left:12px;top:-48px;z-index:300;background:var(--ink);color:#fff;padding:10px 16px;border-radius:0 0 12px 12px;font-weight:600;font-size:14px;transition:top .2s}
.skip-link:focus,
[data-y~="skip-link"]:focus{top:0}
:focus-visible{outline:2.5px solid var(--lime-deep);outline-offset:3px;border-radius:4px}
.btn:focus-visible,a.btn:focus-visible,
[data-y~="btn"]:focus-visible,a[data-y~="btn"]:focus-visible{outline-offset:2px}
.btn:active,
[data-y~="btn"]:active{transform:translateY(1px) scale(.985)}
.btn[disabled],.btn.is-disabled,
[data-y~="btn"][disabled],[data-y~="btn"].is-disabled{opacity:.45;pointer-events:none}
.btn.is-loading,
[data-y~="btn"].is-loading{pointer-events:none;position:relative;color:transparent!important}
.btn.is-loading::after,
[data-y~="btn"].is-loading::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:smSpin .7s linear infinite;transform:none;background:none}
@keyframes smSpin{to{rotate:360deg}}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--surface-raised);color:var(--ink);cursor:pointer;transition:border-color var(--dur-1),transform var(--dur-1)}
.icon-btn:hover{border-color:var(--line-strong);transform:translateY(-1px)}
.text-link{font-weight:600;color:var(--ink);border-bottom:2px solid var(--lime);transition:border-color var(--dur-1)}
.text-link:hover{border-bottom-color:var(--lime-deep)}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--ink);background:var(--surface-raised);border:1px solid var(--line);border-radius:999px;padding:8px 16px;transition:background var(--dur-1),border-color var(--dur-1)}
.chip:hover{border-color:var(--line-strong)}
.chip.is-active{background:var(--lime);border-color:var(--lime-deep)}
.meta-label{font-family:var(--font-mono);font-size:var(--fs-meta);font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted)}
.panel{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-soft)}
.panel-dark{background:linear-gradient(180deg,var(--ink) 0%,var(--charcoal) 100%);color:#fff;border-radius:var(--r-lg)}
.app-window{background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--shadow);overflow:hidden}
.app-window .aw-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;background:#F5F4EF;border-bottom:1px solid #E9E6DC}
.app-window .aw-bar i{width:8px;height:8px;border-radius:50%;background:var(--line-strong)}
.dotgrid{background-image:radial-gradient(rgba(32,35,31,.08) 1.2px,transparent 1.2px);background-size:26px 26px}
.divider{border:0;height:1px;background:var(--line);margin:var(--s6) 0}
.media-frame{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.media-frame img,.media-frame video{display:block;width:100%;height:auto}
[data-tip]{position:relative}
[data-tip]:hover::after,[data-tip]:focus-visible::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);background:var(--ink);color:#fff;font-size:12px;padding:6px 10px;border-radius:8px;white-space:nowrap;z-index:50}
body{font-family:var(--font-ui)}
h1{font-size:var(--fs-display);letter-spacing:-.025em;line-height:1.02}
h2{letter-spacing:-.02em}
@supports(padding:max(0px)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}
@media(prefers-reduced-motion:reduce){.btn:active,
[data-y~="btn"]:active{transform:none}.bg .grid,
[data-y~="bg"] [data-y~="grid"]{animation:none}}

/* ===== ITER-6 — footer met body + warme header ===== */
.footer .wrap::after,
[data-y~="footer"] [data-y~="wrap"]::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1px);background-size:15px 15px;pointer-events:none;z-index:0;border-radius:28px}
.footer .wrap>*,
[data-y~="footer"] [data-y~="wrap"]>*{position:relative;z-index:1}
.f-cta,
[data-y~="f-cta"]{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:20px}
.f-cta .btn-primary,
[data-y~="f-cta"] [data-y~="btn-primary"]{background:var(--lime);color:var(--ink);padding:11px 19px;font-size:14px}
.f-cta .btn-primary::before,
[data-y~="f-cta"] [data-y~="btn-primary"]::before{display:none}
.f-cta .btn-primary::after,
[data-y~="f-cta"] [data-y~="btn-primary"]::after{background:#F5F2E9}
.f-cta .btn-primary:hover,
[data-y~="f-cta"] [data-y~="btn-primary"]:hover{color:var(--ink)}
.f-mail,
[data-y~="f-mail"]{font-family:var(--font-mono);font-size:12.5px;color:rgba(245,242,233,.78);border-bottom:1px solid rgba(204,255,63,.45);padding-bottom:1px}
.f-mail:hover,
[data-y~="f-mail"]:hover{color:#CCFF3F}
.footer .wrap>.f-script,
[data-y~="footer"] [data-y~="wrap"]>[data-y~="f-script"]{position:absolute;left:46px;bottom:96px;font-family:var(--font-hand);font-size:clamp(34px,4.2vw,60px);color:rgba(255,255,255,.07);white-space:nowrap;pointer-events:none;z-index:0}
.footer-bot,
[data-y~="footer-bot"]{align-items:center}
.f-top,
[data-y~="f-top"]{width:40px;height:40px;border-radius:50%;background:transparent;border:1px solid rgba(250,251,248,.30);color:#F5F2E9;font-size:15px;cursor:pointer;flex:none;transition:border-color .2s,color .2s,transform .25s var(--ease)}
.f-top:hover,
[data-y~="f-top"]:hover{border-color:#CCFF3F;color:#CCFF3F;transform:translateY(-2px)}
@media(max-width:900px){.f-script,
[data-y~="f-script"]{display:none}}
@media(max-width:640px){.f-cta,
[data-y~="f-cta"]{gap:10px}}
