/* ELEVA — Consultoria e Desenvolvimento Empresarial
   Paleta do timbrado/logo: azul profundo (#0c1e21) + turquesa (#1e8a8a). */
:root{
  --prim:#1e8a8a; --prim-d:#166f6f; --prim-l:#e3f1f1;
  --esc:#0c1e21; --esc-2:#18292c; --claro:#ecf0f0; --claro-2:#d8e5e5;
  --t1:#0c1e21; --t2:#364e52; --t3:#67787a; --t4:#a9b8b8;
  --lin:#c9d1d1; --lin-esc:rgba(255,255,255,.16); --branco:#fff;
  --r:12px; --rl:22px; --pill:50px;
  --sh:0 24px 60px rgba(12,30,33,.12); --sh-sm:0 10px 30px rgba(12,30,33,.08);
  --tit:"Manrope",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --txt:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--txt);color:var(--t2);background:var(--branco);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--tit);color:var(--t1);line-height:1.12;letter-spacing:-.02em;margin:0 0 .5em}
h1{font-size:clamp(2.1rem,4.6vw,3.9rem);font-weight:800}
h2{font-size:clamp(1.6rem,3vw,2.5rem);font-weight:800}
h3{font-size:1.18rem;font-weight:700}
p{margin:0 0 1rem}
a{color:var(--prim-d);text-decoration:none}
img{max-width:100%;display:block}
.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 22px}
.tiny{font-size:.8rem;color:var(--t3)}
.eyebrow{display:block;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--prim);margin-bottom:10px}
.eyebrow--clara{color:var(--t4)}

