/* Globalize · componentes do site
   Base: o sistema visual da Globalfy (cards em grade, títulos em dois tons, botões em pílula, foto com cards por cima,
   seção escura, chamada final em cor cheia), com o logo, as cores e as fotos da Globalize. Regras em MIV/MIV Globalize.md. */

:root {
  --gz-azul: #1C63AD;        /* cor da marca: botão, destaque do título, link */
  --gz-azul-escuro: #154E8A; /* botão no hover */
  --gz-azul-claro: #E6EEF8;  /* card claro, fundo de ícone */
  --gz-marinho: #0B2C4E;     /* seção escura, título */
  --gz-marinho-2: #12365E;   /* card em cima da seção escura */
  --gz-amarelo: #FFBC00;     /* etiqueta e barra de destaque, nunca texto */
  --gz-verde: #598064;       /* check, "em dia" */
  --gz-vermelho: #F42C24;    /* prazo, ponto de atenção */
  --gz-fundo: #F4F5F7;       /* fundo claro de seção */
  --gz-borda: #E3E6EA;
  --gz-texto: #4B5563;       /* texto corrido */
  --gz-titulo: #0B2C4E;
  --gz-raio: 20px;
  --gz-raio-p: 14px;
  --gz-sombra: 0 12px 32px rgba(11, 44, 78, .10);
  --gz-fonte: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
}

.gz, .gz * { box-sizing: border-box; }
.gz { font-family: var(--gz-fonte); color: var(--gz-texto); -webkit-font-smoothing: antialiased; }

