
    :root{
      --bg:#f4fbff;
      --card:#ffffff;
      --ink:#0b1b2b;
      --muted:#3b556b;
      --line:#d4e8f7;
      --brand:#1f6fb0;
      --brand2:#67b7e6;
      --soft:#e9f6ff;
      --ok:#0aa174;
      --warn:#b56b00;
      --shadow:0 12px 34px rgba(8, 32, 52, .08);
      --radius:18px;
      --max:1160px;
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      font-family:Montserrat, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      color:var(--ink);
      background:
        radial-gradient(900px 460px at 15% 10%, rgba(103,183,230,.25), transparent 55%),
        radial-gradient(900px 460px at 90% 0%, rgba(31,111,176,.18), transparent 55%),
        linear-gradient(180deg, #ffffff 0%, var(--bg) 60%, #ffffff 120%);
      line-height:1.8;
    }
    a{color:var(--brand); text-decoration:none}
    a:hover{text-decoration:underline}
    img{max-width:100%; height:auto; display:block}
    .wrap{max-width:var(--max); margin:0 auto; padding:0 18px}
    .pill{
      display:inline-flex; align-items:center; gap:8px;
      font-size:12px; font-weight:700;
      padding:8px 12px; border-radius:999px;
      background:rgba(255,255,255,.8);
      border:1px solid var(--line);
      color:var(--muted);
    }
    .btn{
      display:inline-flex; align-items:center; justify-content:center;
      gap:10px;
      padding:12px 16px;
      border-radius:14px;
      border:1px solid var(--line);
      background:#fff;
      color:var(--ink);
      font-weight:800;
      box-shadow:0 10px 22px rgba(8,32,52,.06);
      cursor:pointer;
      transition:transform .08s ease, box-shadow .2s ease, border-color .2s ease;
      text-decoration:none !important;
    }
    .btn:hover{transform:translateY(-1px); border-color:#b9dcf4; box-shadow:0 16px 28px rgba(8,32,52,.10)}
    .btn.primary{
      background:linear-gradient(135deg, var(--brand), var(--brand2));
      border-color:transparent;
      color:#fff;
      box-shadow:0 18px 40px rgba(31,111,176,.18);
    }
    .card{
      background:var(--card);
      border:1px solid var(--line);
      border-radius:var(--radius);
      box-shadow:var(--shadow);
    }

    /* Topbar */
    .topbar{
      position:sticky; top:0; z-index:50;
      background:rgba(255,255,255,.86);
      backdrop-filter:blur(10px);
      border-bottom:1px solid var(--line);
    }
    .topbar .inner{
      display:flex; align-items:center; justify-content:space-between;
      padding:12px 0; gap:12px; flex-wrap:wrap;
    }
    .brandBox{display:flex; align-items:center; gap:10px; min-width:220px}
    .logo{
      width:36px; height:36px; border-radius:12px;
      background:linear-gradient(135deg, rgba(31,111,176,.95), rgba(103,183,230,.95));
      box-shadow:0 10px 22px rgba(31,111,176,.18);
    }
    .brandName{font-weight:900; letter-spacing:.2px}
    .brandSub{font-size:12px; color:var(--muted); font-weight:700}
    nav{display:flex; gap:14px; flex-wrap:wrap}
    nav a{font-size:14px; color:var(--muted); font-weight:700}

    /* Hero */
    .hero{padding:52px 0 22px}
    .heroGrid{
      display:grid;
      grid-template-columns: 1.1fr .9fr;
      gap:16px;
      align-items:stretch;
    }
    h1{
      font-family:"Playfair Display", serif;
      font-size:44px;
      margin:10px 0 10px;
      line-height:1.15;
      letter-spacing:.2px;
    }
    .lead{margin:0; color:var(--muted); max-width:68ch}
    .pillRow{display:flex; gap:10px; flex-wrap:wrap}
    .ctaRow{display:flex; gap:12px; flex-wrap:wrap; margin-top:16px}
    .heroMedia{padding:14px; display:flex; flex-direction:column; gap:10px}
    figure{margin:0; border-radius:16px; overflow:hidden; border:1px solid var(--line); background:var(--soft)}
    figcaption{
      padding:10px 12px;
      font-size:12px;
      color:var(--muted);
      border-top:1px solid var(--line);
      background:rgba(255,255,255,.9);
    }
    .stats{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:10px;
    }
    .stat{
      border:1px solid var(--line);
      border-radius:16px;
      background:linear-gradient(180deg, #fff 0%, rgba(244,251,255,.75) 100%);
      padding:12px;
    }
    .stat strong{display:block; font-size:13px}
    .stat span{display:block; margin-top:2px; font-size:12px; color:var(--muted)}

    /* Sections */
    section{padding:26px 0}
    .head{
      display:flex; align-items:flex-end; justify-content:space-between; gap:12px; flex-wrap:wrap;
      margin-bottom:14px;
    }
    h2{
      font-family:"Playfair Display", serif;
      font-size:30px;
      margin:0;
    }
    .sub{margin:0; color:var(--muted); max-width:80ch}

    .grid3{display:grid; grid-template-columns:repeat(3,1fr); gap:12px}
    .grid2{display:grid; grid-template-columns:repeat(2,1fr); gap:12px}

    .feat{padding:16px}
    .feat h3{margin:8px 0 6px; font-size:16px}
    .feat p{margin:0; font-size:14px; color:var(--muted)}
    .tag{
      display:inline-flex; align-items:center;
      font-size:12px; font-weight:800;
      padding:6px 10px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.75);
      color:var(--brand);
    }

    /* Tables */
    .table{
      width:100%;
      border-collapse:separate;
      border-spacing:0;
      border:1px solid var(--line);
      border-radius:18px;
      overflow:hidden;
      background:#fff;
      box-shadow:var(--shadow);
    }
    .table th, .table td{
      padding:12px 12px;
      border-bottom:1px solid var(--line);
      vertical-align:top;
      font-size:14px;
    }
    .table th{
      text-align:left;
      font-size:13px;
      color:var(--muted);
      font-weight:900;
      background:linear-gradient(180deg, rgba(244,251,255,.92), #fff);
    }
    .table tr:last-child td{border-bottom:none}
    .note{
      font-size:13px; color:var(--muted);
      border-left:4px solid rgba(31,111,176,.35);
      padding:10px 12px;
      background:rgba(255,255,255,.7);
      border-radius:14px;
      border:1px solid var(--line);
    }

    /* Comparison */
    .compare{
      display:grid;
      grid-template-columns: 1fr;
      gap:12px;
    }
    .compareCard{padding:18px}
    .kpiRow{display:flex; gap:10px; flex-wrap:wrap; margin-top:10px}
    .kpi{
      font-size:12px; font-weight:800;
      padding:8px 10px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.8);
      color:var(--muted);
    }
    .good{color:var(--ok)}
    .warn{color:var(--warn)}

    /* FAQ */
    .faq{padding:18px}
    details{
      border:1px solid var(--line);
      border-radius:16px;
      background:rgba(255,255,255,.78);
      padding:12px 14px;
      margin:10px 0;
    }
    summary{cursor:pointer; font-weight:900}
    details p{margin:10px 0 0; color:var(--muted); font-size:14px}

    /* CTA band */
    .ctaBand{
      padding:22px;
      background:linear-gradient(135deg, rgba(31,111,176,.10), rgba(103,183,230,.14));
      border:1px solid var(--line);
      border-radius:22px;
      box-shadow:var(--shadow);
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      flex-wrap:wrap;
    }
    .ctaBand h3{margin:0; font-size:18px}
    .ctaBand p{margin:6px 0 0; color:var(--muted); font-size:14px; max-width:80ch}

    footer{
      padding:30px 0 40px;
      border-top:1px solid var(--line);
      color:var(--muted);
      font-size:13px;
    }
    .footGrid{display:grid; grid-template-columns:1.2fr .8fr; gap:14px}

    /* Responsive */
    @media (max-width: 980px){
      .heroGrid{grid-template-columns:1fr}
      .stats{grid-template-columns:1fr}
      .grid3{grid-template-columns:1fr}
      .grid2{grid-template-columns:1fr}
      .footGrid{grid-template-columns:1fr}
      h1{font-size:38px}
    }
  