:root              { --header-bkg:#152c3a; --header-borda:rgba(255,255,255,.08); --header-menu:#fff;
                     --fundo:#f5f7fa; --fundo-secundario:#e8f2f1; --fundo-card:#fff; --fundo-claro:#eef6f5;
                     --texto:#1c2f39; --texto-secundario:#75868c; --texto-suave:#6f8187; --texto-escuro:#204758; --texto-faq:#74868c;
                     --destaque:#52c8b2; --destaque-texto:#102c34;
                     --botao-fundo:#52c8b2; --botao-texto:#102c34; --botao-escuro-fundo:#3aa894; --botao-escuro-hover:#3aa894; --botao-escuro-texto:#102c34;
                     --borda:#e4e9ec;
                     --faixa-fundo:#52c8b2; --faixa-texto:#102c34;
                     --cta-fundo:#152c3a; --cta-texto:#fff;
                     --footer-bkg:#102530; --footer-texto:#9eb2ba;
                     --painel-escuro:#152c3a; --painel-escuro-texto:#fff; --painel-texto-fraco:#bdd0d8;
                     interpolate-size:allow-keywords; }
*               { margin:0; padding:0; box-sizing:border-box; }
html            { scroll-behavior:smooth; }
body            { font-family:Arial,Helvetica,sans-serif; color:var(--texto); background:var(--fundo);    }
a               { text-decoration:none; }
header          { position:sticky; top:40px; z-index:1000; height:78px; background:var(--header-bkg);    }
header .content { height:78px; padding:0 5%; display:flex; align-items:center; justify-content:space-between;    }
.content        { width:100%; max-width:1400px; margin:0 auto; padding: 0 20px}
.logo           { color:var(--header-menu); font-size:25px; font-weight:800;    }
.logo span      { color:var(--destaque);    }
nav             { display:flex; gap:25px; align-items:center;    }
nav a           { color:var(--header-menu); font-size:13px;    }
.btn            { display:inline-block; padding:13px 22px; border-radius:8px; background:var(--botao-fundo); color:var(--botao-texto); font-weight:bold;    }
.hero           { padding:60px 0; background:var(--painel-escuro); color:var(--painel-escuro-texto); scroll-margin-top:120px;    }
.hero .content  { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center;    }
.hero small     { color:var(--destaque); text-transform:uppercase; letter-spacing:1.5px; font-weight:bold;    }
.hero h1        { margin:15px 0 22px; font-size:53px; line-height:1.05;    }
.hero p         { max-width:570px; margin-bottom:28px; color:var(--painel-texto-fraco); line-height:1.7;    }
.painel         { display:grid; grid-template-columns:1fr 1fr; gap:14px;    }
.painel-card    { padding:24px; border-radius:14px; background:var(--fundo-card); color:var(--texto-escuro);    }
.painel-card:first-child { grid-column:1 / 3; background:var(--destaque);   }
.painel-card strong { display:block; margin-bottom:6px; font-size:18px;    }
.painel-card span  { color:var(--texto-suave); font-size:12px;    }
.painel-card:first-child span { color:var(--destaque-texto);   }
section         { padding:85px 0; scroll-margin-top:120px;    }
.titulo         { max-width:720px; margin-bottom:45px;    }
.titulo span    { color:var(--destaque); font-size:11px; font-weight:bold; text-transform:uppercase; letter-spacing:1.5px;    }
.titulo h2      { margin-top:10px; font-size:39px;    }
.especialidades { background:var(--fundo);    }
.grid-especialidades { display:grid; grid-template-columns:repeat(4,1fr); gap:15px;    }
.especialidade  { padding:25px; border-radius:14px; background:var(--fundo-card); border:1px solid var(--borda);    }
.especialidade strong { display:block; margin-bottom:9px; color:var(--texto-escuro);    }
.especialidade p{ color:var(--texto-secundario); font-size:13px; line-height:1.6;    }
.servicos       { background:var(--fundo);    }
.grid-servicos  { display:grid; grid-template-columns:1.2fr .8fr; gap:20px;    }
.servico-principal { min-height:390px; padding:40px; border-radius:18px; display:flex; flex-direction:column; justify-content:flex-end; background-position:center; background-size:cover; color:#fff;    }
.servico-principal h3 { font-size:30px; margin-bottom:10px;    }
.servico-principal p { max-width:540px; color:#d5e0e3;    }
.mini-servicos  { display:grid; gap:15px;    }
.mini           { padding:25px; border-radius:15px; background:var(--fundo-secundario);    }
.mini h3        { margin-bottom:8px; color:var(--texto-escuro);    }
.mini p         { color:var(--texto-secundario); font-size:13px; line-height:1.6;    }
.fluxo          { background:var(--fundo-secundario);    }
.passos         { display:grid; grid-template-columns:repeat(4,1fr); gap:12px;    }
.passo          { padding:25px; border-radius:14px; background:var(--fundo-card);    }
.passo b        { display:inline-flex; width:35px; height:35px; margin-bottom:20px; align-items:center; justify-content:center; border-radius:9px; background:var(--destaque); color:var(--destaque-texto);    }
.passo h3       { margin-bottom:7px; font-size:16px;    }
.passo p        { color:var(--texto-faq); font-size:12px; line-height:1.6;    }
.cta            { margin:0 5% 65px; padding:50px; border-radius:18px; display:grid; grid-template-columns:1fr auto; gap:30px; align-items:center; background:var(--cta-fundo); color:var(--cta-texto);    }
.cta p          { margin-top:7px; color:var(--cta-texto);    }
footer          { padding:38px; background:var(--footer-bkg); color:var(--footer-texto); text-align:center; font-size:12px;    }

@media(max-width:900px) {
    nav            { display:none;    }
    .hero .content { grid-template-columns:1fr;    }
    .grid-especialidades { grid-template-columns:1fr 1fr;    }
    .grid-servicos { grid-template-columns:1fr;    }
    .passos        { grid-template-columns:1fr 1fr;    }
    .cta           { grid-template-columns:1fr; text-align:center;    }
}

@media(max-width:550px) {
    .hero h1       { font-size:36px;    }
    .painel        { grid-template-columns:1fr;    }
    .painel-card:first-child { grid-column:auto;   }
    .grid-especialidades { grid-template-columns:1fr;    }
    .passos        { grid-template-columns:1fr;    }
    .cta           { margin:0 20px 50px; padding:35px 25px;    }
}

.header-drop          { position:relative; flex-shrink:0; }
.header-drop-btn      { width:42px; height:42px; display:grid; place-items:center; border:0; border-radius:50%; color:var(--header-menu); background:transparent; font-size:19px; cursor:pointer; transition:.25s; }
.header-drop-btn:hover { filter:brightness(1.35); }
.header-drop-menu     { background:var(--header-bkg); position:absolute; top:50px; right:0; z-index:50; width:150px; padding:7px; display:none; box-shadow:0 12px 30px rgba(0,0,0,.35); }
.header-drop-menu.aberto { display:block; }
.header-drop-item     { width:100%; padding:10px 12px; display:block; border:0; color:var(--header-menu); background:transparent; text-align:left; cursor:pointer; }
.header-seta         { border-left:6px solid var(--header-menu); display:inline-block; width:0; height:0; margin-right:9px; vertical-align:middle; border-top:4px solid transparent; border-bottom:4px solid transparent; opacity:0; transition:.15s; }
.header-drop-item:hover .header-seta,
.header-drop-item.atual .header-seta { opacity:1; }