/* Títulos: peso normal, um pedaço em azul */
.gz-eyebrow { font: 600 15px/1.2 var(--gz-fonte); color: var(--gz-azul); margin: 0 0 14px; }
.gz-escura .gz-eyebrow { color: #8FB8E8; }
.gz-h1 { font: 500 56px/1.08 var(--gz-fonte); letter-spacing: -.028em; color: var(--gz-titulo); margin: 0; }
.gz-h2 { font: 500 44px/1.12 var(--gz-fonte); letter-spacing: -.026em; color: var(--gz-titulo); margin: 0; }
.gz-h3 { font: 600 22px/1.25 var(--gz-fonte); letter-spacing: -.015em; color: var(--gz-titulo); margin: 0; }
.gz-cor { color: var(--gz-azul); }
.gz-escura .gz-h1, .gz-escura .gz-h2, .gz-escura .gz-h3, .gz-azul-cheio .gz-h2 { color: #fff; }
.gz-escura .gz-cor { color: #8FB8E8; }
.gz-txt { font: 400 17px/1.7 var(--gz-fonte); color: var(--gz-texto); margin: 0; }
.gz-txt b { color: var(--gz-titulo); font-weight: 600; }
.gz-escura .gz-txt { color: #C5D2E0; }
.gz-escura .gz-txt b { color: #fff; }
.gz-mini { font: 400 13px/1.5 var(--gz-fonte); color: #5B6270; }

/* Botões em pílula */
.gz-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 50px; padding: 0 26px; border-radius: 999px;
  background: var(--gz-azul); color: #fff; font: 600 15px/1 var(--gz-fonte); text-decoration: none; border: 0; white-space: nowrap; }
.gz-btn:hover { background: var(--gz-azul-escuro); }
.gz-btn--branco { background: #fff; color: var(--gz-titulo); box-shadow: 0 0 0 1px var(--gz-borda) inset; }
.gz-btn--escuro { background: var(--gz-marinho); color: #fff; }
.gz-btn--contorno { background: transparent; color: #fff; box-shadow: 0 0 0 1.5px rgba(255,255,255,.6) inset; }
.gz-btn--p { height: 42px; padding: 0 20px; font-size: 14px; }

/* Etiqueta em pílula */
.gz-tag { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 12px; border-radius: 999px; background: var(--gz-azul);
  color: #fff; font: 600 12px/1 var(--gz-fonte); }
.gz-tag svg { width: 14px; height: 14px; }
.gz-tag--clara { background: var(--gz-azul-claro); color: var(--gz-azul); }
.gz-tag--amarela { background: var(--gz-amarelo); color: var(--gz-marinho); }
.gz-tag--branca { background: #fff; color: var(--gz-titulo); }
.gz-tag--vidro { background: rgba(255,255,255,.08); color: #fff; }

/* Ícones */
.gz-ic { width: 40px; height: 40px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; background: var(--gz-azul-claro); color: var(--gz-azul); flex: none; }
.gz-ic svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.gz-ic--verde { background: #E5EEE8; color: var(--gz-verde); }
.gz-ic--vermelho { background: #FDE7E6; color: var(--gz-vermelho); }
.gz-ic--escuro { background: rgba(255,255,255,.08); color: #8FB8E8; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; }

/* Lista com check */
.gz-check { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.gz-check li { position: relative; padding-left: 30px; font: 400 16px/1.5 var(--gz-fonte); color: var(--gz-texto); }
.gz-check li::before { content: ""; position: absolute; left: 0; top: 2px; width: 20px; height: 20px; border-radius: 50%; border: 1.6px solid var(--gz-verde);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23598064' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/12px no-repeat; }
.gz-escura .gz-check li { color: #C5D2E0; }

/* Cards */
.gz-card { border-radius: var(--gz-raio); background: #fff; padding: 28px; position: relative; overflow: hidden; }
.gz-card--claro { background: var(--gz-azul-claro); }
.gz-card--escuro { background: var(--gz-marinho); color: #fff; }
.gz-card--azul { background: linear-gradient(160deg, #2A76C6 0%, var(--gz-azul) 55%, #164F8C 100%); color: #fff; }
.gz-card--foto { padding: 0; color: #fff; }
.gz-card--foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.gz-card--foto::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,44,78,0) 35%, rgba(11,44,78,.82) 100%); }
.gz-card__tag { position: absolute; left: 22px; top: 22px; z-index: 2; }
.gz-card__titulo { position: absolute; left: 26px; right: 26px; bottom: 24px; z-index: 2; font: 500 26px/1.15 var(--gz-fonte); letter-spacing: -.02em; color: inherit; margin: 0; }
.gz-card__titulo small { display: block; font: 400 15px/1.45 var(--gz-fonte); letter-spacing: 0; margin-top: 8px; opacity: .85; }
.gz-card--claro .gz-card__titulo, .gz-card:not(.gz-card--escuro):not(.gz-card--azul):not(.gz-card--foto) .gz-card__titulo { color: var(--gz-titulo); }

/* Barras do logo atrás da foto */
.gz-barra { position: absolute; border-radius: 999px; z-index: 0; }
.gz-barra--azul { background: var(--gz-azul); }
.gz-barra--amarela { background: var(--gz-amarelo); }

/* Seções */
.gz-secao { padding: 96px 0; }
.gz-clara { background: var(--gz-fundo); }
.gz-branca { background: #fff; }
.gz-escura { background: var(--gz-marinho); }
.gz-azul-cheio { background: var(--gz-azul); }
.gz-caixa { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 24px; }

/* Tile em cima da seção escura */
.gz-tile { background: var(--gz-marinho-2); border: 1px solid rgba(255,255,255,.06); border-radius: 16px; padding: 18px 20px; display: flex; gap: 14px; align-items: center;
  font: 600 16px/1.35 var(--gz-fonte); color: #fff; }

/* Passo */
.gz-passo { background: var(--gz-marinho-2); border-radius: 18px; padding: 26px 22px; text-align: center; position: relative; }
.gz-passo .gz-tag { margin-bottom: 16px; }
.gz-passo h4 { font: 600 18px/1.3 var(--gz-fonte); color: #fff; margin: 14px 0 8px; }
.gz-passo p { font: 400 14px/1.6 var(--gz-fonte); color: #C5D2E0; margin: 0; }

/* Perguntas frequentes */
.gz-faq { border-bottom: 1px solid var(--gz-borda); padding: 22px 0; display: flex; justify-content: space-between; gap: 24px; font: 600 18px/1.4 var(--gz-fonte); color: var(--gz-titulo); }
.gz-faq::after { content: "+"; font: 400 26px/1 var(--gz-fonte); color: var(--gz-azul); }
.gz-faq--aberta::after { content: "–"; }
.gz-faq-resp { font: 400 16px/1.7 var(--gz-fonte); color: var(--gz-texto); margin: -8px 0 0; padding-bottom: 22px; border-bottom: 1px solid var(--gz-borda); }

/* Card do blog */
.gz-blog { background: #fff; border-radius: var(--gz-raio); overflow: hidden; }
.gz-blog img { display: block; width: 100%; height: 190px; object-fit: cover; }
.gz-blog div { padding: 22px 24px 24px; }
.gz-blog h3, .gz-blog h4 { font: 600 19px/1.3 var(--gz-fonte); color: var(--gz-titulo); margin: 0 0 18px; }
.gz-blog a { font: 600 14px/1 var(--gz-fonte); color: var(--gz-azul); text-decoration: none; }

/* Cabeçalho e rodapé */
.gz-topo { height: 78px; background: #fff; display: flex; align-items: center; }
.gz-topo .gz-caixa { display: flex; align-items: center; justify-content: space-between; }
.gz-menu { display: flex; gap: 30px; font: 500 15px/1 var(--gz-fonte); color: var(--gz-titulo); }
.gz-rodape { background: var(--gz-marinho); color: #C5D2E0; padding: 64px 0 36px; font: 400 14px/1.7 var(--gz-fonte); }

/* Formulário */
.gz-campo { width: 100%; height: 52px; border-radius: 12px; border: 1px solid var(--gz-borda); background: #fff; padding: 0 16px; font: 400 16px/1 var(--gz-fonte); color: var(--gz-titulo); }

/* WhatsApp flutuante */
.gz-whats { width: 56px; height: 56px; border-radius: 50%; background: #25D366; display: flex; align-items: center; justify-content: center; box-shadow: var(--gz-sombra); }
.gz-whats svg { width: 28px; height: 28px; fill: #fff; }
