  :root{
    --ink:#0B2138; --ink-2:#123354; --harbor:#1B4965; --sea:#3E8E86; --sea-bright:#4FA69C;
    --brass:#B97E33; --brass-2:#D79A4C;
    --foam:#FAFBFA; --paper:#FFFFFF; --mist:#7E93A0; --line:#E3E8E7;
    --text:#16293B; --text-muted:#586E7C; --surface:#FFFFFF; --surface-2:#F1F4F3;
    --nav-bg:rgba(250,251,250,0.92);
    --ph-border:#B7C6CC;
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      --ink:#EAF2F1; --harbor:#5FBDB2;
      --foam:#0B1D2E; --paper:#122A40; --surface:#122A40; --surface-2:#152F47;
      --text:#E7EFEE; --text-muted:#9FB3C0; --line:#203C52; --sea-bright:#5FBDB2;
      --nav-bg:rgba(11,29,46,0.9); --ph-border:#2C4A62;
    }
  }
  :root[data-theme="dark"]{
    --ink:#EAF2F1; --harbor:#5FBDB2;
    --foam:#0B1D2E; --paper:#122A40; --surface:#122A40; --surface-2:#152F47;
    --text:#E7EFEE; --text-muted:#9FB3C0; --line:#203C52; --sea-bright:#5FBDB2;
    --nav-bg:rgba(11,29,46,0.9); --ph-border:#2C4A62;
  }

  *{box-sizing:border-box;}
  html{overflow-x:hidden;}
  body{margin:0;overflow-x:hidden;background:var(--foam);color:var(--text);font-family:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased;}
  h1,h2,h3{font-family:"Montserrat",Arial,sans-serif;color:var(--ink);text-wrap:balance;margin:0;letter-spacing:-0.01em;}
  a{color:inherit;}
  img,svg{max-width:100%;display:block;}
  .wrap{max-width:1120px;margin:0 auto;padding-inline:24px;}
  .label{font-size:0.82rem;font-weight:700;letter-spacing:0.03em;color:var(--sea);text-transform:uppercase;font-size:0.74rem;}
  :root[data-theme="dark"] .label,@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .label{color:var(--sea-bright);}}

  /* placeholder media block */
  .ph{
    border:1.5px dashed var(--ph-border);border-radius:8px;
    display:flex;align-items:center;justify-content:center;text-align:center;
    background:repeating-linear-gradient(135deg,var(--surface-2),var(--surface-2) 10px,var(--surface) 10px,var(--surface) 20px);
    color:var(--mist);font-size:0.82rem;padding:20px;line-height:1.5;
  }
  .ph b{display:block;color:var(--text-muted);font-size:0.86rem;margin-bottom:4px;}

  header.site{position:sticky;top:0;z-index:50;background:var(--nav-bg);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
  .nav-row{display:flex;align-items:center;justify-content:space-between;padding-block:16px;}
  .brand{display:flex;align-items:center;gap:10px;text-decoration:none;}
  .brand-logo{height:54px;width:auto;flex:none;}
  .brand .logo-dark{display:none;}
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]) .brand .logo-light{display:none;}
    :root:not([data-theme="light"]) .brand .logo-dark{display:inline-block;}
  }
  :root[data-theme="dark"] .brand .logo-light{display:none;}
  :root[data-theme="dark"] .brand .logo-dark{display:inline-block;}
  nav.links{display:flex;gap:34px;align-items:center;}
  nav.links a{text-decoration:none;color:var(--text-muted);font-size:0.92rem;font-weight:500;padding-block:4px;border-bottom:2px solid transparent;}
  nav.links a:hover{color:var(--ink);border-color:var(--brass);}
  .btn{font-family:"Public Sans",sans-serif;font-weight:700;font-size:0.9rem;padding:13px 26px;border-radius:999px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease;}
  .btn-primary{background:var(--brass);color:#20120A;}
  .btn-primary:hover{background:var(--brass-2);transform:translateY(-1px);}
  .btn-ghost{border-color:var(--line);color:var(--ink);background:transparent;}
  .btn-ghost:hover{border-color:var(--sea);color:var(--sea);}
  .btn-on-dark{border-color:rgba(255,255,255,0.35);color:#fff;}
  .btn-on-dark:hover{border-color:#fff;}
  .menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:3px;padding:8px;cursor:pointer;color:var(--ink);flex-shrink:0;}
  .menu-toggle svg{width:20px;height:20px;flex-shrink:0;}

  /* ---------- cinematic hero ---------- */
  .hero{
    position:relative;overflow:hidden;color:#EFF6F5;
    background:
      radial-gradient(ellipse 80% 60% at 70% 0%, rgba(79,166,156,0.35), transparent 60%),
      linear-gradient(180deg,#081726 0%,#0B2138 38%,#123B52 70%,#1B4965 100%);
  }
  .hero::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:38%;
    background:linear-gradient(0deg, rgba(185,126,51,0.16), transparent);
    pointer-events:none;
  }
  .hero-inner{position:relative;max-width:760px;padding-block:10px 56px;}
  .hero .label{color:#9FE0D6;}
  .hero h1{font-size:clamp(2.3rem,4.2vw + .6rem,3.7rem);font-weight:600;color:#F7FAF9;margin-top:14px;}
  .hero h1 .accent{background:linear-gradient(90deg,#4FA69C,#D79A4C);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:italic;}
  .hero p.lede{font-size:1.35rem;color:#B9CCD3;margin-top:20px;max-width:52ch;}
  .hero-ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap;align-items:center;}
  .hero-trust{margin-top:22px;font-size:1.11rem;color:#8FA9B3;display:grid;grid-template-columns:16px 1fr;align-items:start;gap:8px;}
  .hero-trust svg{width:16px;height:16px;color:var(--sea-bright);margin-top:2px;}

  .hero-photo{position:relative;}
  .hero-photo .ph{aspect-ratio:21/8;border-radius:0;border-width:1.5px 0;color:#9FB3C0;background:repeating-linear-gradient(135deg,rgba(255,255,255,0.03),rgba(255,255,255,0.03) 10px,rgba(255,255,255,0.06) 10px,rgba(255,255,255,0.06) 20px);border-color:rgba(255,255,255,0.18);}
  .hero-photo .ph b{color:#D8E4E6;}
  .hero-photo img{width:100%;height:auto;aspect-ratio:21/8;object-fit:cover;display:block;}

  section{padding-block:88px;}
  section.alt{background:var(--surface-2);}
  section.dark{background:linear-gradient(180deg,#0B2138,#0F2C46);color:#EAF2F1;}
  .section-head{max-width:600px;margin-bottom:44px;}
  .section-head.center{margin-inline:auto;text-align:center;}
  .section-head h2{font-size:clamp(1.6rem,1.8vw + 1rem,2.3rem);font-weight:500;}
  .dark .section-head h2{color:#F7FAF9;}
  .section-head p{color:var(--text-muted);margin-top:12px;font-size:1.25rem;}
  .dark .section-head p{color:#9FB3C0;}

  /* ---------- alternating feature rows ---------- */
  .feature-row{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding-block:52px;border-top:1px solid var(--line);}
  .feature-row:first-of-type{border-top:none;}
  .feature-row.rev .f-media{order:2;}
  .f-media .ph{aspect-ratio:4/3;}
  .f-media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:8px;display:block;}
  .f-text .label{margin-bottom:10px;display:block;}
  .f-text h3{font-size:1.5rem;font-weight:500;}
  .f-text p{color:var(--text-muted);margin-top:14px;max-width:44ch;font-size:1.25rem;}
  .f-list{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-direction:column;gap:9px;}
  .f-list li{display:grid;grid-template-columns:16px 1fr;gap:9px;font-size:1.17rem;color:var(--text-muted);}
  .f-list svg{width:16px;height:16px;color:var(--sea);margin-top:2px;}
  :root[data-theme="dark"] .f-list svg,@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .f-list svg{color:var(--sea-bright);}}
  .f-link{margin-top:16px;display:inline-block;font-weight:700;font-size:0.92rem;color:var(--harbor);text-decoration:none;border-bottom:2px solid var(--brass);}
  :root[data-theme="dark"] .f-link,@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .f-link{color:var(--sea-bright);}}

  /* ---------- stat band ---------- */
  .stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.12);border-radius:8px;overflow:hidden;}
  .stat{background:var(--ink-2);padding:36px 30px;}
  .stat .n{font-family:"Montserrat",sans-serif;font-size:clamp(2rem,3vw + .5rem,2.8rem);color:#F7FAF9;font-weight:700;font-variant-numeric:tabular-nums;}
  .stat .n .ph-inline{font-family:"Public Sans",sans-serif;font-size:0.85rem;border:1px dashed rgba(255,255,255,0.4);border-radius:4px;padding:1px 7px;vertical-align:middle;color:#9FE0D6;}
  .stat p{color:#9FB3C0;font-size:1.15rem;margin-top:8px;}

  /* ---------- steps ---------- */
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;position:relative;}
  .steps::before{content:"";position:absolute;top:14px;left:0;right:0;height:1px;background:var(--line);}
  .step{position:relative;padding-top:36px;}
  .step .dot{position:absolute;top:0;left:0;width:29px;height:29px;border-radius:50%;background:var(--foam);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:0.78rem;font-weight:700;color:var(--harbor);}
  :root[data-theme="dark"] .step .dot,@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .step .dot{color:var(--sea-bright);}}
  .step h3{font-size:0.98rem;font-family:"Public Sans",sans-serif;font-weight:700;}
  .step p{color:var(--text-muted);font-size:1.13rem;margin-top:8px;}

  /* ---------- coverage/service grid (landing pages de produto) ---------- */
  .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;}
  .svc{background:var(--surface);padding:28px 24px;}
  .svc .ic{width:26px;height:26px;color:var(--sea);margin-bottom:16px;flex-shrink:0;}
  :root[data-theme="dark"] .svc .ic,@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .svc .ic{color:var(--sea-bright);}}
  .svc h3{font-size:1rem;font-family:"Public Sans",sans-serif;font-weight:700;color:var(--ink);}
  .svc p{color:var(--text-muted);font-size:0.9rem;margin-top:8px;}

  /* ---------- seguro de vida: destaque Mulher + planos ---------- */
  section.mulher{background:radial-gradient(ellipse 70% 50% at 85% 0%,rgba(215,154,76,0.16),transparent 60%),linear-gradient(180deg,#0B2138,#123354);color:#EAF2F1;}
  .mulher .label{color:#E8B676;}
  .mulher .section-head h2{color:#F7FAF9;}
  .mulher .section-head p{color:#9FB3C0;}
  .mulher-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .mulher-card{background:#123354;border:1px solid rgba(255,255,255,0.12);border-radius:10px;overflow:hidden;}
  .mulher-card img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;display:block;}
  .mulher-card .m-body{padding:20px 22px 24px;}
  .mulher-card h3{font-size:1.05rem;font-family:"Public Sans",sans-serif;font-weight:700;color:#F7FAF9;}
  .mulher-card p{color:#9FB3C0;font-size:0.95rem;margin-top:8px;}
  .mulher-perks{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px 24px;}
  .mulher-perks li{display:grid;grid-template-columns:16px 1fr;gap:9px;color:#C9D6DC;font-size:1rem;}
  .mulher-perks svg{width:16px;height:16px;color:#E8B676;margin-top:4px;}
  .mulher-cta{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
  .mulher .fine{color:#8FA9B3;}
  .plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;}
  .plan{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:28px 24px;display:flex;flex-direction:column;}
  .plan-grid.four{grid-template-columns:repeat(2,1fr);}
  .plan.feat{border-color:var(--brass);box-shadow:0 0 0 1px var(--brass);}
  .plan .mode{font-size:0.74rem;font-weight:700;letter-spacing:0.03em;text-transform:uppercase;color:var(--sea);}
  .plan .tag{position:absolute;top:-12px;left:24px;font-size:0.7rem;font-weight:700;letter-spacing:0.03em;text-transform:uppercase;color:#20120A;background:var(--brass-2);border-radius:999px;padding:3px 10px;}
  .plan h3{font-size:1.25rem;margin-top:6px;}
  .plan .cap{color:var(--text-muted);font-size:0.95rem;margin-top:8px;}
  .plan .price{font-family:"Montserrat",Arial,sans-serif;font-weight:700;color:var(--ink);font-size:1.05rem;margin-top:10px;}
  .plan ul{list-style:none;margin:18px 0 24px;padding:0;display:flex;flex-direction:column;gap:8px;}
  .plan li{display:grid;grid-template-columns:16px 1fr;gap:9px;font-size:0.95rem;color:var(--text-muted);}
  .plan li svg{width:16px;height:16px;color:var(--sea);margin-top:4px;}
  .plan .btn{margin-top:auto;justify-content:center;}
  :root[data-theme="dark"] .plan .mode,:root[data-theme="dark"] .plan li svg{color:var(--sea-bright);}
  @media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .plan .mode,:root:not([data-theme="light"]) .plan li svg{color:var(--sea-bright);}}
  .fine{color:var(--text-muted);font-size:0.82rem;margin-top:22px;max-width:80ch;}
  .plan .plan-actions{margin-top:auto;display:flex;flex-direction:column;gap:10px;}
  .plan .plan-actions .btn{margin-top:0;}

  /* ---------- comparativo entre seguradoras ---------- */
  .cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface);}
  .cmp{width:100%;min-width:900px;border-collapse:collapse;font-size:0.95rem;}
  .cmp th,.cmp td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);}
  .cmp thead th{font-family:"Public Sans",sans-serif;font-weight:700;color:var(--ink);background:var(--surface-2);font-size:0.92rem;}
  .cmp tbody th{font-weight:700;color:var(--ink);width:22%;}
  .cmp td{color:var(--text-muted);}
  .cmp tbody tr:last-child th,.cmp tbody tr:last-child td{border-bottom:none;}
  .cmp-hint{display:none;color:var(--text-muted);font-size:0.82rem;margin-top:10px;}

  /* ---------- faixa de confiança (landing pages de produto) ---------- */
  .trust{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
  .trust h3{font-size:1rem;font-family:"Public Sans",sans-serif;font-weight:700;color:var(--ink);}
  .trust p{color:var(--text-muted);font-size:1rem;margin-top:8px;}

  /* ---------- partners ---------- */
  .partners-note{text-align:center;color:var(--text-muted);font-size:1.17rem;margin-bottom:28px;}
  .partner-row{display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;}
  .partner-chip{border:1px solid var(--line);border-radius:6px;padding:14px 22px;font-weight:700;color:var(--text-muted);font-size:0.92rem;background:var(--surface);}

  /* ---------- faq ---------- */
  .faq{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;}
  .faq-item{background:var(--surface);}
  .faq-item summary{padding:20px 22px;cursor:pointer;font-weight:700;font-size:0.98rem;display:grid;grid-template-columns:18px 1fr;align-items:start;gap:14px;list-style:none;color:var(--ink);}
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary::before{content:"+";font-weight:400;color:var(--mist);font-size:1.2rem;line-height:1.2;text-align:center;}
  .faq-item[open] summary::before{content:"–";}
  .faq-item p{margin:0;padding:0 22px 20px;color:var(--text-muted);font-size:1.17rem;max-width:62ch;}

  /* ---------- contact ---------- */
  .contact-grid{display:grid;grid-template-columns:0.8fr 1.2fr;gap:64px;align-items:start;}
  .contact-copy p{color:var(--text-muted);margin-top:16px;max-width:38ch;}
  .contact-list{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:12px;}
  .contact-list li{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start;font-size:1.17rem;color:var(--text-muted);}
  .contact-list svg{width:17px;height:17px;flex:none;margin-top:2px;color:var(--sea);}
  :root[data-theme="dark"] .contact-list svg,@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .contact-list svg{color:var(--sea-bright);}}
  form.card{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:30px;}
  .field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
  .field label{font-size:0.8rem;font-weight:600;color:var(--ink);}
  .field input,.field select,.field textarea{font-family:"Public Sans",sans-serif;font-size:0.94rem;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--foam);color:var(--text);}
  :root[data-theme="dark"] .field input,:root[data-theme="dark"] .field select,:root[data-theme="dark"] .field textarea{background:var(--surface-2);}
  @media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .field input,:root:not([data-theme="light"]) .field select,:root:not([data-theme="light"]) .field textarea{background:var(--surface-2);}}
  .field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--sea);outline-offset:1px;}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .lgpd{font-size:1.01rem;color:var(--text-muted);display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;margin-bottom:18px;}
  .lgpd input{margin-top:3px;}

  footer{background:#081726;color:#C9D6DC;padding-block:48px 26px;}
  footer .wrap{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;}
  footer .brand-logo{height:54px;}
  footer ul{list-style:none;margin:0;padding:0;display:flex;gap:26px;font-size:0.86rem;flex-wrap:wrap;}
  footer ul a{text-decoration:none;color:#C9D6DC;}
  footer ul a:hover{color:var(--brass-2);}
  .foot-bottom{max-width:1120px;margin:36px auto 0;padding:18px 24px 0;border-top:1px solid #1E3E5A;font-size:0.76rem;color:#7E93A0;}

  .cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -8px 24px -12px rgba(0,0,0,0.3);}
  .cookie-banner[hidden]{display:none;}
  .cookie-banner-inner{max-width:1120px;margin:0 auto;padding:16px 24px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;}
  .cookie-banner-inner p{margin:0;color:var(--text-muted);font-size:0.92rem;max-width:60ch;}
  .cookie-banner-inner a{color:var(--harbor);text-decoration:underline;}
  .cookie-banner-actions{display:flex;gap:10px;flex-wrap:wrap;flex:none;}
  .cookie-banner-actions .btn{padding:9px 18px;font-size:0.86rem;}

  .proto-banner{background:var(--harbor);color:#EAF2F1;text-align:center;font-size:0.8rem;padding:9px 16px;}

  @media (max-width:860px){
    nav.links{display:none;}
    .menu-toggle{display:inline-flex;}
    .brand-logo{height:44px;}
    .theme-toggle{display:none !important;}
    .nav-actions{gap:6px !important;}
    .nav-row .btn-primary{padding:7px 10px;font-size:0.7rem;white-space:nowrap;flex-shrink:1;min-width:0;}
    .hero-inner{padding-block:64px 52px;}
    .feature-row{grid-template-columns:1fr;gap:28px;}
    .feature-row.rev .f-media{order:0;}
    .stat-grid{grid-template-columns:1fr;}
    .steps{grid-template-columns:1fr 1fr;row-gap:36px;}
    .steps::before{display:none;}
    .contact-grid{grid-template-columns:1fr;gap:36px;}
    .grid-4{grid-template-columns:1fr 1fr;}
    .mulher-grid,.plan-grid,.plan-grid.four,.mulher-perks,.trust{grid-template-columns:1fr;}
    .trust{gap:24px;}
    .cmp-hint{display:block;}
  }
  @media (max-width:480px){
    .row2{grid-template-columns:1fr;}
    .steps{grid-template-columns:1fr;}
    .grid-4{grid-template-columns:1fr;}
  }
