/* Guia da implantação da Gaia Nutri, no tema claro da página (css/nutri.css). Os nomes de cor vêm do guia escuro da Gaia Psi:
   aqui cada um aponta para a cor clara equivalente. */
:root { --sala: var(--areia); --sala-2: var(--areia-2); --ambar: var(--verde); --ambar-2: var(--verde-2); --papel: var(--texto);
  --claro: var(--texto-2); --claro-2: #77706a; --tinta: #ffffff; --folha-2: var(--verde); }
/* Guia da implantação: leitura longa no clima do consultório (sala escura, âmbar do abajur, papel).
   Herda tokens e botões de consultorio.css. */
body { background: var(--sala); }
.g-topo { background: rgba(247, 243, 236, .96); border-bottom: 1px solid rgba(47, 42, 37, .08); }
.g-topo .marca { display: inline-flex; align-items: center; gap: 12px; }
.g-selo { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ambar); border: 1px solid rgba(79, 127, 106, .45); border-radius: 999px; padding: 4px 10px; }
.g-pilulas { position: sticky; top: 62px; z-index: 70; display: flex; gap: 6px; overflow-x: auto; padding: 10px var(--gutter); background: rgba(247, 243, 236, .94); border-bottom: 1px solid rgba(47, 42, 37, .08); scrollbar-width: none; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.g-pilulas::-webkit-scrollbar { display: none; }
.g-pilulas a { flex: none; font-family: 'Nunito Sans', system-ui, sans-serif; font-size: 13.5px; font-weight: 600; text-decoration: none; color: var(--claro-2); padding: 6px 12px; border-radius: 999px; border: 1px solid rgba(47, 42, 37, .14); transition: color .3s, border-color .3s, background .3s; }
.g-pilulas a:hover { color: var(--papel); border-color: rgba(47, 42, 37, .35); }
.g-pilulas a.ativo { color: var(--tinta); background: var(--ambar); border-color: var(--ambar); }

.g-main { max-width: 820px; margin: 0 auto; padding: 0 var(--gutter); }
.g-capa { padding: clamp(56px, 10vw, 120px) 0 40px; position: relative; }
.g-capa::before { content: ""; position: absolute; right: 0; top: 0; width: 70%; height: 120%; background: radial-gradient(closest-side, rgba(79, 127, 106, .16), transparent); pointer-events: none; z-index: -1; }
.g-capa h1 { font-size: clamp(42px, 7vw, 76px); font-weight: 400; line-height: 1.02; letter-spacing: -.025em; margin-bottom: 22px; }
.g-capa h1 em { font-style: italic; color: var(--ambar); }
.g-lead { font-size: clamp(18px, 2.2vw, 21px); color: var(--claro); max-width: 640px; }
.g-numeros { display: flex; gap: clamp(28px, 6vw, 64px); margin-top: 44px; flex-wrap: wrap; }
.g-numeros b { display: block; font-size: 52px; font-weight: 500; line-height: 1; color: var(--papel); }
.g-numeros span { font-family: 'Nunito Sans', system-ui, sans-serif; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--claro-2); }

.g-secao { padding: 64px 0 20px; border-top: 1px solid rgba(47, 42, 37, .08); scroll-margin-top: 120px; }
.g-secao > p + p { margin-top: 14px; }
.g-kicker { font-family: 'Nunito Sans', system-ui, sans-serif; font-size: 12.5px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: var(--ambar); margin-bottom: 12px; }
.g-secao h2 { font-size: clamp(30px, 4.4vw, 44px); font-weight: 400; margin-bottom: 18px; }
.g-secao p, .g-secao li { color: var(--claro); font-size: 18px; line-height: 1.65; }
.g-secao a { color: var(--ambar); }
.g-secao b { color: var(--papel); font-weight: 600; }
.g-passo h2 { position: relative; }

.g-mapa { margin: 30px 0 0; padding: 22px; border-radius: 18px; background: var(--branco); border: 1px solid rgba(47, 42, 37, .1); }
.g-mapa svg { width: 100%; height: auto; display: block; font-family: 'Nunito Sans', system-ui, sans-serif; }
.m-caixa rect { fill: #ffffff; stroke: rgba(47, 42, 37, .25); stroke-width: 1.2; }
.m-caixa text { fill: var(--papel); font-size: 17px; font-weight: 700; text-anchor: middle; }
.m-caixa text.m-sub { fill: var(--claro-2); font-size: 12.5px; font-weight: 400; }
.m-centro rect { fill: var(--ambar); stroke: none; }
.m-centro text, .m-centro text.m-sub { fill: var(--tinta); }
.m-painel rect { stroke: var(--ambar); }
.m-opc rect { stroke-dasharray: 5 5; }

.g-check { display: grid; gap: 12px; margin: 18px 0 6px; }
.g-check li { position: relative; padding-left: 32px; }
.g-check li::before { content: ""; position: absolute; left: 0; top: 7px; width: 18px; height: 18px; border-radius: 5px; border: 1.5px solid var(--ambar); }
.g-check-cheio li::before { background: var(--ambar); box-shadow: inset 0 0 0 4px var(--sala); }
.g-lista { counter-reset: n; display: grid; gap: 14px; margin: 20px 0 6px; }
.g-lista li { counter-increment: n; position: relative; padding-left: 46px; }
.g-lista li::before { content: counter(n); position: absolute; left: 0; top: 1px; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; font-family: 'Nunito Sans', system-ui, sans-serif; font-size: 14px; font-weight: 800; color: var(--tinta); background: var(--ambar); }

.g-aviso, .g-dica { margin-top: 26px; padding: 18px 22px; border-radius: 14px; }
.g-aviso { background: rgba(79, 127, 106, .1); border: 1px solid rgba(79, 127, 106, .4); }
.g-dica { background: var(--branco); border-left: 3px solid var(--folha-2); }
.g-aviso > b, .g-dica > b { display: block; font-family: 'Nunito Sans', system-ui, sans-serif; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--ambar); margin-bottom: 6px; }
.g-dica > b { color: var(--verde-2); }
.g-aviso p, .g-dica p { font-size: 17px; }

