/* =========================================================
   EGOS Soluções — folha de estilo principal
   Cores, fontes e medidas copiadas do site original (Brizy).
   ========================================================= */

/* ---------- Fontes (hospedadas no próprio site) ---------- */
@font-face{font-family:"Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/montserrat-400.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/montserrat-500.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/montserrat-600.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/montserrat-700.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:800;font-display:swap;src:url("../fonts/montserrat-800.woff2") format("woff2")}
@font-face{font-family:"Overpass";font-style:normal;font-weight:800;font-display:swap;src:url("../fonts/overpass-800.woff2") format("woff2")}

/* ---------- Cores e medidas ---------- */
:root{
  --vermelho:#aa0003;        /* cor principal da marca */
  --vermelho-escuro:#8a0002;
  --vermelho-claro:#c94d4d;  /* "22", marcadores dos segmentos */
  --azul:#4084dc;            /* ✓ das listas */
  --azul-losango:#3b88c3;    /* marcador das listas de módulos */
  --texto:#222222;
  --preto:#000000;
  --cinza-1:#f4f4f5;         /* fundos claros e cartões */
  --cinza-2:#eaeaeb;         /* fundo "resultados" e "suporte" */
  --cinza-3:#d4d4d8;         /* fundo "fale conosco" e "sobre" */
  --cinza-icone:#9c9c9c;
  --cinza-icone-claro:#bababa;
  --rodape:#434343;
  --branco:#ffffff;
  --borda:#e4e4e7;
  --raio:10px;
  --raio-cartao:12px;
  --sombra:0 1px 3px rgba(0,0,0,.06),0 4px 14px rgba(0,0,0,.05);
  --largura:1170px;
  --fonte:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--fonte);font-size:16px;line-height:1.7;color:var(--texto);background:var(--branco);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4,p{margin:0}
ul{margin:0;padding:0;list-style:none}
.icone{width:1em;height:1em;flex:none;fill:currentColor}
.vermelho{color:var(--vermelho)}
.visualmente-oculto{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pular-link{position:absolute;left:-999px;top:8px;background:var(--texto);color:#fff;padding:8px 14px;border-radius:6px;z-index:200}
.pular-link:focus{left:8px}
:focus-visible{outline:3px solid var(--azul);outline-offset:2px}

.container{width:100%;max-width:var(--largura);margin:0 auto;padding:0 20px}
.secao{padding:80px 0}
.secao--branca{background:var(--branco)}
.secao--cinza-1{background:var(--cinza-1)}
.secao--cinza-2{background:var(--cinza-2)}
.secao--cinza-3{background:var(--cinza-3)}

.titulo-secao{font-size:clamp(26px,3.2vw,33px);line-height:1.5;font-weight:700;text-align:center;color:var(--texto)}
.subtitulo-secao{font-size:18px;line-height:1.7;text-align:center;color:var(--texto);margin-top:6px}
.cabeca-secao{margin-bottom:40px}

/* ---------- Botões ---------- */
.botao{display:inline-flex;align-items:center;justify-content:center;gap:12px;font:500 18px/1.4 var(--fonte);text-decoration:none;color:#fff;background:var(--vermelho);border:0;border-radius:var(--raio);padding:12px 40px;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s}
.botao:hover{background:var(--vermelho-escuro);transform:translateY(-1px);box-shadow:0 6px 16px rgba(170,0,3,.25)}
.botao .icone{width:22px;height:22px}
.botao--escuro{background:var(--texto)}
.botao--escuro:hover{background:#000;box-shadow:0 6px 16px rgba(0,0,0,.2)}
.botao--pequeno{padding:10px 20px}

/* ---------- Cabeçalho ---------- */
.topo{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #ececec;transition:box-shadow .2s}
.topo.rolou{box-shadow:0 2px 14px rgba(0,0,0,.08)}
.topo__barra{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px}
.topo__logo img{width:181px;height:auto}
.menu{display:flex;align-items:center;gap:6px 38px;flex-wrap:wrap;justify-content:center}
.menu a{font-size:16px;line-height:1.5;color:#040404;text-decoration:none;position:relative;padding:4px 0}
.menu a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--vermelho);transition:right .25s}
.menu a:hover::after,.menu a[aria-current="page"]::after{right:0}
.menu a[aria-current="page"]{color:var(--vermelho)}
.topo__fone{white-space:nowrap}
.menu-botao{display:none;background:none;border:0;padding:8px;cursor:pointer;color:var(--texto)}
.menu-botao span{display:block;width:26px;height:2px;background:currentColor;margin:6px 0;transition:transform .25s,opacity .25s}
.menu-aberto .menu-botao span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.menu-aberto .menu-botao span:nth-child(2){opacity:0}
.menu-aberto .menu-botao span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

/* ---------- Início (hero) ---------- */
.hero{padding:70px 0 90px}
.hero__grade{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.hero h1{font-size:clamp(28px,3.4vw,34px);line-height:1.4;font-weight:600;color:var(--texto)}
.hero h1 strong{color:var(--vermelho);font-weight:700}
.hero__texto p{font-size:18px;line-height:1.7;margin-top:22px}
.hero__texto .botao{margin-top:34px}
.hero__imagem{display:flex;justify-content:center}
.hero__imagem img{width:min(420px,100%);aspect-ratio:1;object-fit:cover;object-position:28% center;border-radius:50%;box-shadow:0 18px 40px rgba(0,0,0,.12)}

/* Palavras que se alternam */
.alterna{font-weight:700;font-size:20px;margin-top:22px;color:var(--texto);display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .35em}
.alterna__palavras{display:inline-grid;color:var(--vermelho-claro);overflow:hidden}
.alterna__palavras > span{grid-area:1/1;opacity:0;transform:translateY(100%);transition:transform .5s ease,opacity .5s ease}
.alterna__palavras > span.ativa{opacity:1;transform:none}
.alterna__palavras > span.saindo{opacity:0;transform:translateY(-100%)}

/* ---------- Resultados (contadores) ---------- */
.numeros{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.numero{background:#fff;border-radius:var(--raio-cartao);padding:34px 20px 30px;text-align:center;box-shadow:var(--sombra)}
.numero__valor{font-size:clamp(40px,4.4vw,52px);line-height:1.2;font-weight:600;color:var(--preto);font-variant-numeric:tabular-nums}
.numero__valor--vermelho{color:var(--vermelho)}
.numero p{font-size:17px;line-height:1.7;margin-top:14px}

/* ---------- Soluções (SGC / e-plus) ---------- */
.produtos{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.produto{background:var(--cinza-1);border-radius:var(--raio-cartao);padding:36px 40px 40px}
.produto__logo{display:flex;justify-content:center;align-items:center;height:96px;margin-bottom:26px}
.produto__logo img{max-height:96px;width:auto}
.produto p{font-size:18px;line-height:1.7}
.lista-check{margin-top:22px}
.lista-check li{font-size:18px;line-height:1.7;font-weight:500;padding-left:1.4em;position:relative}
.lista-check li::before{content:"✓";position:absolute;left:0;color:var(--azul);font-weight:700}

/* ---------- Suporte ---------- */
.suporte__texto{max-width:980px;margin:0 auto 40px;text-align:center;font-size:18px;line-height:1.9}
.suporte__grade{display:grid;grid-template-columns:1fr 1.1fr;gap:30px;align-items:center}
.vantagens{display:grid;gap:16px}
.vantagem{display:flex;gap:16px;background:#fff;border-radius:var(--raio-cartao);padding:16px 20px;box-shadow:var(--sombra)}
.vantagem__icone{flex:none;width:46px;height:46px;border-radius:50%;background:var(--cinza-icone);color:var(--cinza-1);display:grid;place-items:center}
.vantagem__icone .icone{width:26px;height:26px}
.vantagem h3{font-size:19px;line-height:1.6;font-weight:500}
.vantagem p{font-size:14px;line-height:1.7}
.suporte__imagem img{width:100%;border-radius:var(--raio-cartao);box-shadow:var(--sombra)}
.suporte__acao{margin-top:34px}

/* ---------- Módulos ---------- */
.modulos{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.modulo{background:#fff;border:1px solid var(--borda);border-radius:var(--raio-cartao);padding:30px 24px 30px;box-shadow:var(--sombra);transition:transform .25s,box-shadow .25s}
.modulo:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.09)}
.modulo__icone{width:58px;height:58px;border-radius:50%;background:var(--vermelho);color:#fff;display:grid;place-items:center;margin:0 auto 16px}
.modulo__icone .icone{width:30px;height:30px}
.modulo h3{font-size:20px;line-height:1.6;font-weight:700;text-align:center;margin-bottom:14px}
.lista-losango li{font-size:16px;line-height:1.7;color:var(--texto);padding-left:18px;position:relative}
.lista-losango li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;background:var(--azul-losango);transform:rotate(45deg)}
.lista-quadrado li{font-size:16px;line-height:1.7;padding-left:16px;position:relative}
.lista-quadrado li::before{content:"";position:absolute;left:2px;top:.6em;width:6px;height:6px;background:var(--vermelho-claro)}

.segmentos{margin-top:50px;text-align:center}
.segmentos h3{font-size:20px;font-weight:700;margin-bottom:12px}
.segmentos ul{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 22px;max-width:980px;margin:0 auto}
.segmentos li{font-size:18px;line-height:1.7;position:relative;padding-left:16px}
.segmentos li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;background:var(--vermelho-claro)}

/* Detalhes do sistema (página Soluções) */
.detalhes .modulo{background:var(--cinza-1);border-color:transparent;box-shadow:none}
.detalhes .modulo h3{text-transform:uppercase}
.cor-laranja{background:#c37908!important}
.cor-verde{background:#1fbc59!important}
.cor-azul{background:#1f74bc!important}
.cor-coral{background:#d65757!important}

/* ---------- Benefícios ---------- */
.beneficios__cabeca h2{font-size:clamp(26px,3.2vw,33px);font-weight:700;text-align:center;line-height:1.5}
.beneficios__cabeca p{font-size:20px;font-weight:700;text-align:center;margin-top:4px}
.beneficios__destaque{font-size:clamp(24px,3vw,33px);font-weight:700;color:var(--vermelho);text-align:center;margin:18px 0 40px;display:grid;justify-items:center;overflow:hidden;height:1.6em;line-height:1.6}
.beneficios__destaque > span{grid-area:1/1;opacity:0;transform:translateY(-60%);transition:transform .45s ease,opacity .45s ease}
.beneficios__destaque > span.ativa{opacity:1;transform:none}
.beneficios__destaque > span.saindo{opacity:0;transform:translateY(60%)}
.beneficios{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.beneficio{background:var(--cinza-1);border-radius:var(--raio-cartao);padding:28px 26px}
.beneficio__topo{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.beneficio__topo .icone{width:20px;height:20px;color:var(--vermelho)}
.beneficio h3{font-size:20px;line-height:1.25;font-weight:700}
.beneficio p{font-size:16px;line-height:1.7}

/* ---------- Faixa de título (Sobre a EGOS) ---------- */
.faixa{background:var(--cinza-3);padding:70px 0;text-align:center}
.faixa h1{font-size:clamp(32px,4.4vw,47px);font-weight:800;line-height:1.3}
.faixa p{font-size:20px;margin-top:14px}

/* ---------- Quem somos ---------- */
.quem__subtitulo{font-size:clamp(18px,2.2vw,23px);text-align:center;color:#555;margin-top:4px}
.cartao{background:#fff;border-radius:var(--raio-cartao);padding:40px;box-shadow:var(--sombra)}
.cartao + .cartao{margin-top:24px}
.historia{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.historia h3,.missao h3,.valores__intro h3{font-size:20px;font-weight:700;line-height:1.7;margin-bottom:10px}
.historia p{font-size:18px;line-height:1.7;text-align:justify;hyphens:auto}
.historia p + p{margin-top:18px}
.anos{text-align:center;line-height:1}
.anos__numero{font-family:"Overpass",var(--fonte);font-weight:800;font-size:clamp(150px,22vw,300px);line-height:1.05;color:var(--vermelho-claro);letter-spacing:-.02em;display:block}
.anos__texto{font-weight:700;font-size:clamp(60px,9vw,113px);color:var(--texto);display:block}
.missao{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}
.missao img{width:100%;border-radius:var(--raio-cartao)}
.missao__texto{background:var(--cinza-1);border-radius:var(--raio-cartao);padding:28px 30px}
.missao__texto p{font-size:16px;line-height:1.7}
.missao__texto h3 + p{margin-bottom:14px}
.valores__intro p{font-size:16px;line-height:1.7;text-align:justify}
.valores{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
.valor{background:#fff;border-radius:var(--raio-cartao);padding:24px 26px;box-shadow:var(--sombra)}
.valor .icone{width:46px;height:46px;color:var(--cinza-icone-claro);margin-bottom:8px}
.valor h3{font-size:20px;font-weight:700;line-height:1.7}
.valor p{font-size:16px;line-height:1.7}

/* ---------- Fale conosco ---------- */
.contato{background:var(--cinza-3);padding:70px 0}
.contato__grade{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center}
.contato__icone{width:56px;height:56px;color:var(--texto);margin-bottom:18px}
.contato h1{font-size:clamp(30px,3.6vw,38px);font-weight:400;line-height:1.3}
.contato__intro{font-size:17px;line-height:1.7;margin-top:22px;text-align:justify}
.contato__whats{display:flex;align-items:center;gap:14px;margin-top:30px;text-decoration:none}
.contato__whats .icone{width:38px;height:38px}
.contato__whats strong{display:block;font-size:19px}
.contato__whats span{font-size:16px}
.contato__whats:hover strong{color:var(--vermelho)}
.contato__horario{display:flex;gap:6px;align-items:flex-start;font-size:13px;line-height:1.6;margin-top:24px;color:#333}
.formulario{background:#fff;border-radius:var(--raio-cartao);padding:34px 36px 26px;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.formulario h2{font-size:34px;font-weight:700;text-align:center;margin-bottom:18px}
.campo{margin-bottom:14px}
.campo label{display:block;font-size:16px;margin-bottom:6px}
.campo input{width:100%;font:400 15px/1.4 var(--fonte);color:var(--texto);background:#fff;border:1px solid #d4d4d8;border-radius:6px;padding:11px 14px;transition:border-color .2s,box-shadow .2s}
.campo input:focus{outline:none;border-color:var(--vermelho);box-shadow:0 0 0 3px rgba(170,0,3,.12)}
.campo input:user-invalid{border-color:#d93025}
.campo--isca{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.formulario .botao{width:100%;margin-top:8px}
.formulario .botao[disabled]{opacity:.7;cursor:wait}
.formulario__nota{font-size:12px;line-height:1.6;text-align:center;color:#666;margin-top:14px}
.formulario__aviso{display:none;border-radius:8px;padding:12px 14px;font-size:15px;line-height:1.5;margin-top:14px}
.formulario__aviso.ok{display:block;background:#e7f6ec;color:#1b5e20;border:1px solid #b9e3c6}
.formulario__aviso.erro{display:block;background:#fdecec;color:#8a1c1c;border:1px solid #f5c2c2}

/* ---------- Rodapé ---------- */
.rodape{background:var(--rodape);color:#fff;padding:60px 0 30px}
.rodape__colunas{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-bottom:40px}
.rodape h2{font-size:18px;font-weight:700;margin-bottom:10px}
.rodape__colunas a{display:block;font-size:15px;line-height:1.7;text-decoration:none;color:#eee}
.rodape__colunas a:hover{color:#fff;text-decoration:underline}
.rodape__base{background:#fff;color:var(--texto);border-radius:var(--raio-cartao);padding:28px 80px 28px 40px;display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}
.rodape__base .logo img{width:124px}
.redes{display:flex;justify-content:center;gap:16px;margin-bottom:16px}
.redes a{color:var(--texto);display:block;transition:color .2s,transform .2s}
.redes a:hover{color:var(--vermelho);transform:translateY(-2px)}
.redes .icone{width:36px;height:36px}
.rodape__centro{text-align:center}
.rodape__direitos{text-align:right;font-size:15px;line-height:1.7}
.rodape__direitos small{display:block;font-size:13px}

/* ---------- Botão flutuante do WhatsApp ---------- */
.whats-flutuante{position:fixed;right:20px;bottom:20px;z-index:90;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.25);transition:transform .2s}
.whats-flutuante:hover{transform:scale(1.08)}
.whats-flutuante .icone{width:30px;height:30px}

/* ---------- Animações de entrada ---------- */
.js .revelar{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.js .revelar.visivel{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .revelar{opacity:1;transform:none;transition:none}
  .alterna__palavras > span,.beneficios__destaque > span{transition:none}
}

/* ---------- Responsivo ---------- */
@media (max-width:1100px){
  .menu{gap:6px 26px}
}
@media (max-width:991px){
  .secao{padding:60px 0}
  .menu-botao{display:block}
  .topo__barra{min-height:72px}
  .topo__logo img{width:150px}
  .topo__fone{display:none}
  .navegacao{position:fixed;inset:72px 0 auto 0;background:#fff;border-bottom:1px solid #eee;box-shadow:0 12px 24px rgba(0,0,0,.08);transform:translateY(-8px);opacity:0;visibility:hidden;transition:.25s}
  .menu-aberto .navegacao{transform:none;opacity:1;visibility:visible}
  .menu{flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 20px}
  .menu a{display:block;padding:14px 4px;border-bottom:1px solid #f0f0f0;font-size:17px}
  .menu a::after{display:none}
  .menu__fone{margin-top:16px}
  .menu .menu__fone a{display:flex;color:#fff;padding:12px 20px;border-bottom:0;font-size:17px}
  .hero__grade,.suporte__grade,.historia,.missao,.contato__grade{grid-template-columns:1fr}
  .hero{padding:40px 0 60px}
  .hero__imagem{order:-1}
  .hero__imagem img{width:min(320px,80%)}
  .modulos{grid-template-columns:repeat(2,1fr)}
  .beneficios{grid-template-columns:1fr 1fr}
  .rodape__colunas{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
  .numeros,.produtos,.valores{grid-template-columns:1fr}
  .produto{padding:28px 22px}
  .modulos{grid-template-columns:1fr}
  .beneficios{grid-template-columns:1fr}
  .cartao{padding:26px 20px}
  .formulario{padding:26px 20px 20px}
  .formulario h2{font-size:28px}
  .rodape__base{grid-template-columns:1fr;text-align:center;padding:28px 20px 34px}
  .rodape{padding-bottom:90px}
  .rodape__base .logo{display:flex;justify-content:center}
  .rodape__direitos{text-align:center}
  .beneficios__destaque{height:auto;min-height:3.2em}
}
.menu__fone{display:none!important}
@media (max-width:991px){.menu__fone{display:flex!important}}
