:root {
    --header-bkg:#fff; --header-borda:#eee; --header-menu:#46555e;
    --fundo:#fff; --fundo-secundario:#f5fafa; --fundo-card:#f7fbfb; --fundo-claro:#dff5f5;
    --texto:#24323d; --texto-secundario:#64737b; --texto-suave:#718087; --texto-escuro:#18343d; --texto-faq:#6b7b82;
    --destaque:#168b91; --destaque-texto:#fff;
    --botao-fundo:#168b91; --botao-texto:#fff; --botao-escuro-fundo:#106d72; --botao-escuro-hover:#106d72; --botao-escuro-texto:#fff;
    --borda:#e8f1f1;
    --faixa-fundo:#168b91; --faixa-texto:#fff;
    --cta-fundo:#18343d; --cta-texto:#fff;
    --footer-bkg:#0f2026; --footer-texto:#b9c6ca;
    --painel-escuro:#18343d; --painel-escuro-texto:#fff; --painel-texto-fraco:#c4d2d5;
    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; background:var(--header-bkg); border-bottom:1px solid var(--header-borda); box-shadow:0 3px 15px rgba(0,0,0,.04);    }
header .content { padding:20px; display:flex; align-items:center; justify-content:space-between; gap:30px;    }
.content        { width:100%; max-width:1400px; margin:0 auto; padding:0 20px;    }
.logo           { font-size:24px; font-weight:700; color:var(--destaque);    }
nav             { display:flex; gap:28px; align-items:center;    }
nav a           { color:var(--header-menu); font-size:14px;    }
.btn            { display:inline-block; background:var(--botao-fundo); color:var(--botao-texto); padding:14px 24px; border-radius:8px; font-weight:600; transition:.2s;    }
.btn:hover      { background:var(--botao-escuro-hover); color:var(--botao-escuro-texto);   }
.hero           { min-height:590px; padding:70px 0; background:linear-gradient(90deg,var(--fundo-secundario) 0%,var(--fundo-card) 100%); scroll-margin-top:120px;    }
.hero .content  { display:flex; align-items:center; gap:60px; min-height:590px;    }
.hero-texto     { width:50%; padding-right:60px;    }
.hero-texto span{ color:var(--destaque); font-size:14px; font-weight:bold; text-transform:uppercase; letter-spacing:1px;    }
.hero h1        { font-size:54px; line-height:1.08; margin:18px 0; color:var(--texto-escuro);    }
.hero p         { font-size:18px; line-height:1.7; color:var(--texto-secundario); max-width:560px; margin-bottom:30px;    }
.hero-img       { width:50%; height:460px; border-radius:25px; overflow:hidden;    }
.hero-img img   { width:100%; height:100%; object-fit:cover;    }
section         { padding:80px 0; scroll-margin-top:120px;    }
.titulo         { text-align:center; max-width:700px; margin:0 auto 50px;    }
.titulo span    { color:var(--destaque); font-size:13px; font-weight:bold; text-transform:uppercase;    }
.titulo h2      { font-size:38px; color:var(--texto-escuro); margin-top:10px;    }
.titulo p       { color:var(--texto-faq); margin-top:15px; line-height:1.6;    }
.servicos       { background:var(--fundo);    }
.grid-servicos  { display:grid; grid-template-columns:repeat(4,1fr); gap:20px;    }
.servico        { background:var(--fundo-card); padding:35px 25px; border-radius:16px; border:1px solid var(--borda); transition:.2s;    }
.servico:hover  { transform:translateY(-5px); box-shadow:0 15px 35px rgba(0,0,0,.07);   }
.icone          { width:52px; height:52px; border-radius:12px; background:var(--fundo-claro); display:flex; align-items:center; justify-content:center; font-size:25px; margin-bottom:20px;    }
.servico h3     { margin-bottom:10px; color:var(--texto-escuro);    }
.servico p      { color:var(--texto-suave); font-size:14px; line-height:1.6;    }
.sobre          { background:var(--fundo-secundario);    }
.sobre .content { display:flex; align-items:center; gap:60px;    }
.sobre-img      { width:50%;    }
.sobre-texto    { width:50%;    }
.sobre-img img  { width:100%; height:430px; object-fit:cover; border-radius:20px;    }
.sobre-texto h2 { font-size:40px; color:var(--texto-escuro); margin-bottom:20px;    }
.sobre-texto p  { color:var(--texto-faq); line-height:1.8; margin-bottom:15px;    }
.numeros        { padding:45px 0; background:var(--faixa-fundo); color:var(--faixa-texto);    }
.numeros .content { display:grid; grid-template-columns:repeat(4,1fr); text-align:center;    }
.numero strong  { display:block; font-size:36px; margin-bottom:5px;    }
.numero span    { font-size:14px; opacity:.85;    }
.depoimentos    { background:var(--fundo);    }
.grid-depoimentos{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px;    }
.depoimento     { padding:30px; border:1px solid var(--borda); border-radius:15px;    }
.estrelas       { color:#e8aa28; margin-bottom:15px;    }
.depoimento p   { color:var(--texto-secundario); line-height:1.7; margin-bottom:20px;    }
.cta            { margin:0 7% 80px; padding:60px; border-radius:24px; background:var(--cta-fundo); color:var(--cta-texto); text-align:center;    }
.cta h2         { font-size:38px; margin-bottom:15px;    }
.cta p          { color:var(--cta-texto); margin-bottom:25px;    }
footer          { background:var(--footer-bkg); color:var(--footer-texto); padding:40px 7%; text-align:center; font-size:13px;    }
.whatsapp       { position:fixed; right:25px; bottom:25px; width:58px; height:58px; background:#25d366; color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:28px; box-shadow:0 8px 25px rgba(0,0,0,.2); z-index:100;    }

@media(max-width:900px) {
    nav            { display:none;    }
    .hero .content { flex-direction:column;    }
    .hero-texto    { width:100%; padding-right:0; margin-bottom:40px;    }
    .hero-img      { width:100%;    }
    .hero h1       { font-size:40px;    }
    .sobre .content { flex-direction:column;    }
    .sobre-img     { width:100%;    }
    .sobre-texto   { width:100%;    }
    .grid-servicos { grid-template-columns:repeat(2,1fr);    }
    .numeros .content { grid-template-columns:repeat(2,1fr);    }
    .grid-depoimentos { grid-template-columns:1fr;    }
}

@media(max-width:550px) {
    .grid-servicos { grid-template-columns:1fr;    }
    .numeros .content { grid-template-columns:1fr;    }
    .hero h1       { font-size:34px;    }
    .hero-img      { height:330px;    }
    .cta           { margin:0 20px 50px; padding:40px 20px;    }
}
.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; }