
    :root{
      /* LIGHT VERSION */
      --bg1:#f7f8fb;
      --bg2:#ffffff;

      --panel: rgba(11,18,32,.04);
      --panel2: rgba(11,18,32,.06);
      --border: rgba(11,18,32,.12);

      --text: #0b1220;
      --muted: rgba(11,18,32,.70);
      --muted2: rgba(11,18,32,.55);

      --accent: #5b4bff;
      --accent2:#16a34a;
      --danger:#ef4444;

      --shadow: 0 18px 50px rgba(10,20,40,.10);

      --radius: 18px;
      --radius2: 24px;
      --max: 1120px;
      --font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
    }

    body{
      margin:0;
      font-family: var(--font);
      color: var(--text);
      background:
        radial-gradient(1100px 600px at 12% 6%, rgba(91,75,255,.12), transparent 58%),
        radial-gradient(1000px 560px at 88% 10%, rgba(22,163,74,.10), transparent 62%),
        radial-gradient(900px 600px at 50% 100%, rgba(11,18,32,.05), transparent 65%),
        linear-gradient(180deg, var(--bg1) 0%, var(--bg2) 55%, var(--bg1) 100%);
      overflow-x:hidden;
    }

    a{ color: inherit; text-decoration: none; }
    a:hover{opacity:.96; text-decoration:none; text-decoration-color: rgba(11,18,32,.25)}
    a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible{
      outline: 2px solid rgba(91,75,255,.70);
      outline-offset: 3px;
      border-radius: 10px;
    }

    .wrap{ max-width: var(--max); margin:0 auto; padding: 0 18px; }

    .pill{
      padding: 10px 12px;
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 999px;
      background: rgba(255,255,255,.70);
      color: var(--muted);
      font-size: 14px;
    }
    .pill:hover{ background: rgba(11,18,32,.04); color: var(--text); }

    .btn{
      border: 1px solid rgba(11,18,32,.14);
      background: rgba(255,255,255,.80);
      color: var(--text);
      padding: 11px 14px;
      border-radius: 14px;
      font-weight: 900;
      font-size: 14px;
      cursor:pointer;
      transition: transform .08s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
      display:inline-flex; align-items:center; justify-content:center; gap:10px;
      white-space:nowrap;
    }
    .btn:hover{ background:#fff; border-color: rgba(11,18,32,.20); box-shadow: 0 10px 26px rgba(10,20,40,.08); }
    .btn:active{ transform: translateY(1px); }
    .btn.primary{
      color:#fff;
      border-color: rgba(91,75,255,.55);
      background: linear-gradient(135deg, rgba(91,75,255,.95), rgba(91,75,255,.70));
      box-shadow: 0 18px 45px rgba(91,75,255,.20);
    }
    .btn.primary:hover{ border-color: rgba(91,75,255,.70); box-shadow: 0 22px 58px rgba(91,75,255,.24); }
    .btn.ghost{ background: transparent; box-shadow:none; }

    .hero{
      padding: 48px 0 26px;
    }
    .hero-grid{
      display:grid;
      grid-template-columns: 1.35fr .65fr;
      gap: 20px;
      align-items: start;
    }
    h1{
      margin:0;
      font-size: clamp(34px, 4vw, 54px);
      line-height: 1.05;
      letter-spacing: -0.8px;
    }
    .sub{
      margin: 14px 0 0;
      font-size: 18px;
      line-height: 1.55;
      color: var(--muted);
      max-width: 56ch;
    }
    .trust{
      margin-top: 16px;
      display:flex; flex-wrap:wrap; gap:10px;
    }
    .chip{
      padding: 8px 10px;
      border-radius: 999px;
      background: rgba(255,255,255,.70);
      border: 1px solid rgba(11,18,32,.10);
      color: var(--muted);
      font-size: 13px;
      display:inline-flex; align-items:center; gap:8px;
    }
    .dot{
      width:8px; height:8px; border-radius:99px;
      background: rgba(22,163,74,.92);
      box-shadow: 0 0 0 4px rgba(22,163,74,.12);
      flex: 0 0 auto;
    }

    .sidecard{
      border-radius: var(--radius2);
      border: 1px solid rgba(11,18,32,.10);
      background: rgba(255,255,255,.82);
      padding: 16px;
      box-shadow: var(--shadow);
    }
    .sidecard h3{
      margin:0;
      font-size: 13px;
      letter-spacing: .7px;
      color: var(--muted2);
      text-transform: uppercase;
    }
    .toggle{
      margin-top: 10px;
      background: rgba(11,18,32,.03);
      border: 1px solid rgba(11,18,32,.10);
      border-radius: 999px;
      padding: 6px;
      display:flex;
      gap: 6px;
      align-items:center;
    }
    .toggle button{
      flex:1;
      border: 0;
      background: transparent;
      color: var(--muted);
      padding: 10px 12px;
      border-radius: 999px;
      font-weight: 950;
      cursor:pointer;
      font-size: 14px;
      transition: background .2s ease, color .2s ease;
    }
    .toggle button[aria-pressed="true"]{
      background: rgba(11,18,32,.06);
      color: var(--text);
    }
    .save{
      margin-top: 10px;
      display:flex; align-items:center; justify-content:space-between;
      padding: 10px 12px;
      border-radius: 14px;
      background: rgba(22,163,74,.10);
      border: 1px solid rgba(22,163,74,.22);
      color: rgba(11,18,32,.86);
      font-size: 14px;
    }
    .save b{ color: rgba(22,163,74,.95); }

    .cards{
      padding: 10px 0 18px;
    }
    .card-grid{
      display:grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 14px;
      align-items: stretch;
    }
    .plan{
      border-radius: var(--radius2);
      border: 1px solid rgba(11,18,32,.10);
      background: rgba(255,255,255,.82);
      padding: 18px;
      display:flex; flex-direction:column;
      min-height: 320px;
      transition: transform .12s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
      box-shadow: 0 14px 40px rgba(10,20,40,.08);
    }
    .plan:hover{
      transform: translateY(-2px);
      border-color: rgba(11,18,32,.16);
      background: #fff;
      box-shadow: 0 18px 55px rgba(10,20,40,.10);
    }
    .plan.popular{
      background: linear-gradient(180deg, rgba(91,75,255,.10), rgba(255,255,255,.90));
      border-color: rgba(91,75,255,.28);
      box-shadow: 0 26px 70px rgba(91,75,255,.14);
      position: relative;
    }
    .badge{
      position:absolute;
      top: 14px; right: 14px;
      padding: 7px 10px;
      border-radius: 999px;
      font-size: 12px;
      font-weight: 950;
      background: rgba(91,75,255,.14);
      border: 1px solid rgba(91,75,255,.26);
      color: rgba(11,18,32,.88);
    }
    .pname{
      font-weight: 950;
      letter-spacing: .2px;
      font-size: 16px;
      margin:0;
    }
    .pdesc{
      margin: 6px 0 0;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.35;
    }
    .price{
      margin-top: 14px;
      display:flex; align-items:baseline; gap:8px; flex-wrap:wrap;
    }
    .amount{
      font-size: 36px;
      font-weight: 990;
      letter-spacing: -0.6px;
    }
    .per{
      font-size: 14px;
      color: var(--muted);
      font-weight: 900;
    }
    .mini{
      margin-top: 8px;
      font-size: 13px;
      color: var(--muted2);
    }
    .list{
      margin: 14px 0 0;
      padding: 0;
      list-style:none;
      display:flex; flex-direction:column; gap:10px;
      color: rgba(11,18,32,.86);
      font-size: 14px;
    }
    .list li{ display:flex; gap:10px; align-items:flex-start; }
    .tick{
      width: 18px; height: 18px; border-radius: 7px;
      background: rgba(22,163,74,.10);
      border: 1px solid rgba(22,163,74,.22);
      display:inline-flex; align-items:center; justify-content:center;
      flex: 0 0 auto;
      margin-top: 1px;
      color: rgba(22,163,74,.95);
    }
    .tick svg{ width: 12px; height: 12px; }
    .spacer{ flex:1; }
    .cta{ margin-top: 16px; display:flex; gap:10px; flex-wrap:wrap; }

    .section{
      padding: 22px 0;
    }
    .section h2{
      margin: 0;
      font-size: 18px;
      letter-spacing: -0.2px;
    }
    .section p{
      margin: 10px 0 0;
      color: var(--muted);
      line-height: 1.55;
      max-width: 70ch;
    }

    .addons{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
      margin-top: 14px;
    }
    .addon{
      border-radius: var(--radius2);
      border: 1px solid rgba(11,18,32,.10);
      background: rgba(255,255,255,.82);
      padding: 16px;
      box-shadow: 0 12px 34px rgba(10,20,40,.06);
    }
    .addon .title{ font-weight: 950; }
    .addon .note{ margin-top: 6px; color: var(--muted); font-size: 14px; }

    details{
      border-radius: var(--radius2);
      border: 1px solid rgba(11,18,32,.10);
      background: rgba(255,255,255,.82);
      padding: 12px 14px;
      box-shadow: 0 12px 34px rgba(10,20,40,.06);
    }
    details + details{ margin-top: 10px; }
    summary{
      cursor:pointer;
      list-style:none;
      display:flex; align-items:center; justify-content:space-between;
      font-weight: 950;
      padding: 6px 4px;
    }
    summary::-webkit-details-marker{ display:none; }
    .chev{ transition: transform .18s ease; opacity:.70; }
    details[open] .chev{ transform: rotate(180deg); }

    .tablewrap{
      margin-top: 10px;
      overflow:auto;
      border-radius: 16px;
      border: 1px solid rgba(11,18,32,.10);
      background: rgba(255,255,255,.82);
    }
    table{
      width: 100%;
      min-width: 760px;
      border-collapse: collapse;
      font-size: 14px;
    }
    th, td{
      padding: 12px 12px;
      border-bottom: 1px solid rgba(11,18,32,.08);
      vertical-align: top;
    }
    th{
      position: sticky; top:0;
      background: rgba(255,255,255,.95);
      backdrop-filter: blur(10px);
      text-align:left;
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: .7px;
      color: var(--muted2);
      z-index: 2;
    }
    td{ color: rgba(11,18,32,.86); }
    td.muted{ color: var(--muted); }

    .check, .dash{
      display:inline-flex; align-items:center; justify-content:center;
      width: 22px; height: 22px; border-radius: 8px;
      border: 1px solid rgba(11,18,32,.12);
      background: rgba(11,18,32,.03);
    }
    .check{
      border-color: rgba(22,163,74,.25);
      background: rgba(22,163,74,.10);
      color: rgba(22,163,74,.95);
    }
    .check svg{ width: 14px; height: 14px; }

    .cta-strip{
      margin: 22px 0 56px;
      border-radius: 28px;
      border: 1px solid rgba(11,18,32,.10);
      background:
        radial-gradient(640px 240px at 18% 0%, rgba(91,75,255,.14), transparent 72%),
        radial-gradient(540px 240px at 86% 18%, rgba(22,163,74,.12), transparent 74%),
        rgba(255,255,255,.82);
      padding: 18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 14px;
      box-shadow: var(--shadow);
    }
    .cta-strip strong{ font-size: 16px; }
    .cta-strip span{ display:block; color: var(--muted); margin-top: 6px; font-size: 14px; }

    .badge {
      position: absolute;
      top: 16px;
      right: 16px;
      background: linear-gradient(135deg, #3b82f6, #2563eb);
      color: #ffffff;
      padding: 2px 8px;
      font-size: 12px;
      font-weight: 600;
      border-radius: 999px;
      letter-spacing: .3px;
      box-shadow: 0 6px 18px rgba(59, 130, 246, 0.45);
      z-index: 2;
    }

    .badge::after {
      content: "";
      position: absolute;
      inset: -3px;
      background: linear-gradient(135deg, #3b82f6, #2563eb);
      border-radius: inherit;
      filter: blur(10px);
      opacity: .35;
      z-index: -1;
    }

    /* Responsive */
    @media (max-width: 980px){
      .hero-grid{ grid-template-columns: 1fr; }
      .card-grid{ grid-template-columns: repeat(2, 1fr); }
      .addons{ grid-template-columns: 1fr; }
      .cta-strip{ flex-direction: column; align-items:flex-start; }
      nav .pill{ display:none; }
    }
    @media (max-width: 560px){
      .card-grid{ grid-template-columns: 1fr; }
      .amount{ font-size: 34px; }
      .topbar-inner{ height: 60px; }
    }