:root {
      --bg: #040a14;
      --bg-soft: #0c1729;
      --glass: rgba(255, 255, 255, 0.09);
      --glass-strong: rgba(255, 255, 255, 0.14);
      --line: rgba(179, 220, 255, 0.34);
      --text: #eef5ff;
      --muted: #aac2de;
      --accent: #36e7ff;
      --accent-2: #8cffc6;
      --danger: #ff7f8f;
      --shadow: 0 18px 60px rgba(2, 10, 23, 0.6);
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      font-family: "Space Grotesk", "Segoe UI", sans-serif;
      background:
        radial-gradient(circle at 18% 0%, rgba(54, 231, 255, 0.2), transparent 35%),
        radial-gradient(circle at 90% 10%, rgba(140, 255, 198, 0.17), transparent 36%),
        linear-gradient(160deg, #040a14 0%, #061126 42%, #0e203a 100%);
      color: var(--text);
      min-height: 100vh;
      overflow-x: hidden;
    }

    body::before,
    body::after {
      content: "";
      position: fixed;
      border-radius: 999px;
      filter: blur(56px);
      pointer-events: none;
      z-index: -2;
    }

    body::before {
      width: 350px;
      height: 350px;
      background: rgba(54, 231, 255, 0.18);
      top: -120px;
      right: -110px;
    }

    body::after {
      width: 280px;
      height: 280px;
      background: rgba(140, 255, 198, 0.15);
      bottom: -100px;
      left: -70px;
    }

    .shell {
      width: min(1120px, 92vw);
      margin: 24px auto 80px;
    }

    .panel {
      background: linear-gradient(160deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.04));
      border: 1px solid var(--line);
      border-radius: 24px;
      backdrop-filter: blur(14px);
      box-shadow: var(--shadow);
    }

    header {
      position: sticky;
      top: 16px;
      z-index: 20;
      padding: 14px 20px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 24px;
      animation: rise 0.7s ease both;
    }

    .brand {
      font-family: "Sora", "Trebuchet MS", sans-serif;
      font-size: 1.15rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      font-weight: 700;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .brand-dot {
      width: 9px;
      height: 9px;
      border-radius: 50%;
      background: var(--accent);
      box-shadow: 0 0 12px var(--accent);
    }

    nav {
      display: flex;
      gap: 18px;
      align-items: center;
    }

    nav a {
      color: var(--muted);
      text-decoration: none;
      font-size: 0.95rem;
      transition: color 0.2s ease;
    }

    nav a:hover {
      color: var(--text);
    }

    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      border-radius: 999px;
      border: 1px solid transparent;
      text-decoration: none;
      padding: 12px 18px;
      font-weight: 600;
      color: var(--text);
      transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
      cursor: pointer;
      font-family: inherit;
      font-size: 0.95rem;
    }

    .btn:hover {
      transform: translateY(-1px);
    }

    .btn-primary {
      background: linear-gradient(100deg, rgba(54, 231, 255, 0.95), rgba(140, 255, 198, 0.92));
      color: #04121e;
      box-shadow: 0 10px 30px rgba(54, 231, 255, 0.25);
    }

    .btn-ghost {
      background: rgba(255, 255, 255, 0.03);
      border-color: var(--line);
    }

    .hero {
      padding: clamp(32px, 5vw, 58px);
      display: grid;
      grid-template-columns: 1.1fr 0.9fr;
      gap: 24px;
      align-items: center;
      margin-bottom: 24px;
      animation: rise 0.9s ease both;
    }

    .eyebrow {
      text-transform: uppercase;
      letter-spacing: 0.1em;
      color: var(--accent-2);
      font-size: 0.78rem;
      margin-bottom: 16px;
    }

    h1 {
      font-family: "Sora", "Trebuchet MS", sans-serif;
      font-size: clamp(2rem, 6vw, 3.4rem);
      line-height: 1.08;
      margin-bottom: 18px;
    }

    .hero p {
      color: var(--muted);
      max-width: 58ch;
      line-height: 1.65;
      margin-bottom: 24px;
      font-size: 1rem;
    }

    .hero-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .metrics {
      display: grid;
      grid-template-columns: repeat(2, minmax(120px, 1fr));
      gap: 12px;
    }

    .metric {
      padding: 18px 16px;
      border-radius: 16px;
      border: 1px solid rgba(179, 220, 255, 0.24);
      background: rgba(255, 255, 255, 0.03);
      min-height: 115px;
    }

    .metric strong {
      display: block;
      font-family: "Sora", "Trebuchet MS", sans-serif;
      font-size: 1.45rem;
      margin-bottom: 8px;
      color: var(--accent);
    }

    .metric span {
      color: var(--muted);
      font-size: 0.92rem;
      line-height: 1.4;
    }

    .section {
      margin-bottom: 24px;
      padding: clamp(24px, 4vw, 36px);
      animation: rise 1s ease both;
    }

    .section h2 {
      font-family: "Sora", "Trebuchet MS", sans-serif;
      font-size: clamp(1.5rem, 4.5vw, 2rem);
      margin-bottom: 12px;
    }

    .section .sub {
      color: var(--muted);
      line-height: 1.6;
      margin-bottom: 20px;
      max-width: 68ch;
    }

    .grid-3 {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 14px;
    }

    .feature,
    .price-card {
      border-radius: 18px;
      padding: 18px;
      border: 1px solid rgba(179, 220, 255, 0.21);
      background: rgba(255, 255, 255, 0.035);
    }

    .feature h3,
    .price-card h3 {
      font-size: 1.06rem;
      margin-bottom: 8px;
    }

    .feature p,
    .price-card p {
      color: var(--muted);
      line-height: 1.55;
      font-size: 0.95rem;
      margin-bottom: 14px;
    }

    .price {
      font-family: "Sora", "Trebuchet MS", sans-serif;
      font-size: 1.7rem;
      margin-bottom: 8px;
      color: var(--accent);
    }

    .badge {
      display: inline-flex;
      padding: 4px 10px;
      border-radius: 999px;
      font-size: 0.74rem;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: #092133;
      background: linear-gradient(120deg, var(--accent), var(--accent-2));
      margin-bottom: 12px;
    }

    .bullet-list {
      list-style: none;
      display: grid;
      gap: 8px;
      margin-bottom: 14px;
    }

    .bullet-list li {
      color: var(--muted);
      font-size: 0.93rem;
      line-height: 1.45;
    }

    .bullet-list li::before {
      content: "-";
      color: var(--accent-2);
      margin-right: 8px;
    }

    .pay-row {
      display: grid;
      grid-template-columns: 1fr;
      gap: 8px;
      margin-top: 8px;
    }

    .pay-row .btn {
      width: 100%;
      padding: 10px 12px;
      font-size: 0.86rem;
    }

    .pay-note {
      color: var(--muted);
      line-height: 1.5;
      font-size: 0.9rem;
      margin-top: 14px;
      margin-bottom: 8px;
    }

    .form-wrap {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 18px;
      align-items: start;
    }

    .contact-form {
      display: grid;
      gap: 10px;
    }

    .contact-form input,
    .contact-form select,
    .contact-form textarea {
      width: 100%;
      border-radius: 12px;
      border: 1px solid rgba(179, 220, 255, 0.27);
      background: rgba(255, 255, 255, 0.04);
      color: var(--text);
      padding: 11px 12px;
      font-family: inherit;
      font-size: 0.95rem;
    }

    .contact-form textarea {
      min-height: 120px;
      resize: vertical;
    }

    .contact-form input:focus,
    .contact-form select:focus,
    .contact-form textarea:focus {
      outline: 2px solid rgba(54, 231, 255, 0.5);
      outline-offset: 0;
    }

    .help {
      font-size: 0.86rem;
      color: var(--muted);
      line-height: 1.5;
    }

    .help code {
      color: var(--accent-2);
      font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    }

    .alert {
      padding: 11px 12px;
      border-radius: 12px;
      border: 1px solid rgba(255, 127, 143, 0.36);
      background: rgba(255, 127, 143, 0.09);
      color: #ffd0d7;
      font-size: 0.88rem;
      display: none;
    }

    footer {
      text-align: center;
      color: var(--muted);
      font-size: 0.85rem;
      padding: 12px;
    }

    @keyframes rise {
      from {
        opacity: 0;
        transform: translateY(20px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

    @media (max-width: 960px) {
      .hero,
      .form-wrap {
        grid-template-columns: 1fr;
      }

      .grid-3 {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 700px) {
      header {
        flex-direction: column;
        gap: 10px;
        align-items: flex-start;
      }

      nav {
        flex-wrap: wrap;
        gap: 10px 14px;
      }

      .pay-row {
        grid-template-columns: 1fr;
      }
    }

