:root {
  --azul-950: #06172d;
  --azul-900: #08213f;
  --azul-800: #0b315d;
  --azul-500: #2d9bff;
  --azul-400: #64bdff;
  --texto: #0b1b35;
  --texto-suave: #59677d;
  --linha: #dce4ee;
  --fundo: #f7f9fc;
  --branco: #ffffff;
  --verde: #20a86b;
  --laranja: #ef8b32;
  --dourado: #c6a15b;
  --sombra: 0 22px 60px rgba(7, 27, 53, 0.12);
  --raio: 22px;
  --max: 1200px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--texto);
  background: var(--branco);
  font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
img { max-width: 100%; display: block; }

.container { width: min(var(--max), calc(100% - 40px)); margin: 0 auto; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; }

.cabecalho {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 30;
  color: var(--branco);
}
.cabecalho__linha {
  min-height: 88px;
  display: flex;
  align-items: center;
  gap: 36px;
}
.marca {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 1.42rem;
  letter-spacing: -0.03em;
  font-weight: 300;
  white-space: nowrap;
}
.marca__icone {
  width: 42px;
  height: 42px;
  object-fit: cover;
  border-radius: 11px;
  box-shadow: 0 0 24px rgba(45,155,255,.25);
}
.marca__nome strong { font-weight: 750; }
.navegacao { margin-left: auto; display: flex; align-items: center; gap: 28px; font-size: .92rem; }
.navegacao a { opacity: .86; transition: opacity .2s ease; }
.navegacao a:hover, .navegacao a:focus-visible { opacity: 1; }
.botao {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 22px;
  border: 1px solid transparent;
  border-radius: 12px;
  font-weight: 650;
  font-size: .94rem;
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.botao:hover { transform: translateY(-1px); }
.botao--claro { background: var(--branco); color: var(--azul-900); }
.botao--contorno { border-color: rgba(255,255,255,.44); color: var(--branco); background: rgba(255,255,255,.04); }
.botao--azul { background: var(--azul-500); color: var(--branco); }

.hero {
  min-height: 690px;
  position: relative;
  overflow: hidden;
  color: var(--branco);
  background: var(--azul-950);
}
.hero__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity .65s ease, visibility .65s ease;
}
.hero__slide.is-active { opacity: 1; visibility: visible; }
.hero__conteudo { position: relative; z-index: 3; min-height: 690px; padding-top: 175px; padding-bottom: 110px; display:flex; align-items:flex-start; }
.hero__texto { max-width: 610px; }
.eyebrow { margin:0 0 24px; text-transform: uppercase; letter-spacing: .36em; font-size: .72rem; font-weight: 650; color: #b9dfff; }
.hero h1, .hero h2 { margin:0; max-width:760px; font-size: clamp(3.3rem, 6vw, 6rem); line-height: .98; letter-spacing:-.055em; font-weight: 280; }
.hero h1 strong, .hero h2 strong { font-weight: 620; color: var(--azul-400); }
.hero__subtitulo { max-width:650px; margin:24px 0 34px; color:#d5e3f2; font-size: clamp(1.05rem, 2vw, 1.35rem); font-weight: 350; }
.hero__controles { position:absolute; z-index:10; left:50%; transform:translateX(-50%); bottom:34px; width:min(var(--max),calc(100% - 40px)); display:flex; align-items:center; gap:10px; }
.hero__ponto { width:9px; height:9px; border-radius:999px; border:1px solid rgba(255,255,255,.7); background:transparent; cursor:pointer; padding:0; }
.hero__ponto.is-active { width:30px; background:var(--branco); }
.hero__seta { margin-left:auto; display:flex; gap:10px; }
.hero__seta button { width:44px; height:44px; border-radius:50%; border:1px solid rgba(255,255,255,.35); background:rgba(5,20,38,.34); color:white; cursor:pointer; font-size:1.15rem; }

.secao { padding: 112px 0; }
.secao--suave { background: linear-gradient(180deg, #fbfcfe, #f5f8fc); }
.secao--azul { color:var(--branco); background: linear-gradient(135deg,var(--azul-950),#0b315d); }
.secao__cabecalho { display:flex; justify-content:space-between; gap:50px; align-items:end; margin-bottom:56px; }
.secao__cabecalho h2 { margin:0; max-width:720px; font-size:clamp(2.2rem,4vw,4rem); line-height:1.06; letter-spacing:-.045em; font-weight:300; }
.secao__cabecalho p { margin:0; max-width:430px; color:var(--texto-suave); }
.secao--azul .secao__cabecalho p { color:#c9d9ea; }
.rotulo { display:block; margin-bottom:16px; text-transform:uppercase; letter-spacing:.3em; font-size:.7rem; font-weight:700; color:#456487; }
.secao--azul .rotulo { color:#78bfff; }

.grade-produtos { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.cartao-produto { min-height:215px; padding:32px; border:1px solid var(--linha); border-radius:18px; background:rgba(255,255,255,.78); display:flex; flex-direction:column; justify-content:space-between; transition:transform .2s ease, box-shadow .2s ease; }
.cartao-produto[href]:hover { transform:translateY(-4px); box-shadow:var(--sombra); }
.cartao-produto__topo { display:flex; align-items:center; gap:20px; }
.cartao-produto__simbolo { width:58px; height:58px; border-radius:16px; display:grid; place-items:center; font-weight:800; font-size:1.4rem; color:white; }
.simbolo--cheow { background:linear-gradient(135deg,#37bad1,#1278af); }
.simbolo--nuttrion { background:linear-gradient(135deg,#1db474,#0a7450); }
.simbolo--certificacao { background:linear-gradient(135deg,#1e7fcc,#15446f); }
.cartao-produto h3 { margin:0; font-size:1.45rem; letter-spacing:-.025em; }
.cartao-produto p { color:var(--texto-suave); margin:18px 0 0; }
.cartao-produto__link { margin-top:28px; font-weight:650; color:#174f90; }

.faixa-local { padding:48px 0; border-top:1px solid var(--linha); border-bottom:1px solid var(--linha); }
.faixa-local__conteudo { display:grid; grid-template-columns:320px 1fr; gap:60px; align-items:center; }
.faixa-local__titulo h2 { margin:0; font-weight:300; letter-spacing:-.035em; font-size:2.15rem; }
.chaveiro { border:1px solid var(--linha); border-radius:18px; min-height:128px; padding:26px 30px; display:flex; align-items:center; gap:22px; }
.chaveiro__icone { width:58px; height:58px; border-radius:50%; background:#eaf2ff; display:grid; place-items:center; color:#0b4e9c; font-size:1.55rem; }
.chaveiro h3 { margin:0 0 4px; font-size:1.25rem; }
.chaveiro p { margin:0; color:var(--texto-suave); }

.ecossistema__titulo { max-width:560px; margin-bottom:54px; }
.ecossistema__titulo h2 { margin:0 0 16px; font-size:clamp(2.4rem,4vw,4rem); line-height:1.06; letter-spacing:-.045em; font-weight:300; }
.ecossistema__titulo p { margin:0; color:var(--texto-suave); }
.grade-capacidades { display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid var(--linha); border-bottom:1px solid var(--linha); }
.capacidade { min-height:235px; padding:42px 34px; border-right:1px solid var(--linha); }
.capacidade:last-child { border-right:0; }
.capacidade__icone { width:54px; height:54px; color:#155caa; margin-bottom:28px; }
.capacidade h3 { margin:0 0 10px; font-size:1.28rem; }
.capacidade p { margin:0; color:var(--texto-suave); }

.valores { padding:82px 0 94px; }
.grade-valores { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--linha); }
.valor { padding:34px 30px 0; border-right:1px solid var(--linha); }
.valor:last-child { border-right:0; }
.valor__icone { width:44px; height:44px; margin-bottom:18px; color:#0f4c8c; }
.valor h3 { margin:0 0 8px; font-size:1.1rem; }
.valor p { margin:0; color:var(--texto-suave); font-size:.94rem; }

.rodape { background:linear-gradient(120deg,#06172d,#0a3159); color:white; padding:62px 0 28px; }
.rodape__grade { display:grid; grid-template-columns:1.25fr .9fr 1fr; gap:60px; align-items:start; }
.rodape .marca { margin-bottom:18px; }
.rodape p, .rodape a { color:#c6d6e6; }
.rodape__links { display:grid; grid-template-columns:repeat(2,1fr); gap:10px 30px; }
.rodape__base { border-top:1px solid rgba(255,255,255,.12); margin-top:42px; padding-top:22px; color:#93a8bd; font-size:.82rem; display:flex; justify-content:space-between; gap:20px; }

/* Cheow */
.pagina-cheow .cabecalho { position:relative; background:var(--azul-950); }
.cheow-hero { padding:96px 0 110px; background: radial-gradient(circle at 78% 18%, #17639c 0%, #0b3158 29%, #06172d 66%); color:white; overflow:hidden; position:relative; }
.cheow-hero::after { content:""; position:absolute; width:720px; height:720px; border:1px solid rgba(100,189,255,.22); border-radius:50%; right:-260px; top:-250px; }
.cheow-hero__grid { position:relative; z-index:2; display:grid; grid-template-columns:1.05fr .95fr; gap:80px; align-items:center; }
.cheow-hero h1 { margin:10px 0 24px; font-size:clamp(3.6rem,7vw,6.8rem); line-height:.92; letter-spacing:-.065em; font-weight:300; }
.cheow-hero h1 strong { color:#70c8ff; font-weight:650; }
.cheow-hero p { max-width:690px; color:#d4e2ef; font-size:1.18rem; }
.cheow-hero__painel { min-height:360px; border:1px solid rgba(255,255,255,.15); border-radius:28px; background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.025)); box-shadow:var(--sombra); padding:34px; display:flex; flex-direction:column; justify-content:flex-end; }
.cheow-hero__painel strong { font-size:2.2rem; font-weight:300; }
.cheow-hero__painel span { color:#8fd6ff; letter-spacing:.22em; text-transform:uppercase; font-size:.72rem; margin-top:9px; }

.texto-editorial { max-width:850px; margin:0 auto; }
.texto-editorial h2 { font-size:clamp(2rem,3.7vw,3.45rem); line-height:1.08; letter-spacing:-.045em; font-weight:300; margin:0 0 28px; }
.texto-editorial p { font-size:1.08rem; color:var(--texto-suave); margin:0 0 22px; }
.grade-beneficios { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-top:54px; }
.beneficio { padding:34px; border:1px solid var(--linha); border-radius:18px; background:#fff; }
.beneficio h3 { margin:0 0 13px; font-size:1.25rem; }
.beneficio p { margin:0; color:var(--texto-suave); }
.frase-destaque { margin:72px 0; padding:54px 0; border-top:1px solid var(--linha); border-bottom:1px solid var(--linha); font-size:clamp(2.2rem,5vw,4.5rem); line-height:1.04; letter-spacing:-.05em; font-weight:280; }
.cheow-final { text-align:center; padding:110px 0; background:linear-gradient(135deg,#06172d,#0c3a69); color:white; }
.cheow-final h2 { max-width:820px; margin:0 auto 30px; font-size:clamp(2.4rem,5vw,4.8rem); line-height:1.02; letter-spacing:-.05em; font-weight:300; }
.cheow-final p { max-width:650px; margin:0 auto 34px; color:#cfdeec; }

@media (max-width: 900px) {
  .navegacao { display:none; }
  .cabecalho__linha { min-height:76px; }
  .hero, .hero__conteudo { min-height:650px; }
  .hero__conteudo { padding-top:150px; }
  .secao { padding:82px 0; }
  .secao__cabecalho { display:block; }
  .secao__cabecalho p { margin-top:22px; }
  .grade-produtos { grid-template-columns:1fr; }
  .faixa-local__conteudo { grid-template-columns:1fr; gap:28px; }
  .grade-capacidades { grid-template-columns:1fr 1fr; }
  .capacidade:nth-child(2) { border-right:0; }
  .capacidade:nth-child(-n+2) { border-bottom:1px solid var(--linha); }
  .grade-valores { grid-template-columns:1fr 1fr; }
  .valor:nth-child(2) { border-right:0; }
  .valor:nth-child(-n+2) { padding-bottom:28px; border-bottom:1px solid var(--linha); }
  .rodape__grade { grid-template-columns:1fr; }
  .cheow-hero__grid { grid-template-columns:1fr; }
  .grade-beneficios { grid-template-columns:1fr; }
}
@media (max-width: 580px) {
  .container { width:min(100% - 28px,var(--max)); }
  .marca__nome { font-size:1.18rem; }
  .hero h1, .hero h2 { font-size:3.55rem; }
  .hero__subtitulo { font-size:1.05rem; }
  .hero__seta { display:none; }
  .grade-capacidades, .grade-valores { grid-template-columns:1fr; }
  .capacidade, .valor, .capacidade:nth-child(2), .valor:nth-child(2) { border-right:0; border-bottom:1px solid var(--linha); }
  .capacidade:last-child, .valor:last-child { border-bottom:0; }
  .rodape__base { flex-direction:column; }
  .cheow-hero { padding-top:64px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

/* Nuttrion */
.pagina-nuttrion .cabecalho { position:relative; background:var(--azul-950); }
.nuttrion-hero {
  position:relative;
  overflow:hidden;
  padding:104px 0 118px;
  color:var(--branco);
  background:
    radial-gradient(circle at 78% 20%, rgba(44,178,125,.34), transparent 28%),
    radial-gradient(circle at 86% 75%, rgba(45,155,255,.25), transparent 32%),
    linear-gradient(135deg,#06172d 0%,#0b315d 58%,#0a5b4a 120%);
}
.nuttrion-hero::after {
  content:"";
  position:absolute;
  right:-220px;
  bottom:-470px;
  width:900px;
  height:900px;
  border:1px solid rgba(111,220,181,.24);
  border-radius:50%;
  box-shadow:0 0 80px rgba(45,155,255,.08);
}
.nuttrion-hero__grid { position:relative; z-index:2; display:grid; grid-template-columns:1.1fr .9fr; gap:84px; align-items:center; }
.nuttrion-hero h1 { margin:8px 0 28px; max-width:820px; font-size:clamp(3.4rem,6.6vw,6.6rem); line-height:.95; letter-spacing:-.065em; font-weight:285; }
.nuttrion-hero h1 strong { color:#73dbb1; font-weight:650; }
.nuttrion-hero > .container > div > p:not(.eyebrow) { max-width:720px; color:#d5e5e6; font-size:1.18rem; }
.nuttrion-hero__painel { min-height:390px; padding:38px; border:1px solid rgba(255,255,255,.14); border-radius:28px; background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.025)); display:flex; flex-direction:column; justify-content:flex-end; box-shadow:var(--sombra); }
.nuttrion-hero__painel strong { display:block; font-size:clamp(1.9rem,3vw,2.65rem); line-height:1.08; letter-spacing:-.04em; font-weight:300; }
.nuttrion-hero__painel p { margin:22px 0 0; color:#ccdee0; }
.nuttrion-hero__selo { align-self:flex-start; margin-bottom:auto; padding:8px 12px; border:1px solid rgba(115,219,177,.4); border-radius:999px; color:#9fe6c8; font-size:.72rem; text-transform:uppercase; letter-spacing:.2em; }

.nuttrion-intro__grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:start; }
.nuttrion-intro h2 { margin:0; font-size:clamp(2.5rem,4.8vw,4.9rem); line-height:1.02; letter-spacing:-.055em; font-weight:285; }
.nuttrion-intro__texto p { margin:0 0 22px; color:var(--texto-suave); font-size:1.08rem; }
.nuttrion-frase { margin:84px 0 0; padding:52px 0 8px; border-top:1px solid var(--linha); color:var(--texto); }
.nuttrion-frase span, .nuttrion-frase strong { display:block; font-size:clamp(2.2rem,4.8vw,4.7rem); line-height:1.02; letter-spacing:-.05em; }
.nuttrion-frase span { font-weight:280; }
.nuttrion-frase strong { margin-top:8px; font-weight:560; color:#0e6b52; }

.grade-escalas { display:grid; grid-template-columns:1fr 1fr; gap:26px; }
.escala-card { min-height:470px; padding:38px; border:1px solid var(--linha); border-radius:20px; background:#fff; }
.escala-card__cabecalho { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-bottom:42px; }
.escala-card__sigla { font-size:2rem; font-weight:750; letter-spacing:-.04em; }
.escala-card__tipo { max-width:240px; text-align:right; color:var(--texto-suave); font-size:.86rem; }
.escala-card h3 { margin:0 0 18px; font-size:clamp(1.8rem,3vw,2.75rem); line-height:1.08; letter-spacing:-.045em; font-weight:340; }
.escala-card p { color:var(--texto-suave); }
.escala-card ul { margin:28px 0 0; padding:24px 0 0 20px; border-top:1px solid var(--linha); color:var(--texto-suave); }
.escala-card li { margin:9px 0; }
.escala-card--cebq { box-shadow:inset 0 3px 0 #2a9c7b; }
.escala-card--ebai { box-shadow:inset 0 3px 0 #2d9bff; }
.nota-clinica { margin:28px 0 0; padding:22px 24px; border-left:3px solid #2a9c7b; background:#eef8f5; color:#355b51; font-size:.95rem; }

.fluxo-nuttrion { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--linha); border-bottom:1px solid var(--linha); }
.fluxo-nuttrion article { min-height:245px; padding:34px 26px; border-right:1px solid var(--linha); }
.fluxo-nuttrion article:last-child { border-right:0; }
.fluxo-nuttrion span { display:inline-grid; place-items:center; width:42px; height:42px; margin-bottom:32px; border-radius:50%; background:#e9f6f1; color:#0a7450; font-weight:700; }
.fluxo-nuttrion h3 { margin:0 0 10px; font-size:1.12rem; }
.fluxo-nuttrion p { margin:0; color:var(--texto-suave); font-size:.94rem; }

.nuttrion-familia { padding:112px 0; color:white; background:linear-gradient(130deg,#06172d,#0b315d 56%,#0b5d4d); }
.nuttrion-familia__grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:90px; align-items:center; }
.nuttrion-familia h2 { margin:0 0 26px; font-size:clamp(2.6rem,4.7vw,4.8rem); line-height:1.03; letter-spacing:-.05em; font-weight:290; }
.nuttrion-familia p { max-width:660px; color:#ccdde6; font-size:1.08rem; }
.nuttrion-familia .rotulo { color:#8bdabd; }
.nuttrion-familia__painel { border-top:1px solid rgba(255,255,255,.16); }
.nuttrion-familia__painel div { display:grid; grid-template-columns:135px 1fr; gap:26px; padding:26px 0; border-bottom:1px solid rgba(255,255,255,.16); }
.nuttrion-familia__painel span { color:#8fd6ff; text-transform:uppercase; letter-spacing:.18em; font-size:.7rem; }
.nuttrion-familia__painel strong { font-size:1.18rem; font-weight:420; }

.linha-jornada { display:flex; flex-wrap:wrap; gap:10px; padding-top:18px; }
.linha-jornada span { padding:14px 18px; border:1px solid var(--linha); border-radius:999px; background:#fff; color:#27405d; }

.nuttrion-final { padding:118px 0; text-align:center; color:white; background:radial-gradient(circle at 50% 0%,#0e6b52,#0a3159 42%,#06172d 78%); }
.nuttrion-final h2 { max-width:900px; margin:0 auto 24px; font-size:clamp(2.6rem,5vw,5rem); line-height:1; letter-spacing:-.055em; font-weight:300; }
.nuttrion-final p { max-width:720px; margin:0 auto 34px; color:#d0e2e0; font-size:1.1rem; }

@media (max-width: 900px) {
  .nuttrion-hero__grid, .nuttrion-intro__grid, .nuttrion-familia__grid { grid-template-columns:1fr; gap:48px; }
  .grade-escalas { grid-template-columns:1fr; }
  .fluxo-nuttrion { grid-template-columns:1fr 1fr; }
  .fluxo-nuttrion article { border-bottom:1px solid var(--linha); }
  .fluxo-nuttrion article:nth-child(2n) { border-right:0; }
  .fluxo-nuttrion article:last-child { border-bottom:0; }
}
@media (max-width: 580px) {
  .nuttrion-hero { padding:72px 0 84px; }
  .nuttrion-hero h1 { font-size:3.25rem; }
  .nuttrion-hero__painel { min-height:300px; }
  .nuttrion-frase { margin-top:58px; }
  .escala-card { padding:28px; }
  .escala-card__cabecalho { display:block; }
  .escala-card__tipo { display:block; margin-top:8px; max-width:none; text-align:left; }
  .fluxo-nuttrion { grid-template-columns:1fr; }
  .fluxo-nuttrion article { border-right:0; }
  .nuttrion-familia__painel div { grid-template-columns:1fr; gap:8px; }
}

/* Chaveiro */
.chaveiro[href] { color: inherit; transition: transform .2s ease, box-shadow .2s ease; }
.chaveiro[href]:hover { transform: translateY(-3px); box-shadow: var(--sombra); }
.chaveiro__link { margin-left:auto; color:#174f90; font-weight:650; white-space:nowrap; }

.chaveiro-hero {
  color: var(--branco);
  background:
    radial-gradient(circle at 78% 34%, rgba(45,155,255,.22), transparent 30%),
    linear-gradient(135deg,#06172d 0%,#09284a 62%,#0b315d 100%);
  padding: 170px 0 104px;
  min-height: 640px;
  display:flex;
  align-items:center;
}
.chaveiro-hero__grid { display:grid; grid-template-columns:1.2fr .8fr; gap:90px; align-items:center; }
.chaveiro-hero h1 { margin:0; font-size:clamp(3.4rem,6vw,6rem); line-height:.98; letter-spacing:-.055em; font-weight:280; }
.chaveiro-hero h1 strong { font-weight:620; color:var(--azul-400); }
.chaveiro-hero p:not(.eyebrow) { max-width:720px; margin:28px 0 0; color:#d5e3f2; font-size:1.2rem; }
.chaveiro-hero__frase { margin-top:34px; color:#dfeaf5; font-size:1.05rem; }
.chaveiro-hero__frase strong { color:white; }
.chaveiro-hero__painel {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.12);
  box-shadow:0 30px 80px rgba(0,0,0,.2);
}
.chaveiro-hero__painel span { padding:24px 22px; background:rgba(7,28,53,.86); text-transform:uppercase; letter-spacing:.18em; font-size:.74rem; }

.grade-beneficios--chaveiro .beneficio { position:relative; padding-top:64px; }
.beneficio__numero { position:absolute; top:28px; left:30px; color:#7aa4d1; font-size:.76rem; letter-spacing:.18em; }

.grade-recursos-chaveiro { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--linha); border-left:1px solid var(--linha); }
.grade-recursos-chaveiro article { min-height:150px; padding:30px; border-right:1px solid var(--linha); border-bottom:1px solid var(--linha); background:rgba(255,255,255,.72); }
.grade-recursos-chaveiro span { display:block; margin-bottom:22px; font-size:.72rem; letter-spacing:.18em; color:#7890aa; }
.grade-recursos-chaveiro h3 { margin:0; font-size:1.08rem; font-weight:500; }

.chaveiro-estrutura { padding:110px 0; background:#f7f9fc; border-top:1px solid var(--linha); border-bottom:1px solid var(--linha); }
.chaveiro-estrutura__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:start; }
.chaveiro-estrutura h2 { margin:0 0 24px; font-size:clamp(2.5rem,4vw,4.4rem); line-height:1.04; letter-spacing:-.045em; font-weight:300; }
.chaveiro-estrutura p { margin:0; max-width:600px; color:var(--texto-suave); }
.chaveiro-estrutura__itens { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--linha); border-left:1px solid var(--linha); }
.chaveiro-estrutura__itens article { min-height:145px; padding:30px; border-right:1px solid var(--linha); border-bottom:1px solid var(--linha); background:white; }
.chaveiro-estrutura__itens strong { display:block; margin-bottom:10px; font-size:1.08rem; }
.chaveiro-estrutura__itens span { color:var(--texto-suave); }

.chaveiro-final { padding:120px 0; color:white; background:linear-gradient(130deg,#06172d,#0a3159); text-align:center; }
.chaveiro-final h2 { max-width:900px; margin:0 auto 24px; font-size:clamp(2.8rem,5vw,5rem); line-height:1.02; letter-spacing:-.05em; font-weight:300; }
.chaveiro-final > .container > p:not(.eyebrow) { max-width:760px; margin:0 auto 34px; color:#cbdbea; font-size:1.12rem; }

@media (max-width: 900px) {
  .chaveiro__link { margin-left:0; }
  .chaveiro-hero__grid, .chaveiro-estrutura__grid { grid-template-columns:1fr; gap:44px; }
  .grade-recursos-chaveiro { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 620px) {
  .grade-recursos-chaveiro, .chaveiro-estrutura__itens, .chaveiro-hero__painel { grid-template-columns:1fr; }
  .chaveiro-hero { padding-top:130px; }
  .chaveiro-hero h1 { font-size:3.25rem; }
}


/* Certificação Gandela */
.pagina-certificacao .cabecalho { position:absolute; }
.cert-hero {
  min-height:760px;
  padding:180px 0 120px;
  color:white;
  background:
    radial-gradient(circle at 82% 22%, rgba(45,155,255,.30), transparent 26%),
    linear-gradient(135deg,#041120 0%,#06172d 48%,#0b315d 100%);
  position:relative;
  overflow:hidden;
}
.cert-hero::after { content:""; position:absolute; width:900px; height:900px; border:1px solid rgba(100,189,255,.32); border-radius:50%; right:-320px; bottom:-650px; box-shadow:0 0 60px rgba(45,155,255,.18); }
.cert-hero__grid { position:relative; z-index:2; display:grid; grid-template-columns:1.15fr .85fr; gap:90px; align-items:center; }
.cert-hero h1 { margin:0; max-width:850px; font-size:clamp(3.4rem,6.4vw,6.8rem); line-height:.96; letter-spacing:-.06em; font-weight:280; }
.cert-hero__destaque { max-width:760px; margin:28px 0 0; color:#8acaff; font-size:clamp(1.45rem,2.4vw,2.15rem); line-height:1.2; font-weight:350; }
.cert-hero__texto { max-width:700px; margin:28px 0 0; color:#d2e0ed; font-size:1.1rem; }
.cert-hero__acoes { display:flex; flex-wrap:wrap; gap:14px; margin-top:38px; }
.cert-hero__painel { border-top:1px solid rgba(255,255,255,.18); }
.cert-hero__painel div { display:grid; grid-template-columns:48px 150px 1fr; gap:22px; align-items:start; padding:24px 0; border-bottom:1px solid rgba(255,255,255,.18); }
.cert-hero__painel span { color:#65bdff; font-size:.75rem; letter-spacing:.2em; }
.cert-hero__painel strong { font-size:1.08rem; font-weight:520; }
.cert-hero__painel small { color:#afc4d7; line-height:1.5; }

.cert-intro__grid { display:grid; grid-template-columns:1fr 1fr; gap:110px; align-items:start; }
.cert-intro h2 { margin:0; font-size:clamp(2.8rem,5vw,5.1rem); line-height:1; letter-spacing:-.05em; font-weight:300; }
.cert-intro__texto { font-size:1.08rem; color:var(--texto-suave); }
.cert-intro__texto p:first-child { margin-top:0; }
.cert-manifesto { margin-top:76px; padding:30px 0; display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; border-top:1px solid var(--linha); border-bottom:1px solid var(--linha); font-size:1.16rem; }
.cert-manifesto strong { color:#0b4f94; }

.cert-rastreabilidade { padding:100px 0; color:white; background:linear-gradient(120deg,#06172d,#0a3159); }
.cert-rastreabilidade__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:center; }
.cert-rastreabilidade h2 { margin:0 0 24px; font-size:clamp(2.6rem,4.3vw,4.6rem); line-height:1.03; letter-spacing:-.045em; font-weight:300; }
.cert-rastreabilidade p { color:#c7d8e8; max-width:620px; }
.cert-rastreabilidade .rotulo { color:#7dc4ff; }
.cert-formula { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.cert-formula span { padding:14px 18px; border:1px solid rgba(255,255,255,.2); border-radius:999px; color:#eaf4fd; background:rgba(255,255,255,.04); }
.cert-formula b { color:#4aaaff; font-weight:400; }

.grade-perfis { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.perfil-card { min-height:470px; padding:34px; border:1px solid var(--linha); border-radius:18px; background:white; display:flex; flex-direction:column; }
.perfil-card__codigo { display:inline-flex; width:max-content; padding:7px 10px; margin-bottom:30px; border-radius:999px; font-size:.68rem; letter-spacing:.18em; font-weight:750; background:#edf4fc; color:#174f90; }
.perfil-card h3 { margin:0 0 16px; font-size:1.8rem; letter-spacing:-.035em; }
.perfil-card p { color:var(--texto-suave); min-height:96px; }
.perfil-card > strong { display:block; margin-top:18px; color:#113e70; }
.perfil-card ul { margin:auto 0 0; padding:24px 0 0 18px; color:#4f6176; }
.perfil-card li { margin:8px 0; }
.perfil-card--multi-tenant { box-shadow:inset 0 4px 0 #20a86b; }
.perfil-card--ai { box-shadow:inset 0 4px 0 #7959d7; }
.perfil-card--base { box-shadow:inset 0 4px 0 #2d9bff; }
.cert-tabela-wrap { margin-top:42px; overflow-x:auto; border:1px solid var(--linha); border-radius:16px; }
.cert-tabela { width:100%; min-width:860px; border-collapse:collapse; background:white; }
.cert-tabela th, .cert-tabela td { padding:20px 22px; border-bottom:1px solid var(--linha); text-align:left; }
.cert-tabela thead th { background:#f5f8fc; font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; color:#4b617b; }
.cert-tabela tbody th { font-weight:600; }
.cert-tabela tr:last-child th, .cert-tabela tr:last-child td { border-bottom:0; }

.grade-dominios { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.grade-dominios details { border:1px solid var(--linha); border-radius:14px; background:white; overflow:hidden; }
.grade-dominios summary { list-style:none; cursor:pointer; padding:20px; display:flex; gap:14px; align-items:center; font-weight:650; }
.grade-dominios summary::-webkit-details-marker { display:none; }
.grade-dominios summary span { color:#2b78be; font-size:.72rem; letter-spacing:.12em; }
.grade-dominios details p { margin:0; padding:0 20px 22px; color:var(--texto-suave); font-size:.94rem; }
.grade-dominios details[open] { box-shadow:0 14px 38px rgba(7,27,53,.08); }

.cert-multi-tenant { padding:112px 0; color:white; background:linear-gradient(135deg,#071a32,#0b315d 54%,#0b5d4d); }
.cert-multi-tenant__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; }
.cert-multi-tenant h2 { margin:0 0 26px; font-size:clamp(2.8rem,5vw,5rem); line-height:1; letter-spacing:-.05em; font-weight:300; }
.cert-multi-tenant p { color:#c9dbe3; }
.cert-multi-tenant .rotulo { color:#8cddbf; }
.cert-multi-tenant__itens { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid rgba(255,255,255,.16); border-left:1px solid rgba(255,255,255,.16); }
.cert-multi-tenant__itens article { padding:28px; border-right:1px solid rgba(255,255,255,.16); border-bottom:1px solid rgba(255,255,255,.16); }
.cert-multi-tenant__itens strong { display:block; margin-bottom:10px; font-size:1.08rem; }
.cert-multi-tenant__itens p { margin:0; font-size:.94rem; }

.cert-ai__grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:start; }
.cert-ai h2 { margin:0; font-size:clamp(2.7rem,4.8vw,4.9rem); line-height:1.02; letter-spacing:-.05em; font-weight:300; }
.cert-ai__grid > div:last-child { color:var(--texto-suave); font-size:1.06rem; }
.cert-nota { margin-top:28px; padding:22px; border-left:3px solid #7959d7; background:#f7f5ff; color:#4b4961; }

.grade-testes { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.17); border-left:1px solid rgba(255,255,255,.17); }
.grade-testes article { min-height:150px; padding:26px; border-right:1px solid rgba(255,255,255,.17); border-bottom:1px solid rgba(255,255,255,.17); }
.grade-testes strong { display:block; margin-bottom:10px; font-size:1.05rem; }
.grade-testes span { color:#b9cde0; font-size:.92rem; }

.cert-adversarial { padding:110px 0; background:#0a1320; color:white; }
.cert-adversarial__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:start; }
.cert-adversarial h2 { margin:0; font-size:clamp(2.8rem,5vw,5.2rem); line-height:1; letter-spacing:-.05em; font-weight:300; }
.cert-adversarial .rotulo { color:#f2b84b; }
.cert-perguntas { border-top:1px solid rgba(255,255,255,.14); }
.cert-perguntas p { margin:0; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.14); font-size:1.02rem; }
.cert-perguntas del { color:#8393a5; }
.cert-perguntas strong { color:#f8fbff; font-weight:520; }

.cert-zero__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:start; }
.cert-zero h2 { margin:0 0 24px; font-size:clamp(2.6rem,4.7vw,4.8rem); line-height:1.02; letter-spacing:-.05em; font-weight:300; }
.cert-zero p { color:var(--texto-suave); }
.grade-zero { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--linha); border-left:1px solid var(--linha); }
.grade-zero span { padding:24px; border-right:1px solid var(--linha); border-bottom:1px solid var(--linha); background:#fbfcfe; }

.cert-passos { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--linha); border-left:1px solid var(--linha); }
.cert-passos li { min-height:165px; padding:28px; display:grid; grid-template-columns:52px 1fr; gap:18px; border-right:1px solid var(--linha); border-bottom:1px solid var(--linha); background:white; }
.cert-passos li > span { color:#2d83ce; font-size:.75rem; letter-spacing:.15em; }
.cert-passos strong { display:block; margin-bottom:8px; font-size:1.08rem; }
.cert-passos p { margin:0; color:var(--texto-suave); font-size:.94rem; }

.cert-rodadas { padding:110px 0; color:white; background:linear-gradient(135deg,#06172d,#0b315d); }
.cert-rodadas__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:center; }
.cert-rodadas h2 { margin:0 0 24px; font-size:clamp(2.7rem,4.8vw,4.9rem); line-height:1.02; letter-spacing:-.05em; font-weight:300; }
.cert-rodadas p { color:#c6d8e9; }
.cert-rodadas .rotulo { color:#72bdff; }
.cert-rodadas__exemplo { display:grid; grid-template-columns:1fr auto 1fr auto 1.2fr; align-items:center; gap:14px; }
.cert-rodadas__exemplo div { min-height:126px; padding:22px; border:1px solid rgba(255,255,255,.18); border-radius:14px; }
.cert-rodadas__exemplo span { display:block; margin-bottom:18px; color:#6fc0ff; text-transform:uppercase; letter-spacing:.14em; font-size:.7rem; }
.cert-rodadas__exemplo strong { font-weight:520; }
.cert-rodadas__exemplo i { color:#5facf0; font-style:normal; }
.cert-rodadas__nota { margin-top:46px; padding-top:26px; border-top:1px solid rgba(255,255,255,.15); color:#c6d8e9; }
.cert-rodadas__nota strong { color:white; }

.grade-status { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.grade-status article { min-height:190px; padding:28px; border:1px solid var(--linha); border-radius:16px; background:white; }
.grade-status strong { display:block; margin-bottom:24px; font-size:1rem; letter-spacing:.12em; }
.grade-status p { margin:0; color:var(--texto-suave); }
.status--pass { box-shadow:inset 0 4px 0 #20a86b; }
.status--partial { box-shadow:inset 0 4px 0 #e1a62c; }
.status--fail { box-shadow:inset 0 4px 0 #d64d4d; }
.status--blocked { box-shadow:inset 0 4px 0 #7c8795; }

.cert-modelos { padding:100px 0; background:#f6f8fb; }
.cert-modelos__grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.cert-modelos article { padding:42px; border:1px solid var(--linha); background:white; }
.cert-modelos h2 { margin:0 0 20px; font-size:2.1rem; font-weight:350; letter-spacing:-.035em; }
.cert-modelos p { margin:0; color:var(--texto-suave); }

.cert-trust__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:start; }
.cert-trust h2 { margin:0; font-size:clamp(2.7rem,4.8vw,4.9rem); line-height:1.02; letter-spacing:-.05em; font-weight:300; }
.cert-trust__grid > div:last-child { color:var(--texto-suave); font-size:1.05rem; }
.cert-trust blockquote { margin:30px 0 0; padding:24px 0 24px 28px; border-left:3px solid #2d9bff; color:#163b64; font-size:1.15rem; }

.cert-publicos { padding:100px 0; background:#07182d; color:white; }
.grade-publicos { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.12); }
.grade-publicos article { padding:38px; background:#07182d; }
.grade-publicos span { display:block; margin-bottom:26px; color:#69bdff; text-transform:uppercase; letter-spacing:.16em; font-size:.7rem; }
.grade-publicos h3 { margin:0 0 18px; font-size:1.65rem; line-height:1.15; font-weight:420; }
.grade-publicos p { margin:0; color:#b9ccde; }

.cert-final { padding:130px 0; text-align:center; color:white; background:radial-gradient(circle at 50% 0%,#1266a4,#0a3159 35%,#06172d 72%); }
.cert-final h2 { max-width:1050px; margin:0 auto 24px; font-size:clamp(3rem,5.7vw,5.8rem); line-height:.98; letter-spacing:-.055em; font-weight:300; }
.cert-final > .container > p:not(.eyebrow) { max-width:760px; margin:0 auto 36px; color:#d0e0ee; font-size:1.12rem; }
.cert-final__acoes { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; }

@media (max-width: 980px) {
  .cert-hero__grid, .cert-intro__grid, .cert-rastreabilidade__grid, .cert-multi-tenant__grid, .cert-ai__grid, .cert-adversarial__grid, .cert-zero__grid, .cert-rodadas__grid, .cert-trust__grid { grid-template-columns:1fr; gap:50px; }
  .grade-perfis, .grade-publicos { grid-template-columns:1fr; }
  .grade-dominios, .grade-testes { grid-template-columns:repeat(2,1fr); }
  .grade-status { grid-template-columns:repeat(2,1fr); }
  .cert-multi-tenant__itens { grid-template-columns:1fr 1fr; }
}
@media (max-width: 680px) {
  .cert-hero { padding-top:135px; min-height:auto; }
  .cert-hero h1 { font-size:3.3rem; }
  .cert-hero__painel div { grid-template-columns:40px 1fr; }
  .cert-hero__painel small { grid-column:2; }
  .grade-dominios, .grade-testes, .grade-status, .cert-modelos__grid, .cert-passos, .grade-zero, .cert-multi-tenant__itens { grid-template-columns:1fr; }
  .cert-rodadas__exemplo { grid-template-columns:1fr; }
  .cert-rodadas__exemplo i { transform:rotate(90deg); justify-self:center; }
  .cert-formula { align-items:flex-start; }
  .cert-formula b { display:none; }
}

/* Acessibilidade e preferências persistentes */
:root {
  --escala-texto: 1;
  --fundo-cartao: #ffffff;
  --fundo-suave: #f7f9fc;
  --foco: #ffbf47;
}

html { font-size: calc(16px * var(--escala-texto)); }
html[data-tema="claro"] { color-scheme: light; }
html[data-tema="escuro"] {
  color-scheme: dark;
  --texto: #f3f7fb;
  --texto-suave: #b8c6d6;
  --linha: #29415c;
  --fundo: #09192b;
  --branco: #0d2138;
  --fundo-cartao: #102740;
  --fundo-suave: #0a1b2e;
  --sombra: 0 22px 60px rgba(0,0,0,.32);
}

body { transition: background-color .2s ease, color .2s ease; }
html[data-tema="escuro"] body { background:#08182a; }

:where(a, button, summary, input, select, textarea):focus-visible {
  outline: 3px solid var(--foco);
  outline-offset: 4px;
  border-radius: 4px;
}

button { font: inherit; }
button:disabled { cursor:not-allowed; opacity:.48; }

.atalho-conteudo {
  position: fixed;
  z-index: 9999;
  top: 12px;
  left: 12px;
  transform: translateY(-180%);
  padding: 12px 16px;
  background: #ffffff;
  color: #06172d;
  border: 2px solid #06172d;
  border-radius: 8px;
  font-weight: 700;
  box-shadow: var(--sombra);
}
.atalho-conteudo:focus { transform: translateY(0); }

.acessibilidade {
  position: fixed;
  z-index: 9990;
  right: 18px;
  bottom: 18px;
  font-size: 16px;
}
.acessibilidade__gatilho {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0 16px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 10px;
  background: #08213f;
  color: #fff;
  box-shadow: 0 12px 34px rgba(0,0,0,.2);
  cursor: pointer;
}
.acessibilidade__gatilho > span:first-child { font-size: 1.25rem; }
.acessibilidade__painel {
  position: absolute;
  right: 0;
  bottom: 60px;
  width: min(390px, calc(100vw - 28px));
  max-height: min(680px, calc(100vh - 100px));
  overflow: auto;
  padding: 22px;
  border: 1px solid var(--linha);
  border-radius: 16px;
  background: var(--fundo-cartao);
  color: var(--texto);
  box-shadow: 0 28px 80px rgba(0,0,0,.26);
}
.acessibilidade__painel[hidden] { display:none; }
.acessibilidade__cabecalho { display:flex; align-items:flex-start; gap:18px; justify-content:space-between; padding-bottom:18px; border-bottom:1px solid var(--linha); }
.acessibilidade__cabecalho strong { display:block; font-size:1.05rem; }
.acessibilidade__cabecalho small { display:block; margin-top:5px; color:var(--texto-suave); line-height:1.4; }
.acessibilidade__fechar { flex:0 0 44px; width:44px; height:44px; border:1px solid var(--linha); border-radius:10px; background:transparent; color:var(--texto); font-size:1.35rem; cursor:pointer; }
.acessibilidade__grupo { margin:20px 0 0; padding:0; border:0; }
.acessibilidade__grupo legend { margin-bottom:10px; font-weight:700; }
.acessibilidade__opcoes { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.acessibilidade__opcoes button,
.acessibilidade__alternancias button,
.acessibilidade__restaurar {
  min-height:44px;
  padding:9px 13px;
  border:1px solid var(--linha);
  border-radius:9px;
  background:transparent;
  color:var(--texto);
  cursor:pointer;
}
.acessibilidade__opcoes button.is-active,
.acessibilidade__opcoes button[aria-pressed="true"],
.acessibilidade__alternancias button[aria-pressed="true"] {
  border-color:#2d9bff;
  background:rgba(45,155,255,.12);
  box-shadow:inset 0 0 0 1px #2d9bff;
}
.acessibilidade__opcoes output { min-width:64px; text-align:center; font-weight:700; }
.acessibilidade__alternancias { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:20px; }
.acessibilidade__leitura { margin-top:20px; padding-top:18px; border-top:1px solid var(--linha); }
.acessibilidade__leitura p { margin:7px 0 12px; color:var(--texto-suave); font-size:.86rem; line-height:1.45; }
.acessibilidade__restaurar { width:100%; margin-top:20px; }

.hero__pausa {
  min-height:44px;
  margin-left:6px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
  background:rgba(5,20,38,.34);
  color:#fff;
  cursor:pointer;
}

/* Tema escuro para áreas originalmente claras */
html[data-tema="escuro"] .secao:not(.secao--azul),
html[data-tema="escuro"] .faixa-local,
html[data-tema="escuro"] .valores,
html[data-tema="escuro"] .cert-intro,
html[data-tema="escuro"] .cert-ai,
html[data-tema="escuro"] .cert-zero,
html[data-tema="escuro"] .cert-trust,
html[data-tema="escuro"] .chaveiro-estrutura,
html[data-tema="escuro"] .secao--suave {
  background: var(--fundo-suave);
  color: var(--texto);
}

html[data-tema="escuro"] .secao--suave { background:linear-gradient(180deg,#0b1e33,#08182a); }
html[data-tema="escuro"] .cartao-produto,
html[data-tema="escuro"] .beneficio,
html[data-tema="escuro"] .escala-card,
html[data-tema="escuro"] .perfil-card,
html[data-tema="escuro"] .grade-dominios details,
html[data-tema="escuro"] .cert-tabela,
html[data-tema="escuro"] .cert-passos li,
html[data-tema="escuro"] .grade-status article,
html[data-tema="escuro"] .cert-modelos article,
html[data-tema="escuro"] .chaveiro-estrutura__itens article,
html[data-tema="escuro"] .grade-recursos-chaveiro article,
html[data-tema="escuro"] .grade-zero span,
html[data-tema="escuro"] .linha-jornada span {
  background: var(--fundo-cartao);
  color: var(--texto);
}

html[data-tema="escuro"] .cert-modelos { background:#08182a; }
html[data-tema="escuro"] .cert-tabela thead th { background:#0b1e33; color:#c8d6e5; }
html[data-tema="escuro"] .nota-clinica { background:#0c3029; color:#bce4d5; }
html[data-tema="escuro"] .cert-nota { background:#201c35; color:#d4cdef; }
html[data-tema="escuro"] .cert-trust blockquote { color:#bcdafa; }
html[data-tema="escuro"] .chaveiro__icone { background:#102e50; color:#8bc5ff; }
html[data-tema="escuro"] .linha-jornada span { color:#dce8f4; }
html[data-tema="escuro"] .perfil-card__codigo { background:#102e50; color:#a9d5ff; }
html[data-tema="escuro"] .cartao-produto__link,
html[data-tema="escuro"] .chaveiro__link { color:#83c6ff; }
html[data-tema="escuro"] .cert-manifesto strong { color:#8bc8ff; }

/* Contraste reforçado: sem remover identidade visual. */
html[data-contraste="reforcado"] {
  --texto: #000000;
  --texto-suave: #222222;
  --linha: #252525;
}
html[data-tema="escuro"][data-contraste="reforcado"] {
  --texto: #ffffff;
  --texto-suave: #f1f5f9;
  --linha: #d7e1ec;
}
html[data-contraste="reforcado"] a { text-decoration-thickness:2px; text-underline-offset:3px; }
html[data-contraste="reforcado"] .cartao-produto,
html[data-contraste="reforcado"] .beneficio,
html[data-contraste="reforcado"] .capacidade,
html[data-contraste="reforcado"] .valor,
html[data-contraste="reforcado"] details { border-color:currentColor; }

html[data-movimento="reduzido"] { scroll-behavior:auto; }
html[data-movimento="reduzido"] *,
html[data-movimento="reduzido"] *::before,
html[data-movimento="reduzido"] *::after {
  animation-duration:.01ms !important;
  animation-iteration-count:1 !important;
  transition-duration:.01ms !important;
  scroll-behavior:auto !important;
}

@media (max-width: 680px) {
  .acessibilidade { right:12px; bottom:12px; }
  .acessibilidade__texto { display:none; }
  .acessibilidade__gatilho { width:48px; padding:0; justify-content:center; }
  .acessibilidade__alternancias { grid-template-columns:1fr; }
}

/* Página institucional de acessibilidade */
.pagina-acessibilidade .cabecalho { position:relative; background:var(--azul-950); }
.acessibilidade-hero { padding:104px 0 112px; color:#fff; background:radial-gradient(circle at 82% 24%,#175f9d 0%,#0b315d 30%,#06172d 67%); }
.acessibilidade-hero__grid { display:grid; grid-template-columns:1.15fr .85fr; gap:90px; align-items:center; }
.acessibilidade-hero h1 { margin:0 0 26px; max-width:830px; font-size:clamp(3rem,5.7vw,5.9rem); line-height:.98; letter-spacing:-.055em; font-weight:280; }
.acessibilidade-hero p:not(.eyebrow) { max-width:720px; color:#d1dfec; font-size:1.08rem; }
.acessibilidade-hero__nota { padding:34px; border:1px solid rgba(255,255,255,.18); border-radius:18px; background:rgba(255,255,255,.06); }
.acessibilidade-hero__nota strong { display:block; color:#83c9ff; text-transform:uppercase; letter-spacing:.18em; font-size:.72rem; }
.acessibilidade-hero__nota span { display:block; margin:18px 0; font-size:2rem; font-weight:350; }
.grade-acessibilidade { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.grade-acessibilidade article { min-height:230px; padding:30px; border:1px solid var(--linha); border-radius:16px; background:var(--fundo-cartao); }
.grade-acessibilidade article > span { display:inline-grid; min-width:48px; height:48px; place-items:center; margin-bottom:24px; color:#1664b3; font-size:1.1rem; font-weight:750; }
.grade-acessibilidade h3 { margin:0 0 10px; font-size:1.22rem; }
.grade-acessibilidade p { margin:0; color:var(--texto-suave); }
.acessibilidade-conteudo { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:start; }
.acessibilidade-conteudo h2 { margin:0; font-size:clamp(2.7rem,4.8vw,4.8rem); line-height:1.02; letter-spacing:-.05em; font-weight:300; }
.acessibilidade-conteudo > div:last-child { color:var(--texto-suave); font-size:1.07rem; }
.grade-valores--acessibilidade .valor { min-height:150px; }
@media (max-width:900px) {
  .acessibilidade-hero__grid, .acessibilidade-conteudo { grid-template-columns:1fr; gap:44px; }
  .grade-acessibilidade { grid-template-columns:1fr 1fr; }
}
@media (max-width:580px) { .grade-acessibilidade { grid-template-columns:1fr; } }

@media (forced-colors: active) {
  :where(a, button, summary, input, select, textarea):focus-visible { outline:3px solid Highlight; }
  .botao, .cartao-produto, .beneficio, .capacidade, .valor, .acessibilidade__painel { border:1px solid CanvasText; }
  .hero__ponto.is-active { forced-color-adjust:none; background:Highlight; }
}


/* Refinamento visual premium v0.6 — escala menor, mais respiro e revelação progressiva */
@media (min-width: 901px) {
  :root { --max: 1160px; }

  .cabecalho__linha { min-height: 74px; gap: 30px; }
  .marca { font-size: 1.28rem; gap: 10px; }
  .marca__icone { width: 36px; height: 36px; border-radius: 9px; }
  .navegacao { gap: 24px; font-size: .84rem; }
  .cabecalho .botao { min-height: 42px; padding-inline: 18px; font-size: .86rem; }

  .hero, .hero__conteudo { min-height: 590px; }
  .hero__conteudo { padding-top: 142px; padding-bottom: 96px; }
  .hero__texto { max-width: 540px; }
  .hero h1, .hero h2 {
    max-width: 650px;
    font-size: clamp(3rem, 4.8vw, 4.65rem);
    line-height: 1.01;
    letter-spacing: -.05em;
  }
  .hero__subtitulo { max-width: 560px; margin: 20px 0 30px; font-size: 1.08rem; line-height: 1.55; }
  .hero__controles { bottom: 26px; }
  .secao { padding: 98px 0 106px; }
  .secao__cabecalho { margin-bottom: 44px; gap: 70px; }
  .secao__cabecalho h2 { font-size: clamp(2rem, 3.15vw, 3.15rem); }
  .secao__cabecalho p { max-width: 390px; font-size: .94rem; }
  .rotulo { margin-bottom: 13px; font-size: .64rem; letter-spacing: .29em; }

  .grade-produtos { gap: 18px; }
  .cartao-produto { min-height: 176px; padding: 26px 28px; border-radius: 14px; }
  .cartao-produto__topo { gap: 17px; }
  .cartao-produto h3 { font-size: 1.28rem; }
  .cartao-produto p { margin-top: 14px; font-size: .91rem; line-height: 1.5; }
  .cartao-produto__link { margin-top: 20px; font-size: .88rem; }

  .faixa-local { padding: 76px 0 82px; }
  .faixa-local__conteudo { grid-template-columns: 300px 1fr; gap: 72px; }
  .faixa-local__titulo h2 { font-size: 1.86rem; line-height: 1.16; }
  .chaveiro { min-height: 110px; padding: 23px 28px; border-radius: 14px; gap: 20px; }
  .chaveiro h3 { font-size: 1.16rem; }
  .chaveiro p, .chaveiro__link { font-size: .9rem; }

  #ecossistema.secao { padding-top: 104px; padding-bottom: 108px; }
  .ecossistema__titulo { max-width: 650px; margin-bottom: 48px; }
  .ecossistema__titulo h2 { font-size: clamp(2.2rem, 3.2vw, 3.25rem); margin-bottom: 14px; }
  .ecossistema__titulo p { max-width: 610px; font-size: .95rem; }
  .capacidade { min-height: 190px; padding: 34px 30px 36px; }
  .capacidade__icone { width: 44px; height: 44px; margin-bottom: 22px; }
  .capacidade h3 { font-size: 1.12rem; margin-bottom: 8px; }
  .capacidade p { font-size: .9rem; line-height: 1.5; }

  .valores { padding: 86px 0 96px; }
  .valor { padding: 31px 28px 0; min-height: 148px; }
  .valor__icone { width: 38px; height: 38px; margin-bottom: 15px; }
  .valor h3 { font-size: 1rem; }
  .valor p { font-size: .86rem; }

  .rodape { padding-top: 52px; }
  .rodape__grade { gap: 72px; }
  .rodape p, .rodape a { font-size: .9rem; }
}

/* Ícones escolhidos para os produtos: simples, proprietários e sem blocos pesados. */
.cartao-produto__simbolo {
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
}
.cartao-produto__simbolo svg { width: 100%; height: 100%; overflow: visible; }
.simbolo--cheow { color: #31aebd; }
.simbolo--nuttrion { color: #22a96d; }
.simbolo--certificacao { color: #1678b8; }
.chaveiro__icone { background: transparent; border-radius: 0; }
.chaveiro__icone svg { width: 48px; height: 48px; }

/* Entrada suave conforme o conteúdo entra no viewport. */
.reveal-item {
  opacity: 0;
  transform: translate3d(0, 14px, 0);
  transition:
    opacity .4s cubic-bezier(.22,.61,.36,1),
    transform .4s cubic-bezier(.22,.61,.36,1);
  transition-delay: var(--reveal-delay, 0ms);
  will-change: opacity, transform;
}
.reveal-item.is-visible { opacity: 1; transform: translate3d(0,0,0); will-change:auto; }

html[data-movimento="reduzido"] .reveal-item { opacity: 1 !important; transform: none !important; transition: none !important; }
@media (prefers-reduced-motion: reduce) {
  .reveal-item { opacity: 1 !important; transform: none !important; transition: none !important; }
}

@media (max-width: 900px) {
  .hero, .hero__conteudo { min-height: 570px; }
  .hero__conteudo { padding-top: 132px; padding-bottom: 88px; }
  .hero h1, .hero h2 { font-size: clamp(2.75rem, 9vw, 4.15rem); }
  .secao { padding: 78px 0 84px; }
  .cartao-produto { min-height: 158px; padding: 24px; }
  .faixa-local { padding: 64px 0; }
  #ecossistema.secao { padding-top: 84px; padding-bottom: 88px; }
  .capacidade { min-height: 176px; padding: 30px 26px; }
  .valores { padding: 72px 0 80px; }
}

@media (max-width: 580px) {
  .hero, .hero__conteudo { min-height: 530px; }
  .hero__conteudo { padding-top: 118px; }
  .hero h1, .hero h2 { font-size: 2.72rem; }
  .hero__subtitulo { font-size: .98rem; }
  .cartao-produto__simbolo { width: 46px; height: 46px; flex-basis: 46px; }
  .ecossistema__titulo h2 { font-size: 2.35rem; }
  .capacidade { min-height: 0; }
}

/* Escala editorial consistente também nas páginas internas. */
@media (min-width: 901px) {
  .cheow-hero h1,
  .nuttrion-hero h1,
  .chaveiro-hero h1,
  .cert-hero h1,
  .acessibilidade-hero h1 {
    font-size: clamp(3rem, 4.65vw, 4.85rem);
    line-height: 1;
  }
  .cheow-hero,
  .nuttrion-hero,
  .chaveiro-hero,
  .acessibilidade-hero { padding-top: 86px; padding-bottom: 96px; }
  .cert-hero { padding-top: 148px; padding-bottom: 98px; }
  .cheow-hero p,
  .nuttrion-hero > .container > div > p:not(.eyebrow),
  .chaveiro-hero p:not(.eyebrow),
  .cert-hero__texto,
  .acessibilidade-hero p:not(.eyebrow) { font-size: 1.02rem; }
}

/* Nuttrion — posicionamento profissional / B2B */
.grade-gestao-nuttrion {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  margin-top:72px;
  border:1px solid var(--linha);
  background:var(--linha);
}
.grade-gestao-nuttrion article {
  min-height:180px;
  padding:34px;
  background:var(--fundo-cartao);
}
.grade-gestao-nuttrion h3 { margin:0 0 12px; font-size:1.25rem; }
.grade-gestao-nuttrion p { margin:0; color:var(--texto-suave); }

.nuttrion-frase--inicio { margin-top:0; padding-top:0; border-top:0; margin-bottom:90px; }
.nuttrion-escalas-cabecalho { margin-top:18px; }

.nuttrion-longitudinal {
  padding:112px 0;
  color:#fff;
  background:linear-gradient(135deg,#06172d 0%,#0b315d 62%,#0c4d45 120%);
}
.nuttrion-longitudinal__grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:90px; align-items:center; }
.nuttrion-longitudinal h2 { margin:0 0 24px; font-size:clamp(2.5rem,4.5vw,4.6rem); line-height:1.03; letter-spacing:-.05em; font-weight:300; }
.nuttrion-longitudinal p { max-width:660px; margin:0; color:#cfdee7; font-size:1.05rem; }
.nuttrion-longitudinal .rotulo { color:#8fd9bd; }
.nuttrion-sequencia { border-top:1px solid rgba(255,255,255,.18); }
.nuttrion-sequencia span { display:block; padding:19px 0; border-bottom:1px solid rgba(255,255,255,.18); font-size:1.08rem; }
.nuttrion-sequencia span::before { content:"→"; display:inline-block; width:42px; color:#7bcfff; }

.grade-operacao-nuttrion { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.grade-operacao-nuttrion article { padding-right:44px; }
.grade-operacao-nuttrion article + article { padding-left:64px; border-left:1px solid var(--linha); }
.grade-operacao-nuttrion h2 { margin:0 0 22px; font-size:clamp(2rem,3.4vw,3.3rem); line-height:1.05; letter-spacing:-.045em; font-weight:300; }
.grade-operacao-nuttrion p { margin:0; color:var(--texto-suave); font-size:1.04rem; }

.nuttrion-publicos__grid { display:grid; grid-template-columns:1fr .9fr; gap:90px; align-items:start; }
.nuttrion-publicos h2 { margin:0 0 24px; font-size:clamp(2.3rem,4vw,4rem); line-height:1.03; letter-spacing:-.05em; font-weight:300; }
.nuttrion-publicos p { color:var(--texto-suave); font-size:1.04rem; }
.nuttrion-publicos aside { padding:38px; border:1px solid var(--linha); border-radius:18px; background:var(--fundo-cartao); }
.nuttrion-publicos aside h3 { margin:0 0 18px; font-size:1.65rem; line-height:1.15; letter-spacing:-.03em; font-weight:420; }

.nuttrion-destaque-infantil {
  padding:118px 0;
  background:linear-gradient(180deg,#f3f8f6,#fbfcfe);
}
.nuttrion-destaque-infantil h2 { max-width:980px; margin:0 0 30px; font-size:clamp(2.7rem,5vw,5.2rem); line-height:1; letter-spacing:-.055em; font-weight:300; }
.nuttrion-destaque-infantil p:not(.eyebrow) { max-width:760px; margin:0; color:var(--texto-suave); font-size:1.1rem; }

html[data-tema="escuro"] .grade-gestao-nuttrion article,
html[data-tema="escuro"] .nuttrion-publicos aside { background:var(--fundo-cartao); color:var(--texto); }
html[data-tema="escuro"] .nuttrion-destaque-infantil { background:linear-gradient(180deg,#0a1b2e,#08182a); color:var(--texto); }

@media (max-width:900px) {
  .grade-gestao-nuttrion { grid-template-columns:1fr 1fr; }
  .nuttrion-longitudinal__grid,
  .grade-operacao-nuttrion,
  .nuttrion-publicos__grid { grid-template-columns:1fr; gap:48px; }
  .grade-operacao-nuttrion article { padding:0; }
  .grade-operacao-nuttrion article + article { padding:48px 0 0; border-left:0; border-top:1px solid var(--linha); }
}

@media (max-width:580px) {
  .grade-gestao-nuttrion { grid-template-columns:1fr; margin-top:48px; }
  .grade-gestao-nuttrion article { min-height:0; padding:26px; }
  .nuttrion-frase--inicio { margin-bottom:58px; }
  .nuttrion-longitudinal { padding:82px 0; }
  .nuttrion-publicos aside { padding:28px; }
  .nuttrion-destaque-infantil { padding:84px 0; }
}


/* Home v0.7.3 — topo clean definitivo */
.pagina-home .cabecalho {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  min-height: 78px;
  color: #fff;
  background:
    radial-gradient(circle at 78% -30%, rgba(49,133,219,.34), transparent 36%),
    linear-gradient(103deg, #06172d 0%, #0a3158 60%, #08213f 100%);
}
.pagina-home .cabecalho__linha {
  min-height: 78px;
}
.pagina-home .cabecalho .marca__icone {
  width: 40px;
  height: 40px;
  box-shadow:
    0 10px 18px rgba(45,155,255,.42),
    0 0 22px rgba(45,155,255,.30);
}
.pagina-home .cabecalho .marca__nome {
  color: #fff;
  font-weight: 300;
}
.pagina-home .cabecalho .navegacao a {
  color: #fff;
}
.pagina-home .cabecalho .botao--contorno {
  border-color: rgba(255,255,255,.55);
  background: transparent;
  color: #fff;
}

/* Hero: deliberadamente sem fotografia e sem divisão de tela. */
.pagina-home .hero {
  position: relative;
  min-height: 390px;
  overflow: hidden;
  color: #0b1b35;
  background:
    radial-gradient(circle at 80% 28%, rgba(64,154,244,.09), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  border-bottom: 1px solid #edf2f8;
}
.pagina-home .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(140deg, transparent 0 58%, rgba(61,151,243,.055) 58% 72%, transparent 72%),
    linear-gradient(32deg, rgba(90,171,250,.05) 0 9%, transparent 9% 100%);
}
.pagina-home .hero::after {
  content: "G";
  position: absolute;
  z-index: 0;
  right: 8%;
  top: -38px;
  font-size: clamp(15rem, 25vw, 24rem);
  line-height: 1;
  font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
  letter-spacing: -.14em;
  color: transparent;
  -webkit-text-stroke: 1px rgba(35,124,219,.15);
  transform: rotate(-5deg);
  pointer-events: none;
}
.pagina-home .hero__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  color: #0b1b35;
  background: transparent !important;
  transition: opacity .55s ease, visibility .55s ease;
}
.pagina-home .hero__slide.is-active {
  opacity: 1;
  visibility: visible;
}
.pagina-home .hero__slide::before,
.pagina-home .hero__slide::after,
.pagina-home .hero__media,
.pagina-home .hero__marca-fundo {
  display: none !important;
  content: none !important;
  background-image: none !important;
}
.pagina-home .hero__conteudo {
  position: relative;
  z-index: 2;
  min-height: 390px;
  padding-top: 48px;
  padding-bottom: 64px;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(250px, .65fr);
  align-items: center;
  gap: 90px;
}
.pagina-home .hero__texto {
  max-width: 710px;
}
.pagina-home .hero .eyebrow {
  margin: 0 0 16px;
  color: #315b8c;
  font-size: .66rem;
  letter-spacing: .32em;
}
.pagina-home .hero h1,
.pagina-home .hero h2 {
  margin: 0;
  max-width: 780px;
  color: #0a2347;
  font-size: clamp(3rem, 5.1vw, 4.85rem);
  line-height: 1.02;
  letter-spacing: -.055em;
  font-weight: 260;
}
.pagina-home .hero h1 strong,
.pagina-home .hero h2 strong {
  color: #0d6dfd;
  font-weight: 300;
}
.pagina-home .hero__subtitulo {
  max-width: 650px;
  margin: 18px 0 24px;
  color: #263f61;
  font-size: 1.08rem;
  line-height: 1.5;
  font-weight: 350;
}
.pagina-home .hero__acoes {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.pagina-home .botao--hero-contorno {
  border-color: #173c6c;
  color: #102f59;
  background: rgba(255,255,255,.84);
}
.pagina-home .hero__lateral {
  position: relative;
  z-index: 2;
  justify-self: end;
  width: min(100%, 300px);
  padding-left: 38px;
  border-left: 1px solid rgba(45,155,255,.24);
  color: #657c9c;
}
.pagina-home .hero__lateral p {
  margin: 0;
  max-width: 225px;
  font-size: .9rem;
  line-height: 1.55;
}
.pagina-home .hero__lateral > span {
  display: block;
  width: 42px;
  height: 1px;
  margin: 22px 0 20px;
  background: #294d76;
}
.pagina-home .hero__lateral ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.pagina-home .hero__lateral li {
  margin: 6px 0;
  color: #34567f;
  text-transform: uppercase;
  letter-spacing: .28em;
  font-size: .6rem;
  font-weight: 600;
}
.pagina-home .hero__controles {
  position: absolute;
  z-index: 10;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  width: min(var(--max), calc(100% - 40px));
  color: #173c6c;
}
.pagina-home .hero__ponto {
  border-color: rgba(24,68,115,.55);
}
.pagina-home .hero__ponto.is-active {
  background: #1c6fd2;
  border-color: #1c6fd2;
}
.pagina-home .hero__pausa {
  color: #173c6c;
  border-color: rgba(24,68,115,.22);
  background: rgba(255,255,255,.88);
}
.pagina-home .hero__seta button {
  color: #173c6c;
  border-color: rgba(24,68,115,.22);
  background: rgba(255,255,255,.88);
}

/* A próxima seção deve aparecer já no primeiro viewport de desktop. */
@media (min-width: 901px) {
  .pagina-home .hero,
  .pagina-home .hero__conteudo {
    min-height: 390px !important;
  }
  .pagina-home .secao#produtos {
    padding-top: 72px;
  }
}

/* Tema escuro mantém estrutura e acessibilidade, sem reintroduzir fotografia. */
html[data-tema="escuro"] .pagina-home .hero {
  color: #eaf2fb;
  background:
    radial-gradient(circle at 80% 28%, rgba(45,155,255,.10), transparent 30%),
    linear-gradient(180deg, #0b1e33 0%, #08182a 100%);
  border-bottom-color: #17324e;
}
html[data-tema="escuro"] .pagina-home .hero h1,
html[data-tema="escuro"] .pagina-home .hero h2 {
  color: #f1f6fb;
}
html[data-tema="escuro"] .pagina-home .hero h1 strong,
html[data-tema="escuro"] .pagina-home .hero h2 strong {
  color: #64bdff;
}
html[data-tema="escuro"] .pagina-home .hero__subtitulo {
  color: #c6d6e6;
}
html[data-tema="escuro"] .pagina-home .hero .eyebrow {
  color: #8acaff;
}
html[data-tema="escuro"] .pagina-home .hero__lateral {
  color: #adc1d5;
  border-left-color: rgba(100,189,255,.28);
}
html[data-tema="escuro"] .pagina-home .hero__lateral li {
  color: #a9c5df;
}
html[data-tema="escuro"] .pagina-home .hero__lateral > span {
  background: #6aaeea;
}
html[data-tema="escuro"] .pagina-home .botao--hero-contorno {
  color: #d8e7f5;
  border-color: rgba(216,231,245,.55);
  background: rgba(255,255,255,.03);
}
html[data-tema="escuro"] .pagina-home .hero::after {
  -webkit-text-stroke-color: rgba(100,189,255,.15);
}

@media (max-width: 900px) {
  .pagina-home .hero,
  .pagina-home .hero__conteudo {
    min-height: 500px;
  }
  .pagina-home .hero__conteudo {
    padding-top: 52px;
    padding-bottom: 86px;
    grid-template-columns: 1fr;
    gap: 26px;
  }
  .pagina-home .hero::after {
    right: -18%;
    top: 12%;
    opacity: .55;
  }
  .pagina-home .hero__lateral {
    justify-self: start;
    width: 100%;
    max-width: 520px;
    padding-left: 22px;
  }
}
@media (max-width: 580px) {
  .pagina-home .hero,
  .pagina-home .hero__conteudo {
    min-height: 510px;
  }
  .pagina-home .hero h1,
  .pagina-home .hero h2 {
    font-size: 2.65rem;
  }
  .pagina-home .hero__subtitulo {
    font-size: .98rem;
  }
  .pagina-home .hero__lateral {
    display: none;
  }
  .pagina-home .hero__acoes {
    gap: 10px;
  }
  .pagina-home .hero__acoes .botao {
    width: 100%;
  }
}


/* Home v0.8.0 — composição alinhada ao layout institucional aprovado. */
.pagina-home .cabecalho {
  min-height: 78px;
  color: var(--azul-950);
  background: rgba(255,255,255,.96);
  border-bottom: 0;
}
.pagina-home .cabecalho__linha {
  min-height: 78px;
}
.pagina-home .cabecalho .marca {
  gap: 12px;
  color: var(--azul-950);
  font-size: 1.96rem;
}
.pagina-home .cabecalho .marca__icone {
  width: 47px;
  height: 47px;
  border-radius: 9px;
  box-shadow: 0 9px 19px rgba(45,155,255,.24);
}
.pagina-home .cabecalho .marca__nome,
.pagina-home .cabecalho .navegacao a {
  color: var(--azul-950);
}
.pagina-home .cabecalho .navegacao {
  gap: 38px;
  font-size: .76rem;
}
.pagina-home .cabecalho .botao--contorno {
  min-width: 198px;
  min-height: 40px;
  border-color: #14356b;
  border-radius: 999px;
  background: transparent;
  color: #0b2454;
}

.pagina-home .hero,
.pagina-home .hero__conteudo {
  min-height: 342px;
}
.pagina-home .hero {
  color: var(--azul-950);
  background:
    radial-gradient(circle at 82% 47%, rgba(45,155,255,.09), transparent 25%),
    linear-gradient(180deg, #fff 0%, #fbfdff 100%);
  border-bottom: 1px solid #edf2f8;
}
.pagina-home .hero::before {
  background:
    linear-gradient(132deg, transparent 0 56%, rgba(45,155,255,.055) 56% 68%, transparent 68%),
    linear-gradient(38deg, rgba(45,155,255,.05) 0 8%, transparent 8% 100%);
}
.pagina-home .hero::after {
  content: none;
}
.pagina-home .hero__grafismo {
  position: absolute;
  z-index: 1;
  top: 12px;
  right: max(calc((100vw - var(--max)) / 2 - 40px), -40px);
  width: min(50vw, 620px);
  height: calc(100% - 18px);
  overflow: visible;
  pointer-events: none;
  stroke: rgba(45,124,255,.28);
  stroke-width: 1.15;
}
.pagina-home .hero__slide {
  z-index: 2;
}
.pagina-home .hero__conteudo {
  padding-top: 42px;
  padding-bottom: 52px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
  align-items: stretch;
}
.pagina-home .hero__texto {
  align-self: center;
  max-width: 585px;
}
.pagina-home .hero .eyebrow {
  margin: 0 0 17px;
  color: #355e91;
  font-size: .59rem;
  letter-spacing: .34em;
}
.pagina-home .hero .eyebrow::after {
  content: "";
  display: block;
  width: 37px;
  height: 1px;
  margin-top: 12px;
  background: #173f77;
}
.pagina-home .hero h1,
.pagina-home .hero h2 {
  max-width: 620px;
  color: #0a1e58;
  font-size: clamp(3.35rem, 5.2vw, 4.45rem);
  line-height: .96;
  letter-spacing: -.058em;
  font-weight: 260;
}
.pagina-home .hero h1 strong,
.pagina-home .hero h2 strong {
  color: #126ff5;
  font-weight: 280;
}
.pagina-home .hero__subtitulo {
  max-width: 570px;
  margin: 14px 0 20px;
  color: #243c68;
  font-size: 1.02rem;
  line-height: 1.42;
}
.pagina-home .hero__acoes {
  gap: 13px;
}
.pagina-home .hero__acoes .botao {
  min-height: 43px;
  padding-inline: 27px;
  border-radius: 999px;
  font-size: .8rem;
}
.pagina-home .botao--azul {
  background: #0877f9;
  box-shadow: 0 8px 22px rgba(8,119,249,.16);
}
.pagina-home .botao--hero-contorno {
  border-color: #173c6c;
  background: rgba(255,255,255,.7);
  color: #102f59;
}
.pagina-home .hero__lateral {
  position: relative;
  align-self: stretch;
  justify-self: stretch;
  width: 100%;
  max-width: none;
  padding: 0;
  border-left: 0;
  color: var(--texto-suave);
}
.pagina-home .hero__lateral p {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 155px;
  margin: 0;
  font-size: .76rem;
  line-height: 1.45;
}
.pagina-home .hero__lateral > span {
  position: absolute;
  top: 102px;
  left: 0;
  width: 44px;
  margin: 0;
  background: #32598f;
}
.pagina-home .hero__lateral ul {
  position: absolute;
  top: 0;
  left: 0;
}
.pagina-home .hero__lateral li {
  margin: 6px 0;
  color: #2d568c;
  font-size: .56rem;
  letter-spacing: .32em;
}
.pagina-home .hero__controles {
  left: max(calc((100% - var(--max)) / 2), 20px);
  bottom: 9px;
  width: auto;
  transform: none;
  gap: 5px;
  opacity: .42;
  transition: opacity .2s ease;
}
.pagina-home .hero__controles:hover,
.pagina-home .hero__controles:focus-within {
  opacity: 1;
}
.pagina-home .hero__ponto {
  width: 6px;
  height: 6px;
}
.pagina-home .hero__ponto.is-active {
  width: 20px;
}
.pagina-home .hero__pausa {
  width: 28px;
  min-height: 28px;
  padding: 0;
  border-radius: 50%;
  font-size: 0;
}
.pagina-home .hero__pausa::after {
  content: "Ⅱ";
  font-size: .66rem;
}
.pagina-home .hero__seta {
  display: none;
}

.pagina-home .secao#produtos {
  padding: 34px 0 40px !important;
}
.pagina-home .secao__cabecalho {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 370px);
  gap: 60px;
  align-items: end;
  margin-bottom: 18px;
}
.pagina-home .secao__cabecalho h2,
.pagina-home .faixa-local__titulo h2,
.pagina-home .ecossistema__titulo h2 {
  color: #0a1e58;
  font-size: 2rem;
  line-height: 1.06;
  letter-spacing: -.045em;
  font-weight: 300;
}
.pagina-home .secao__cabecalho p,
.pagina-home .faixa-local__descricao,
.pagina-home .ecossistema__titulo p {
  color: var(--texto-suave);
  font-size: .78rem;
  line-height: 1.4;
}
.pagina-home .rotulo {
  margin-bottom: 10px;
  color: #0066e9;
  font-size: .55rem;
  letter-spacing: .34em;
}
.pagina-home .rotulo::after {
  content: "";
  display: inline-block;
  width: 42px;
  height: 1px;
  margin: 0 0 3px 14px;
  background: currentColor;
}
.pagina-home .grade-produtos {
  gap: 12px;
}
.pagina-home .cartao-produto {
  min-height: 166px;
  padding: 20px 24px 18px;
  border-color: #d6e2ef;
  border-radius: 5px;
  background: rgba(255,255,255,.82);
}
.pagina-home .cartao-produto[href]:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(7,27,53,.09);
}
.pagina-home .cartao-produto__corpo {
  display: grid;
  grid-template-columns: 55px minmax(0,1fr);
  gap: 16px;
  align-items: start;
}
.pagina-home .cartao-produto__simbolo {
  width: 50px;
  height: 50px;
  flex-basis: 50px;
}
.pagina-home .cartao-produto h3 {
  margin: 2px 0 3px;
  color: #0a1e58;
  font-size: 1.16rem;
  font-weight: 450;
}
.pagina-home .cartao-produto p {
  margin: 0;
  color: var(--texto-suave);
  font-size: .79rem;
  line-height: 1.42;
}
.pagina-home .cartao-produto__link {
  margin: 8px 0 0 71px;
  color: #006bf0;
  font-size: .78rem;
}

.pagina-home .faixa-local {
  padding: 29px 0 34px;
  border-color: #edf2f8;
  background: #fff;
}
.pagina-home .faixa-local__conteudo {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(300px,370px);
  grid-template-areas:
    "titulo descricao"
    "cartao cartao";
  gap: 13px 60px;
  align-items: end;
}
.pagina-home .faixa-local__titulo {
  grid-area: titulo;
}
.pagina-home .faixa-local__descricao {
  grid-area: descricao;
  margin: 0 0 3px;
}
.pagina-home .faixa-local__titulo h2 {
  margin: 0;
}
.pagina-home .chaveiro {
  grid-area: cartao;
  min-height: 94px;
  padding: 17px 28px;
  gap: 22px;
  border-color: #d6e2ef;
  border-radius: 5px;
}
.pagina-home .chaveiro__icone {
  width: 62px;
  height: 58px;
  flex: 0 0 62px;
}
.pagina-home .chaveiro__icone svg {
  width: 56px;
  height: 56px;
}
.pagina-home .chaveiro h3 {
  margin-bottom: 1px;
  color: #0a1e58;
  font-size: 1.16rem;
  font-weight: 450;
}
.pagina-home .chaveiro p,
.pagina-home .chaveiro__link {
  font-size: .79rem;
}
.pagina-home .chaveiro__link {
  color: #006bf0;
}

.pagina-home #ecossistema.secao {
  padding: 34px 0 37px;
}
.pagina-home .secao--suave {
  background: linear-gradient(180deg,#fff 0%,#fbfdff 100%);
}
.pagina-home .ecossistema__titulo {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(300px,370px);
  grid-template-rows: auto auto;
  gap: 0 60px;
  max-width: none;
  margin-bottom: 17px;
}
.pagina-home .ecossistema__titulo .rotulo {
  grid-column: 1;
  grid-row: 1;
}
.pagina-home .ecossistema__titulo h2 {
  grid-column: 1;
  grid-row: 2;
  margin: 0;
}
.pagina-home .ecossistema__titulo p {
  grid-column: 2;
  grid-row: 1 / 3;
  align-self: end;
  margin: 0 0 3px;
}
.pagina-home .grade-capacidades {
  gap: 12px;
  border: 0;
}
.pagina-home .capacidade {
  display: grid;
  grid-template-columns: 52px minmax(0,1fr);
  grid-template-rows: auto auto;
  column-gap: 14px;
  align-content: center;
  min-height: 112px;
  padding: 16px 18px;
  border: 1px solid #d6e2ef;
  border-radius: 5px;
  background: rgba(255,255,255,.74);
}
.pagina-home .capacidade__icone {
  grid-column: 1;
  grid-row: 1 / 3;
  align-self: center;
  width: 48px;
  height: 48px;
  margin: 0;
  color: #0877f9;
}
.pagina-home .capacidade:first-child .capacidade__icone {
  color: #0a1e58;
}
.pagina-home .capacidade h3 {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  margin: 0 0 3px;
  color: #0a1e58;
  font-size: .96rem;
  font-weight: 500;
}
.pagina-home .capacidade p {
  grid-column: 2;
  grid-row: 2;
  margin: 0;
  color: var(--texto-suave);
  font-size: .73rem;
  line-height: 1.38;
}

.pagina-home .valores {
  padding: 25px 0 29px;
  background: #fff;
}
.pagina-home .valores .rotulo {
  margin-bottom: 13px;
}
.pagina-home .grade-valores {
  border-top: 0;
}
.pagina-home .valor {
  display: grid;
  grid-template-columns: 52px minmax(0,1fr);
  grid-template-rows: auto auto;
  column-gap: 13px;
  align-content: center;
  min-height: 78px;
  padding: 7px 21px;
  border-right-color: #d6e2ef;
}
.pagina-home .valor:first-child {
  padding-left: 6px;
}
.pagina-home .valor__icone {
  grid-column: 1;
  grid-row: 1 / 3;
  align-self: center;
  width: 43px;
  height: 43px;
  margin: 0;
  color: #0a1e58;
}
.pagina-home .valor h3 {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  margin: 0 0 2px;
  color: #0a1e58;
  font-size: .84rem;
  font-weight: 500;
}
.pagina-home .valor p {
  grid-column: 2;
  grid-row: 2;
  margin: 0;
  color: var(--texto-suave);
  font-size: .7rem;
  line-height: 1.35;
}

.pagina-home .rodape {
  padding: 27px 0 15px;
  background:
    radial-gradient(circle at 80% 10%, rgba(45,155,255,.14), transparent 34%),
    linear-gradient(115deg,#06172d,#0a3159);
}
.pagina-home .rodape__grade {
  grid-template-columns: 1.28fr .86fr 1fr;
  gap: 52px;
}
.pagina-home .rodape .marca {
  margin-bottom: 9px;
  font-size: 1.4rem;
}
.pagina-home .rodape .marca__icone {
  width: 36px;
  height: 36px;
  border-radius: 8px;
}
.pagina-home .rodape p,
.pagina-home .rodape a {
  font-size: .75rem;
  line-height: 1.4;
}
.pagina-home .rodape__grade > div > p:not(.eyebrow) {
  margin: 0;
}
.pagina-home .rodape .eyebrow {
  margin: 1px 0 9px;
  font-size: .53rem;
}
.pagina-home .rodape__links {
  gap: 5px 22px;
}
.pagina-home .rodape__base {
  margin-top: 18px;
  padding-top: 11px;
  font-size: .68rem;
}
.pagina-home .acessibilidade__gatilho {
  width: 44px;
  min-height: 44px;
  justify-content: center;
  padding: 0;
  border-radius: 50%;
}
.pagina-home .acessibilidade__texto {
  display: none;
}

html[data-tema="escuro"] .pagina-home .cabecalho {
  color: #fff;
  background:
    radial-gradient(circle at 78% -30%, rgba(49,133,219,.34), transparent 36%),
    linear-gradient(103deg,#06172d 0%,#0a3158 60%,#08213f 100%);
}
html[data-tema="escuro"] .pagina-home .cabecalho .marca__nome,
html[data-tema="escuro"] .pagina-home .cabecalho .navegacao a {
  color: #fff;
}
html[data-tema="escuro"] .pagina-home .cabecalho .botao--contorno {
  border-color: rgba(255,255,255,.55);
  color: #fff;
}
html[data-tema="escuro"] .pagina-home .hero__grafismo {
  stroke: rgba(100,189,255,.18);
}
html[data-tema="escuro"] .pagina-home .secao--suave {
  background: linear-gradient(180deg,#0b1e33,#08182a);
}
html[data-tema="escuro"] .pagina-home .faixa-local,
html[data-tema="escuro"] .pagina-home .valores {
  background: var(--fundo-suave);
}
html[data-tema="escuro"] .pagina-home .secao__cabecalho h2,
html[data-tema="escuro"] .pagina-home .faixa-local__titulo h2,
html[data-tema="escuro"] .pagina-home .ecossistema__titulo h2,
html[data-tema="escuro"] .pagina-home .cartao-produto h3,
html[data-tema="escuro"] .pagina-home .chaveiro h3,
html[data-tema="escuro"] .pagina-home .capacidade h3,
html[data-tema="escuro"] .pagina-home .valor h3 {
  color: var(--texto);
}
html[data-tema="escuro"] .pagina-home .capacidade {
  background: var(--fundo-cartao);
}
html[data-tema="escuro"] .pagina-home .capacidade:first-child .capacidade__icone,
html[data-tema="escuro"] .pagina-home .valor__icone {
  color: #8bc8ff;
}
html[data-tema="escuro"] .pagina-home .botao--azul {
  color: #fff;
}
html[data-tema="escuro"] .pagina-home .secao__cabecalho p,
html[data-tema="escuro"] .pagina-home .faixa-local__descricao,
html[data-tema="escuro"] .pagina-home .ecossistema__titulo p,
html[data-tema="escuro"] .pagina-home .cartao-produto p,
html[data-tema="escuro"] .pagina-home .chaveiro p,
html[data-tema="escuro"] .pagina-home .capacidade p,
html[data-tema="escuro"] .pagina-home .valor p {
  color: #aebfd4;
}

@media (min-width: 901px) {
  .pagina-home .hero,
  .pagina-home .hero__conteudo {
    min-height: 342px !important;
  }
  .pagina-home .secao#produtos {
    padding-top: 34px;
  }
}

@media (max-width: 900px) {
  .pagina-home .cabecalho,
  .pagina-home .cabecalho__linha {
    min-height: 72px;
  }
  .pagina-home .cabecalho .marca {
    font-size: 1.42rem;
  }
  .pagina-home .hero,
  .pagina-home .hero__conteudo {
    min-height: 470px;
  }
  .pagina-home .hero__conteudo {
    padding-top: 52px;
    padding-bottom: 62px;
    grid-template-columns: 1fr;
  }
  .pagina-home .hero__grafismo {
    top: 55px;
    right: -110px;
    width: 610px;
    opacity: .7;
  }
  .pagina-home .hero__lateral {
    display: none;
  }
  .pagina-home .secao__cabecalho,
  .pagina-home .faixa-local__conteudo,
  .pagina-home .ecossistema__titulo {
    grid-template-columns: 1fr;
  }
  .pagina-home .secao__cabecalho {
    gap: 0;
  }
  .pagina-home .faixa-local__conteudo {
    grid-template-areas: "titulo" "descricao" "cartao";
    gap: 10px;
  }
  .pagina-home .ecossistema__titulo .rotulo,
  .pagina-home .ecossistema__titulo h2,
  .pagina-home .ecossistema__titulo p {
    grid-column: 1;
    grid-row: auto;
  }
  .pagina-home .ecossistema__titulo p,
  .pagina-home .secao__cabecalho p {
    margin-top: 10px;
  }
  .pagina-home .grade-capacidades {
    grid-template-columns: 1fr 1fr;
  }
  .pagina-home .capacidade:nth-child(-n+2) {
    border-bottom: 1px solid #d6e2ef;
  }
  .pagina-home .grade-valores {
    grid-template-columns: 1fr 1fr;
  }
  .pagina-home .valor:nth-child(-n+2) {
    padding-bottom: 7px;
  }
  .pagina-home .rodape__grade {
    grid-template-columns: 1.2fr 1fr 1fr;
    gap: 30px;
  }
}

@media (max-width: 580px) {
  .pagina-home .cabecalho .marca {
    font-size: 1.3rem;
  }
  .pagina-home .cabecalho .marca__icone {
    width: 38px;
    height: 38px;
  }
  .pagina-home .cabecalho .botao--contorno {
    min-width: 42px;
    width: 42px;
    padding: 0;
    font-size: 0;
  }
  .pagina-home .cabecalho .botao--contorno span {
    font-size: 1rem;
  }
  .pagina-home .hero,
  .pagina-home .hero__conteudo {
    min-height: 455px;
  }
  .pagina-home .hero__conteudo {
    padding-top: 42px;
  }
  .pagina-home .hero h1,
  .pagina-home .hero h2 {
    font-size: 3.02rem;
  }
  .pagina-home .hero__subtitulo {
    font-size: .94rem;
  }
  .pagina-home .hero__acoes .botao {
    width: 100%;
  }
  .pagina-home .grade-produtos,
  .pagina-home .grade-capacidades,
  .pagina-home .grade-valores {
    grid-template-columns: 1fr;
  }
  .pagina-home .cartao-produto {
    min-height: 150px;
  }
  .pagina-home .chaveiro {
    align-items: flex-start;
    padding: 20px;
    flex-wrap: wrap;
  }
  .pagina-home .chaveiro__link {
    width: 100%;
    margin-left: 84px;
  }
  .pagina-home .capacidade,
  .pagina-home .valor,
  .pagina-home .capacidade:nth-child(2),
  .pagina-home .valor:nth-child(2) {
    border-right: 1px solid #d6e2ef;
    border-bottom: 1px solid #d6e2ef;
  }
  .pagina-home .valor:first-child {
    padding-left: 21px;
  }
  .pagina-home .rodape__grade {
    grid-template-columns: 1fr;
    gap: 22px;
  }
}

/* Páginas internas v0.8.0 — o mesmo sistema editorial da Index. */
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) {
  --pagina-acento: #0877f9;
  background: #fff;
}
.pagina-nuttrion { --pagina-acento: #20a86b; }

body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho {
  position: relative;
  inset: auto;
  min-height: 78px;
  color: var(--azul-950);
  background: rgba(255,255,255,.97);
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho__linha {
  min-height: 78px;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .marca {
  gap: 12px;
  color: var(--azul-950);
  font-size: 1.68rem;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .marca__icone {
  width: 43px;
  height: 43px;
  border-radius: 9px;
  box-shadow: 0 9px 19px rgba(45,155,255,.24);
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .marca__nome,
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .navegacao a {
  color: var(--azul-950);
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .navegacao {
  gap: 38px;
  font-size: .76rem;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .botao--contorno {
  min-width: 198px;
  min-height: 40px;
  border-color: #14356b;
  border-radius: 999px;
  background: transparent;
  color: #0b2454;
}

body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .botao {
  min-height: 43px;
  padding-inline: 26px;
  border-radius: 999px;
  font-size: .8rem;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rotulo {
  margin-bottom: 10px;
  color: var(--pagina-acento);
  font-size: .55rem;
  letter-spacing: .34em;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rotulo::after {
  content: "";
  display: inline-block;
  width: 42px;
  height: 1px;
  margin: 0 0 3px 14px;
  background: currentColor;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao {
  padding: 66px 0 72px;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao--suave {
  background: linear-gradient(180deg,#fff 0%,#f8fbff 100%);
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao__cabecalho {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(300px,370px);
  gap: 60px;
  align-items: end;
  margin-bottom: 26px;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao__cabecalho h2 {
  max-width: 760px;
  color: #0a1e58;
  font-size: clamp(2rem,3.2vw,3rem);
  line-height: 1.04;
  letter-spacing: -.046em;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao__cabecalho p {
  max-width: 370px;
  color: var(--texto-suave);
  font-size: .82rem;
  line-height: 1.45;
}

.cheow-hero,
.nuttrion-hero,
.chaveiro-hero,
.cert-hero,
.acessibilidade-hero {
  position: relative;
  min-height: 0;
  padding: 64px 0 70px;
  overflow: hidden;
}
.cheow-hero::before,
.nuttrion-hero::before,
.chaveiro-hero::before,
.cert-hero::before,
.acessibilidade-hero::before {
  content: "G";
  position: absolute;
  z-index: 0;
  top: 50%;
  right: -1.5vw;
  transform: translateY(-52%);
  color: transparent;
  font-family: "Segoe UI", sans-serif;
  font-size: clamp(21rem,34vw,32rem);
  font-weight: 650;
  line-height: 1;
  letter-spacing: -.12em;
  -webkit-text-stroke: 1px rgba(104,185,255,.2);
  pointer-events: none;
}
.nuttrion-hero::before { -webkit-text-stroke-color: rgba(111,220,181,.22); }
.cheow-hero::after,
.nuttrion-hero::after,
.cert-hero::after { opacity: .42; }
.cheow-hero__grid,
.nuttrion-hero__grid,
.chaveiro-hero__grid,
.cert-hero__grid,
.acessibilidade-hero__grid {
  position: relative;
  z-index: 2;
  gap: 54px;
}
.cheow-hero h1,
.nuttrion-hero h1,
.chaveiro-hero h1,
.cert-hero h1,
.acessibilidade-hero h1 {
  max-width: 780px;
  margin-top: 0;
  margin-bottom: 18px;
  font-size: clamp(3.1rem,5vw,4.55rem);
  line-height: .98;
  letter-spacing: -.057em;
  font-weight: 280;
}
.cheow-hero p,
.nuttrion-hero > .container > div > p:not(.eyebrow),
.chaveiro-hero p:not(.eyebrow),
.cert-hero__texto,
.acessibilidade-hero p:not(.eyebrow) {
  max-width: 650px;
  font-size: .98rem;
  line-height: 1.48;
}
.cheow-hero .eyebrow,
.nuttrion-hero .eyebrow,
.chaveiro-hero .eyebrow,
.cert-hero .eyebrow,
.acessibilidade-hero .eyebrow {
  margin-bottom: 16px;
  font-size: .57rem;
  letter-spacing: .34em;
}
.cheow-hero .eyebrow::after,
.nuttrion-hero .eyebrow::after,
.chaveiro-hero .eyebrow::after,
.cert-hero .eyebrow::after,
.acessibilidade-hero .eyebrow::after {
  content: "";
  display: block;
  width: 38px;
  height: 1px;
  margin-top: 12px;
  background: currentColor;
}
.cheow-hero__painel,
.nuttrion-hero__painel,
.acessibilidade-hero__nota {
  min-height: 270px;
  padding: 27px;
  border-radius: 5px;
  box-shadow: none;
  backdrop-filter: blur(4px);
}
.chaveiro-hero {
  display: flex;
  align-items: center;
}
.chaveiro-hero__painel {
  box-shadow: none;
}
.chaveiro-hero__painel span { padding: 18px 17px; font-size: .64rem; }
.cert-hero__destaque {
  margin-top: 18px;
  font-size: clamp(1.2rem,2vw,1.65rem);
}
.cert-hero__texto { margin-top: 18px; }
.cert-hero__acoes { margin-top: 26px; }
.cert-hero__painel div {
  grid-template-columns: 36px 124px 1fr;
  gap: 14px;
  padding: 16px 0;
}
.cert-hero__painel strong { font-size: .94rem; }
.cert-hero__painel small { font-size: .78rem; }
.pagina-acoes {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  margin-top: 25px;
}
.pagina-final__acoes {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 11px;
}

/* Cheow */
.texto-editorial { max-width: 1035px; }
.texto-editorial h2 {
  max-width: 850px;
  margin-bottom: 20px;
  color: #0a1e58;
  font-size: clamp(2rem,3.35vw,3.2rem);
}
.texto-editorial p { max-width: 850px; font-size: .98rem; }
.grade-beneficios { gap: 12px; margin-top: 34px; }
.beneficio {
  min-height: 150px;
  padding: 23px 25px;
  border-color: #d6e2ef;
  border-radius: 5px;
}
.beneficio h3 { margin-bottom: 8px; color: #0a1e58; font-size: 1.08rem; font-weight: 520; }
.beneficio p { font-size: .86rem; line-height: 1.48; }
.frase-destaque {
  margin: 45px 0;
  padding: 34px 0;
  color: #0a1e58;
  font-size: clamp(2.2rem,4vw,3.55rem);
}
.cheow-cenario {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  border-top: 1px solid var(--linha);
  border-left: 1px solid var(--linha);
}
.cheow-cenario article {
  min-height: 154px;
  padding: 23px;
  border-right: 1px solid var(--linha);
  border-bottom: 1px solid var(--linha);
  background: var(--fundo-cartao);
}
.cheow-cenario span,
.beneficio__indice,
.grade-sinais-cheow span,
.cheow-pilares > article > span {
  display: block;
  margin-bottom: 17px;
  color: #3578b8;
  font-size: .65rem;
  letter-spacing: .18em;
}
.cheow-cenario strong { display: block; margin-bottom: 8px; color: #0a1e58; font-size: 1rem; }
.cheow-cenario p { margin: 0; color: var(--texto-suave); font-size: .84rem; }
.cheow-problema .frase-destaque { margin-bottom: 0; }
.grade-sinais-cheow {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  border-top: 1px solid var(--linha);
  border-left: 1px solid var(--linha);
}
.grade-sinais-cheow article {
  min-height: 130px;
  padding: 21px;
  border-right: 1px solid var(--linha);
  border-bottom: 1px solid var(--linha);
  background: rgba(255,255,255,.72);
}
.grade-sinais-cheow strong { color: #0a1e58; font-size: .92rem; line-height: 1.35; }
.cheow-visao__fecho { margin: 28px 0 0; color: #294462; font-size: 1.1rem; }
.cheow-visao__fecho strong { color: #0a1e58; }
.cheow-continuidade {
  padding: 72px 0;
  color: #fff;
  background: linear-gradient(125deg,#06172d,#0a3159 62%,#0a4775);
}
.cheow-continuidade__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 62px; align-items: start; }
.cheow-continuidade h2 {
  margin: 0 0 20px;
  font-size: clamp(2.25rem,3.7vw,3.55rem);
  line-height: 1.03;
  letter-spacing: -.05em;
  font-weight: 300;
}
.cheow-continuidade p { max-width: 570px; color: #c8d9e8; font-size: .94rem; }
.cheow-continuidade .rotulo { color: #70c8ff; }
.cheow-continuidade__itens { border-top: 1px solid rgba(255,255,255,.17); }
.cheow-continuidade__itens article {
  display: grid;
  grid-template-columns: 145px 1fr;
  gap: 22px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255,255,255,.17);
}
.cheow-continuidade__itens span { color: #70c8ff; text-transform: uppercase; letter-spacing: .15em; font-size: .64rem; }
.cheow-continuidade__itens strong { font-size: .94rem; font-weight: 460; }
.grade-beneficios--cheow { grid-template-columns: repeat(4,1fr); }
.grade-beneficios--cheow .beneficio { min-height: 175px; }
.cheow-comissoes__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 62px; align-items: center; }
.cheow-comissoes h2 {
  margin: 0 0 18px;
  color: #0a1e58;
  font-size: clamp(2.25rem,3.7vw,3.55rem);
  line-height: 1.03;
  letter-spacing: -.05em;
  font-weight: 300;
}
.cheow-comissoes p { color: var(--texto-suave); font-size: .94rem; }
.cheow-comissoes__painel {
  padding: 29px 0;
  border-top: 1px solid var(--linha);
  border-bottom: 1px solid var(--linha);
}
.cheow-comissoes__painel strong { display: block; color: #0a1e58; font-size: clamp(1.75rem,2.9vw,2.65rem); line-height: 1.12; font-weight: 320; letter-spacing: -.04em; }
.cheow-comissoes__painel p { margin: 18px 0 0; }
.cheow-pilares { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.cheow-pilares article { min-height: 170px; padding: 23px; border: 1px solid #d6e2ef; border-radius: 5px; background: var(--fundo-cartao); }
.cheow-pilares h3 { margin: 0 0 9px; color: #0a1e58; font-size: 1.04rem; }
.cheow-pilares p { margin: 0; color: var(--texto-suave); font-size: .84rem; }

/* Nuttrion */
.nuttrion-intro__grid { gap: 62px; }
.nuttrion-intro h2,
.nuttrion-longitudinal h2,
.nuttrion-familia h2,
.nuttrion-publicos h2,
.nuttrion-destaque-infantil h2 {
  font-size: clamp(2.25rem,3.7vw,3.55rem);
  line-height: 1.03;
}
.nuttrion-intro__texto p { font-size: .96rem; }
.grade-gestao-nuttrion { grid-template-columns: repeat(4,1fr); }
.grade-gestao-nuttrion { margin-top: 38px; }
.grade-gestao-nuttrion article { min-height: 142px; padding: 23px; }
.grade-gestao-nuttrion h3 { margin-bottom: 8px; color: #0a1e58; font-size: 1.06rem; }
.grade-gestao-nuttrion p { font-size: .85rem; line-height: 1.45; }
.nuttrion-frase { margin-top: 50px; padding: 32px 0 6px; }
.nuttrion-frase--inicio { margin-bottom: 52px; padding-top: 0; }
.nuttrion-frase span,
.nuttrion-frase strong { font-size: clamp(2.1rem,3.8vw,3.55rem); }
.grade-escalas { gap: 12px; }
.escala-card {
  min-height: 382px;
  padding: 27px;
  border-color: #d6e2ef;
  border-radius: 5px;
}
.escala-card__cabecalho { margin-bottom: 27px; }
.escala-card h3 { font-size: clamp(1.55rem,2.5vw,2.25rem); }
.escala-card p,
.escala-card li { font-size: .88rem; }
.escala-card ul { margin-top: 21px; padding-top: 18px; }
.nota-clinica { margin-top: 18px; padding: 17px 20px; font-size: .84rem; }
.nuttrion-longitudinal,
.nuttrion-familia { padding: 72px 0; }
.nuttrion-longitudinal__grid,
.nuttrion-familia__grid,
.nuttrion-publicos__grid { gap: 60px; }
.nuttrion-sequencia span { padding: 13px 0; font-size: .94rem; }
.fluxo-nuttrion article { min-height: 188px; padding: 24px 20px; }
.fluxo-nuttrion span { width: 34px; height: 34px; margin-bottom: 22px; font-size: .84rem; }
.fluxo-nuttrion h3 { font-size: 1rem; }
.fluxo-nuttrion p { font-size: .83rem; }
.nuttrion-familia__painel div { padding: 18px 0; }
.linha-jornada span { padding: 9px 13px; font-size: .82rem; }
.grade-operacao-nuttrion { gap: 52px; }
.grade-operacao-nuttrion article { padding-right: 26px; }
.grade-operacao-nuttrion article + article { padding-left: 45px; }
.grade-operacao-nuttrion h2 { font-size: clamp(2rem,3vw,2.85rem); }
.grade-operacao-nuttrion p { font-size: .92rem; }
.nuttrion-publicos aside { padding: 27px; border-radius: 5px; }
.nuttrion-publicos aside h3 { font-size: 1.42rem; }
.nuttrion-destaque-infantil { padding: 72px 0; }

/* Chaveiro */
.grade-beneficios--chaveiro .beneficio { padding-top: 51px; }
.beneficio__numero { top: 20px; left: 24px; }
.grade-recursos-chaveiro article,
.chaveiro-estrutura__itens article { min-height: 116px; padding: 21px; }
.grade-recursos-chaveiro span { margin-bottom: 14px; }
.grade-recursos-chaveiro h3 { color: #0a1e58; font-size: .96rem; }
.chaveiro-estrutura { padding: 68px 0 72px; }
.chaveiro-estrutura__grid { gap: 62px; }
.chaveiro-estrutura h2 { color: #0a1e58; font-size: clamp(2.2rem,3.55vw,3.4rem); }
.chaveiro-estrutura__itens strong { color: #0a1e58; font-size: .98rem; }
.chaveiro-estrutura__itens span { font-size: .83rem; }

/* Certificação */
.cert-intro__grid,
.cert-rastreabilidade__grid,
.cert-multi-tenant__grid,
.cert-ai__grid,
.cert-adversarial__grid,
.cert-zero__grid,
.cert-rodadas__grid,
.cert-trust__grid { gap: 62px; }
.cert-intro h2,
.cert-rastreabilidade h2,
.cert-multi-tenant h2,
.cert-ai h2,
.cert-adversarial h2,
.cert-zero h2,
.cert-rodadas h2,
.cert-trust h2 {
  font-size: clamp(2.25rem,3.7vw,3.55rem);
  line-height: 1.03;
}
.cert-intro__texto,
.cert-ai__grid > div:last-child,
.cert-trust__grid > div:last-child { font-size: .94rem; }
.cert-manifesto { margin-top: 42px; padding: 20px 0; font-size: .98rem; }
.cert-rastreabilidade,
.cert-multi-tenant,
.cert-adversarial,
.cert-rodadas,
.cert-publicos { padding: 70px 0; }
.cert-formula { gap: 8px; }
.cert-formula span { padding: 10px 13px; font-size: .82rem; }
.grade-perfis { gap: 12px; }
.perfil-card {
  min-height: 382px;
  padding: 25px;
  border-color: #d6e2ef;
  border-radius: 5px;
}
.perfil-card__codigo { margin-bottom: 21px; }
.perfil-card h3 { font-size: 1.5rem; }
.perfil-card p { min-height: 78px; font-size: .86rem; }
.perfil-card > strong,
.perfil-card li { font-size: .84rem; }
.perfil-card ul { padding-top: 18px; }
.cert-tabela-wrap { margin-top: 28px; border-radius: 5px; }
.cert-tabela th,
.cert-tabela td { padding: 14px 16px; font-size: .84rem; }
.grade-dominios { gap: 8px; }
.grade-dominios details { border-radius: 4px; }
.grade-dominios summary { padding: 15px 17px; font-size: .88rem; }
.grade-dominios details p { padding: 0 17px 17px; font-size: .82rem; }
.cert-multi-tenant__itens article { padding: 21px; }
.cert-multi-tenant__itens strong { font-size: .96rem; }
.cert-multi-tenant__itens p { font-size: .82rem; }
.cert-nota { padding: 17px; font-size: .86rem; }
.grade-testes article { min-height: 120px; padding: 20px; }
.grade-testes strong { font-size: .94rem; }
.grade-testes span { font-size: .81rem; }
.cert-perguntas p { padding: 13px 0; font-size: .9rem; }
.grade-zero span { padding: 17px; font-size: .84rem; }
.cert-passos li { min-height: 132px; padding: 20px; grid-template-columns: 40px 1fr; gap: 12px; }
.cert-passos strong { font-size: .96rem; }
.cert-passos p { font-size: .82rem; }
.cert-rodadas__exemplo { gap: 8px; }
.cert-rodadas__exemplo div { min-height: 106px; padding: 17px; border-radius: 4px; }
.cert-rodadas__nota { margin-top: 29px; padding-top: 20px; font-size: .88rem; }
.grade-status { gap: 10px; }
.grade-status article { min-height: 150px; padding: 21px; border-radius: 5px; }
.grade-status strong { margin-bottom: 16px; font-size: .84rem; }
.grade-status p { font-size: .82rem; }
.cert-modelos { padding: 66px 0 72px; }
.cert-modelos__grid { gap: 12px; }
.cert-modelos article { padding: 28px; }
.cert-modelos h2 { font-size: 1.65rem; }
.cert-trust blockquote { margin-top: 21px; padding: 18px 0 18px 21px; font-size: 1rem; }
.grade-publicos article { padding: 27px; }
.grade-publicos span { margin-bottom: 18px; }
.grade-publicos h3 { margin-bottom: 12px; font-size: 1.35rem; }
.grade-publicos p { font-size: .84rem; }

/* Acessibilidade */
.acessibilidade-hero__nota span { margin: 13px 0; font-size: 1.65rem; }
.grade-acessibilidade { gap: 12px; }
.grade-acessibilidade article {
  min-height: 176px;
  padding: 23px;
  border-color: #d6e2ef;
  border-radius: 5px;
}
.grade-acessibilidade article > span { margin-bottom: 16px; }
.grade-acessibilidade h3 { color: #0a1e58; font-size: 1.08rem; }
.grade-acessibilidade p { font-size: .84rem; }
.acessibilidade-conteudo { gap: 62px; }
.acessibilidade-conteudo h2 { color: #0a1e58; font-size: clamp(2.25rem,3.7vw,3.55rem); }
.acessibilidade-conteudo > div:last-child { font-size: .94rem; }
.grade-valores--acessibilidade .valor { min-height: 118px; }

/* Encerramentos e rodapés compactos. */
.cheow-final,
.nuttrion-final,
.chaveiro-final,
.cert-final { padding: 76px 0 80px; }
.cheow-final h2,
.nuttrion-final h2,
.chaveiro-final h2,
.cert-final h2 {
  max-width: 900px;
  margin-bottom: 18px;
  font-size: clamp(2.3rem,4vw,3.65rem);
  line-height: 1.02;
}
.cheow-final p,
.nuttrion-final p,
.chaveiro-final > .container > p:not(.eyebrow),
.cert-final > .container > p:not(.eyebrow) {
  margin-bottom: 25px;
  font-size: .93rem;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape {
  padding: 27px 0 15px;
  background:
    radial-gradient(circle at 80% 10%, rgba(45,155,255,.14), transparent 34%),
    linear-gradient(115deg,#06172d,#0a3159);
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape__grade {
  grid-template-columns: 1.28fr .86fr 1fr;
  gap: 52px;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape .marca {
  margin-bottom: 9px;
  font-size: 1.4rem;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape .marca__icone {
  width: 36px;
  height: 36px;
  border-radius: 8px;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape p,
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape a {
  font-size: .75rem;
  line-height: 1.4;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape__grade > div > p:not(.eyebrow) { margin: 0; }
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape .eyebrow {
  margin: 1px 0 9px;
  font-size: .53rem;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape__links { gap: 5px 22px; }
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape__base {
  margin-top: 18px;
  padding-top: 11px;
  font-size: .68rem;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .acessibilidade__gatilho {
  width: 44px;
  min-height: 44px;
  justify-content: center;
  padding: 0;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .acessibilidade__texto { display: none; }

html[data-tema="escuro"] body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho {
  color: #fff;
  background: #07182c;
  border-bottom: 1px solid rgba(255,255,255,.1);
}
html[data-tema="escuro"] body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .marca__nome,
html[data-tema="escuro"] body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .navegacao a { color: #fff; }
html[data-tema="escuro"] body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .botao--contorno {
  border-color: rgba(255,255,255,.52);
  color: #fff;
}
html[data-tema="escuro"] body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao__cabecalho h2,
html[data-tema="escuro"] .texto-editorial h2,
html[data-tema="escuro"] .beneficio h3,
html[data-tema="escuro"] .grade-gestao-nuttrion h3,
html[data-tema="escuro"] .grade-recursos-chaveiro h3,
html[data-tema="escuro"] .chaveiro-estrutura h2,
html[data-tema="escuro"] .chaveiro-estrutura__itens strong,
html[data-tema="escuro"] .grade-acessibilidade h3,
html[data-tema="escuro"] .acessibilidade-conteudo h2,
html[data-tema="escuro"] .cheow-cenario strong,
html[data-tema="escuro"] .grade-sinais-cheow strong,
html[data-tema="escuro"] .cheow-visao__fecho strong,
html[data-tema="escuro"] .cheow-comissoes h2,
html[data-tema="escuro"] .cheow-comissoes__painel strong,
html[data-tema="escuro"] .cheow-pilares h3 { color: var(--texto); }
html[data-tema="escuro"] .grade-sinais-cheow article { background: var(--fundo-cartao); }

@media (max-width: 980px) {
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao { padding: 58px 0 64px; }
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao__cabecalho { display: block; }
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao__cabecalho p { margin-top: 14px; }
  .cheow-hero__grid,
  .nuttrion-hero__grid,
  .chaveiro-hero__grid,
  .cert-hero__grid,
  .acessibilidade-hero__grid,
  .nuttrion-intro__grid,
  .nuttrion-longitudinal__grid,
  .nuttrion-familia__grid,
  .nuttrion-publicos__grid,
  .chaveiro-estrutura__grid,
  .cert-intro__grid,
  .cert-rastreabilidade__grid,
  .cert-multi-tenant__grid,
  .cert-ai__grid,
  .cert-adversarial__grid,
  .cert-zero__grid,
  .cert-rodadas__grid,
  .cert-trust__grid,
  .acessibilidade-conteudo,
  .cheow-continuidade__grid,
  .cheow-comissoes__grid { gap: 38px; }
  .cheow-hero::before,
  .nuttrion-hero::before,
  .chaveiro-hero::before,
  .cert-hero::before,
  .acessibilidade-hero::before { right: -20vw; opacity: .72; }
  .grade-recursos-chaveiro { grid-template-columns: repeat(2,1fr); }
  .grade-gestao-nuttrion { grid-template-columns: repeat(2,1fr); }
  .grade-sinais-cheow { grid-template-columns: repeat(3,1fr); }
  .grade-beneficios--cheow { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 680px) {
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .marca { font-size: 1.3rem; }
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .marca__icone { width: 38px; height: 38px; }
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .botao--contorno {
    min-width: 42px;
    width: 42px;
    padding: 0;
    font-size: 0;
  }
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .cabecalho .botao--contorno span { font-size: 1rem; }
  .cheow-hero,
  .nuttrion-hero,
  .chaveiro-hero,
  .cert-hero,
  .acessibilidade-hero { padding: 49px 0 56px; }
  .cheow-hero h1,
  .nuttrion-hero h1,
  .chaveiro-hero h1,
  .cert-hero h1,
  .acessibilidade-hero h1 { font-size: clamp(2.55rem,12vw,3.2rem); }
  .cheow-hero__painel,
  .nuttrion-hero__painel,
  .acessibilidade-hero__nota { min-height: 225px; padding: 22px; }
  .grade-beneficios,
  .grade-escalas,
  .grade-gestao-nuttrion,
  .grade-recursos-chaveiro,
  .chaveiro-estrutura__itens,
  .grade-perfis,
  .grade-dominios,
  .grade-testes,
  .grade-status,
  .cert-modelos__grid,
  .cert-passos,
  .grade-zero,
  .cert-multi-tenant__itens,
  .grade-acessibilidade { grid-template-columns: 1fr; }
  .cheow-cenario,
  .grade-sinais-cheow,
  .grade-beneficios--cheow,
  .cheow-pilares { grid-template-columns: 1fr; }
  .cheow-cenario article,
  .grade-sinais-cheow article,
  .grade-beneficios--cheow .beneficio,
  .cheow-pilares article { min-height: 0; }
  .cheow-continuidade__grid,
  .cheow-comissoes__grid { grid-template-columns: 1fr; }
  .cheow-continuidade__itens article { grid-template-columns: 1fr; gap: 7px; }
  .escala-card,
  .perfil-card { min-height: 0; }
  .perfil-card p { min-height: 0; }
  .fluxo-nuttrion { grid-template-columns: 1fr; }
  .fluxo-nuttrion article { min-height: 0; border-right: 0; }
  .grade-operacao-nuttrion { gap: 34px; }
  .grade-operacao-nuttrion article { padding: 0; }
  .grade-operacao-nuttrion article + article { padding: 34px 0 0; border-left: 0; border-top: 1px solid var(--linha); }
  .chaveiro-estrutura,
  .cheow-continuidade,
  .nuttrion-longitudinal,
  .nuttrion-familia,
  .cert-rastreabilidade,
  .cert-multi-tenant,
  .cert-adversarial,
  .cert-rodadas,
  .cert-publicos { padding: 58px 0; }
  .cheow-final,
  .nuttrion-final,
  .chaveiro-final,
  .cert-final { padding: 62px 0 66px; }
  .cert-hero__painel div { grid-template-columns: 34px 1fr; }
  .cert-hero__painel small { grid-column: 2; }
  .cert-rodadas__exemplo { grid-template-columns: 1fr; }
  .cert-rodadas__exemplo i { transform: rotate(90deg); justify-self: center; }
  .pagina-acoes .botao,
  .pagina-final__acoes .botao { width: 100%; }
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .rodape__grade { grid-template-columns: 1fr; gap: 22px; }
}

/* Refinamento v0.9.0 — contraste, respiro, acentos e leitura acessível. */
:root { --dourado-claro: #dfc27d; }

body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao {
  padding-block: 78px 84px;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao__cabecalho {
  margin-bottom: 34px;
}
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) main p,
body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) main li {
  line-height: 1.62;
}
.texto-editorial p + p,
.cert-intro__texto p + p,
.cert-ai__grid p + p,
.cert-trust__grid p + p { margin-top: 24px; }
.cert-rastreabilidade,
.cert-multi-tenant,
.cert-adversarial,
.cert-rodadas,
.cert-publicos,
.nuttrion-longitudinal,
.nuttrion-familia { padding-block: 82px; }

/* Dourado discreto nos fundos azuis. */
.cheow-hero .eyebrow::after,
.nuttrion-hero .eyebrow::after,
.chaveiro-hero .eyebrow::after,
.cert-hero .eyebrow::after,
.acessibilidade-hero .eyebrow::after,
.cheow-final .eyebrow::after,
.nuttrion-final .eyebrow::after,
.chaveiro-final .eyebrow::after,
.cert-final .eyebrow::after { background: var(--dourado-claro); }
.cert-hero__painel span,
.cert-rastreabilidade .rotulo,
.cert-adversarial .rotulo,
.cert-publicos .grade-publicos > article > span,
.cert-final .eyebrow,
.cheow-continuidade .rotulo,
.cheow-continuidade__itens span,
.nuttrion-longitudinal .rotulo,
.nuttrion-familia .rotulo,
.nuttrion-final .eyebrow,
.rodape .eyebrow { color: var(--dourado-claro); }
.nuttrion-hero__selo {
  border-color: rgba(223,194,125,.58);
  color: var(--dourado-claro);
}

/* Painel de acessibilidade: detalhe editorial no modo claro. */
html[data-tema="claro"] .acessibilidade__painel {
  overflow: hidden auto;
  border: 1px solid #d9e2ec;
  border-top: 4px solid var(--dourado);
  background:
    radial-gradient(circle at 100% 0, rgba(198,161,91,.13), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%);
  box-shadow: 0 28px 80px rgba(6,23,45,.2);
}
html[data-tema="claro"] .acessibilidade__cabecalho strong,
html[data-tema="claro"] .acessibilidade__grupo legend,
html[data-tema="claro"] .acessibilidade__leitura strong { color: #0a2a50; }
html[data-tema="claro"] .acessibilidade__opcoes button,
html[data-tema="claro"] .acessibilidade__alternancias button,
html[data-tema="claro"] .acessibilidade__restaurar,
html[data-tema="claro"] .acessibilidade__fechar { background: rgba(255,255,255,.82); }
html[data-tema="claro"] .acessibilidade__opcoes button.is-active,
html[data-tema="claro"] .acessibilidade__opcoes button[aria-pressed="true"],
html[data-tema="claro"] .acessibilidade__alternancias button[aria-pressed="true"] {
  border-color: var(--dourado);
  background: rgba(198,161,91,.14);
  color: #09284b;
  box-shadow: inset 0 0 0 1px rgba(198,161,91,.45);
}
html[data-tema="claro"] .acessibilidade__gatilho {
  border-color: rgba(223,194,125,.78);
  box-shadow: 0 12px 34px rgba(6,23,45,.24), inset 0 -2px 0 rgba(198,161,91,.68);
}
html[data-tema="claro"] .acessibilidade__gatilho > span:first-child { color: var(--dourado-claro); }

/* Nomes técnicos permanecem disponíveis, sem competir com a explicação em português. */
.grade-dominios summary small {
  margin-left: auto;
  color: var(--texto-suave);
  font-size: .68rem;
  font-weight: 500;
  letter-spacing: .02em;
}
.grade-status strong small {
  display: block;
  margin-top: 7px;
  font-size: .66rem;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: none;
}

/* Tema escuro: contraste completo em textos, cartões, tabelas e botões. */
html[data-tema="escuro"] { --dourado: #d5b66f; --dourado-claro: #ead08e; }
.cheow-hero,
.nuttrion-hero,
.chaveiro-hero,
.cert-hero,
.acessibilidade-hero { color: #ffffff; }
html[data-tema="escuro"] .cheow-hero h1,
html[data-tema="escuro"] .nuttrion-hero h1,
html[data-tema="escuro"] .chaveiro-hero h1,
html[data-tema="escuro"] .cert-hero h1,
html[data-tema="escuro"] .acessibilidade-hero h1,
html[data-tema="escuro"] .chaveiro-hero__painel span,
html[data-tema="escuro"] .secao--azul,
html[data-tema="escuro"] .secao--azul h2,
html[data-tema="escuro"] .secao--azul h3,
html[data-tema="escuro"] .secao--azul strong { color: #f7fbff; }
html[data-tema="escuro"] .botao--claro {
  border-color: #ffffff;
  background: #ffffff;
  color: #08213f;
}
html[data-tema="escuro"] .botao--azul { color: #ffffff; }
html[data-tema="escuro"] .botao--contorno {
  border-color: rgba(226,237,248,.62);
  background: rgba(255,255,255,.04);
  color: #f2f7fc;
}
html[data-tema="escuro"] body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao--suave {
  background: linear-gradient(180deg,#0b1e33 0%,#08182a 100%);
}
html[data-tema="escuro"] .beneficio,
html[data-tema="escuro"] .cheow-cenario article,
html[data-tema="escuro"] .grade-sinais-cheow article,
html[data-tema="escuro"] .cheow-pilares article,
html[data-tema="escuro"] .grade-gestao-nuttrion article,
html[data-tema="escuro"] .escala-card,
html[data-tema="escuro"] .nuttrion-publicos aside,
html[data-tema="escuro"] .grade-recursos-chaveiro article,
html[data-tema="escuro"] .chaveiro-estrutura__itens article,
html[data-tema="escuro"] .perfil-card,
html[data-tema="escuro"] .grade-dominios details,
html[data-tema="escuro"] .cert-passos li,
html[data-tema="escuro"] .grade-status article,
html[data-tema="escuro"] .cert-modelos article,
html[data-tema="escuro"] .grade-acessibilidade article {
  border-color: var(--linha);
  background: var(--fundo-cartao);
  color: var(--texto);
}
html[data-tema="escuro"] body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao__cabecalho h2,
html[data-tema="escuro"] .texto-editorial h2,
html[data-tema="escuro"] .frase-destaque,
html[data-tema="escuro"] .beneficio h3,
html[data-tema="escuro"] .cheow-cenario strong,
html[data-tema="escuro"] .grade-sinais-cheow strong,
html[data-tema="escuro"] .cheow-visao__fecho,
html[data-tema="escuro"] .cheow-visao__fecho strong,
html[data-tema="escuro"] .cheow-comissoes h2,
html[data-tema="escuro"] .cheow-comissoes__painel strong,
html[data-tema="escuro"] .cheow-pilares h3,
html[data-tema="escuro"] .nuttrion-intro h2,
html[data-tema="escuro"] .nuttrion-frase span,
html[data-tema="escuro"] .grade-gestao-nuttrion h3,
html[data-tema="escuro"] .grade-operacao-nuttrion h2,
html[data-tema="escuro"] .nuttrion-publicos h2,
html[data-tema="escuro"] .nuttrion-publicos aside h3,
html[data-tema="escuro"] .nuttrion-destaque-infantil h2,
html[data-tema="escuro"] .grade-recursos-chaveiro h3,
html[data-tema="escuro"] .chaveiro-estrutura h2,
html[data-tema="escuro"] .chaveiro-estrutura__itens strong,
html[data-tema="escuro"] .cert-intro h2,
html[data-tema="escuro"] .cert-ai h2,
html[data-tema="escuro"] .cert-trust h2,
html[data-tema="escuro"] .perfil-card h3,
html[data-tema="escuro"] .grade-acessibilidade h3,
html[data-tema="escuro"] .acessibilidade-conteudo h2 { color: var(--texto); }
html[data-tema="escuro"] .nuttrion-frase strong { color: #7ae0b9; }
html[data-tema="escuro"] .texto-editorial p,
html[data-tema="escuro"] .beneficio p,
html[data-tema="escuro"] .cheow-cenario p,
html[data-tema="escuro"] .cheow-comissoes p,
html[data-tema="escuro"] .cheow-pilares p,
html[data-tema="escuro"] .nuttrion-intro__texto,
html[data-tema="escuro"] .grade-gestao-nuttrion p,
html[data-tema="escuro"] .escala-card p,
html[data-tema="escuro"] .escala-card li,
html[data-tema="escuro"] .fluxo-nuttrion p,
html[data-tema="escuro"] .grade-operacao-nuttrion p,
html[data-tema="escuro"] .nuttrion-publicos p,
html[data-tema="escuro"] .nuttrion-destaque-infantil p:not(.eyebrow),
html[data-tema="escuro"] .cert-intro__texto,
html[data-tema="escuro"] .grade-dominios details p,
html[data-tema="escuro"] .cert-ai__grid > div:last-child,
html[data-tema="escuro"] .cert-passos p,
html[data-tema="escuro"] .grade-status p,
html[data-tema="escuro"] .cert-trust__grid > div:last-child,
html[data-tema="escuro"] .grade-acessibilidade p,
html[data-tema="escuro"] .acessibilidade-conteudo > div:last-child { color: #c4d2e1; }
html[data-tema="escuro"] .grade-dominios summary span,
html[data-tema="escuro"] .beneficio__indice,
html[data-tema="escuro"] .beneficio__numero,
html[data-tema="escuro"] .grade-recursos-chaveiro span { color: #8ccaff; }
html[data-tema="escuro"] .grade-dominios summary small,
html[data-tema="escuro"] .escala-card__tipo { color: #afc0d2; }
html[data-tema="escuro"] .cert-tabela-wrap { border-color: var(--linha); }
html[data-tema="escuro"] .cert-tabela,
html[data-tema="escuro"] .cert-tabela th,
html[data-tema="escuro"] .cert-tabela td {
  border-color: var(--linha);
  background: var(--fundo-cartao);
  color: var(--texto);
}
html[data-tema="escuro"] .cert-tabela thead th { background: #0a1b2e; color: #d8e4f0; }
html[data-tema="escuro"] .fluxo-nuttrion span { background: #123a31; color: #8ae1bf; }
html[data-tema="escuro"] .cert-nota { background: #211d36; color: #ded8f3; }
html[data-tema="escuro"] .nota-clinica { background: #0c3029; color: #c8eadf; }
html[data-tema="escuro"] .perfil-card__codigo { background: #173655; color: #baddff; }

/* Comparação dos perfis: deixa o gesto horizontal evidente sem poluir o desktop. */
.cert-tabela-dica {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 36px 0 12px;
  color: #0a1e58;
}
.cert-tabela-dica strong { font-size: 1rem; }
.cert-tabela-dica span {
  display: none;
  align-items: center;
  gap: 9px;
  color: #1a5f9f;
  font-size: .82rem;
  font-weight: 700;
}
.cert-tabela-dica b {
  display: inline-grid;
  width: 27px;
  height: 27px;
  place-items: center;
  border-radius: 999px;
  color: #fff;
  background: var(--dourado);
}
.cert-tabela-wrap {
  margin-top: 0;
  scrollbar-width: auto;
  scrollbar-color: var(--dourado) #e6edf5;
  overscroll-behavior-inline: contain;
}
.cert-tabela-wrap::-webkit-scrollbar { height: 11px; }
.cert-tabela-wrap::-webkit-scrollbar-track { background: #e6edf5; }
.cert-tabela-wrap::-webkit-scrollbar-thumb {
  border: 2px solid #e6edf5;
  border-radius: 999px;
  background: var(--dourado);
}
.cert-tabela-wrap:focus-visible {
  outline: 3px solid rgba(45,124,255,.34);
  outline-offset: 4px;
}
html[data-tema="escuro"] .cert-tabela-dica { color: #f4f7fb; }
html[data-tema="escuro"] .cert-tabela-dica span { color: #bad9f7; }
html[data-tema="escuro"] .cert-tabela-wrap {
  scrollbar-color: var(--dourado-claro) #132b43;
}
html[data-tema="escuro"] .cert-tabela-wrap::-webkit-scrollbar-track { background: #132b43; }
html[data-tema="escuro"] .cert-tabela-wrap::-webkit-scrollbar-thumb {
  border-color: #132b43;
  background: var(--dourado-claro);
}

@media (max-width: 900px) {
  .cert-tabela-dica span { display: inline-flex; }
  .cert-tabela-wrap { box-shadow: inset -20px 0 24px -24px rgba(6,23,45,.9); }
  .cert-tabela th:first-child {
    position: sticky;
    left: 0;
    z-index: 2;
    min-width: 164px;
    box-shadow: 10px 0 16px -16px rgba(6,23,45,.8);
  }
  .cert-tabela thead th:first-child { z-index: 3; background: #f5f8fc; }
  .cert-tabela tbody th:first-child { background: #fff; }
  html[data-tema="escuro"] .cert-tabela thead th:first-child { background: #0a1b2e; }
  html[data-tema="escuro"] .cert-tabela tbody th:first-child { background: var(--fundo-cartao); }
}

@media (max-width: 520px) {
  .cert-tabela-dica { align-items: flex-start; flex-direction: column; margin-top: 30px; }
  .cert-tabela-dica span { width: 100%; justify-content: space-between; }
}

/* Chaveiro: narrativa comercial e visão completa da operação. */
.grade-sinais-chaveiro {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  border-top: 1px solid var(--linha);
  border-left: 1px solid var(--linha);
}
.grade-sinais-chaveiro article {
  min-height: 138px;
  padding: 22px;
  border-right: 1px solid var(--linha);
  border-bottom: 1px solid var(--linha);
  background: var(--fundo-cartao);
}
.grade-sinais-chaveiro span {
  display: block;
  margin-bottom: 18px;
  color: #3578b8;
  font-size: .65rem;
  letter-spacing: .18em;
}
.grade-sinais-chaveiro strong { color: #0a1e58; font-size: .92rem; line-height: 1.42; }
.chaveiro-problema .frase-destaque { margin-bottom: 0; }
.chaveiro-os,
.chaveiro-visibilidade {
  padding-block: 82px;
  color: #fff;
  background:
    radial-gradient(circle at 88% 15%, rgba(198,161,91,.13), transparent 28%),
    linear-gradient(125deg,#06172d,#0a3159 64%,#0a4775);
}
.chaveiro-os__grid,
.chaveiro-visibilidade__grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 62px;
  align-items: start;
}
.chaveiro-os h2,
.chaveiro-visibilidade h2 {
  margin: 0 0 22px;
  font-size: clamp(2.25rem,3.7vw,3.55rem);
  line-height: 1.03;
  letter-spacing: -.05em;
  font-weight: 300;
}
.chaveiro-os p,
.chaveiro-visibilidade p { max-width: 600px; margin: 0; color: #ceddea; font-size: .96rem; }
.chaveiro-os .rotulo,
.chaveiro-visibilidade .rotulo { color: var(--dourado-claro); }
.chaveiro-os__itens,
.chaveiro-visibilidade__painel { border-top: 1px solid rgba(255,255,255,.18); }
.chaveiro-os__itens article,
.chaveiro-visibilidade__painel article {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 24px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255,255,255,.18);
}
.chaveiro-os__itens span,
.chaveiro-visibilidade__painel span {
  color: var(--dourado-claro);
  text-transform: uppercase;
  letter-spacing: .15em;
  font-size: .64rem;
}
.chaveiro-os__itens strong,
.chaveiro-visibilidade__painel strong { font-size: .94rem; font-weight: 460; line-height: 1.48; }
.grade-recursos-chaveiro--detalhada article { min-height: 164px; }
.grade-recursos-chaveiro--detalhada h3 { margin-bottom: 9px; }
.grade-recursos-chaveiro--detalhada p { margin: 0; color: var(--texto-suave); font-size: .82rem; line-height: 1.5; }
html[data-tema="escuro"] .grade-sinais-chaveiro article { border-color: var(--linha); background: var(--fundo-cartao); }
html[data-tema="escuro"] .grade-sinais-chaveiro strong { color: var(--texto); }
html[data-tema="escuro"] .grade-sinais-chaveiro span { color: #8ccaff; }
html[data-tema="escuro"] .grade-recursos-chaveiro--detalhada p,
html[data-tema="escuro"] .chaveiro-estrutura p,
html[data-tema="escuro"] .chaveiro-estrutura__itens span { color: #c4d2e1; }

@media (max-width: 980px) {
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao { padding-block: 66px 72px; }
  .grade-sinais-chaveiro { grid-template-columns: repeat(3,1fr); }
  .chaveiro-os__grid,
  .chaveiro-visibilidade__grid { gap: 40px; }
}
@media (max-width: 680px) {
  .pagina-home .cabecalho .marca { font-size: 1.42rem; }
  .grade-dominios summary small { display: none; }
  body:is(.pagina-cheow,.pagina-nuttrion,.pagina-chaveiro,.pagina-certificacao,.pagina-acessibilidade) .secao { padding-block: 62px 68px; }
  .cert-rastreabilidade,
  .cert-multi-tenant,
  .cert-adversarial,
  .cert-rodadas,
  .cert-publicos,
  .nuttrion-longitudinal,
  .nuttrion-familia,
  .chaveiro-os,
  .chaveiro-visibilidade { padding-block: 64px; }
  .grade-sinais-chaveiro,
  .chaveiro-os__grid,
  .chaveiro-visibilidade__grid { grid-template-columns: 1fr; }
  .grade-sinais-chaveiro article { min-height: 0; }
  .chaveiro-os__itens article,
  .chaveiro-visibilidade__painel article { grid-template-columns: 1fr; gap: 8px; }
}
