  :root{
    --coral:#ED3B47; --coral-600:#ED3B47; --coral-700:#C92E3A; --coral-500:#F25563;
    --ink:#18181B; --ink-2:#3F3F46; --muted:#6B6B72;
    --bg:#FFFFFF; --paper:#FFFBFC; --tint:#FFF4F5; --tint2:#FDECEE;
    --border:#ECE6E8; --border-2:#F1ECEE;
    --radius:22px; --radius-sm:14px; --radius-lg:28px; --radius-pill:999px;
    --shadow-1:0 1px 2px rgba(20,20,35,.04), 0 8px 24px rgba(20,20,35,.06);
    --shadow-2:0 2px 6px rgba(20,20,35,.05), 0 18px 46px rgba(20,20,35,.09);
    --shadow-coral:0 10px 30px rgba(237,59,71,.28);
    --maxw:1140px;
    --font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
    --z-nav:100;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth; -webkit-text-size-adjust:100%}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
  body{
    margin:0; font-family:var(--font); color:var(--ink); background:var(--bg);
    -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
    line-height:1.6; font-size:17px; overflow-x:hidden;
  }
  h1,h2,h3,h4{margin:0; line-height:1.08; letter-spacing:-0.02em; font-weight:800; text-wrap:balance}
  h2{font-size:clamp(1.7rem,1.1rem + 2.4vw,2.7rem); letter-spacing:-0.03em}
  h3{font-size:1.18rem; font-weight:700; letter-spacing:-0.015em}
  p{margin:0; text-wrap:pretty}
  a{color:inherit; text-decoration:none}
  img,svg{display:block; max-width:100%}
  ::selection{background:var(--tint2); color:var(--coral-700)}
  :focus-visible{outline:2px solid var(--coral-600); outline-offset:3px; border-radius:6px}

  .wrap{max-width:var(--maxw); margin-inline:auto; padding-inline:clamp(20px,5vw,40px)}
  .eyebrow{font-size:.82rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--coral-700)}
  .lede{font-size:clamp(1.05rem,.98rem + .5vw,1.28rem); color:var(--ink-2); line-height:1.55; max-width:60ch}
  .muted{color:var(--muted)}
  .center{text-align:center; margin-inline:auto}

  /* buttons */
  .btn{display:inline-flex; align-items:center; gap:.55rem; font-weight:600; font-size:1rem;
    padding:.82rem 1.35rem; border-radius:var(--radius-pill); border:1px solid transparent;
    cursor:pointer; transition:transform .18s cubic-bezier(.2,.7,.2,1), box-shadow .25s, background .2s, color .2s, border-color .2s;
    will-change:transform}
  .btn:active{transform:translateY(1px) scale(.99)}
  .btn-primary{background:var(--coral-600); color:#fff; box-shadow:var(--shadow-coral)}
  .btn-primary:hover{background:var(--coral-700); box-shadow:0 14px 38px rgba(237,59,71,.36); transform:translateY(-1px)}
  .btn-ghost{background:#fff; color:var(--ink); border-color:var(--border)}
  .btn-ghost:hover{border-color:#d9d2d5; box-shadow:var(--shadow-1); transform:translateY(-1px)}
  .btn .arw{transition:transform .2s}
  .btn:hover .arw{transform:translateX(3px)}

  /* nav */
  header.nav{position:sticky; top:0; z-index:var(--z-nav);
    backdrop-filter:saturate(150%) blur(14px); -webkit-backdrop-filter:saturate(150%) blur(14px);
    background:rgba(255,255,255,.72); border-bottom:1px solid transparent; transition:border-color .3s, box-shadow .3s}
  header.nav.scrolled{border-bottom-color:var(--border); box-shadow:0 1px 0 rgba(20,20,35,.02)}
  .nav-inner{max-width:var(--maxw); margin-inline:auto; padding:.7rem clamp(20px,5vw,40px); display:flex; align-items:center; gap:1.5rem}
  .brand{display:flex; align-items:center; gap:.6rem; font-weight:800; letter-spacing:-.02em; font-size:1.12rem}
  .mark{width:34px; height:34px; border-radius:9px; flex:none; box-shadow:0 4px 12px rgba(237,59,71,.28)}
  .nav-links{display:flex; gap:1.6rem; margin-left:auto; align-items:center}
  .nav-links a.link{font-size:.95rem; font-weight:500; color:var(--ink-2); position:relative; padding:.2rem 0}
  .nav-links a.link:hover{color:var(--ink)}
  .nav-links a.link::after{content:""; position:absolute; left:0; right:100%; bottom:-2px; height:2px; background:var(--coral-600); border-radius:2px; transition:right .25s}
  .nav-links a.link:hover::after{right:0}
  .nav-cta{margin-left:.4rem}
  .navtoggle{display:none; margin-left:auto; background:#fff; border:1px solid var(--border); border-radius:10px; width:42px; height:42px; align-items:center; justify-content:center; cursor:pointer}
  .navtoggle svg{width:20px; height:20px}

  /* hero */
  .hero{position:relative; padding-top:clamp(48px,6vw,86px); padding-bottom:clamp(40px,5vw,72px); overflow:hidden}
  .hero::before{content:""; position:absolute; inset:-20% 0 auto 0; height:720px; z-index:-1; pointer-events:none;
    background:
      radial-gradient(60% 52% at 68% 8%, rgba(237,59,71,.20), rgba(237,59,71,.05) 42%, rgba(255,255,255,0) 68%),
      linear-gradient(180deg,#fff, var(--paper))}
  .hero-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(32px,4vw,64px); align-items:center}
  .hero h1{font-size:clamp(2.35rem,1.5rem + 3.4vw,4rem); letter-spacing:-0.035em}
  .hero .kick{margin-bottom:1.1rem}
  .hero .lede{margin-top:1.25rem}
  .hero-cta{display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.9rem}
  .trust{display:flex; flex-wrap:wrap; gap:.5rem 1.4rem; margin-top:1.9rem; font-size:.9rem; color:var(--muted); align-items:center}
  .trust b{color:var(--ink); font-weight:600}
  .trust .dot{width:5px; height:5px; border-radius:50%; background:var(--coral-500)}

  /* hero product mock */
  .mock{position:relative; border-radius:var(--radius-lg); background:#fff; border:1px solid var(--border);
    box-shadow:var(--shadow-2); overflow:hidden}
  .mock-top{display:flex; align-items:center; gap:.5rem; padding:.8rem 1rem; border-bottom:1px solid var(--border-2); background:var(--paper)}
  .mock-top .d{width:10px; height:10px; border-radius:50%; background:#e6dfe1}
  .mock-top .u{margin-left:auto; font-size:.72rem; color:var(--muted); font-weight:500}
  .mock-body{padding:1.15rem 1.15rem 1.3rem}
  .mock-h{display:flex; align-items:center; justify-content:space-between; gap:.5rem; margin-bottom:.2rem}
  .mock-h .t{font-weight:700; font-size:1.02rem; letter-spacing:-.01em}
  .badge{font-size:.68rem; font-weight:700; color:var(--coral-700); background:var(--tint2); border:1px solid #f6cdd2; padding:.22rem .5rem; border-radius:var(--radius-pill)}
  .mock-sub{font-size:.8rem; color:var(--muted); margin-bottom:.9rem}
  .avatars{display:flex; margin-bottom:1rem}
  .avatars span{width:30px; height:30px; border-radius:50%; border:2px solid #fff; margin-left:-8px; font-size:.7rem; font-weight:700; color:#fff; display:flex; align-items:center; justify-content:center}
  .avatars span:first-child{margin-left:0}
  .rows{display:grid; gap:.5rem}
  .row{display:flex; align-items:center; gap:.6rem; padding:.55rem .7rem; border:1px solid var(--border-2); border-radius:12px; background:#fff; font-size:.82rem}
  .row .ic{width:22px; height:22px; border-radius:6px; flex:none; display:flex; align-items:center; justify-content:center; background:var(--tint2); color:var(--coral-700)}
  .row .ic svg{width:13px;height:13px}
  .row .g{margin-left:auto; font-size:.68rem; font-weight:700; padding:.16rem .45rem; border-radius:var(--radius-pill)}
  .g.ok{color:#177245; background:#e7f6ee}
  .g.wait{color:#9a6a00; background:#fdf3dd}
  .ai-chip{margin-top:1rem; display:flex; gap:.6rem; align-items:flex-start; padding:.7rem .8rem; border-radius:12px; background:linear-gradient(180deg,#fff, var(--tint)); border:1px solid #f6d5d9}
  .ai-chip .sp{width:24px;height:24px;border-radius:7px;flex:none;background:var(--coral-600);display:flex;align-items:center;justify-content:center}
  .ai-chip .sp svg{width:14px;height:14px}
  .ai-chip .tx{font-size:.78rem; color:var(--ink-2); line-height:1.45}
  .ai-chip .tx b{color:var(--ink)}
  .float{position:absolute; right:-14px; top:-16px; background:#fff; border:1px solid var(--border); border-radius:14px; box-shadow:var(--shadow-2); padding:.6rem .8rem; display:flex; gap:.55rem; align-items:center; font-size:.78rem; font-weight:600}
  /* hero AI-action mock (for-grant-writers): ask -> AI drafts report -> human approves */
  .mock-body .ask{display:flex; align-items:flex-start; gap:.5rem; font-size:.84rem; color:var(--ink); line-height:1.42}
  .mock-body .ask .you{flex:none; font-size:.58rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--muted); background:var(--paper); border:1px solid var(--border-2); border-radius:var(--radius-pill); padding:.16rem .45rem; margin-top:.06rem}
  .mock-body .did{display:flex; align-items:flex-start; gap:.55rem; margin-top:.75rem; font-size:.8rem; color:var(--ink-2); line-height:1.45}
  .mock-body .did b{color:var(--ink)}
  .mock-body .did .sp{width:24px; height:24px; border-radius:7px; flex:none; background:var(--coral-600); display:flex; align-items:center; justify-content:center}
  .mock-body .did .sp svg{width:14px; height:14px}
  .doc{margin-top:.95rem; border:1px solid var(--border-2); border-radius:12px; overflow:hidden; background:#fff}
  .doc-h{display:flex; align-items:center; justify-content:space-between; gap:.5rem; padding:.6rem .75rem; background:linear-gradient(180deg,#fff,var(--tint)); border-bottom:1px solid var(--border-2)}
  .doc-h .dt{font-weight:700; font-size:.86rem; letter-spacing:-.01em; color:var(--ink)}
  .doc-lines{display:grid; gap:.42rem; padding:.6rem .7rem}
  .dl{display:flex; align-items:center; gap:.6rem; font-size:.8rem; color:var(--ink-2)}
  .dl .ic{width:22px; height:22px; border-radius:6px; flex:none; display:flex; align-items:center; justify-content:center; background:var(--tint2); color:var(--coral-700)}
  .dl .ic svg{width:13px; height:13px}
  .dl .g{margin-left:auto; font-size:.66rem; font-weight:700; padding:.16rem .45rem; border-radius:var(--radius-pill)}
  .act{display:flex; align-items:center; gap:.7rem; margin-top:1rem; flex-wrap:wrap}
  .act .approve{font-size:.8rem; font-weight:700; color:#fff; background:var(--coral-600); border-radius:var(--radius-pill); padding:.5rem .95rem}
  .act .flag{display:inline-flex; align-items:center; gap:.4rem; font-size:.72rem; color:#9a6a00}
  .act .flag svg{width:14px; height:14px; flex:none}
  .mock-cap{margin-top:1rem; font-size:.86rem; color:var(--ink-2); line-height:1.5}
  .float .k{width:26px;height:26px;border-radius:8px;background:#e7f6ee;color:#177245;display:flex;align-items:center;justify-content:center}
  .float .k svg{width:15px;height:15px}

  /* sections */
  section{padding-block:clamp(56px,7vw,104px)}
  .sec-head{max-width:56ch}
  .sec-head h2{margin-bottom:.9rem}
  .divide{border:0; border-top:1px solid var(--border); margin:0}

  /* flow (how it works) */
  .flow{display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem; margin-top:clamp(28px,3vw,44px); position:relative}
  .step{background:#fff; border:1px solid var(--border); border-radius:var(--radius); padding:1.5rem 1.4rem; box-shadow:var(--shadow-1); position:relative}
  .step .n{width:40px; height:40px; border-radius:12px; background:var(--coral-600); color:#fff; font-weight:800; display:flex; align-items:center; justify-content:center; box-shadow:var(--shadow-coral); margin-bottom:1rem}
  .step h3{margin-bottom:.4rem}
  .step p{font-size:.95rem; color:var(--ink-2)}
  .step .conn{position:absolute; right:-1.05rem; top:2.4rem; width:1.1rem; height:2px; background:var(--border); z-index:1}
  .step .conn::after{content:""; position:absolute; right:-2px; top:-3px; border-left:6px solid var(--coral-500); border-top:4px solid transparent; border-bottom:4px solid transparent}

  /* two ways */
  .duo{display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; margin-top:clamp(26px,3vw,40px)}
  .way{border-radius:var(--radius); padding:1.7rem 1.6rem; border:1px solid var(--border); background:#fff; box-shadow:var(--shadow-1)}
  .way.hi{background:linear-gradient(180deg,var(--tint),#fff); border-color:#f4c4c9; box-shadow:var(--shadow-2)}
  .way .tag{display:inline-flex; align-items:center; gap:.4rem; font-size:.74rem; font-weight:700; letter-spacing:.03em; text-transform:uppercase; color:var(--coral-700); margin-bottom:.75rem}
  .way h3{font-size:1.3rem; margin-bottom:.55rem}
  .way p{color:var(--ink-2); font-size:.98rem}
  .note{margin-top:1.2rem; font-size:.92rem; color:var(--muted); display:flex; gap:.6rem; align-items:flex-start}
  .note svg{width:18px;height:18px;flex:none;color:var(--coral-600);margin-top:2px}

  /* platform bento */
  .bento{display:grid; grid-template-columns:1.25fr 1fr; gap:1.1rem; margin-top:clamp(28px,3vw,44px)}
  .panel{background:#fff; border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow-1); padding:1.6rem}
  .panel.dark{background:linear-gradient(160deg,#1c1c22,#101014); color:#fff; border-color:#26262e}
  .feat-list{display:grid; grid-template-columns:1fr 1fr; gap:.15rem 1.6rem}
  .feat{display:flex; gap:.7rem; align-items:flex-start; padding:.6rem 0; border-bottom:1px solid var(--border-2)}
  .feat:last-child, .feat:nth-last-child(2){border-bottom:0}
  .feat .fi{width:26px;height:26px;border-radius:8px;flex:none;background:var(--tint2);color:var(--coral-700);display:flex;align-items:center;justify-content:center}
  .feat .fi svg{width:15px;height:15px}
  .feat span{font-size:.92rem; color:var(--ink-2); font-weight:500; line-height:1.4; padding-top:2px}
  .panel.dark h3{color:#fff; margin-bottom:.5rem}
  .panel.dark p{color:#c9c9d2; font-size:.92rem}
  .kv{display:grid; gap:.7rem; margin-top:1.1rem}
  .kv .k{display:flex; align-items:center; gap:.6rem; font-size:.9rem; color:#e7e7ee}
  .kv .k .kk{width:24px;height:24px;border-radius:7px;flex:none;background:rgba(237,59,71,.18);color:#ff8b93;display:flex;align-items:center;justify-content:center}
  .kv .k .kk svg{width:14px;height:14px}

  /* consultants split */
  .split{display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,4vw,60px); align-items:center; margin-top:8px}
  .kit{background:#fff; border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow-2); padding:1.6rem 1.7rem}
  .kit .kit-h{display:flex; align-items:center; gap:.7rem; margin-bottom:1.1rem}
  .kit .kit-h .mk{width:34px;height:34px;border-radius:10px;background:var(--coral-600);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-coral)}
  .kit .kit-h .mk svg{width:18px;height:18px}
  .kit .kit-h b{font-size:1.02rem; letter-spacing:-.01em}
  .checks{display:grid; gap:.62rem}
  .checks li{display:flex; gap:.65rem; align-items:flex-start; font-size:.93rem; color:var(--ink-2)}
  .checks li svg{width:18px;height:18px;flex:none;color:var(--coral-600);margin-top:2px}
  ul{list-style:none; margin:0; padding:0}

  /* themes */
  .themes{display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem; margin-top:clamp(28px,3vw,44px)}
  .theme{padding:1.5rem 1.4rem; border-radius:var(--radius); border:1px solid var(--border); background:linear-gradient(180deg,#fff,var(--paper))}
  .theme .ti{width:44px;height:44px;border-radius:12px;background:var(--tint2);color:var(--coral-700);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
  .theme .ti svg{width:22px;height:22px}
  .theme h3{margin-bottom:.5rem}
  .theme p{font-size:.93rem; color:var(--ink-2)}

  /* responsible AI */
  .ai-wrap{display:grid; grid-template-columns:1fr 1fr; gap:1.1rem; margin-top:clamp(26px,3vw,40px)}
  .ai-card{border-radius:var(--radius); padding:1.6rem; border:1px solid var(--border)}
  .ai-card.can{background:linear-gradient(180deg,var(--tint),#fff); border-color:#f4c9cd}
  .ai-card.human{background:#fff; box-shadow:var(--shadow-1)}
  .ai-card h3{font-size:1.05rem; margin-bottom:1rem; display:flex; align-items:center; gap:.55rem}
  .ai-card .hh{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex:none}
  .can .hh{background:var(--coral-600);color:#fff}
  .human .hh{background:#eef0f2;color:var(--ink-2)}
  .ai-card ul{display:grid;gap:.55rem}
  .ai-card li{display:flex; gap:.6rem; align-items:center; font-size:.94rem; color:var(--ink-2)}
  .ai-card li svg{width:17px;height:17px;flex:none}
  .can li svg{color:var(--coral-600)}
  .human li svg{color:var(--muted)}
  .compliance{display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1.3rem}
  .comp{display:flex; align-items:center; gap:.5rem; font-size:.86rem; font-weight:600; color:var(--ink-2); background:#fff; border:1px solid var(--border); border-radius:var(--radius-pill); padding:.5rem .9rem; box-shadow:var(--shadow-1)}
  .comp svg{width:16px;height:16px;color:var(--coral-600)}

  /* proof */
  .proof{display:grid; grid-template-columns:1fr 1.05fr; gap:clamp(30px,4vw,56px); align-items:center}
  .browser{border-radius:var(--radius); overflow:hidden; border:1px solid var(--border); box-shadow:var(--shadow-2); background:#fff}
  .browser .bar{display:flex; align-items:center; gap:.5rem; padding:.6rem .8rem; background:var(--paper); border-bottom:1px solid var(--border-2)}
  .browser .bar .d{width:9px;height:9px;border-radius:50%;background:#e6dfe1}
  .browser .bar .url{margin-left:.5rem; font-size:.74rem; color:var(--muted); background:#fff; border:1px solid var(--border-2); border-radius:var(--radius-pill); padding:.2rem .7rem}
  .browser .shot{padding:1.2rem; background:linear-gradient(180deg,#fff,var(--paper))}
  .cat-h{font-weight:800; font-size:1.15rem; letter-spacing:-.02em; margin-bottom:.15rem}
  .cat-sub{font-size:.8rem; color:var(--muted); margin-bottom:1rem}
  .cards3{display:grid; grid-template-columns:repeat(3,1fr); gap:.6rem}
  .pcard{border:1px solid var(--border-2); border-radius:12px; padding:.7rem; background:#fff}
  .pcard .th{height:44px; border-radius:8px; background:var(--tint); margin-bottom:.5rem; display:flex;align-items:center;justify-content:center;color:var(--coral-600)}
  .pcard .th svg{width:20px;height:20px}
  .pcard .pn{font-size:.72rem; font-weight:700}
  .pcard .pm{font-size:.62rem; color:var(--muted)}
  .langbar{display:flex; gap:.35rem; margin-top:.8rem}
  .langbar span{font-size:.64rem; font-weight:700; color:var(--coral-700); background:var(--tint2); border-radius:var(--radius-pill); padding:.15rem .5rem}

  /* packages */
  .tiers{display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem; margin-top:clamp(28px,3vw,44px)}
  .tier{position:relative; border-radius:var(--radius); border:1px solid var(--border); background:#fff; padding:1.7rem 1.5rem; box-shadow:var(--shadow-1)}
  .tier.pop{border-color:#f2b9bf; box-shadow:var(--shadow-2)}
  .tier .pill{position:absolute; top:-.7rem; left:1.5rem; font-size:.68rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:#fff; background:var(--coral-600); padding:.3rem .7rem; border-radius:var(--radius-pill); box-shadow:var(--shadow-coral)}
  .tier .tn{font-size:1.15rem; font-weight:800; letter-spacing:-.02em}
  .tier .scope{font-size:.88rem; color:var(--muted); margin:.35rem 0 1.1rem}
  .tier .amt{font-size:1.9rem; font-weight:800; letter-spacing:-.03em; color:var(--coral-700)}
  .tier .amt small{font-size:.82rem; font-weight:600; color:var(--muted); letter-spacing:0}
  .tier .dur{font-size:.85rem; color:var(--ink-2); margin-top:.5rem; padding-top:.9rem; border-top:1px solid var(--border-2)}
  .fine{margin-top:1.3rem; font-size:.86rem; color:var(--muted); max-width:70ch}

  /* audience tags */
  .tags{display:flex; flex-wrap:wrap; gap:.6rem; margin-top:clamp(24px,3vw,36px)}
  .tag-a{display:flex; align-items:center; gap:.55rem; font-size:.95rem; font-weight:600; color:var(--ink); background:#fff; border:1px solid var(--border); border-radius:var(--radius-pill); padding:.6rem 1rem; box-shadow:var(--shadow-1)}
  .tag-a .td{width:8px;height:8px;border-radius:50%;background:var(--coral-500);flex:none}

  /* faq */
  .faq{margin-top:clamp(24px,3vw,40px); border-top:1px solid var(--border)}
  details{border-bottom:1px solid var(--border)}
  details summary{list-style:none; cursor:pointer; padding:1.25rem .2rem; display:flex; align-items:center; gap:1rem; font-weight:700; font-size:1.05rem; letter-spacing:-.01em}
  details summary::-webkit-details-marker{display:none}
  details summary .pm{margin-left:auto; width:24px; height:24px; flex:none; position:relative; transition:transform .25s}
  details summary .pm::before,details summary .pm::after{content:""; position:absolute; background:var(--coral-600); border-radius:2px}
  details summary .pm::before{left:4px; right:4px; top:11px; height:2px}
  details summary .pm::after{top:4px; bottom:4px; left:11px; width:2px; transition:opacity .25s}
  details[open] summary .pm::after{opacity:0}
  details .a{padding:0 3rem 1.4rem .2rem; color:var(--ink-2); font-size:.98rem; max-width:74ch}

  /* cta band */
  .cta-band{background:linear-gradient(155deg,#1b1b21,#111116); color:#fff; border-radius:var(--radius-lg); padding:clamp(38px,5vw,64px); position:relative; overflow:hidden; box-shadow:var(--shadow-2)}
  .cta-band::before{content:""; position:absolute; inset:auto -10% -60% auto; width:520px; height:520px; border-radius:50%;
    background:radial-gradient(circle,rgba(237,59,71,.45),rgba(237,59,71,0) 62%); pointer-events:none}
  .cta-band h2{color:#fff; position:relative}
  .cta-band p{color:#c9c9d2; margin-top:.8rem; max-width:52ch; position:relative}
  .cta-actions{display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.9rem; position:relative}
  .btn-white{background:#fff; color:var(--ink)}
  .btn-white:hover{background:#fff; box-shadow:0 12px 30px rgba(0,0,0,.25); transform:translateY(-1px)}
  .btn-outline{background:transparent; color:#fff; border-color:rgba(255,255,255,.28)}
  .btn-outline:hover{border-color:rgba(255,255,255,.6); background:rgba(255,255,255,.06)}

  /* footer */
  footer{padding-block:clamp(40px,5vw,64px) 2.4rem; border-top:1px solid var(--border); margin-top:clamp(56px,7vw,104px)}
  .foot{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:2rem}
  .foot .brand{margin-bottom:.9rem}
  .foot p{font-size:.9rem; color:var(--muted); max-width:38ch}
  .foot h4{font-size:.78rem; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); font-weight:700; margin-bottom:.9rem}
  .foot a.fl{display:block; font-size:.92rem; color:var(--ink-2); margin-bottom:.55rem; font-weight:500}
  .foot a.fl:hover{color:var(--coral-700)}
  .foot-bottom{display:flex; flex-wrap:wrap; gap:.6rem 1.4rem; align-items:center; justify-content:space-between; margin-top:2.4rem; padding-top:1.5rem; border-top:1px solid var(--border); font-size:.84rem; color:var(--muted)}
  .foot-bottom .badges{display:flex; gap:1.2rem; flex-wrap:wrap}
  .foot-bottom .badges span{display:flex;align-items:center;gap:.4rem}
  .foot-bottom .badges svg{width:14px;height:14px;color:var(--coral-600)}

  .skip{position:absolute; left:-9999px; top:0; background:var(--coral-600); color:#fff; padding:.7rem 1rem; border-radius:0 0 10px 0; z-index:200; font-weight:600}
  .skip:focus{left:0}

  /* hero entrance: load choreography only. content is visible by default,
     so nothing is ever gated behind a transition (safe for crawlers/screenshots). */
  @media (prefers-reduced-motion:no-preference){
    @keyframes fadeUp{from{opacity:0; transform:translateY(18px)} to{opacity:1; transform:none}}
    .hero .kick,.hero h1,.hero .lede,.hero-cta,.hero .trust,.mock-holder{animation:fadeUp .8s cubic-bezier(.16,1,.3,1) both}
    .hero h1{animation-delay:.05s}
    .mock-holder{animation-delay:.12s}
    .hero .lede{animation-delay:.14s}
    .hero-cta{animation-delay:.22s}
    .hero .trust{animation-delay:.3s}
  }
  @media (prefers-reduced-motion:reduce){ .btn,.btn .arw{transition:none} }

  /* responsive */
  @media (max-width:940px){
    .hero-grid{grid-template-columns:1fr; gap:36px}
    .hero .float{display:none}
    .bento,.proof,.split,.duo,.ai-wrap{grid-template-columns:1fr}
    .flow{grid-template-columns:1fr}
    .step .conn{display:none}
    .themes{grid-template-columns:1fr}
    .tiers{grid-template-columns:1fr}
    .foot{grid-template-columns:1fr 1fr}
    .nav-links{display:none}
    .navtoggle{display:flex}
    header.nav.open .nav-links{display:flex; position:absolute; top:100%; left:0; right:0; flex-direction:column; align-items:stretch; gap:.2rem; background:#fff; border-bottom:1px solid var(--border); padding:1rem clamp(20px,5vw,40px) 1.4rem; box-shadow:var(--shadow-2)}
    header.nav.open .nav-links a.link{padding:.7rem 0; font-size:1.05rem}
    header.nav.open .nav-links .nav-cta{margin:.4rem 0 0}
    header.nav.open .nav-links .btn{width:100%; justify-content:center}
  }
  @media (max-width:560px){
    body{font-size:16px}
    .feat-list{grid-template-columns:1fr}
    .cards3{grid-template-columns:1fr 1fr}
    .foot{grid-template-columns:1fr}
    .hero-cta .btn{flex:1 1 auto; justify-content:center}
  }

/* ============ multi-page nav + features page ============ */
.nav-links a.link[aria-current="page"]{color:var(--coral-700); font-weight:700}
.nav-links a.link[aria-current="page"]::after{right:0}

.hero-shot{max-width:1050px; margin:clamp(30px,4vw,52px) auto 0}
.browser .shot-img{padding:0}
.browser .shot-img img{display:block; width:100%; height:auto}

.feat-row{display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,70px); align-items:center; padding-block:clamp(40px,5vw,64px)}
.feat-row + .feat-row{border-top:1px solid var(--border)}
.feat-row.rev .media{order:-1}
.feat-row .ft-tag{display:inline-flex; align-items:center; gap:.5rem; font-size:.78rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--coral-700); margin-bottom:.85rem}
.feat-row .txt h2{margin-bottom:.8rem; font-size:clamp(1.5rem,1.05rem + 1.6vw,2.15rem); letter-spacing:-.02em}
.feat-row .txt p{color:var(--ink-2); font-size:1.02rem}
.feat-row .mini{display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.2rem}
.feat-row .mini span{font-size:.82rem; font-weight:600; color:var(--ink-2); background:var(--tint); border:1px solid #f4d7db; border-radius:var(--radius-pill); padding:.35rem .8rem}
@media(max-width:860px){ .feat-row{grid-template-columns:1fr; gap:22px; padding-block:34px} .feat-row .media{order:-1 !important} }

/* ============ product app recreation (based on the live Founders admin) ============ */
.app{border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow-2);overflow:hidden;background:#fff}
.app .winbar{display:flex;align-items:center;gap:.5rem;padding:.6rem .85rem;border-bottom:1px solid var(--border-2);background:var(--paper)}
.app .winbar .d{width:9px;height:9px;border-radius:50%;background:#e6dfe1}
.app .winbar .u{margin-left:auto;font-size:.72rem;color:var(--muted);font-weight:600}
.app .body{display:grid;grid-template-columns:190px 1fr;min-height:430px}
.app .side{border-right:1px solid var(--border-2);padding:.9rem .7rem;background:#fff}
.app .side .abrand{display:flex;align-items:center;gap:.5rem;font-weight:800;font-size:.92rem;margin:.15rem .3rem 1rem}
.app .side .abrand .m{width:22px;height:22px;border-radius:6px;flex:none}
.app .side .nav{display:grid;gap:.1rem}
.app .side .nav a{display:flex;align-items:center;gap:.55rem;padding:.44rem .55rem;border-radius:8px;color:var(--ink-2);font-weight:500;font-size:.82rem}
.app .side .nav a svg{width:15px;height:15px;color:var(--muted);flex:none}
.app .side .nav a.on{background:var(--tint2);color:var(--coral-700);font-weight:600}
.app .side .nav a.on svg{color:var(--coral-600)}
.app .main{padding:1.05rem 1.2rem;overflow:hidden}
.app .ah{font-weight:800;font-size:1.08rem;letter-spacing:-.01em}
.app .asub{font-size:.72rem;color:var(--muted);margin-bottom:1rem}
.brief{border:1px solid #f3ccd1;background:linear-gradient(180deg,var(--tint),#fff);border-radius:12px;padding:.85rem .95rem;margin-bottom:.85rem}
.brief .top{display:flex;align-items:center;gap:.5rem;margin-bottom:.45rem}
.brief .cp{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--coral-600);padding:.14rem .42rem;border-radius:999px}
.brief .top b{font-size:.82rem}
.brief .top .up{margin-left:auto;font-size:.62rem;color:var(--muted)}
.brief p{font-size:.76rem;color:var(--ink-2);line-height:1.5;margin:0}
.attn{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-bottom:.85rem}
.attn .c{border:1px solid var(--border-2);border-radius:10px;padding:.6rem .75rem}
.attn .c b{font-size:1.35rem;font-weight:800;color:var(--coral-700);display:block;line-height:1}
.attn .c span{font-size:.66rem;color:var(--muted)}
.attn .c a{font-size:.66rem;color:var(--coral-700);font-weight:700;display:block;margin-top:.25rem}
.funnel h5,.tilesh{font-size:.7rem;font-weight:700;color:var(--ink-2);margin:0 0 .5rem;text-transform:none;letter-spacing:0}
.funnel .row{display:flex;justify-content:space-between;font-size:.74rem;color:var(--ink-2);margin-bottom:.2rem}
.funnel .bar{height:6px;border-radius:4px;background:var(--tint2);margin-bottom:.5rem;overflow:hidden}
.funnel .bar i{display:block;height:100%;background:var(--coral-500);border-radius:4px}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:.9rem}
.tiles .t{border:1px solid var(--border-2);border-radius:10px;padding:.55rem .65rem}
.tiles .t b{font-size:1.15rem;font-weight:800;letter-spacing:-.02em;display:block;line-height:1.1}
.tiles .t span{font-size:.6rem;color:var(--muted);line-height:1.25;display:block;margin-top:.15rem}
/* chat */
.chat{display:flex;flex-direction:column;gap:.55rem}
.chat .m{max-width:80%;padding:.55rem .78rem;border-radius:13px;font-size:.79rem;line-height:1.45}
.chat .m.u{align-self:flex-end;background:var(--coral-600);color:#fff;border-bottom-right-radius:4px}
.chat .m.a{align-self:flex-start;background:#fff;border:1px solid var(--border);color:var(--ink);border-bottom-left-radius:4px}
.chat .m.a .act{margin-top:.4rem;font-size:.68rem;font-weight:700;display:flex;gap:.9rem;align-items:center;color:var(--coral-700)}
.chat .m.a .act .ok{color:#177245;display:flex;align-items:center;gap:.25rem}
.chat .m.a .act .ok svg{width:12px;height:12px}
.chat .m.a .act .un{color:var(--muted);font-weight:500}
.chatin{margin-top:.75rem;display:flex;gap:.5rem;align-items:center;border:1px solid var(--border);border-radius:11px;padding:.5rem .55rem .5rem .75rem;color:var(--muted);font-size:.76rem}
.chatin .snd{margin-left:auto;background:var(--coral-600);color:#fff;border-radius:8px;padding:.32rem .7rem;font-size:.7rem;font-weight:700}
@media(max-width:560px){ .app .body{grid-template-columns:1fr} .app .side{display:none} .tiles{grid-template-columns:1fr 1fr} }

/* ============ language switcher (dropdown) ============ */
.langpick{position:relative}
.langbtn{display:inline-flex;align-items:center;gap:.4rem;font-family:inherit;font-size:.88rem;font-weight:600;color:var(--ink-2);background:#fff;border:1px solid var(--border);border-radius:var(--radius-pill);padding:.42rem .7rem;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.langbtn:hover{border-color:#d9d2d5;box-shadow:var(--shadow-1)}
.langbtn .gl{width:15px;height:15px;color:var(--muted)}
.langbtn .chev{width:12px;height:12px;color:var(--muted);transition:transform .2s}
.langpick.open .langbtn .chev{transform:rotate(180deg)}
.langmenu{position:absolute;top:calc(100% + 8px);right:0;min-width:172px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-2);padding:.35rem;display:none;z-index:120}
.langpick.open .langmenu{display:block}
.langmenu a{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.5rem .65rem;border-radius:9px;font-size:.92rem;font-weight:500;color:var(--ink-2)}
.langmenu a:hover{background:var(--tint2);color:var(--coral-700)}
.langmenu a[aria-current=true]{color:var(--coral-700);font-weight:700}
.langmenu a .ck{width:15px;height:15px;color:var(--coral-600);opacity:0;flex:none}
.langmenu a[aria-current=true] .ck{opacity:1}
@media(max-width:940px){
  .langpick{width:100%}
  .langbtn{width:100%;justify-content:center}
  .langmenu{position:static;box-shadow:none;border:1px solid var(--border);margin-top:.4rem;min-width:0}
}

/* ============ FRM kanban board (admin recreation) ============ */
.board{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:.2rem}
.bcol{background:var(--paper);border:1px solid var(--border-2);border-radius:10px;padding:.45rem .4rem;min-width:0}
.bcol .bh{display:flex;justify-content:space-between;align-items:center;gap:.25rem;font-size:.64rem;font-weight:700;color:var(--ink-2);margin-bottom:.4rem;padding:0 .12rem;line-height:1.1}
.bcol .bh .cnt{font-size:.58rem;color:var(--muted);background:#fff;border:1px solid var(--border-2);border-radius:999px;padding:0 .32rem;flex:none}
.kcard{background:#fff;border:1px solid var(--border-2);border-radius:8px;box-shadow:0 1px 2px rgba(20,20,35,.05);padding:.4rem .45rem;margin-bottom:.34rem}
.kcard:last-child{margin-bottom:0}
.kcard .kn{font-size:.66rem;font-weight:700;color:var(--ink);line-height:1.15}
.kcard .kt{display:inline-block;font-size:.53rem;font-weight:700;color:var(--coral-700);background:var(--tint2);border-radius:999px;padding:.06rem .32rem;margin-top:.22rem}
/* FRM board as full-width showcase */
.frm-intro{max-width:660px;margin:0 auto;text-align:center;padding-top:clamp(30px,4vw,56px)}
.frm-intro .ft-tag{display:inline-flex;align-items:center;gap:.5rem;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--coral-700);margin-bottom:.85rem}
.frm-intro h2{margin-bottom:.8rem;font-size:clamp(1.5rem,1.05rem + 1.6vw,2.15rem);letter-spacing:-.02em}
.frm-intro p{color:var(--ink-2);font-size:1.02rem}
.frm-intro .mini{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.2rem;margin-bottom:clamp(24px,3vw,40px);justify-content:center}
.frm-intro .mini span{font-size:.82rem;font-weight:600;color:var(--ink-2);background:var(--tint);border:1px solid #f4d7db;border-radius:var(--radius-pill);padding:.35rem .8rem}
.app-wide .board{gap:.7rem;margin-top:.5rem}
.app-wide .bcol{padding:.7rem .6rem;border-radius:12px}
.app-wide .bcol .bh{font-size:.8rem;margin-bottom:.65rem}
.app-wide .bcol .bh .cnt{font-size:.72rem;padding:.05rem .45rem}
.app-wide .kcard{padding:.6rem .7rem;border-radius:10px;margin-bottom:.5rem}
.app-wide .kcard .kn{font-size:.9rem}
.app-wide .kcard .kt{font-size:.72rem;margin-top:.35rem;padding:.12rem .5rem}
/* wide FRM board: below desktop, drop the sidebar and let the board scroll so columns never clip */
@media(max-width:960px){ .app-wide .body{grid-template-columns:1fr} .app-wide .side{display:none} .app-wide .main{overflow-x:auto} .app-wide .board{min-width:660px} }