/* botoes */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--tit);font-weight:700;font-size:.95rem;padding:13px 24px;border-radius:var(--pill);border:1px solid transparent;cursor:pointer;transition:.18s;white-space:nowrap}
.btn::after{content:"\2192";font-weight:700;transition:.18s}
.btn--prim{background:var(--prim);color:#fff}
.btn--prim:hover{background:var(--prim-d)}
.btn--prim:hover::after{transform:translateX(3px)}
.btn--ghost{border-color:var(--lin);color:var(--t1);background:#fff}
.btn--ghost:hover{border-color:var(--prim);color:var(--prim-d)}
.btn--sm{padding:10px 18px;font-size:.88rem}
.btn--lg{padding:16px 30px;font-size:1.02rem}
.btn--block{width:100%}

/* barra */
.barra{background:var(--esc);color:#cdd9d9;font-size:.82rem}
.barra__in{display:flex;align-items:center;gap:10px;height:40px}
.barra a{color:#e7efef}
.barra a:hover{color:#fff}
.barra__sep{opacity:.5}
.barra__dir{margin-left:auto}
@media(max-width:760px){.barra{display:none}}

/* topo */
.topo{position:sticky;top:0;z-index:40;background:var(--esc);border-bottom:1px solid var(--lin-esc)}
.topo__in{display:flex;align-items:center;gap:24px;height:84px}
.logo img{height:44px;width:auto}
.nav{display:flex;align-items:center;gap:22px;margin-left:auto}
.nav>a{color:#dbe5e5;font-family:var(--tit);font-weight:600;font-size:.95rem}
.nav>a:hover{color:#fff}
.menu-btn{display:none;background:transparent;border:1px solid var(--lin-esc);color:#fff;font-size:1.3rem;border-radius:10px;width:44px;height:44px;margin-left:auto;cursor:pointer}
@media(max-width:960px){
  .nav{position:fixed;inset:0 0 0 auto;width:min(80vw,320px);background:var(--esc-2);flex-direction:column;align-items:flex-start;padding:96px 26px;gap:18px;transform:translateX(105%);transition:.24s}
  body.menu-aberto .nav{transform:none}
  .menu-btn{display:block}
  .nav .btn{margin-top:8px}
}

/* hero */
.hero{position:relative;background:linear-gradient(160deg,#0c1e21,#13383b 60%,#155052);color:#fff;overflow:hidden}
.hero__in{padding:86px 22px 96px}
.hero h1{color:#fff;max-width:19ch}
.hero .lead{color:#cfe0e0;font-size:1.14rem;max-width:56ch}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 24px}
.hero .btn--ghost{background:transparent;border-color:rgba(255,255,255,.4);color:#fff}
.hero .btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.08);color:#fff}
.hero__ticks{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 22px;color:#b9cccc;font-size:.92rem}
.hero__ticks li::before{content:"\2713";color:#5fd0c8;font-weight:800;margin-right:7px}
.hero__formas span{position:absolute;border-radius:50%;border:1px solid rgba(95,208,200,.28)}
.hero__formas span:nth-child(1){width:420px;height:420px;right:-120px;top:-120px}
.hero__formas span:nth-child(2){width:260px;height:260px;right:120px;bottom:-120px;border-color:rgba(95,208,200,.18)}
.hero__formas span:nth-child(3){width:140px;height:140px;right:60px;top:60px;background:rgba(95,208,200,.06)}

/* numeros */
.faixa-num{background:var(--prim);color:#fff}
.faixa-num__in{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:34px 22px;text-align:center}
.faixa-num b{display:block;font-family:var(--tit);font-size:2.4rem;font-weight:800;line-height:1}
.faixa-num span{font-size:.9rem;opacity:.92}
@media(max-width:640px){.faixa-num__in{grid-template-columns:1fr;gap:26px}}

/* secoes */
.secao{padding:76px 0}
.secao--clara{background:var(--claro)}
.secao--escura{background:var(--esc);color:#c9d6d6}
.secao--escura h2,.secao--escura h3{color:#fff}
.sec-sub{color:var(--t3);max-width:62ch}
.sec-sub--clara{color:#a9bcbc}
.duas{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:start;margin-top:10px}
@media(max-width:860px){.duas{grid-template-columns:1fr}}
.pilares{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.pilares li{background:var(--claro);border:1px solid var(--lin);border-radius:var(--r);padding:18px 20px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}
.pil__n{width:34px;height:34px;border-radius:50%;background:var(--prim);color:#fff;display:grid;place-items:center;font-weight:800;font-family:var(--tit)}
.pilares b{grid-column:2;font-family:var(--tit);color:var(--t1)}
.pilares small{grid-column:2;color:var(--t3);font-size:.86rem}

/* servicos */
.grid-serv{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
@media(max-width:960px){.grid-serv{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.grid-serv{grid-template-columns:1fr}}
.serv{border:1px dashed var(--lin-esc);border-radius:var(--r);padding:26px 22px;background:rgba(255,255,255,.03)}
.serv h3{margin-bottom:12px}
.selos{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.selos span{font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8fe3da;border:1px solid rgba(143,227,218,.4);border-radius:99px;padding:4px 10px}
.serv p{color:#b9c9c9;font-size:.94rem}
.serv ul{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:7px}
.serv ul li{font-size:.9rem;color:#cfe0e0}
.serv ul li::before{content:"\2192";color:#5fd0c8;margin-right:8px}
.serv--cta{background:var(--prim);border-style:solid;border-color:transparent;display:flex;flex-direction:column;justify-content:center}
.serv--cta h3{color:#fff}
.serv--cta p{color:#eaf6f6}
.serv--cta .btn--prim{background:#fff;color:var(--prim-d);margin-top:6px}
.serv--cta .btn--prim:hover{background:#eaf6f6}
.serv--cta .btn--prim::after{content:"\2192"}

/* metodo */
.passos{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.passos li{background:#fff;border:1px solid var(--lin);border-radius:var(--rl);padding:26px;box-shadow:var(--sh-sm)}
.passo__n{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--prim-l);color:var(--prim-d);font-family:var(--tit);font-weight:800;font-size:1.1rem;margin-bottom:14px}
.passos b{display:block;font-family:var(--tit);color:var(--t1);font-size:1.06rem;margin-bottom:8px}
.passos p{margin:0;color:var(--t3);font-size:.93rem}
@media(max-width:860px){.passos{grid-template-columns:1fr}}

/* clientes/casos */
.segmentos{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 30px}
.segmentos span{font-family:var(--tit);font-weight:700;font-size:.88rem;color:var(--prim-d);background:var(--prim-l);border-radius:99px;padding:9px 16px}
.grid-casos{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
@media(max-width:760px){.grid-casos{grid-template-columns:1fr}}
.caso{background:#fff;border:1px solid var(--lin);border-left:4px solid var(--prim);border-radius:var(--r);padding:22px}
.caso__seg{display:block;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--prim-d);margin-bottom:8px}
.caso b{display:block;font-family:var(--tit);color:var(--t1);font-size:1.05rem;margin-bottom:6px}
.caso p{margin:0;color:var(--t3);font-size:.92rem}

/* equipe */
.grid-equipe{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}
@media(max-width:860px){.grid-equipe{grid-template-columns:1fr}}
.pessoa{background:#fff;border:1px solid var(--lin);border-radius:var(--rl);padding:28px;box-shadow:var(--sh-sm);text-align:center}
.pessoa--destaque{background:linear-gradient(160deg,#0c1e21,#164a4d);border-color:transparent}
.pessoa--destaque h3,.pessoa--destaque p,.pessoa--destaque .papel{color:#e9f2f2}
.pessoa .avatar{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 16px;border-radius:50%;background:var(--prim);color:#fff;font-family:var(--tit);font-weight:800;font-size:1.5rem}
.pessoa h3{margin-bottom:4px}
.papel{display:block;color:var(--prim-d);font-weight:700;font-size:.86rem;margin-bottom:10px}
.pessoa p{margin:0;color:var(--t3);font-size:.9rem}

/* faq */
.faq{display:grid;gap:12px;margin-top:24px;max-width:820px}
.faq details{background:#fff;border:1px solid var(--lin);border-radius:var(--r);padding:18px 22px}
.faq summary{font-family:var(--tit);font-weight:700;color:var(--t1);cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";float:right;color:var(--prim);font-weight:800}
.faq details[open] summary::after{content:"–"}
.faq p{margin:12px 0 0;color:var(--t3);font-size:.94rem}

/* contato */
.secao--contato{background:linear-gradient(160deg,#0c1e21,#12403f)}
.secao--contato h2{color:#fff}
.contato__grid{display:grid;grid-template-columns:1fr 1.05fr;gap:40px;align-items:start}
@media(max-width:860px){.contato__grid{grid-template-columns:1fr}}
.contato__lista{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px}
.contato__lista li{color:#cfe0e0;font-size:.95rem}
.contato__lista b{display:block;color:#8fe3da;font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800}
.form{background:#fff;border-radius:var(--rl);padding:28px;box-shadow:var(--sh);display:grid;gap:14px}
.form label{display:block;font-family:var(--tit);font-weight:700;font-size:.84rem;color:var(--t1)}
.form input,.form select,.form textarea{width:100%;margin-top:6px;padding:12px 14px;border:1px solid var(--lin);border-radius:10px;font:inherit;font-size:.95rem;background:#f7fafa;color:var(--t1)}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--prim);outline-offset:1px;background:#fff}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.grid2{grid-template-columns:1fr}}
.check{display:flex!important;align-items:flex-start;gap:9px;font-weight:500!important;font-family:var(--txt)!important;font-size:.84rem;color:var(--t2)}
.check input{width:auto!important;margin:3px 0 0!important}

/* rodape */
.rodape{background:var(--esc);color:#b9c9c9;padding-top:56px}
.rodape__in{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:30px;padding-bottom:40px}
@media(max-width:860px){.rodape__in{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.rodape__in{grid-template-columns:1fr}}
.rodape__logo{height:62px;width:auto;margin-bottom:18px;opacity:.98}
.rodape__col{display:flex;flex-direction:column;gap:9px}
.rodape__col b{font-family:var(--tit);color:#fff;font-size:.95rem;margin-bottom:4px}
.rodape__col a{color:#b9c9c9;font-size:.9rem}
.rodape__col a:hover{color:#fff}
.faixa-palavras{overflow:hidden;border-top:1px solid var(--lin-esc);border-bottom:1px solid var(--lin-esc);display:flex;white-space:nowrap}
.faixa-palavras div{font-family:var(--tit);font-weight:800;font-size:1.5rem;letter-spacing:.02em;color:rgba(255,255,255,.13);padding:16px 0;animation:corre 26s linear infinite}
@keyframes corre{from{transform:translateX(0)}to{transform:translateX(-100%)}}
.rodape__fim{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:22px 22px 30px}
.rodape__fim a{color:#b9c9c9}

/* zap flutuante */
.zap{position:fixed;right:20px;bottom:20px;z-index:50;background:var(--prim);color:#fff;font-family:var(--tit);font-weight:800;font-size:.82rem;line-height:1.15;text-align:center;padding:14px 18px;border-radius:99px;box-shadow:0 14px 34px rgba(12,30,33,.3)}
.zap:hover{background:var(--prim-d)}

/* paginas legais */
.legal{max-width:820px;margin:0 auto;padding:56px 22px 80px}
.legal h1{font-size:2rem}
.legal h2{font-size:1.2rem;margin-top:30px}
.legal p,.legal li{color:var(--t2);font-size:.96rem}

@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ============ Imagens ============ */
.hero__bg{position:absolute;inset:0;background-size:cover;background-position:center}
.hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(12,30,33,.94),rgba(19,56,59,.82) 55%,rgba(21,80,82,.72))}
.hero__in,.hero__formas{position:relative;z-index:1}
.sobre__img{margin:0}
.sobre__img img{width:100%;border-radius:var(--rl);box-shadow:var(--sh);aspect-ratio:4/3;object-fit:cover}
.pilares--3{grid-template-columns:repeat(3,1fr);margin-top:34px}
@media(max-width:800px){.pilares--3{grid-template-columns:1fr}}
.faixa-foto{position:relative;background-size:cover;background-position:center;color:#fff}
.faixa-foto::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(12,30,33,.88),rgba(30,138,138,.6))}
.faixa-foto__in{position:relative;z-index:1;padding:60px 22px;text-align:center}
.faixa-foto b{font-family:var(--tit);font-weight:800;font-size:clamp(1.25rem,2.6vw,2rem);line-height:1.2}
.contato--foto{position:relative;background-size:cover;background-position:center}
.contato--foto::before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(10,26,28,.95),rgba(18,64,63,.9))}
.contato--foto .wrap{position:relative;z-index:1}

/* ============ Servicos no layout "Our Solutions" ============ */
.serv__grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:46px;align-items:start}
.serv__lado{position:sticky;top:110px}
.serv__lado .btn{margin-top:8px}
.serv__lista{display:grid;gap:18px}
.serv2{border:1px dashed var(--lin-esc);border-radius:var(--r);padding:26px;background:rgba(255,255,255,.03);transition:background .25s,border-color .25s}
.serv2:hover{background:rgba(255,255,255,.06);border-color:rgba(143,227,218,.5)}
.serv2__topo{display:flex;align-items:center;gap:16px;margin-bottom:14px}
.serv2__ic{flex:none;width:46px;height:46px;border-radius:12px;background:rgba(143,227,218,.12);border:1px solid rgba(143,227,218,.35);color:#8fe3da;display:grid;place-items:center;font-family:var(--tit);font-weight:800;font-size:.95rem}
.serv2 h3{margin:0}
.serv2__corpo p{color:#b9c9c9;font-size:.94rem;margin-bottom:12px}
.serv2__corpo ul{list-style:none;padding:0;margin:0;display:grid;gap:7px}
.serv2__corpo ul li{font-size:.9rem;color:#cfe0e0}
.serv2__corpo ul li::before{content:"\2192";color:#5fd0c8;margin-right:8px}
.serv2--cta{background:var(--prim);border-style:solid;border-color:transparent}
.serv2--cta h3,.serv2--cta p{color:#fff}
.serv2--cta .btn--prim{background:#fff;color:var(--prim-d);margin-top:8px}
.serv2--cta .btn--prim:hover{background:#eaf6f6}
.fade-dir{opacity:0;transform:translateX(46px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.fade-dir.visivel{opacity:1;transform:none}
@media(max-width:900px){.serv__grid{grid-template-columns:1fr;gap:26px}.serv__lado{position:static}}

/* ============ Efeitos: preloader, revelar ao rolar, contadores ============ */
.preload{position:fixed;inset:0;z-index:999;background:var(--esc);display:grid;place-items:center;transition:opacity .6s ease,visibility .6s}
.preload img{height:64px;width:auto;animation:pulsa 1.5s ease-in-out infinite}
@keyframes pulsa{0%,100%{opacity:.55;transform:scale(.98)}50%{opacity:1;transform:scale(1)}}
.preload.saiu{opacity:0;visibility:hidden;pointer-events:none}
.topo{transition:box-shadow .25s,background .25s}
.topo.rolou{box-shadow:0 12px 30px rgba(0,0,0,.28)}
.revelar{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.revelar.visivel{opacity:1;transform:none}
.serv,.caso,.pessoa,.passos li{transition:transform .28s,box-shadow .28s,border-color .28s}
.faixa-num b{font-variant-numeric:tabular-nums}
.voltar-topo{position:fixed;right:20px;bottom:88px;z-index:49;width:46px;height:46px;border-radius:50%;border:0;background:var(--esc);color:#fff;font-size:1.1rem;cursor:pointer;opacity:0;visibility:hidden;transition:.25s;box-shadow:0 10px 26px rgba(12,30,33,.3)}
.voltar-topo.on{opacity:1;visibility:visible}
@media(prefers-reduced-motion:reduce){.revelar{opacity:1!important;transform:none!important}}
