/* Grupo Brasil Vidas: azul-marinho do banner, azul médio e o verde das chamadas */
:root{
  --azul:#0B2E6B; --azul-2:#14479A; --azul-claro:#E8EFFA; --verde:#5DAA33; --verde-2:#4A9126; --verde-claro:#EAF5E2;
  --fundo:#F6F9FD; --branco:#FFFFFF; --tinta:#0D2147; --fraca:#4D5E7E; --linha:#D8E2F0; --erro:#B42318; --ok:#2F7D1A;
  --tit:'Montserrat',system-ui,sans-serif; --txt:'Nunito Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --r:22px; --sombra:0 18px 44px rgba(11,46,107,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fundo);color:var(--tinta);font:400 1.0625rem/1.6 var(--txt);-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,p{margin:0}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--verde);outline-offset:3px}
.wrap{max-width:1160px;margin:0 auto;padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--tit);letter-spacing:-.015em;text-wrap:balance;color:var(--azul)}
h2{font-size:clamp(1.8rem,3.8vw,2.5rem);line-height:1.12;font-weight:800}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 28px;border-radius:999px;border:2px solid transparent;font:700 1rem var(--tit);text-decoration:none;cursor:pointer;transition:transform .15s ease,background .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-verde{background:var(--verde);color:#fff;box-shadow:0 10px 24px rgba(93,170,51,.32)}
.btn-verde:hover{background:var(--verde-2)}
.btn-linha{border-color:var(--azul);color:var(--azul)}
.btn-linha:hover{background:var(--azul-claro)}
.btn-p{min-height:44px;padding:10px 20px;font-size:.92rem}
.btn-larga{width:100%}
.btn:disabled{opacity:.7;cursor:not-allowed;transform:none}

.marca{display:inline-flex;flex-direction:column;line-height:1;text-decoration:none;color:var(--azul)}
.marca small{font:600 .72rem var(--tit);letter-spacing:.24em;text-transform:uppercase}
.marca b{font:800 1.45rem var(--tit);letter-spacing:-.02em;text-transform:uppercase}
.topo{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--linha)}
.topo .wrap{display:flex;align-items:center;gap:20px;min-height:72px}
.parceria{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:.9rem;color:var(--fraca);font-weight:600}
.parceria img{width:40px;height:40px;border-radius:50%}
.parceria b{color:var(--azul)}
@media (max-width:760px){.parceria{display:none}.topo .btn{margin-left:auto}}