.g-dupla { display: grid; grid-template-columns: 1fr 250px; gap: 32px; align-items: start; }
.g-cel { margin-top: 20px; border-radius: 30px; padding: 16px 14px 26px; background: #0e1621; border: 6px solid #2a2320; box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .8); font-family: 'Nunito Sans', system-ui, sans-serif; display: grid; gap: 10px; }
.g-cel-topo { text-align: center; font-weight: 700; font-size: 14px; color: #fff; padding-bottom: 8px; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.g-bolha { font-size: 14px !important; line-height: 1.4 !important; padding: 9px 12px; border-radius: 12px 12px 12px 4px; background: #182533; color: #fff !important; max-width: 92%; }
.g-codigo { font-family: ui-monospace, Menlo, monospace; font-size: 20px !important; letter-spacing: .12em; font-weight: 700; color: var(--ambar) !important; }
.g-cel-claro { background: #f7f8fa; }
.g-cel-claro .g-cel-topo { color: #111; border-color: #e3e5e8; }
.g-item { font-size: 14px !important; color: #111 !important; background: #fff; border-radius: 10px; padding: 12px; border: 1px solid #e3e5e8; }
.g-item:first-of-type { color: #128c4b !important; font-weight: 700; }
.g-item-2 { color: #555 !important; }
.g-google { margin-top: 20px; display: grid; gap: 8px; padding: 18px; border-radius: 12px; background: #fff; color: #202124; font-family: Arial, sans-serif; font-size: 13px; box-shadow: 0 20px 40px -20px rgba(0, 0, 0, .7); }
.g-google b { color: #d93025 !important; font-size: 16px; font-weight: 400; }
.g-google span { color: #5f6368; }
.g-google i { font-style: normal; display: flex; justify-content: space-between; align-items: center; margin-top: 6px; }
.g-google u { color: #1a73e8; text-decoration: none; font-weight: 700; outline: 2px dashed #d93025; outline-offset: 3px; border-radius: 3px; }
.g-google em { font-style: normal; background: #1a73e8; color: #fff; padding: 6px 10px; border-radius: 4px; }

.g-grade { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin: 20px 0 26px; }
.g-grade div { padding: 18px 20px; border-radius: 14px; background: var(--branco); border: 1px solid rgba(47, 42, 37, .1); }
.g-grade b { display: block; font-size: 22px; font-weight: 500; color: var(--ambar); margin-bottom: 6px; }
.g-grade p { font-size: 16px; }
.g-frases { display: grid; gap: 10px; margin: 16px 0 18px; }
.g-frases li { font-style: italic; padding: 10px 16px; border-radius: 14px 14px 14px 4px; background: var(--zap-out); color: var(--texto) !important; justify-self: start; font-size: 16.5px; }
.g-nota { color: var(--claro-2) !important; font-size: 16px !important; margin-top: 18px; }

.g-tabela { margin: 20px 0 6px; border-top: 1px solid rgba(47, 42, 37, .12); }
.g-tabela div { display: grid; grid-template-columns: 38% 1fr; gap: 18px; padding: 14px 0; border-bottom: 1px solid rgba(47, 42, 37, .12); }
.g-tabela b { font-size: 16.5px; }
.g-tabela span { font-size: 16.5px; color: var(--claro); }
.g-socorro { margin-top: 30px; display: flex; gap: 20px; align-items: center; justify-content: space-between; flex-wrap: wrap; padding: 22px 24px; border-radius: 16px; background: rgba(79, 127, 106, .08); border: 1px solid rgba(79, 127, 106, .35); }
.g-socorro p { font-size: 16.5px; }

.g-fim { text-align: center; padding: 100px 0 110px; border-top: 1px solid rgba(47, 42, 37, .08); display: grid; gap: 30px; justify-items: center; }
.g-fim h2 { font-size: clamp(36px, 6vw, 60px); font-weight: 400; }

@media (max-width: 760px) {
  .g-nav { display: none; }
  .g-selo { display: none; }
  .g-pilulas { top: 58px; }
  .g-dupla { grid-template-columns: 1fr; }
  .g-cel, .g-google { max-width: 300px; }
  .g-grade { grid-template-columns: 1fr; }
  .g-tabela div { grid-template-columns: 1fr; gap: 4px; }
  .g-secao p, .g-secao li { font-size: 17px; }
}
.g-secao p, .g-secao li, .g-tabela span { overflow-wrap: anywhere; }
.g-frases li { max-width: 100%; }
html { overflow-x: clip; }
.g-lista { list-style: none; padding: 0; }
.g-secao a.btn { color: var(--tinta); text-decoration: none; }
.g-cel .g-cel-topo { color: #fff; } .g-cel-claro .g-cel-topo { color: #111; }
