  :root { --bg:#f4f0e9; --ink:#1a1a1a; --muted:#6b6b6b; --line:#e8e0d5; --card:#ffffff; --soft:#faf7f2; --coral:#e57373; }
  * { box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body { margin:0; background:var(--bg); color:var(--ink); font-family:Manrope, system-ui, sans-serif;
         font-size:16px; line-height:1.55; padding:40px 20px 24px; }
  a { color:inherit; }
  .wrap { max-width:880px; margin:0 auto; }
  /* hero — after amina.ai */
  .hero { text-align:center; padding:24px 0 8px; }
  .mark { width:84px; height:84px; display:block; margin:0 auto 18px; }
  h1 { font-size:clamp(40px, 8vw, 68px); font-weight:800; line-height:1.05; margin:0 0 14px; letter-spacing:-0.02em; }
  .tag { font-size:17px; font-weight:600; color:var(--muted); margin:0 auto; max-width:560px; }
  .doors { display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:20px; margin:40px 0 0; }
  .card { background:var(--card); border:2px solid var(--line); border-radius:24px; box-shadow:0 8px 24px rgba(0,0,0,.04); }
  .door { padding:36px 28px; display:flex; flex-direction:column; gap:14px; }
  .kicker { font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
  .lead { font-size:17px; font-weight:700; flex:1; }
  .btn { display:block; text-align:center; text-decoration:none; font-size:18px; font-weight:800; padding:18px;
         border-radius:20px; }
  .btn.primary { background:var(--coral); color:#fff; box-shadow:0 8px 20px rgba(229,115,115,.2); }
  .btn.secondary { background:var(--soft); border:2px solid var(--line); color:var(--ink); }
  .btn:focus-visible { outline:3px solid var(--ink); outline-offset:3px; }
  /* platform */
  section { margin-top:72px; }
  h2 { font-size:30px; font-weight:800; margin:0 0 8px; letter-spacing:-0.01em; }
  .sub { color:var(--muted); font-weight:600; margin:0 0 24px; font-size:16px; }
  .stats { display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:14px; margin-bottom:28px; }
  .stat { padding:18px 20px; }
  .stat b { display:block; font-size:30px; font-weight:800; }
  .stat span { color:var(--muted); font-weight:600; font-size:14px; }
  .family { padding:26px 26px 22px; margin-bottom:18px; }
  .famhead { display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; margin-bottom:4px; }
  .dot { width:12px; height:12px; border-radius:50%; flex:none; align-self:center; }
  .famname { font-size:20px; font-weight:800; }
  .famabout { color:var(--muted); font-weight:600; font-size:15px; margin:0 0 16px; }
  .comp { border-top:2px solid var(--line); padding:18px 0 4px; display:grid; grid-template-columns:86px 1fr; gap:6px 18px; }
  .code { font-size:24px; font-weight:800; }
  .cname { font-weight:800; font-size:17px; }
  .pill { display:inline-block; font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase;
          border-radius:999px; padding:3px 10px; margin-left:8px; vertical-align:2px; }
  .pill.operational { background:#e3f1e8; color:#1f5e3a; }
  .pill.prototype { background:#fbefd9; color:#7a4b06; }
  .pill.planned { background:#efebe5; color:#5a5a5a; }
  .what { margin:6px 0 10px; font-size:15.5px; }
  .facts { font-size:14.5px; color:#3d3d3d; margin:0 0 10px; padding:0; list-style:none; }
  .facts li { margin:3px 0; }
  .go { font-weight:800; color:#b84a4a; text-decoration:none; font-size:15px; }
  .go:hover { text-decoration:underline; }
  .none { color:var(--muted); font-size:14.5px; font-weight:600; }
  .corpora { margin-top:14px; padding-top:14px; border-top:2px dashed var(--line); font-size:14.5px; color:#3d3d3d; }
  .corpora b { font-weight:800; }
  .steps { display:grid; grid-template-columns:repeat(auto-fit, minmax(230px, 1fr)); gap:18px; }
  .step { padding:24px; }
  .step h3 { margin:0 0 6px; font-size:17px; font-weight:800; }
  .step p { margin:0; font-size:15px; color:#3d3d3d; }
  footer { text-align:center; color:var(--muted); font-size:14px; font-weight:600; margin:64px 0 0; }
  footer a { color:#b84a4a; text-decoration:none; }
  @media (max-width:520px) { .comp { grid-template-columns:1fr; } .family { padding:22px 18px; } }

  /* forms (login / sign-up) */
  .narrow { max-width:460px; margin:0 auto; }
  .formcard { padding:36px 28px; margin-top:32px; }
  .formcard h2 { font-size:29px; margin:0 0 6px; }
  label { display:block; font-weight:700; margin:18px 0 6px; }
  input[type=email], input[type=password], input[type=text] { width:100%; font:inherit; font-size:17px; padding:15px 16px;
         border:2px solid var(--line); border-radius:16px; background:var(--soft); color:var(--ink); }
  input:focus { outline:3px solid #f3b3b3; border-color:var(--coral); }
  button.btn { width:100%; border:0; cursor:pointer; font-family:inherit; margin-top:24px; }
  button.btn[disabled] { opacity:.55; cursor:not-allowed; box-shadow:none; }
  .msg { border-radius:16px; padding:14px 16px; font-weight:700; margin-top:18px; font-size:15px; }
  .msg.err { background:#fde8e8; color:#8a2424; }
  .msg.info { background:#fbefd9; color:#6b4106; }
  .alt { text-align:center; color:var(--muted); font-weight:600; font-size:15px; margin-top:20px; }
  .alt a { color:#b84a4a; font-weight:800; text-decoration:none; }
  .topbar { max-width:880px; margin:0 auto 8px; display:flex; justify-content:flex-end; gap:14px; font-weight:700; font-size:15px; }
  .topbar a { color:#b84a4a; text-decoration:none; }
  .topbar form { display:inline; } .topbar button { background:none; border:0; font:inherit; color:#b84a4a; cursor:pointer; padding:0; }