.hero{position:relative;background:linear-gradient(180deg,#fff 0%,var(--fundo) 100%);overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:44px;align-items:center;padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(70px,8vw,110px)}
.hero .txt{display:grid;gap:18px;min-width:0}
.selo{justify-self:start;background:var(--verde-claro);color:var(--verde-2);font:800 .8rem var(--txt);letter-spacing:.04em;padding:7px 14px;border-radius:999px}
.hero h1{font-size:clamp(2.1rem,4.8vw,3.4rem);line-height:1.08;font-weight:800}
.hero h1 em{font-style:normal;color:var(--verde)}
.lead{color:var(--fraca);font-size:1.1rem;max-width:36rem}
.acoes{display:flex;flex-wrap:wrap;gap:12px}
.acoes.centro{justify-content:center;margin-top:22px}
.preco-chamada{font-weight:700;color:var(--fraca)}
.preco-chamada b{font:800 1.4rem var(--tit);color:var(--azul)}
.foto{margin:0;justify-self:center;width:min(100%,460px);border-radius:28px;overflow:hidden;box-shadow:0 30px 60px rgba(11,46,107,.22);border:6px solid #fff;outline:3px solid var(--verde);outline-offset:6px}
.foto img{width:100%}
.onda{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:70px;fill:var(--azul)}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr;gap:28px}.foto{width:min(100%,380px)}}

.sec{padding-block:clamp(60px,8vw,96px)}
.cab{text-align:center;margin:0 auto 38px;display:grid;gap:10px;max-width:42rem}
.olho{font:800 .78rem var(--txt);letter-spacing:.18em;text-transform:uppercase;color:var(--verde-2)}
#beneficios{background:var(--azul);margin-top:-1px}
#beneficios h2{color:#fff}
#beneficios .olho{color:#9BD47A}
.grade{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.ben{background:#fff;border-radius:var(--r);padding:26px 22px;display:grid;gap:10px;align-content:start;min-width:0}
.ben h3{font-size:1.05rem;line-height:1.3;font-weight:800}
.ben p{color:var(--fraca);font-size:.95rem}
.ic{width:54px;height:54px;border-radius:16px;background:var(--azul-claro);color:var(--azul);display:grid;place-items:center;position:relative}
.ic::after{content:"";position:absolute;right:-4px;bottom:-4px;width:16px;height:16px;border-radius:50%;background:var(--verde);border:3px solid #fff}
.ic svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:980px){.grade{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.grade{grid-template-columns:1fr}}

.condicao{background:linear-gradient(180deg,var(--fundo) 0%,#fff 100%)}
.cond-cab{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;margin-bottom:28px}
.faixa-verde{background:linear-gradient(90deg,var(--verde-2),var(--verde));color:#fff;font:600 clamp(1.1rem,2.6vw,1.6rem) var(--tit);text-transform:uppercase;letter-spacing:.02em;padding:12px 26px;border-radius:14px}
.faixa-verde b{font-weight:800}
.cond-cab img{width:96px;height:96px;border-radius:50%;box-shadow:0 10px 26px rgba(11,46,107,.2);border:4px solid #fff}
.precos{display:grid;grid-template-columns:repeat(2,minmax(0,320px));justify-content:center;gap:22px}
.preco{background:#fff;border:1.5px solid var(--linha);border-radius:var(--r);padding:28px 26px;display:grid;gap:8px;justify-items:start;box-shadow:var(--sombra)}
.quem{display:flex;align-items:center;gap:10px;font:800 1.05rem var(--tit);color:var(--azul)}
.quem svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.valor{font:800 4rem/1 var(--tit);color:var(--azul);letter-spacing:-.04em;border-top:4px solid var(--verde);padding-top:14px;margin-top:4px}
.valor small{font-size:1.4rem;vertical-align:top;margin-right:4px;letter-spacing:0}
.valor sup{font-size:1.6rem;vertical-align:top;top:.2em;position:relative}
.por{font-weight:700;color:var(--fraca)}
.preco.destaque{background:linear-gradient(160deg,var(--azul) 0%,var(--azul-2) 100%);border-color:transparent}
.preco.destaque .quem{color:#fff}
.preco.destaque .valor{color:#9BD47A}
.preco.destaque .por{color:#CFE0F7}
.nota{text-align:center;color:var(--fraca);margin-top:18px}
@media (max-width:620px){.precos{grid-template-columns:1fr}}

.contato{background:var(--azul);color:#fff}
.contato .wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:44px;align-items:start}
.contato h2{color:#fff}
.contato .olho{color:#9BD47A}
.lado{display:grid;gap:14px}
.lado p{color:#CFE0F7}
.lema{font:700 1.3rem/1.5 var(--tit);color:#fff!important;border-left:4px solid var(--verde);padding-left:16px;margin-top:8px}
@media (max-width:880px){.contato .wrap{grid-template-columns:1fr}}
.form{background:#fff;color:var(--tinta);border-radius:26px;padding:clamp(22px,3vw,32px);box-shadow:0 24px 50px rgba(0,0,0,.25);min-width:0}
.campo{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
label{font:700 .92rem var(--txt)}
.req{color:var(--erro)}
input,textarea{width:100%;min-height:50px;padding:12px 14px;border:1.5px solid var(--linha);border-radius:12px;background:#fff;color:var(--tinta);font:400 16px/1.4 var(--txt);-webkit-appearance:none;appearance:none}
textarea{resize:vertical;min-height:110px}
input::placeholder,textarea::placeholder{color:#8A99B5}
input:focus-visible,textarea:focus-visible{outline:3px solid rgba(93,170,51,.35);border-color:var(--verde)}
.invalido{border-color:var(--erro)!important}
.pote{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.aviso{margin:0 0 14px;padding:12px 14px;border-radius:12px;font-weight:700;font-size:.95rem}
.aviso.erro{background:#FDECEA;color:var(--erro)}
.aviso.ok{background:var(--verde-claro);color:var(--ok)}
.lgpd{margin-top:12px;font-size:.82rem;color:var(--fraca);text-align:center}
[hidden]{display:none!important}

.rodape{background:#071E47;color:#AFC3E3;text-align:center;padding-block:36px calc(36px + env(safe-area-inset-bottom,0px))}
.rodape .wrap{display:grid;gap:10px;justify-items:center}
.rodape .marca{color:#fff}
.rodape p{max-width:44rem}
.rodape .mini{font-size:.82rem}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
