:root {
    --bg: #0f1115;           /* deep charcoal */
    --panel: #141821;        /* card bg */
    --muted: #8a93a5;        /* secondary text */
    --text: #e9edf5;         /* main text */
    --accent: #f07b28;       /* Axon orange */
    --accent-2: #ffb871;     /* soft accent */
    --success: #2bd576;
    --danger: #ff5757;
  }

  * { box-sizing: border-box; }
  html, body { height: 100%; }
  body {
    margin: 0; font: 16px/1.5 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
    color: var(--text); background: var(--bg); overflow-x: hidden; 
  }

  /* Animated blueprint + gradient background */
  .backdrop {
    position: fixed; inset: 0; z-index: -1; overflow: hidden;
  }
  .grad {
    position: absolute; inset: -10%;
    background: radial-gradient(1200px 600px at 80% 10%, rgba(240,123,40,0.25), transparent),
                radial-gradient(900px 500px at 10% 90%, rgba(255,184,113,0.20), transparent),
                linear-gradient(180deg, #0e1017 0%, #0b0d12 100%);
    filter: saturate(1.1);
  }
  .grid {
    position: absolute; inset: -10%;
    background:
      repeating-linear-gradient(0deg, rgba(255,255,255,0.04) 0 1px, transparent 1px 40px),
      repeating-linear-gradient(90deg, rgba(255,255,255,0.04) 0 1px, transparent 1px 40px);
    animation: drift 28s linear infinite;
    mix-blend-mode: overlay;
  }
  @keyframes drift { from { transform: translateY(0); } to { transform: translateY(-40px); } }

  /* Subtle moving caution stripes ribbon */
  .ribbon {
    position: absolute; left: -20vw; top: 10vh; width: 140vw; height: 8rem; opacity: .06; transform: rotate(-6deg);
    background: repeating-linear-gradient(135deg, var(--accent) 0 16px, transparent 16px 32px);
    filter: blur(1px);
    animation: slide 24s linear infinite;
  }
  @keyframes slide { from { background-position: 0 0; } to { background-position: 640px 0; } }

  header {
    max-width: 1200px; margin: 0 auto; padding: clamp(20px, 4vw, 40px);
    display: grid; grid-template-columns: 1fr; gap: 24px;
  }

  .brand {
    display: flex; align-items: center; gap: 14px; text-decoration: none; color: var(--text);
  }
  .brand-logo {
    width: 42px; height: 42px; border-radius: 10px; display: grid; place-items: center;
    background: linear-gradient(145deg, var(--accent), #ff8e43);
    box-shadow: 0 10px 30px rgba(240,123,40,.3);
  }
  .brand-logo svg { width: 26px; height: 26px; }
  .brand-name { font-weight: 800; letter-spacing: .5px; font-size: 1.1rem; }

  main {
    max-width: 1200px; margin: 0 auto; padding: 0 clamp(20px, 4vw, 40px) clamp(40px, 6vw, 80px);
    display: grid; grid-template-columns: 1.2fr 1fr; gap: clamp(24px, 4vw, 60px);
  }
  @media (max-width: 900px) { main { grid-template-columns: 1fr; } }

  .hero {
    background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 22px; padding: clamp(20px, 4vw, 36px);
    box-shadow: 0 20px 60px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.05);
  }
  .overline { color: var(--accent-2); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: .8rem; }
  h1 { font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1.1; margin: 10px 0 10px; }
  .tag { color: var(--muted); font-size: clamp(1rem, 1.7vw, 1.15rem); margin-bottom: 20px; }
  .tag b { color: var(--text); }
  .tag.bn {
    font-family: "Noto Sans Bengali", "SolaimanLipi", "Kalpurush", system-ui, Arial, sans-serif;
    direction: ltr;
  }
  

  .chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0 8px; }
  .chip {
    padding: 6px 12px; border-radius: 999px; border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.03); color: var(--text); font-size: .9rem;
  }

  .cta { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 14px; }
  .btn { 
    appearance: none; border: 0; cursor: pointer; padding: 12px 18px; border-radius: 12px; font-weight: 700; 
    transition: transform .12s ease, box-shadow .2s ease, background .2s ease; 
    display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: #0c0d10;
  }
  .btn-primary { background: linear-gradient(145deg, var(--accent), #ff8e43); box-shadow: 0 15px 30px rgba(240,123,40,.35); color: #1b1008; }
  .btn-primary:hover { transform: translateY(-1px); }
  .btn-ghost { background: rgba(255,255,255,.06); color: var(--text); border: 1px solid rgba(255,255,255,.14); }

  .panel { background: var(--panel); border: 1px solid rgba(255,255,255,.08); border-radius: 20px; padding: clamp(18px, 3.5vw, 24px); }

  .countdown { display: grid; grid-template-columns: repeat(4, minmax(60px, 1fr)); gap: 12px; }
  @media (max-width: 520px) { .countdown { grid-template-columns: repeat(2, 1fr); } }
  .kpi { text-align: center; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.08); border-radius: 16px; padding: 14px; }
  .kpi strong { font-size: 1.8rem; display: block; }
  .kpi span { color: var(--muted); font-size: .9rem; }

  form { display: grid; grid-template-columns: 1fr auto; gap: 10px; margin-top: 16px; }
  @media (max-width: 520px) { form { grid-template-columns: 1fr; } }
  input[type=email] {
    width: 100%; padding: 14px 14px; border-radius: 12px; border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.05); color: var(--text); outline: none;
  }
  input::placeholder { color: #a8b0bf; }

  .note { color: var(--muted); font-size: .9rem; margin-top: 8px; }
  .ok { color: var(--success); font-weight: 700; }
  .err { color: var(--danger); font-weight: 700; }

  .featurelist { display: grid; gap: 14px; }
  .feature { display: grid; grid-template-columns: 44px 1fr; gap: 12px; align-items: start; }
  .icon {
    width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center;
    background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12);
  }
  .feature b { display: block; font-size: 1.05rem; }
  .feature small { color: var(--muted); }

  footer { max-width: 1200px; margin: 10px auto 50px; padding: 0 clamp(20px, 4vw, 40px); display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
  .social { display: flex; gap: 10px; }
  .social a { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); color: var(--text); text-decoration: none; }

  .trusted { color: var(--muted); font-size: .93rem; }