/* Coming-soon page styles. Extracted from the page so no CSS is inline: keeps the markup
   clean and lets style-src stay strict. Self-hosted fonts are declared in fonts.css. */

*{box-sizing:border-box;margin:0;padding:0}
  body{background:#F4F3EC;font-family:'Manrope',sans-serif;color:#141A16;-webkit-font-smoothing:antialiased}
  a{color:#1E7A3E;text-decoration:none}
  a:hover{color:#146030}
  input{font-family:'Manrope',sans-serif}
  input::placeholder{color:#A0A89C}
  input:focus{border-color:#1E7A3E}

  .page{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}
  .site-header{display:flex;align-items:center;justify-content:space-between;padding:20px 40px;flex-shrink:0}
  .brand{display:flex;align-items:center;gap:11px}
  .brand img{height:28px;width:44px;display:block;flex-shrink:0}
  .wordmark{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:20px;letter-spacing:0.03em}
  .wordmark span{color:#1E7A3E}
  .header-right{display:flex;align-items:center;gap:20px}
  .tagline{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:0.12em;text-transform:uppercase;color:#8A938C}
  .contact{font-size:14px;font-weight:700;color:#141A16}

  main{flex:1;min-height:0;display:flex;align-items:center;padding:8px 40px 24px;position:relative}
  .glow-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none}
  .glow-a{position:absolute;top:-180px;right:-120px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(30,122,62,0.10),transparent 62%)}
  .glow-b{position:absolute;bottom:-220px;left:-140px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(79,180,119,0.09),transparent 64%)}

  .hero{position:relative;max-width:1200px;margin:0 auto;width:100%;display:grid;grid-template-columns:1.05fr 0.95fr;gap:52px;align-items:center}
  .badge{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;background:#E4EDE4;border-radius:100px;font-size:12.5px;font-weight:700;color:#1E7A3E}
  h1{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:46px;line-height:1.02;letter-spacing:-0.04em;margin-top:22px;text-wrap:pretty}
  h1 .accent{color:#1E7A3E}
  .blurb{font-size:18px;line-height:1.55;color:#5A635C;margin-top:18px;max-width:470px;text-wrap:pretty}

  .signup{margin-top:26px;max-width:470px}
  .signup-row{display:flex;gap:10px;flex-wrap:wrap}
  .signup input{flex:1;min-width:240px;background:#FFFFFF;border:1px solid #DCDCCF;border-radius:11px;padding:15px 16px;font-size:15px;color:#141A16;outline:none}
  .signup button{padding:15px 26px;background:#1E7A3E;border:none;border-radius:11px;font-family:'Manrope',sans-serif;font-size:15px;font-weight:700;color:#fff;cursor:pointer;white-space:nowrap}
  .signup button.done{background:#146030}
  .note{font-size:13px;color:#8A938C;margin-top:11px;line-height:1.45}
  .note.error{color:#C2352F}
  .note.ok{color:#146030}

  .card{background:#FFFFFF;border:1px solid #E5E5D7;border-radius:18px;padding:20px;box-shadow:0 40px 80px -34px rgba(20,40,28,0.28)}
  .card-label{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:0.14em;text-transform:uppercase;color:#A0A89C}
  .module-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}
  .module{display:grid;grid-template-columns:28px 1fr auto;gap:11px;align-items:center;background:#F9F8F2;border:1px solid #DCDCCF;border-radius:11px;padding:9px 11px}
  .module-icon{width:28px;height:28px;border-radius:9px;background:#E4EDE4;color:#146030;display:flex;align-items:center;justify-content:center}
  .module-name{display:block;font-size:13.5px;font-weight:700;color:#141A16}
  .module-desc{display:block;font-size:11.5px;color:#8A938C;margin-top:1px;line-height:1.35}
  .stage{font-size:10px;font-weight:800;letter-spacing:0.07em;text-transform:uppercase;padding:4px 9px;border-radius:100px;white-space:nowrap;border:1px solid}
  .stage.ready{color:#146030;background:rgba(30,122,62,0.12);border-color:#C3D6C7}
  .stage.build{color:#8A6A10;background:rgba(138,106,16,0.12);border-color:rgba(138,106,16,0.28)}
  .stage.later{color:#8A938C;background:#EDEDE2;border-color:#DCDCCF}
  .card-note{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:13px;border-top:1px solid #EFEFE4;font-size:12.5px;color:#5A635C;line-height:1.45}
  .card-note svg{flex-shrink:0}

  footer{border-top:1px solid #DCDCCF;padding:18px 40px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;flex-shrink:0}
  .copyright{font-size:13px;color:#8A938C}
  .stats{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
  .stat{display:flex;align-items:baseline;gap:6px}
  .stat-num{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;color:#141A16}
  .stat-label{font-size:12px;color:#8A938C}

  @media (max-width:900px){
    .hero{grid-template-columns:1fr;gap:34px}
    .site-header,main,footer{padding-left:24px;padding-right:24px}
    h1{font-size:38px}
  }
