  :root{
      /* Paleta extraída do logo/tema */
      --navy:#0A2A43;     /* azul escuro (logo) */
      --navy2:#2D3A50;
      --gold:#D8A341;     /* dourado (logo) */
      --teal:#548B88;     /* verde/teal (tema) */
      --bg:#F5F7FB;
      --card:#FFFFFF;
      --muted:#6B7280;
      --text:#0B1220;
      --line:rgba(10,42,67,.12);
      --shadow: 0 12px 30px rgba(10,42,67,.12);
      --radius:18px;
    }

    *{box-sizing:border-box}
    body{
      margin:0;
      font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
      color:var(--text);
      background:
        radial-gradient(900px 500px at 10% -10%, rgba(216,163,65,.20), transparent 60%),
        radial-gradient(900px 500px at 90% 0%, rgba(84,139,136,.18), transparent 55%),
        var(--bg);
    }
    a{color:inherit;text-decoration:none}
    .wrap{max-width:1140px;margin:0 auto;padding:0 18px}
    .btn{
      display:inline-flex;align-items:center;gap:10px;
      padding:12px 16px;border-radius:14px;
      border:1px solid transparent;
      font-weight:700;letter-spacing:.2px;
      transition:.2s ease;
      cursor:pointer;
      user-select:none;
    }
    .btn-primary{background:linear-gradient(135deg, var(--teal), #3f7a77); color:#fff; box-shadow: 0 10px 18px rgba(84,139,136,.25)}
    .btn-primary:hover{transform:translateY(-1px);filter:saturate(1.05)}
    .btn-ghost{background:rgba(255,255,255,.6); border-color:var(--line)}
    .btn-ghost:hover{background:#fff}
    .pill{
      display:inline-flex;align-items:center;gap:8px;
      padding:8px 12px;border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.6);
      color:var(--navy);
      font-weight:700;font-size:13px;
    }
    header{
      position:sticky;top:0;z-index:50;
      backdrop-filter: blur(10px);
      background: rgba(245,247,251,.75);
      border-bottom:1px solid var(--line);
    }
    .nav{
      display:flex;align-items:center;justify-content:space-between;
      padding:14px 0;
      gap:14px;
    }
    .brand{display:flex;align-items:center;gap:12px}
    .brand img{height:34px;width:auto}
    .brand .t{
      display:flex;flex-direction:column;line-height:1.05
    }
    .brand .t strong{color:var(--navy);font-size:14px;letter-spacing:.4px}
    .brand .t span{color:var(--muted);font-size:12px;font-weight:600}
    .links{display:flex;align-items:center;gap:14px}
    .links a{
      padding:10px 10px;border-radius:12px;
      color:rgba(11,18,32,.82);
      font-weight:700;font-size:13px;
      border:1px solid transparent;
    }
    .links a:hover{background:#fff;border-color:var(--line)}
    .nav-cta{display:flex;gap:10px;align-items:center}

    /* Hero */
    .hero{padding:52px 0 26px}
    .hero-grid{
      display:grid;grid-template-columns: 1.15fr .85fr;
      gap:22px;align-items:stretch;
    }
    .hero-card{
      background:linear-gradient(180deg, rgba(255,255,255,.85), rgba(255,255,255,.70));
      border:1px solid var(--line);
      border-radius:var(--radius);
      padding:26px;
      box-shadow: var(--shadow);
      overflow:hidden;
      position:relative;
    }
    .hero-card:before{
      content:"";
      position:absolute;inset:-40px -60px auto auto;
      width:260px;height:260px;border-radius:999px;
      background: radial-gradient(circle at 30% 30%, rgba(216,163,65,.35), transparent 60%),
                  radial-gradient(circle at 60% 70%, rgba(84,139,136,.30), transparent 60%);
      filter: blur(2px);
      transform: rotate(10deg);
    }
    .hero h1{
      margin:12px 0 10px;
      font-size:42px;
      line-height:1.06;
      letter-spacing:-.6px;
      color:var(--navy);
      position:relative;
    }
    .hero p{
      margin:0 0 18px;
      color:rgba(11,18,32,.78);
      font-size:15.5px;
      line-height:1.6;
      position:relative;
    }
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;position:relative}
    .hero-mini{
      display:grid;grid-template-columns: repeat(2, minmax(0,1fr));
      gap:12px;margin-top:16px;position:relative;
    }
    .mini{
      background:rgba(255,255,255,.7);
      border:1px solid var(--line);
      border-radius:16px;
      padding:12px;
    }
    .mini strong{display:block;color:var(--navy);font-size:14px}
    .mini span{display:block;color:var(--muted);font-size:12.5px;margin-top:4px}

    /* Side panel */
    .panel{
      background:linear-gradient(180deg, rgba(10,42,67,.92), rgba(10,42,67,.86));
      color:#fff;border-radius:var(--radius);
      border:1px solid rgba(255,255,255,.12);
      box-shadow: var(--shadow);
      padding:22px;
      position:relative;
      overflow:hidden;
    }
    .panel:after{
      content:"";
      position:absolute;right:-120px;bottom:-120px;
      width:280px;height:280px;border-radius:999px;
      background: radial-gradient(circle at 40% 40%, rgba(216,163,65,.55), transparent 62%);
      opacity:.9;
    }
    .panel h3{margin:0 0 8px;font-size:18px;position:relative}
    .panel p{margin:0 0 14px;color:rgba(255,255,255,.86);font-size:13.5px;line-height:1.6;position:relative}
    .checklist{display:grid;gap:10px;position:relative}
    .check{
      display:flex;gap:10px;align-items:flex-start;
      padding:10px 12px;border-radius:14px;
      background:rgba(255,255,255,.07);
      border:1px solid rgba(255,255,255,.12);
    }
    .dot{
      width:10px;height:10px;border-radius:999px;margin-top:4px;
      background:var(--gold);
      box-shadow:0 0 0 6px rgba(216,163,65,.12);
      flex:0 0 auto;
    }
    .check b{display:block;font-size:13.5px}
    .check small{display:block;color:rgba(255,255,255,.78);margin-top:2px;line-height:1.4}

    /* Sections */
    section{padding:26px 0}
    .section-title{
      display:flex;align-items:flex-end;justify-content:space-between;
      gap:14px;margin-bottom:14px;
    }
    .section-title h2{
      margin:0;color:var(--navy);
      font-size:22px;letter-spacing:-.2px
    }
    .section-title p{margin:0;color:var(--muted);font-weight:650;font-size:13.5px}

    /* Grid cards */
    .grid{
      display:grid;
      grid-template-columns: repeat(3, minmax(0,1fr));
      gap:14px;
    }
    .card{
      background:rgba(255,255,255,.82);
      border:1px solid var(--line);
      border-radius:var(--radius);
      padding:16px;
      box-shadow: 0 10px 22px rgba(10,42,67,.08);
    }
    .card h4{margin:0 0 6px;color:var(--navy);font-size:15px}
    .card p{margin:0;color:rgba(11,18,32,.75);font-size:13.2px;line-height:1.55}
    .tag{
      display:inline-flex;align-items:center;gap:8px;
      font-size:12px;font-weight:800;
      color:var(--teal);
      background: rgba(84,139,136,.10);
      border:1px solid rgba(84,139,136,.22);
      padding:7px 10px;border-radius:999px;
      margin-bottom:10px;
    }

    /* Pricing */
    .pricing{
      display:grid;
      grid-template-columns: repeat(2, minmax(0,1fr));
      gap:14px;
      align-items:stretch;
    }
    .price{
      position:relative;
      overflow:hidden;
    }
    .price .head{
      display:flex;justify-content:space-between;align-items:flex-start;gap:12px
    }
    .badge{
      font-size:12px;font-weight:900;
      color:var(--navy);
      background: rgba(216,163,65,.18);
      border:1px solid rgba(216,163,65,.35);
      padding:7px 10px;border-radius:999px;
      white-space:nowrap;
    }
    .amount{
      margin:10px 0 8px;
      font-size:40px;letter-spacing:-.8px;
      color:var(--navy);
    }
    .amount span{font-size:14px;color:var(--muted);font-weight:800}
    .ul{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:10px}
    .ul li{
      display:flex;gap:10px;align-items:flex-start;
      color:rgba(11,18,32,.78);
      font-weight:650;font-size:13.5px;line-height:1.45
    }
    .tick{
      width:18px;height:18px;border-radius:6px;
      background: rgba(84,139,136,.14);
      border:1px solid rgba(84,139,136,.30);
      display:inline-flex;align-items:center;justify-content:center;
      color:var(--teal);
      flex:0 0 auto;margin-top:1px;
      font-weight:1000;
    }
    .price.featured{
      background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,255,255,.75));
      border:1px solid rgba(84,139,136,.30);
    }
    .price.featured:before{
      content:"";
      position:absolute;inset:-80px -80px auto auto;
      width:220px;height:220px;border-radius:999px;
      background: radial-gradient(circle at 40% 40%, rgba(84,139,136,.35), transparent 62%);
    }
    .price .cta{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap;position:relative}

    /* FAQ */
    .faq{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    details{
      background:rgba(255,255,255,.82);
      border:1px solid var(--line);
      border-radius:16px;
      padding:14px 14px;
      box-shadow: 0 10px 22px rgba(10,42,67,.06);
    }
    summary{
      cursor:pointer;font-weight:900;color:var(--navy);
      list-style:none;
    }
    summary::-webkit-details-marker{display:none}
    details p{margin:10px 0 0;color:rgba(11,18,32,.75);font-weight:650;font-size:13.5px;line-height:1.6}

    /* Contact */
    .contact{
      display:grid;grid-template-columns: 1.1fr .9fr;
      gap:14px;align-items:stretch;
    }
    .form label{display:block;font-weight:900;font-size:12px;color:rgba(11,18,32,.75);margin:10px 0 6px}
    .form input,.form textarea{
      width:100%;
      padding:12px 12px;
      border-radius:14px;
      border:1px solid var(--line);
      background: rgba(255,255,255,.9);
      outline:none;
      font-weight:650;
      color:var(--text);
    }
    .form textarea{min-height:120px;resize:vertical}
    .alert{
      border-radius:14px;
      padding:12px 12px;
      border:1px solid;
      font-weight:800;font-size:13px;
      margin-bottom:10px;
    }
    .ok{background:rgba(84,139,136,.10);border-color:rgba(84,139,136,.25);color:var(--teal)}
    .bad{background:rgba(216,163,65,.12);border-color:rgba(216,163,65,.35);color:#8a5a00}

    footer{
      padding:22px 0 30px;
      border-top:1px solid var(--line);
      color:rgba(11,18,32,.7);
      font-weight:650;font-size:13px
    }
    .foot{
      display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap
    }

    /* Responsive */
    @media (max-width: 980px){
      .hero-grid{grid-template-columns:1fr}
      .grid{grid-template-columns: repeat(2, minmax(0,1fr))}
      .pricing{grid-template-columns:1fr}
      .contact{grid-template-columns:1fr}
      .faq{grid-template-columns:1fr}
      .links{display:none}
    }
    @media (max-width: 560px){
      .hero h1{font-size:34px}
      .grid{grid-template-columns:1fr}
    }
