/*
Theme Name: Laboratório da Água
Theme URI: https://www.laboratoriodaagua.com.br
Description: Tema do portal Laboratório da Água: guia de laboratórios de análise de água, tipos de análise, parâmetros, glossário e legislação. Funciona junto com o plugin Portal Ferramentas (1.2 ou mais novo).
Version: 2.1.1
Requires at least: 6.2
Requires PHP: 7.4
Author: Luciano Mazza
Text Domain: laboratorio-da-agua
License: GPLv2 or later
*/

:root {
	--fundo: #F3F7F8;
	--branco: #FFFFFF;
	--tinta: #0A1F2C;
	--tinta-2: #22394A;
	--cinza: #3B5260;
	--linha: #DCE6EA;
	--linha-forte: #C9D7DD;
	--destaque: #0B6E99;
	--destaque-escuro: #0B5F86;
	--claro: #DDEFF5;
	--escuro-2: #12303F;
	--azul-claro: #7FD3E6;
	--cinza-claro: #8FB4C5;
	--alerta: #FFF4E5;
	--alerta-tinta: #4A2E00;
	--ok: #E4F4EC;
	--ok-tinta: #14532D;
	--whats: #157347;
	--titulo: 'Bricolage Grotesque', system-ui, sans-serif;
	--texto: 'Instrument Sans', system-ui, sans-serif;
	--mono: 'JetBrains Mono', ui-monospace, monospace;
	--raio: 20px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--fundo);
	color: var(--tinta);
	font-family: var(--texto);
	font-size: 16px;
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
[hidden] { display: none !important; }
a { color: var(--destaque-escuro); }
a:hover { color: #073F5A; }
h1, h2, h3 { font-family: var(--titulo); letter-spacing: -0.03em; line-height: 1.1; margin: 0; }
p { margin: 0; }
button, input, select, textarea { font: inherit; color: inherit; }
:focus-visible { outline: 3px solid var(--destaque); outline-offset: 2px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.pular { position: absolute; left: -999px; top: 8px; background: var(--tinta); color: #fff; padding: 10px 16px; border-radius: 10px; z-index: 100; }
.pular:focus { left: 8px; }

.wrap { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.secao { padding: 52px 0; }
.secao--branca { background: var(--branco); border-top: 1px solid var(--linha); border-bottom: 1px solid var(--linha); }
.secao--escura { background: var(--tinta); color: #fff; }
.secao--escura a { color: var(--azul-claro); }
.secao--escura .post-cartao, .secao--escura .post-cartao:hover { color: #fff; }
.pilha { display: flex; flex-direction: column; gap: 28px; }
.sobretitulo { font-size: 14px; font-weight: 600; color: var(--destaque-escuro); text-transform: uppercase; letter-spacing: .08em; }
.secao-topo { display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: flex-end; }
.secao-topo h2 { font-size: 40px; font-weight: 700; margin-top: 6px; }
.secao-topo a { font-weight: 600; }
.grade-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.grade-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.grade-5 { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.grade-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }

/* Botões */
.botao { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 20px; border-radius: 12px; font-weight: 600; text-decoration: none; border: 0; cursor: pointer; background: var(--destaque); color: #fff; }
.botao:hover { color: #fff; filter: brightness(.94); }
.botao--escuro { background: var(--tinta); }
.botao--branco { background: #fff; color: var(--tinta); }
.botao--branco:hover { color: var(--tinta); }
.botao--contorno { background: transparent; color: var(--tinta); border: 1.5px solid var(--tinta); }
.botao--contorno:hover { color: var(--tinta); background: var(--fundo); }
.botao--whats { background: var(--whats); }
.selo { display: inline-flex; align-items: center; font-size: 13px; background: var(--fundo); padding: 4px 10px; border-radius: 999px; color: var(--tinta); text-decoration: none; }
.selo--ok { background: var(--ok); color: var(--ok-tinta); }
.selo--azul { background: var(--claro); color: var(--destaque-escuro); font-weight: 600; }
.selo--destaque { background: #FDE9C8; color: #7A4A00; font-weight: 600; font-size: 12px; }
.selos { display: flex; flex-wrap: wrap; gap: 6px; }

/* Topo */
.topo { background: #fff; border-bottom: 1px solid var(--linha); position: sticky; top: 0; z-index: 50; }
.admin-bar .topo { top: 32px; }
.topo__linha { display: flex; gap: 16px; align-items: center; justify-content: space-between; padding-top: 16px; padding-bottom: 16px; }
.marca { display: flex; gap: 10px; align-items: center; text-decoration: none; color: var(--tinta); }
.marca:hover { color: var(--tinta); }
.marca__nome { font-family: var(--titulo); font-weight: 800; font-size: 21px; letter-spacing: -0.02em; white-space: nowrap; }
.marca__nome span { color: var(--destaque); }
.marca img { max-height: 44px; width: auto; }
.menu { display: flex; flex-wrap: wrap; gap: 8px 22px; align-items: center; list-style: none; margin: 0; padding: 0; font-weight: 500; font-size: 15px; }
.menu a { color: var(--tinta); text-decoration: none; }
.menu a:hover, .menu .current-menu-item > a, .menu .atual > a { color: var(--destaque); }
.menu .atual > a, .menu .current-menu-item > a { font-weight: 600; }
.menu .menu-cta a { background: var(--tinta); color: #fff; padding: 11px 18px; border-radius: 999px; display: inline-block; }
.menu .menu-cta a:hover { color: #fff; background: #12303F; }
.menu-sub { position: relative; }
.menu-sub__botao { display: inline-flex; align-items: center; gap: 5px; background: none; border: 0; padding: 0; font: inherit; color: var(--tinta); cursor: pointer; }
.menu-sub__botao:hover, .menu-sub.atual > .menu-sub__botao { color: var(--destaque); }
.menu-sub.atual > .menu-sub__botao { font-weight: 600; }
.menu-sub__botao svg { display: block; flex: 0 0 auto; transform-origin: 50% 50%; }
.menu-sub__lista { display: none; position: absolute; top: calc(100% + 14px); left: -16px; min-width: 240px; list-style: none; margin: 0; padding: 8px; background: #fff; border: 1px solid var(--linha); border-radius: 16px; box-shadow: 0 16px 40px rgba(10, 31, 44, .12); z-index: 60; }
.menu-sub__lista::before { content: ""; position: absolute; left: 0; right: 0; top: -16px; height: 16px; }
.menu-sub__lista a { display: block; padding: 10px 12px; border-radius: 10px; white-space: nowrap; }
.menu-sub__lista a:hover { background: var(--fundo); }
.menu-sub:hover > .menu-sub__lista, .menu-sub:focus-within > .menu-sub__lista, .menu-sub.aberto > .menu-sub__lista { display: block; }
.menu-sub:hover > .menu-sub__botao svg, .menu-sub.aberto > .menu-sub__botao svg { transform: rotate(180deg); }
.menu-botao { display: none; background: none; border: 1px solid var(--linha-forte); border-radius: 12px; width: 48px; height: 48px; align-items: center; justify-content: center; cursor: pointer; }

/* Hero */
.hero { padding: 44px 0 36px; }
.hero__grade { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 48px; align-items: center; }
.hero__texto { display: flex; flex-direction: column; gap: 24px; }
.etiqueta { display: inline-flex; align-self: flex-start; background: var(--claro); color: var(--destaque-escuro); padding: 6px 14px; border-radius: 999px; font-size: 14px; font-weight: 600; }
.hero h1 { font-weight: 800; font-size: 64px; line-height: 1.02; letter-spacing: -0.035em; }
.hero__sub { font-size: 19px; color: var(--cinza); max-width: 560px; }
.busca { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) auto; gap: 8px; background: #fff; padding: 10px; border-radius: 20px; box-shadow: 0 1px 0 var(--linha), 0 18px 40px -24px rgba(10, 31, 44, .35); }
.busca--curta { grid-template-columns: minmax(0, 1fr) auto; }
.busca label { display: flex; flex-direction: column; gap: 2px; padding: 8px 14px; border-radius: 12px; background: var(--fundo); }
.busca label span { font-size: 12px; font-weight: 600; color: var(--cinza); }
.busca input, .busca select { border: 0; background: transparent; font-size: 16px; padding: 0; outline: none; color: var(--tinta); width: 100%; }
.busca .botao { min-height: 56px; padding: 0 28px; border-radius: 14px; font-size: 16px; }
.mais-buscados { display: flex; flex-wrap: wrap; gap: 8px 20px; font-size: 14px; color: var(--cinza); }
.ficha { background: var(--tinta); color: #fff; border-radius: 28px; padding: 28px; display: flex; flex-direction: column; gap: 18px; text-decoration: none; }
.ficha:hover { color: #fff; }
.ficha__topo { display: flex; justify-content: space-between; gap: 12px; align-items: center; font-size: 13px; color: var(--cinza-claro); }
.ficha__topo span:first-child { letter-spacing: .08em; text-transform: uppercase; }
.ficha__topo span:last-child { font-family: var(--mono); }
.ficha__nome { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; }
.ficha__nome strong { font-family: var(--titulo); font-weight: 700; font-size: 44px; letter-spacing: -0.02em; line-height: 1; }
.ficha__nome span { font-family: var(--mono); font-size: 22px; color: var(--azul-claro); }
.ficha__dados { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.ficha__dado { background: var(--escuro-2); border-radius: 16px; padding: 14px 16px; }
.ficha__dado small { display: block; font-size: 12px; color: var(--cinza-claro); }
.ficha__dado b { font-family: var(--mono); font-weight: 500; font-size: 18px; }
.ficha p { color: #C9DCE4; font-size: 15px; }
/* Fichas que alternam na página inicial: todas no mesmo lugar, a altura é a da maior. */
.fichas-giro { display: grid; }
.fichas-giro > .ficha { grid-area: 1 / 1; opacity: 0; visibility: hidden; transition: opacity .6s ease, visibility 0s linear .6s; }
.fichas-giro > .ficha--atual { opacity: 1; visibility: visible; transition: opacity .6s ease; }
.fichas-giro__pontos { grid-area: 2 / 1; display: flex; justify-content: center; gap: 8px; padding-top: 12px; }
.fichas-giro__pontos span { width: 8px; height: 8px; border-radius: 50%; background: var(--linha-forte); cursor: pointer; transition: background .3s, width .3s; }
.fichas-giro__pontos span.atual { background: var(--destaque); width: 22px; border-radius: 4px; }
@media (prefers-reduced-motion: reduce) { .fichas-giro > .ficha { transition: none; } }
.numeros { display: flex; gap: 14px; }
.numero { flex: 1; background: #fff; border: 1px solid var(--linha); border-radius: 20px; padding: 18px; text-decoration: none; color: var(--tinta); }
.numero:hover { color: var(--tinta); border-color: var(--linha-forte); }
.numero b { display: block; font-family: var(--titulo); font-weight: 800; font-size: 34px; color: var(--destaque); line-height: 1.1; }
.numero span { font-size: 14px; color: var(--cinza); }
.hero__lado { display: flex; flex-direction: column; gap: 14px; }

/* Cartões */
.cartao { background: #fff; border: 1px solid var(--linha); border-radius: var(--raio); color: var(--tinta); text-decoration: none; }
a.cartao:hover { color: var(--tinta); border-color: var(--linha-forte); box-shadow: 0 12px 30px -22px rgba(10, 31, 44, .45); }
.analise-cartao { border-radius: 22px; padding: 22px; display: flex; flex-direction: column; gap: 36px; }
.analise-cartao b { display: block; font-weight: 600; font-size: 18px; }
.analise-cartao span { font-size: 14px; color: var(--cinza); }
.icone { width: 30px; height: 30px; color: var(--destaque); flex-shrink: 0; }
.param-cartao { border-radius: 18px; padding: 18px; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.param-cartao b { display: block; font-weight: 600; }
.param-cartao small { font-size: 13px; color: var(--cinza); }
.formula { font-family: var(--mono); font-size: 15px; color: var(--destaque-escuro); background: var(--claro); padding: 6px 10px; border-radius: 10px; white-space: nowrap; }
.lab-mini { border-radius: 24px; padding: 24px; display: flex; flex-direction: column; gap: 16px; }
.lab-mini__topo { display: flex; gap: 14px; align-items: center; }
.lab-mini__topo b { display: block; font-size: 18px; font-weight: 600; }
.lab-mini__topo small { font-size: 14px; color: var(--cinza); }
.logo-lab { width: 52px; height: 52px; border-radius: 14px; background: var(--claro); display: flex; align-items: center; justify-content: center; overflow: hidden; flex-shrink: 0; font-family: var(--titulo); font-weight: 800; color: var(--destaque-escuro); font-size: 20px; }
.logo-lab img { width: 100%; height: 100%; object-fit: cover; }
.logo-lab--grande { width: 72px; height: 72px; border-radius: 18px; font-size: 26px; }
.post-cartao { display: flex; flex-direction: column; gap: 14px; text-decoration: none; color: inherit; }
.post-cartao:hover { color: inherit; }
.post-cartao__foto { aspect-ratio: 16 / 10; border-radius: 20px; background: var(--escuro-2); overflow: hidden; }
.post-cartao__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.post-cartao:hover .post-cartao__foto img { transform: scale(1.03); }
.post-cartao__tag { font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; color: var(--destaque-escuro); }
.secao--escura .post-cartao__tag { color: var(--azul-claro); }
.post-cartao__titulo { font-family: var(--titulo); font-weight: 700; font-size: 22px; line-height: 1.2; letter-spacing: -0.02em; }
.secao--claro .post-cartao__foto { background: var(--claro); }
.lei-linha { border-radius: 16px; padding: 16px 20px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.lei-linha b { font-weight: 600; }
.lei-linha small { font-size: 13px; color: var(--cinza); white-space: nowrap; }
.caixa-azul { background: var(--claro); border-radius: 24px; padding: 28px; display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.caixa-azul strong { font-family: var(--titulo); font-weight: 700; font-size: 26px; line-height: 1.15; letter-spacing: -0.02em; }
.chamada { background: var(--destaque); color: #fff; border-radius: 32px; padding: 48px; display: flex; flex-wrap: wrap; gap: 24px; justify-content: space-between; align-items: center; }
.chamada h2 { font-weight: 800; font-size: 38px; margin-bottom: 8px; }
.chamada p { font-size: 18px; color: #E3F3F8; max-width: 640px; }

/* Cabeçalho das páginas internas */
.cabeca { padding: 48px 0 32px; }
.cabeca .wrap { display: flex; flex-direction: column; gap: 14px; }
.cabeca h1 { font-weight: 800; font-size: 52px; line-height: 1.05; letter-spacing: -0.035em; }
.cabeca p { font-size: 18px; color: var(--cinza); max-width: 720px; }
.trilha { font-size: 14px; color: var(--cinza); }
.trilha a { color: inherit; }
.cabeca--escura { background: var(--tinta); color: #fff; padding: 56px 0 64px; }
.cabeca--escura .trilha, .cabeca--escura .trilha a { color: var(--cinza-claro); }
.cabeca--escura p { color: #C9DCE4; }

/* Guia de laboratórios */
.colunas { display: flex; flex-wrap: wrap; gap: 28px; align-items: flex-start; padding-bottom: 80px; }
.filtros { flex: 1 1 260px; max-width: 100%; background: #fff; border: 1px solid var(--linha); border-radius: 24px; padding: 24px; display: flex; flex-direction: column; gap: 22px; }
.campo { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 600; }
.campo input, .campo select, .campo textarea { font-weight: 400; font-size: 16px; padding: 12px; border: 1px solid var(--linha-forte); border-radius: 12px; background: #fff; color: var(--tinta); width: 100%; }
.filtros fieldset { border: 0; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.filtros legend { font-size: 14px; font-weight: 600; margin-bottom: 8px; padding: 0; }
.marcar { display: flex; gap: 10px; align-items: center; font-weight: 400; font-size: 15px; }
.marcar input { width: 20px; height: 20px; accent-color: var(--destaque); }
.lista { flex: 999 1 560px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.lista__info { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; font-size: 14px; color: var(--cinza); }
.lista__locais { display: flex; flex-direction: column; gap: 12px; padding: 22px 24px; background: #fff; border: 1px solid var(--linha); border-radius: 20px; }
.lista__locais b { font-size: 15px; }
.lista__locais .selo:hover { background: var(--claro); color: var(--destaque-escuro); }
.lab { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; gap: 20px; align-items: start; background: #fff; border: 1px solid var(--linha); border-radius: 24px; padding: 24px; }
.lab--destaque { border: 2px solid var(--destaque); }
.lab__meio { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.lab__nome { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.lab__nome h2 { font-weight: 700; font-size: 24px; letter-spacing: -0.02em; }
.lab__nome a { color: var(--tinta); text-decoration: none; }
.lab__end { font-size: 15px; color: var(--cinza); }
.lab__acoes { display: flex; flex-direction: column; gap: 8px; min-width: 180px; text-align: center; }
.lab__acoes > a:last-child:not(.botao) { font-size: 14px; }
.vazio { border: 1.5px dashed #9FB6C0; border-radius: 24px; padding: 28px; display: flex; flex-wrap: wrap; gap: 16px; justify-content: space-between; align-items: center; }
.vazio b { display: block; font-size: 18px; }
.vazio span { color: var(--cinza); }
.paginas { display: flex; flex-wrap: wrap; gap: 6px; }
.paginas .page-numbers { display: inline-flex; min-width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 12px; background: #fff; border: 1px solid var(--linha); text-decoration: none; color: var(--tinta); padding: 0 12px; }
.paginas .current { background: var(--tinta); color: #fff; border-color: var(--tinta); }

/* Página de um item (parâmetro, laboratório, artigo) */
.fatos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; max-width: 900px; }
.fato { background: var(--escuro-2); border-radius: 18px; padding: 18px 20px; }
.fato small { display: block; font-size: 13px; color: var(--cinza-claro); }
.fato b { font-size: 18px; font-weight: 600; }
.fato .mono { font-family: var(--mono); font-weight: 500; font-size: 19px; }
.param-nome { display: flex; flex-wrap: wrap; gap: 8px 22px; align-items: baseline; }
.param-nome h1 { font-weight: 800; font-size: 72px; line-height: 1; letter-spacing: -0.04em; }
.param-nome span { font-family: var(--mono); font-size: 32px; color: var(--azul-claro); }
.corpo { display: flex; flex-wrap: wrap; gap: 40px; align-items: flex-start; padding-top: 56px; padding-bottom: 80px; }
.artigo { flex: 999 1 560px; min-width: 0; max-width: 760px; display: flex; flex-direction: column; gap: 36px; }
.artigo h2 { font-weight: 700; font-size: 30px; letter-spacing: -0.02em; }
.bloco { display: flex; flex-direction: column; gap: 12px; }
.texto { font-size: 18px; color: var(--tinta-2); line-height: 1.65; }
.texto > * + * { margin-top: 1em; }
.texto h2 { font-size: 28px; margin-top: 1.4em; }
.texto h3 { font-size: 22px; margin-top: 1.2em; }
.texto ul, .texto ol { padding-left: 1.3em; }
.texto img { border-radius: 16px; }
.texto table { width: 100%; border-collapse: collapse; font-size: 16px; line-height: 1.45; background: #fff; border: 1px solid var(--linha); border-radius: 16px; overflow: hidden; display: block; overflow-x: auto; }
.texto th, .texto td { text-align: left; vertical-align: top; padding: 12px 14px; border-bottom: 1px solid #EEF3F5; }
.texto thead th { background: var(--claro); color: var(--tinta); font-weight: 600; }
.texto tbody tr:last-child td { border-bottom: 0; }
.texto li + li { margin-top: .4em; }
.post-cartao__foto { position: relative; display: flex; align-items: center; justify-content: center; }
.post-cartao__foto img { position: absolute; inset: 0; }
.post-cartao__gota.icone { width: 56px; height: 56px; color: var(--azul-claro); opacity: .7; }
.foto-artigo:not(:has(img)) { display: none; }
.alerta { background: var(--alerta); border-radius: 22px; padding: 26px; display: flex; flex-direction: column; gap: 10px; }
.alerta h2 { color: #5C3600; font-size: 26px; display: flex; gap: 10px; align-items: center; }
.alerta .texto { color: var(--alerta-tinta); }
.curiosidade { border-top: 1px solid var(--linha); padding-top: 28px; display: flex; flex-direction: column; gap: 10px; }
.curiosidade p { font-family: var(--titulo); font-weight: 500; font-size: 24px; line-height: 1.35; letter-spacing: -0.01em; }
.cabeca h1.titulo-longo { font-size: 40px; }
.fatos--auto { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.fato b a { color: inherit; text-decoration: none; }
.termo-definicao { font-family: var(--titulo); font-weight: 500; font-size: 24px; line-height: 1.4; letter-spacing: -0.01em; max-width: 820px; color: #fff; }
.termo-definicao p { font-size: inherit; color: inherit; max-width: none; }
.termo-citas { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.termo-cita { background: #fff; border: 1px solid var(--linha); border-radius: 18px; padding: 14px 16px; text-decoration: none; color: var(--tinta); display: flex; flex-direction: column; gap: 2px; }
.termo-cita small { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; color: var(--destaque-escuro); }
.termo-cita span { font-weight: 600; line-height: 1.3; }
.termo-cita:hover { border-color: var(--destaque); }
.termo-rel .selo { font-size: 15px; padding: 7px 14px; }
.termo-nav { display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid var(--linha); padding-top: 24px; }
.termo-nav a { display: flex; flex-direction: column; gap: 2px; text-decoration: none; color: var(--tinta); max-width: 48%; }
.termo-nav small { font-size: 13px; color: var(--cinza); }
.termo-nav span { font-weight: 600; }
.termo-nav__prox { text-align: right; margin-left: auto; }
.lateral { flex: 1 1 300px; max-width: 100%; display: flex; flex-direction: column; gap: 16px; }
.lateral-cta { background: var(--destaque); color: #fff; border-radius: 24px; padding: 26px; display: flex; flex-direction: column; gap: 14px; }
.lateral-cta strong { font-family: var(--titulo); font-weight: 700; font-size: 24px; line-height: 1.2; }
.lateral-cta p { color: #E3F3F8; }
.lateral-caixa { background: #fff; border: 1px solid var(--linha); border-radius: 24px; padding: 22px; display: flex; flex-direction: column; gap: 4px; }
.lateral-caixa > b { margin-bottom: 8px; }
.lateral-caixa a.linha { display: flex; justify-content: space-between; gap: 12px; text-decoration: none; color: var(--tinta); padding: 10px 0; border-top: 1px solid #EEF3F5; }
.lateral-caixa a.linha span:last-child { font-family: var(--mono); color: var(--destaque-escuro); }
/* Metodologia */
.param-nome--longo h1 { font-size: 56px; }
.passos { list-style: none; counter-reset: passo; display: flex; flex-direction: column; gap: 18px; padding: 0; }
.texto .passos { padding-left: 0; }
.passos li { counter-increment: passo; display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 14px; align-items: start; }
.passos li::before { content: counter(passo); width: 40px; height: 40px; border-radius: 50%; background: var(--claro); color: var(--destaque-escuro); font-family: var(--titulo); font-weight: 700; display: flex; align-items: center; justify-content: center; }
.passos b { display: block; color: var(--tinta); }
.formula-caixa { background: #fff; border: 1px solid var(--linha); border-radius: 18px; padding: 20px; display: flex; flex-direction: column; gap: 10px; }
.formula-caixa .formula { display: block; white-space: normal; font-size: 17px; padding: 12px 14px; overflow-wrap: anywhere; }
.formula-caixa ul { font-size: 15px; color: var(--cinza); padding-left: 1.2em; }
.lateral-caixa a.linha--duas { flex-direction: column; gap: 2px; }
.lateral-caixa a.linha--duas small { font-size: 13px; color: var(--cinza); }
.lateral-caixa a.linha--duas span:last-child { font-family: inherit; color: inherit; }
.dados-lab { display: flex; flex-direction: column; gap: 12px; }
.dados-lab div { display: flex; gap: 12px; }
.dados-lab dt { font-weight: 600; min-width: 110px; }
.dados-lab dd { margin: 0; color: var(--cinza); }

/* Glossário */
.busca-termo { display: flex; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--linha-forte); border-radius: 16px; padding: 4px 18px; max-width: 640px; }
.busca-termo input { flex: 1; border: 0; font-size: 17px; padding: 14px 0; outline: none; background: transparent; }
.fichas { display: flex; flex-wrap: wrap; gap: 8px; }
.ficha-botao { font-weight: 600; font-size: 15px; min-height: 44px; padding: 0 18px; border-radius: 999px; cursor: pointer; background: #fff; color: var(--tinta); border: 1px solid var(--linha-forte); text-decoration: none; display: inline-flex; align-items: center; }
.ficha-botao[aria-pressed="true"], .ficha-botao.atual { background: var(--tinta); color: #fff; border-color: var(--tinta); }
.letras { display: flex; flex-wrap: wrap; gap: 4px; font-family: var(--mono); }
.letras a { display: inline-flex; width: 40px; height: 44px; align-items: center; justify-content: center; border-radius: 10px; text-decoration: none; font-size: 15px; color: var(--tinta); background: #fff; }
.letras a:hover { background: var(--destaque); color: #fff; }
.letra-grupo { display: flex; flex-direction: column; gap: 18px; padding-top: 24px; scroll-margin-top: 100px; }
.letra-grupo > h2 { font-weight: 800; font-size: 56px; color: var(--destaque); line-height: 1; }
.termo { border-radius: 20px; padding: 22px; display: flex; flex-direction: column; gap: 8px; }
.termo__topo { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.termo h3 { font-family: var(--texto); font-size: 19px; font-weight: 600; letter-spacing: 0; line-height: 1.3; }
.termo h3 a { color: var(--tinta); text-decoration: none; }
.termo p { color: var(--cinza); }
.termo .selo { flex-shrink: 0; }
.sem-resultado { display: none; padding: 24px; background: #fff; border-radius: 20px; color: var(--cinza); }

/* Formulários */
.formulario { background: #fff; border: 1px solid var(--linha); border-radius: 24px; padding: 28px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.formulario .inteiro { grid-column: 1 / -1; }
.aviso { border-radius: 16px; padding: 16px 20px; font-weight: 500; }
.aviso--ok { background: var(--ok); color: var(--ok-tinta); }
.aviso--erro { background: #FDE2E1; color: #7F1D1D; }
.mel { position: absolute; left: -9999px; }

/* Rodapé */
.rodape { background: var(--tinta); color: var(--cinza-claro); padding: 56px 0 28px; font-size: 15px; position: relative; overflow: hidden; }
.rodape::after { content: ""; position: absolute; right: -60px; bottom: -90px; width: 360px; height: 360px; pointer-events: none; opacity: .06; background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 34'%3E%3Cpath d='M17 3C17 3 7 14.5 7 21a10 10 0 0 0 20 0C27 14.5 17 3 17 3Z' fill='%237FD3E6'/%3E%3C/svg%3E"); }
.rodape .wrap { position: relative; z-index: 1; }
.rodape__faixa { background: var(--destaque); color: #fff; border-radius: 28px; padding: 28px 32px; display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-content: space-between; margin-bottom: 52px; }
.rodape .rodape__faixa b { font-family: var(--titulo); font-weight: 700; font-size: 24px; letter-spacing: -0.02em; text-transform: none; display: block; margin-bottom: 4px; color: #fff; }
.rodape__faixa p { color: #E3F3F8; }
.rodape__botoes { display: flex; flex-wrap: wrap; gap: 10px; }
.rodape .rodape__botao-linha { color: #fff; border: 1.5px solid rgba(255, 255, 255, .6); background: transparent; }
.rodape .rodape__botao-linha:hover { color: #fff; border-color: #fff; background: rgba(255, 255, 255, .08); }
.rodape__grade { display: grid; grid-template-columns: minmax(0, 1.4fr) repeat(4, minmax(0, 1fr)); gap: 32px; }
.rodape__marca p { max-width: 360px; line-height: 1.6; margin-top: 14px; }
.rodape__logo { display: inline-flex; gap: 10px; align-items: center; color: #fff; text-decoration: none; font-family: var(--titulo); font-weight: 800; font-size: 21px; letter-spacing: -0.02em; }
.rodape__logo svg { color: var(--azul-claro); }
.rodape__logo span span { color: var(--azul-claro); }
.rodape b { display: block; color: #fff; margin-bottom: 14px; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; }
.rodape ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.rodape a { color: #C9DCE4; text-decoration: none; }
.rodape a:hover { color: #fff; }
.rodape .botao--branco, .rodape .botao--branco:hover { color: var(--tinta); }
.rodape__base { border-top: 1px solid rgba(255, 255, 255, .12); margin-top: 44px; padding-top: 20px; display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; font-size: 13px; color: var(--cinza-claro); }
.rodape__topo { white-space: nowrap; }
.rodape__links-base { display: inline-flex; flex-wrap: wrap; gap: 8px 20px; }
.form-lgpd { font-size: 13px; color: var(--cinza); margin: 0; }

/* Anuncie seu laboratório */
.planos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
.plano { position: relative; background: #fff; border: 1px solid var(--linha); border-radius: 28px; padding: 32px 28px; display: flex; flex-direction: column; gap: 14px; }
.plano h2 { font-size: 26px; font-weight: 700; }
.plano__diz { color: var(--cinza); margin-top: -8px; }
.plano__preco { font-family: var(--titulo); font-weight: 800; font-size: 44px; letter-spacing: -0.03em; line-height: 1; }
.plano__preco small { font-family: var(--texto); font-size: 16px; font-weight: 500; letter-spacing: 0; color: var(--cinza); margin-left: 4px; }
.plano__itens { list-style: none; margin: 4px 0 8px; padding: 0; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.plano__itens li { position: relative; padding-left: 28px; }
.plano__itens li::before { content: ""; position: absolute; left: 0; top: 4px; width: 18px; height: 18px; border-radius: 50%; background: var(--claro) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B5F86' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center / 12px no-repeat; }
.plano--destaque { background: var(--tinta); border-color: var(--tinta); color: #fff; }
.plano--destaque .plano__diz, .plano--destaque .plano__preco small { color: #C9DCE4; }
.plano--destaque .plano__itens li::before { background-color: var(--destaque); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E"); }
.plano__fita { position: absolute; top: -13px; left: 28px; background: #FDE9C8; color: #7A4A00; font-size: 12px; font-weight: 600; padding: 4px 12px; border-radius: 999px; }
.planos__nota { color: var(--cinza); font-size: 15px; margin-top: 18px; }
.passos-anuncie { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; counter-reset: passo; }
.passos-anuncie li { counter-increment: passo; background: #fff; border: 1px solid var(--linha); border-radius: 24px; padding: 24px; display: flex; flex-direction: column; gap: 6px; }
.passos-anuncie li::before { content: counter(passo); font-family: var(--mono); color: var(--destaque-escuro); background: var(--claro); width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; margin-bottom: 8px; }
.passos-anuncie span { color: var(--cinza); }
.planos__titulo-form { font-size: 32px; font-weight: 700; }
.lateral-caixa--dono { background: var(--claro); border-color: var(--claro); }
.lateral-caixa--dono p { color: var(--tinta-2); font-size: 15px; margin-bottom: 6px; }
.lateral-caixa--dono a { font-weight: 600; }

/* Cadastro: escolha do plano e recursos pagos */
.campo__dica { font-weight: 400; font-size: 13px; color: var(--cinza); }
.escolha-plano { border: 0; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.escolha-plano legend { margin-bottom: 10px; padding: 0; }
.escolha-plano__item { position: relative; display: flex; gap: 10px; align-items: flex-start; border: 1.5px solid var(--linha-forte); border-radius: 16px; padding: 14px; cursor: pointer; background: #fff; }
.escolha-plano__item:has(input:checked) { border-color: var(--destaque); background: var(--claro); }
.escolha-plano__item input { margin-top: 4px; accent-color: var(--destaque); }
.escolha-plano__item span { display: flex; flex-direction: column; gap: 2px; }
.escolha-plano__item em { font-style: normal; font-family: var(--mono); font-size: 14px; color: var(--destaque-escuro); }
.escolha-plano__item small { font-size: 13px; color: var(--cinza); }
.escolha-plano__mais { grid-column: 1 / -1; font-size: 14px; font-weight: 600; }
.recursos-pagos { border: 1.5px dashed var(--linha-forte); border-radius: 20px; padding: 20px; margin: 0; background: var(--fundo); }
.recursos-pagos__titulo { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-weight: 600; padding: 0 8px; }
.recursos-pagos__titulo .selo::before { content: ""; width: 11px; height: 11px; margin-right: 6px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10V7a5 5 0 0 1 10 0v3h1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V11a1 1 0 0 1 1-1zm2 0h6V7a3 3 0 0 0-6 0z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10V7a5 5 0 0 1 10 0v3h1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V11a1 1 0 0 1 1-1zm2 0h6V7a3 3 0 0 0-6 0z'/%3E%3C/svg%3E") center / contain no-repeat; }
.recursos-pagos__aviso { font-size: 14px; color: var(--cinza); margin: 4px 0 14px; }
.recursos-pagos__campos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; opacity: .5; filter: grayscale(1); transition: opacity .2s, filter .2s; }
.recursos-pagos__campos:focus-within { opacity: .8; }
.recursos-pagos--liberado { border-style: solid; border-color: var(--destaque); background: #fff; }
.recursos-pagos--liberado .recursos-pagos__campos { opacity: 1; filter: none; }
.recursos-pagos__nota { font-weight: 400; font-size: 14px; color: var(--cinza); padding: 12px 0; }

@media (max-width: 1000px) {
	.plano { padding: 28px 22px; }
	.plano__preco { font-size: 36px; }
	.grade-5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.grade-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* Com o menu de 7 itens, abaixo de 1240px ele vira o botão. */
@media (max-width: 1240px) {
	.menu-botao { display: inline-flex; }
	.topo__menu { display: none; position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-bottom: 1px solid var(--linha); padding: 16px 24px 24px; }
	.topo__menu.aberto { display: block; }
	.menu { flex-direction: column; align-items: stretch; gap: 0; font-size: 17px; }
	.menu a { display: block; padding: 12px 0; }
	.menu .menu-cta a { text-align: center; margin-top: 8px; }
	.menu-sub__botao { width: 100%; justify-content: space-between; padding: 12px 0; font-size: 17px; }
	.menu-sub:hover > .menu-sub__lista, .menu-sub:focus-within > .menu-sub__lista { display: none; }
	.menu-sub.aberto > .menu-sub__lista { display: block; position: static; box-shadow: none; border: 0; border-left: 2px solid var(--linha); border-radius: 0; padding: 0 0 6px 14px; min-width: 0; }
	.menu-sub__lista::before { content: none; }
	.menu-sub__lista a { padding: 9px 0; white-space: normal; }
	.menu-sub__lista a:hover { background: none; }
	.menu-sub:hover > .menu-sub__botao svg { transform: none; }
	.menu-sub.aberto > .menu-sub__botao svg { transform: rotate(180deg); }
}
@media (max-width: 900px) {
	.hero { padding: 40px 0; }
	.hero__grade, .grade-3 { grid-template-columns: minmax(0, 1fr); }
	.rodape__grade { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rodape__marca { grid-column: 1 / -1; }
	.rodape__faixa { padding: 24px; }
	.hero h1 { font-size: 42px; }
	.busca { grid-template-columns: minmax(0, 1fr); }
	.secao { padding: 38px 0; }
	.secao-topo h2 { font-size: 32px; }
	.cabeca h1 { font-size: 38px; }
	.param-nome h1 { font-size: 48px; }
	.param-nome--longo h1 { font-size: 38px; }
	.fatos { grid-template-columns: minmax(0, 1fr); }
	.termo-definicao { font-size: 20px; }
	.cabeca h1.titulo-longo { font-size: 30px; }
	.chamada { padding: 32px; }
	.chamada h2 { font-size: 30px; }
}
@media (max-width: 760px) {
	.lab { grid-template-columns: minmax(0, 1fr); }
	.planos, .passos-anuncie, .escolha-plano, .recursos-pagos__campos { grid-template-columns: minmax(0, 1fr); }
	.planos { gap: 28px; }
	.grade-2, .formulario { grid-template-columns: minmax(0, 1fr); }
	.grade-5, .grade-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.numeros { flex-direction: column; }
}
@media (max-width: 782px) { .admin-bar .topo { top: 46px; } }
@media (max-width: 600px) { .admin-bar .topo { top: 0; position: relative; } }
@media (max-width: 520px) { .grade-4, .grade-5 { grid-template-columns: minmax(0, 1fr); } .analise-cartao { gap: 16px; } .hero h1 { font-size: 36px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { transition: none !important; } }

/* Entenda seu laudo */
.laudo { max-width: 1040px; padding-top: 40px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 22px; }
.laudo__adicionar { display: flex; gap: 12px; align-items: flex-end; flex-wrap: wrap; }
.laudo__adicionar .campo { flex: 1 1 320px; position: relative; }
.laudo__nao-achei { color: #9B1C1C; font-size: 14px; font-weight: 400; }
.laudo__atalhos { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 15px; color: var(--cinza); }
.laudo__atalhos button.selo { border: 0; cursor: pointer; font: inherit; font-size: 14px; font-weight: 600; }
.laudo__tabela { background: #fff; border: 1px solid var(--linha); border-radius: 24px; overflow: hidden; }
.laudo__cab, .laudo__linha { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1.3fr) minmax(0, 1.2fr) minmax(0, 1fr); gap: 16px; align-items: center; padding: 14px 22px; }
.laudo__cab { font-size: 13px; color: var(--cinza); background: var(--fundo); font-weight: 600; }
.laudo__linha { border-top: 1px solid var(--linha); }
.laudo__linha--fora { background: #FFF6F5; }
.laudo__nome { display: flex; flex-direction: column; gap: 2px; }
.laudo__nome a { font-weight: 600; color: var(--tinta); }
.laudo__nome small { font-family: var(--mono, 'JetBrains Mono', monospace); color: var(--destaque); font-size: 13px; }
.laudo__entrada { display: flex; gap: 8px; align-items: center; }
.laudo__entrada input, .laudo__entrada select { min-width: 0; width: 100%; padding: 10px 12px; border: 1.5px solid var(--linha); border-radius: 12px; font: inherit; font-size: 16px; background: #fff; }
.laudo__entrada select[data-unidade] { width: auto; flex: 0 0 auto; font-size: 14px; }
.laudo__un { font-size: 14px; color: var(--cinza); white-space: nowrap; }
.laudo__limite { font-size: 14px; color: var(--cinza); }
.laudo__situacao { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.laudo__tirar { border: 0; background: none; font-size: 22px; line-height: 1; color: var(--cinza); cursor: pointer; padding: 4px 8px; border-radius: 8px; }
.laudo__tirar:hover { background: var(--fundo); }
.selo--fora { background: #FDE2E1; color: #9B1C1C; font-weight: 600; }
.selo--ok { font-weight: 600; }
.laudo__resumo { display: flex; flex-direction: column; gap: 10px; align-items: flex-start; padding: 22px 24px; border-radius: 20px; font-size: 16px; }
.laudo__resumo b { font-size: 19px; }
.laudo__resumo ul { margin: 0; padding-left: 1.2em; }
.laudo__resumo--ok { background: var(--ok); }
.laudo__resumo--fora { background: #FDECEB; border: 1px solid #F5C6C3; }
.laudo__vazio { color: var(--cinza); }
.laudo__acoes { display: flex; gap: 10px; flex-wrap: wrap; }
.laudo__aviso { background: #fff; border: 1px solid var(--linha); border-radius: 20px; padding: 20px 24px; font-size: 15px; color: var(--cinza); }
.laudo__aviso ul { margin: 8px 0 0; padding-left: 1.2em; display: flex; flex-direction: column; gap: 6px; }
.hero__laudo { display: inline-flex; gap: 6px; align-items: center; font-weight: 600; color: var(--destaque); text-decoration: none; font-size: 16px; }
.hero__laudo:hover { text-decoration: underline; }
@media (max-width: 760px) {
	.laudo__cab { display: none; }
	.laudo__linha { grid-template-columns: minmax(0, 1fr); gap: 10px; padding: 16px 18px; }
	.laudo__limite::before { content: "Limite: "; }
}
.laudo__amostra { display: flex; gap: 12px; flex-wrap: wrap; }
.laudo__amostra .campo { flex: 1 1 260px; }
.laudo__amostra small { font-weight: 400; color: var(--cinza); }
.laudo-rel__topo, .laudo-rel__dados, .laudo-rel__rodape { display: none; }

/* Tabela periódica */
.tabela-p { padding-top: 32px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 22px; }
.tabela-p__barra { display: flex; gap: 16px 24px; align-items: flex-end; flex-wrap: wrap; }
.tabela-p__busca { flex: 0 1 420px; }
.tabela-p__so { display: inline-flex; gap: 8px; align-items: center; font-size: 15px; font-weight: 600; min-height: 48px; cursor: pointer; }
.tabela-p__so input { width: 18px; height: 18px; accent-color: var(--destaque); }
.tabela-p__legenda { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 13px; color: var(--cinza); }
.tabela-p__cat { display: inline-flex; align-items: center; gap: 6px; }
.tabela-p__cat i { width: 12px; height: 12px; border-radius: 4px; background: var(--cor); }
.tabela-p__cat--agua i { background: #fff; box-shadow: inset 0 0 0 2.5px var(--destaque); }
[data-cat="alcalino"] { --cor: #FBD9C9; --cor-t: #7A2E0E; }
[data-cat="alcalino-terroso"] { --cor: #FDE9C8; --cor-t: #6B4300; }
[data-cat="transicao"] { --cor: #DDE7F7; --cor-t: #1E3A6E; }
[data-cat="pos-transicao"] { --cor: #D9EEF0; --cor-t: #134E55; }
[data-cat="semimetal"] { --cor: #E3F1DA; --cor-t: #2F5418; }
[data-cat="ametal"] { --cor: #D4F0E2; --cor-t: #14532D; }
[data-cat="halogenio"] { --cor: #F6E2F0; --cor-t: #6B1F55; }
[data-cat="nobre"] { --cor: #E8E2F8; --cor-t: #3F2A7A; }
[data-cat="lantanideo"] { --cor: #F3EBD9; --cor-t: #5C4513; }
[data-cat="actinideo"] { --cor: #F7E1DF; --cor-t: #6E1F1A; }
[data-cat="desconhecido"] { --cor: #E9EEF0; --cor-t: #3B5260; }
.tabela-p__rolar { overflow-x: auto; margin: 0 -8px; padding: 8px; -webkit-overflow-scrolling: touch; }
.tabela-p__grade { display: grid; grid-template-columns: repeat(18, minmax(52px, 1fr)); grid-template-rows: repeat(7, auto) 14px auto auto; gap: 4px; min-width: 980px; }
.el { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0; aspect-ratio: 1 / 1.12; padding: 4px 2px; border: 0; border-radius: 8px; background: var(--cor); color: var(--cor-t); font: inherit; cursor: pointer; text-align: center; line-height: 1.1; transition: transform .12s, box-shadow .12s, opacity .15s; }
.el small { position: absolute; top: 4px; left: 6px; font-size: 10px; font-weight: 600; opacity: .8; }
.el b { font-family: var(--titulo); font-size: 21px; font-weight: 700; letter-spacing: -0.02em; margin-top: 6px; }
.el span { font-size: 9.5px; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.el em { font-style: normal; font-size: 9px; opacity: .75; font-family: var(--mono); }
.el--agua { box-shadow: inset 0 0 0 2.5px var(--destaque); }
.el--agua::after { content: ""; position: absolute; top: 5px; right: 5px; width: 7px; height: 9px; background: var(--destaque); border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%; clip-path: polygon(50% 0, 100% 62%, 85% 92%, 50% 100%, 15% 92%, 0 62%); }
button.el:hover { transform: translateY(-2px); box-shadow: 0 6px 14px rgba(10, 31, 44, .14); }
button.el--agua:hover { box-shadow: inset 0 0 0 2.5px var(--destaque), 0 6px 14px rgba(10, 31, 44, .14); }
.el--ativo { outline: 3px solid var(--tinta); outline-offset: 1px; z-index: 1; }
.el--apagado { opacity: .18; }
.el--vaga { cursor: default; opacity: .75; }
.el--vaga small { position: static; font-size: 10px; }
.el--vaga span { white-space: normal; font-size: 9px; }
.tabela-p__detalhe { grid-column: 3 / 13; grid-row: 1 / 4; display: flex; gap: 18px; align-items: flex-start; padding: 10px 14px 0; min-height: 0; }
.tabela-p__dica { color: var(--cinza); font-size: 15px; margin: auto; }
.tabela-p__simb { flex: 0 0 auto; width: 104px; aspect-ratio: 1 / 1.12; border-radius: 16px; background: var(--cor); color: var(--cor-t); display: flex; flex-direction: column; justify-content: center; align-items: center; position: relative; }
.tabela-p__simb small { position: absolute; top: 8px; left: 10px; font-weight: 600; font-size: 14px; }
.tabela-p__simb b { font-family: var(--titulo); font-size: 50px; letter-spacing: -0.03em; }
.tabela-p__info { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.tabela-p__info h2 { font-size: 28px; }
.tabela-p__info p { margin: 0; font-size: 14px; color: var(--cinza); }
.tabela-p__info p b { color: var(--tinta); font-family: var(--mono); font-size: 14px; }
.tabela-p__rot { margin-top: 6px !important; font-size: 12px !important; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; }
.tabela-p__params { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.tabela-p__calc { font-size: 14px; font-weight: 600; margin-top: 6px; }
.tabela-p__agua { background: #fff; border: 1px solid var(--linha); border-radius: var(--raio); padding: 24px; display: flex; flex-direction: column; gap: 8px; }
.tabela-p__agua h2 { font-size: 26px; }
.tabela-p__agua > p { color: var(--cinza); margin: 0; }
.tabela-p__lista { list-style: none; margin: 8px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px 20px; }
.tabela-p__lista li { display: flex; gap: 12px; align-items: flex-start; }
.tabela-p__lista li > div { display: flex; flex-direction: column; font-size: 14px; }
.tabela-p__lista b { font-size: 15px; }
.tabela-p__mini { flex: 0 0 40px; height: 40px; border-radius: 8px; background: var(--cor); color: var(--cor-t); font-family: var(--titulo); font-weight: 700; font-size: 17px; display: flex; align-items: center; justify-content: center; }
.tabela-p__fonte { font-size: 13px; color: var(--cinza); margin: 0; }
.tabela-p > .tabela-p__detalhe { background: #fff; border: 1px solid var(--linha); border-radius: var(--raio); padding: 16px; gap: 14px; }
.tabela-p > .tabela-p__detalhe .tabela-p__simb { width: 76px; }
.tabela-p > .tabela-p__detalhe .tabela-p__simb b { font-size: 36px; }
.tabela-p > .tabela-p__detalhe h2 { font-size: 22px; }

/* Calculadoras de laboratório */
.calcs { padding-top: 32px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 24px; }
.calcs__atalhos { display: flex; flex-wrap: wrap; gap: 8px; }
.calcs__atalhos .selo { font-size: 14px; }
.calcs__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: start; }
.calc { background: #fff; border: 1px solid var(--linha); border-radius: var(--raio); padding: 24px; display: flex; flex-direction: column; gap: 14px; scroll-margin-top: 110px; }
.calc--largo { grid-column: 1 / -1; }
.calc h2 { font-size: 23px; }
.calc > p { margin: 0; color: var(--cinza); font-size: 15px; }
.calc__campos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.calc__campos--um { grid-template-columns: minmax(0, 1fr); }
.calc__campo { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 600; justify-content: flex-end; }
.calc__campo--largo { grid-column: 1 / -1; }
.calc__campo small { font-weight: 400; color: var(--cinza); }
.calc__entrada { display: flex; align-items: center; border: 1.5px solid var(--linha-forte); border-radius: 12px; background: #fff; overflow: hidden; }
.calc__entrada:focus-within { border-color: var(--destaque); box-shadow: 0 0 0 3px var(--claro); }
.calc__entrada input, .calc__entrada select { flex: 1 1 auto; min-width: 0; border: 0; padding: 11px 12px; font: inherit; font-size: 16px; font-weight: 400; background: transparent; color: var(--tinta); outline: 0; }
.calc__entrada input { font-family: var(--mono); font-size: 15px; }
.calc__entrada select { cursor: pointer; }
.calc__entrada input + select { flex: 0 1 auto; max-width: 62%; border-left: 1px solid var(--linha); background: var(--fundo); font-size: 14px; }
.calc__entrada em { font-style: normal; font-size: 13px; color: var(--cinza); padding: 0 12px; white-space: nowrap; }
.calc__campo textarea { border: 1.5px solid var(--linha-forte); border-radius: 12px; padding: 11px 12px; font-family: var(--mono); font-size: 14px; resize: vertical; min-height: 130px; }
.calc__campo textarea:focus { border-color: var(--destaque); outline: 0; box-shadow: 0 0 0 3px var(--claro); }
.calc__res { display: none; flex-direction: column; gap: 6px; background: var(--fundo); border-radius: 14px; padding: 14px 16px; font-size: 15px; }
.calc__res--cheio { display: flex; }
.calc__res p { margin: 4px 0 0; color: var(--tinta-2); }
.calc__linha { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.calc__linha span { color: var(--cinza); }
.calc__linha b { font-family: var(--mono); font-weight: 500; text-align: right; }
.calc__linha small { font-family: var(--texto); color: var(--cinza); font-weight: 400; }
.calc__linha--forte span { color: var(--tinta); font-weight: 600; }
.calc__linha--forte b { font-size: 20px; font-weight: 700; color: var(--destaque-escuro); }
.calc__erro { color: #9B1C1C !important; font-weight: 600; }
.calc__conta { font-family: var(--mono); font-size: 13px; color: var(--cinza) !important; }
.calc__tab { width: 100%; border-collapse: collapse; font-size: 14px; margin-top: 4px; }
.calc__tab th, .calc__tab td { text-align: left; padding: 6px 4px; border-bottom: 1px solid var(--linha); }
.calc__tab th { font-size: 12px; color: var(--cinza); font-weight: 600; }
.calc__tab td { font-family: var(--mono); font-size: 13px; }
.calc__grafico { width: 100%; max-width: 420px; height: auto; margin-top: 8px; background: #fff; border-radius: 10px; }
.calc__grafico .eixo { stroke: var(--linha-forte); stroke-width: 1; }
.calc__grafico .reta { stroke: var(--destaque); stroke-width: 2; }
.calc__grafico .ponto { fill: var(--tinta); }
.calc__grafico .amostra { fill: #E8590C; stroke: #fff; stroke-width: 2; }
.calc__grafico text { font-size: 10px; fill: var(--cinza); }
.calc__como { font-size: 14px; color: var(--cinza); }
.calc__como summary { cursor: pointer; font-weight: 600; color: var(--destaque-escuro); }
.calc__como p { margin: 8px 0 0; }
.calc__nota { font-size: 13px; color: var(--cinza); margin: 0; }
.calc__alerta { margin: 0; background: var(--alerta); color: var(--alerta-tinta); border-radius: 12px; padding: 12px 14px; font-size: 14px; }
.calc__aviso { margin: 0; font-size: 14px; color: var(--cinza); }
@media (max-width: 900px) {
	.calcs__grade { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 520px) {
	.calc { padding: 18px; }
	.calc__campos { grid-template-columns: minmax(0, 1fr); }
}

/* Dicas e cuidados no laboratório */
.dicas { max-width: 960px; padding-top: 32px; padding-bottom: 80px; display: flex; flex-direction: column; gap: 20px; }
.dica { background: #fff; border: 1px solid var(--linha); border-radius: var(--raio); padding: 28px 30px; font-size: 17px; scroll-margin-top: 110px; }
.dica h2 { margin-top: 0; }
.dica ul { display: flex; flex-direction: column; gap: 10px; }
.dica ul li::marker { color: var(--destaque); }
.dica > p:not(.dicas__alerta) { color: var(--cinza); font-size: 16px; }
.dicas__tabela { font-size: 14.5px !important; }
.dicas__tabela td:first-child { font-weight: 600; min-width: 150px; }
.dicas__alerta { background: var(--alerta); color: var(--alerta-tinta); border-radius: 14px; padding: 14px 16px; font-size: 16px; }
@media (max-width: 520px) { .dica { padding: 20px 18px; font-size: 16px; } }

/* Ferramentas na home */
.ferr-home { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.ferr-home__item { display: flex; flex-direction: column; gap: 8px; padding: 22px; border-radius: var(--raio); transition: border-color .15s, transform .15s; }
.ferr-home__item:hover { border-color: var(--destaque); transform: translateY(-2px); }
.ferr-home__item b { font-family: var(--titulo); font-size: 21px; letter-spacing: -0.02em; }
.ferr-home__icone { width: 44px; height: 44px; border-radius: 12px; background: var(--claro); color: var(--destaque-escuro); display: flex; align-items: center; justify-content: center; }
.ferr-home__texto { font-size: 15px; color: var(--cinza); flex: 1; }
.ferr-home__link { font-size: 15px; font-weight: 600; color: var(--destaque-escuro); }
.ferr-home__item--destaque { background: var(--tinta); border-color: var(--tinta); color: #fff; }
.ferr-home__item--destaque .ferr-home__texto { color: #C9DCE4; }
.ferr-home__item--destaque .ferr-home__link { color: var(--azul-claro); }
.ferr-home__item--destaque .ferr-home__icone { background: rgba(255, 255, 255, .1); color: var(--azul-claro); }
@media (max-width: 600px) { .ferr-home { grid-template-columns: minmax(0, 1fr); } }

/* Banners de propaganda */
.banner { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; }
.banner > small { align-self: flex-start; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--cinza-claro); }
.banner img { display: block; max-width: 100%; height: auto; border-radius: 12px; }
.banner__codigo { width: 100%; display: flex; justify-content: center; }
.banner--faixa img { width: 970px; }
.banner--quadro img { width: 300px; }
.banner--vazio { flex-direction: row; flex-wrap: wrap; justify-content: space-between; gap: 12px 20px; border: 1.5px dashed var(--linha-forte); border-radius: var(--raio); padding: 18px 22px; background: rgba(255, 255, 255, .5); }
.banner--vazio > small { flex-basis: 100%; }
.banner--vazio div { display: flex; flex-direction: column; gap: 2px; }
.banner--vazio b { font-family: var(--titulo); font-size: 19px; letter-spacing: -0.02em; }
.banner--vazio span { font-size: 14px; color: var(--cinza); }
.banner--vazio .botao { min-height: 42px; padding: 0 16px; font-size: 14px; }
.banner--quadro.banner--vazio { flex-direction: column; align-items: flex-start; justify-content: center; min-height: 190px; }
.banner--quadro.banner--vazio > small { flex-basis: auto; }
.banner-linha:has(.banner, .ptl-bn) { padding-top: 4px; padding-bottom: 4px; }
.banner-linha--meio:has(.banner, .ptl-bn) { padding-bottom: 44px; }

/* Banners do menu Banners (plugin) */
.ptl-bn { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; }
.ptl-bn__rotulo { align-self: flex-start; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--cinza-claro); }
.ptl-bn img { display: block; max-width: 100%; height: auto; border-radius: 12px; }
.ptl-bn--faixa img { width: 970px; }
.ptl-bn--quadro img { width: 300px; }
.ptl-bn__codigo { width: 100%; display: flex; justify-content: center; }
.ptl-bn--cartoes { align-items: stretch; gap: 10px; }
.ptl-bn__titulo { font-size: 24px; }
.ptl-bn__grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 14px; }
.ptl-bn__cartao { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--linha); border-radius: 16px; overflow: hidden; color: var(--tinta); text-decoration: none; transition: border-color .15s, transform .15s; }
.ptl-bn__cartao:hover { border-color: var(--destaque); transform: translateY(-2px); }
.ptl-bn__foto { display: block; aspect-ratio: 4 / 3; background: var(--fundo); }
.ptl-bn__foto img { width: 100%; height: 100%; object-fit: contain; border-radius: 0; }
.ptl-bn__corpo { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px 16px; flex: 1; }
.ptl-bn__corpo b { font-size: 16px; line-height: 1.3; }
.ptl-bn__anunc { font-size: 13px; color: var(--destaque-escuro); font-weight: 600; }
.ptl-bn__texto { font-size: 14px; color: var(--cinza); flex: 1; }
.ptl-bn__corpo em { font-style: normal; font-size: 14px; font-weight: 600; color: var(--destaque-escuro); margin-top: 4px; }
.banner--cartoes.banner--vazio b { font-size: 17px; }
.lateral .banner--quadro.banner--vazio { min-height: 0; }
.lista .ptl-bn-espaco, .lista > .banner { margin: 4px 0; }

/* Outras ferramentas (pé das ferramentas) */
.ferr-outras { display: flex; flex-direction: column; gap: 12px; margin-top: 12px; }
.ferr-outras > b { font-family: var(--titulo); font-size: 22px; letter-spacing: -0.02em; }
.ferr-outras__lista { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.ferr-outras__lista a { display: flex; flex-direction: column; gap: 4px; background: #fff; border: 1px solid var(--linha); border-radius: 16px; padding: 16px 18px; text-decoration: none; color: var(--tinta); }
.ferr-outras__lista a:hover { border-color: var(--destaque); }
.ferr-outras__lista span { font-size: 14px; color: var(--cinza); }

/* PDF / impressão do laudo: relatório com a marca do portal */
@media print {
	@page { size: A4; margin: 12mm 12mm 14mm; }
	html, body { background: #fff !important; }
	body { -webkit-print-color-adjust: exact; print-color-adjust: exact; font-size: 12px; }
	body:has(.laudo) > *:not(main), main:has(> .laudo) > *:not(.laudo) { display: none !important; }
	.laudo { max-width: none; padding: 0 !important; margin: 0; gap: 14px; }
	.laudo__amostra, .laudo__adicionar, .laudo__atalhos, .laudo__acoes, .laudo__tirar, .laudo__vazio, .laudo__aviso, .laudo__resumo .botao, .laudo__nao-achei, .banner, .ferr-outras { display: none !important; }
	.laudo-rel__topo { display: flex; justify-content: space-between; align-items: center; padding: 0 0 12px; border-bottom: 3px solid #0B6E99; }
	.laudo-rel__marca { display: flex; gap: 10px; align-items: center; }
	.laudo-rel__marca b { display: block; font-family: var(--titulo, inherit); font-size: 20px; color: #0A1F2C; letter-spacing: -0.01em; }
	.laudo-rel__marca b span { color: #0B6E99; }
	.laudo-rel__marca small, .laudo-rel__titulo small { display: block; font-size: 10.5px; color: #3B5260; }
	.laudo-rel__titulo { text-align: right; }
	.laudo-rel__titulo b { display: block; font-size: 17px; color: #0A1F2C; }
	.laudo-rel__dados { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 0; background: #F3F7F8; border-radius: 12px; overflow: hidden; }
	.laudo-rel__dados div { padding: 9px 12px; border-left: 1px solid #DCE6EA; }
	.laudo-rel__dados div:first-child { border-left: 0; }
	.laudo-rel__dados dt { font-size: 9.5px; text-transform: uppercase; letter-spacing: 0.06em; color: #3B5260; }
	.laudo-rel__dados dd { margin: 2px 0 0; font-size: 12.5px; font-weight: 600; color: #0A1F2C; }
	.laudo__resumo { padding: 12px 16px; border-radius: 12px; gap: 6px; font-size: 12px; break-inside: avoid; }
	.laudo__resumo b { font-size: 14px; }
	.laudo__resumo a { color: inherit; text-decoration: none; font-weight: 600; }
	.laudo__tabela { border-radius: 12px; border-color: #DCE6EA; }
	.laudo__cab, .laudo__linha { display: grid !important; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1.1fr) minmax(0, 1.3fr) minmax(0, 0.9fr) !important; gap: 10px; padding: 7px 14px !important; }
	.laudo__cab { background: #0B6E99 !important; color: #fff; font-size: 10px; text-transform: uppercase; letter-spacing: 0.05em; }
	.laudo__linha { break-inside: avoid; }
	.laudo__linha:nth-child(even) { background: #F8FBFC; }
	.laudo__linha--fora { background: #FFF1F0 !important; }
	.laudo__nome a { text-decoration: none; font-size: 12.5px; }
	.laudo__nome small { font-size: 10px; }
	.laudo__entrada { justify-content: flex-start; gap: 6px; }
	.laudo__entrada input, .laudo__entrada select { border: 0 !important; padding: 0 !important; background: none !important; box-shadow: none !important; outline: 0 !important; appearance: none; -webkit-appearance: none; font-size: 13px; font-weight: 600; width: auto; max-width: 100%; field-sizing: content; flex: 0 1 auto; color: #0A1F2C; }
	.laudo__un { font-size: 11px; }
	.laudo__entrada select[data-unidade] { font-weight: 400; font-size: 11px; color: #3B5260; }
	.laudo__entrada input::placeholder { color: transparent; }
	.laudo__limite { font-size: 11px; }
	.laudo__limite::before { content: none !important; }
	.selo { font-size: 10.5px; padding: 3px 8px; }
	.laudo-rel__rodape { display: block; margin: 4px 0 0; padding-top: 10px; border-top: 1px solid #DCE6EA; font-size: 9.5px; color: #3B5260; }
}

/* Guia de materiais: tom verde para não confundir com o guia de laboratórios */
.cabeca--material .sobretitulo { color: var(--ok-tinta); margin-bottom: 6px; }
.cabeca--material .logo-lab, .lab--material .logo-lab { background: var(--ok); color: var(--ok-tinta); }
.passos-anuncie--quatro { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 760px) { .passos-anuncie--quatro { grid-template-columns: minmax(0, 1fr); } }
.forn-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.forn-cat { display: flex; flex-direction: column; gap: 6px; background: #fff; border: 1px solid var(--linha); border-radius: 18px; padding: 18px; text-decoration: none; color: var(--tinta); }
.forn-cat b { color: var(--ok-tinta); }
.forn-cat span { font-size: 15px; color: var(--cinza); line-height: 1.5; }
.forn-cat:hover { border-color: var(--linha-forte); }
.forn-dicas li { margin-bottom: 8px; }
.forn-quadro { background: var(--ok); color: var(--ok-tinta); border-radius: 24px; min-height: 250px; padding: 28px 22px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center; }
.forn-quadro__iniciais { font-family: var(--titulo); font-weight: 800; font-size: 64px; line-height: 1; letter-spacing: -.02em; margin-bottom: 6px; }
.forn-quadro__logo { width: 120px; height: 120px; border-radius: 20px; overflow: hidden; background: #fff; margin-bottom: 6px; }
.forn-quadro__logo img { width: 100%; height: 100%; object-fit: contain; }
.forn-quadro b { font-size: 18px; }
.forn-quadro span { font-size: 14px; opacity: .85; }
.nao-informado { color: var(--cinza-claro); font-style: italic; }
.forn-atualizar { font-size: 14px; color: var(--cinza); margin-top: 10px; }
.recursos-pagos__banner { display: none; flex-direction: column; gap: 12px; margin-top: 18px; padding-top: 18px; border-top: 1px dashed var(--linha-forte); }
.recursos-pagos--destaque .recursos-pagos__banner { display: flex; }

/* Orçamento na página do fornecedor Destaque */
.orcamento-cats { border: 0; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; }
.orcamento-cats legend { margin-bottom: 10px; padding: 0; }
#orcamento, #formulario { scroll-margin-top: 110px; }

/* "Encontrou um erro?" no fim das páginas de conteúdo */
.reportar { padding-top: 8px; padding-bottom: 40px; }
.reportar__caixa { border-top: 1px solid var(--linha); padding-top: 16px; }
.reportar__caixa summary { cursor: pointer; font-size: 14px; color: var(--cinza); list-style: none; display: inline-flex; align-items: center; gap: 6px; }
.reportar__caixa summary::-webkit-details-marker { display: none; }
.reportar__caixa summary::before { content: "⚑"; font-size: 13px; }
.reportar__caixa summary:hover { color: var(--tinta); text-decoration: underline; }
.reportar__caixa[open] summary { color: var(--tinta); font-weight: 600; margin-bottom: 14px; }
.reportar__caixa .aviso { margin-bottom: 12px; max-width: 640px; }
.reportar__form { display: grid; gap: 14px; max-width: 640px; }
.reportar__pe { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.reportar__pe small { font-size: 13px; color: var(--cinza); }
#formulario.reportar__caixa { scroll-margin-top: 110px; }
@media print { .reportar { display: none; } }

/* 2.0.8: grade de categorias nos cadastros, com "Outros" por escrito */
.marcar-grade { border: 0; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.marcar-grade__outros { display: none; grid-column: 1 / -1; }
.marcar-grade:has(input[value="outros"]:checked) .marcar-grade__outros { display: flex; }

/* 2.0.8: páginas de anúncio separam "página no guia" e "banners" */
.anuncie-opcoes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 32px; }
.anuncie-opcao { display: flex; flex-direction: column; gap: 6px; background: #fff; border: 1.5px solid var(--linha-forte); border-radius: 24px; padding: 24px; color: var(--tinta); text-decoration: none; }
.anuncie-opcao:hover { border-color: var(--destaque); }
.anuncie-opcao b { font-size: 20px; }
.anuncie-opcao span:last-child { color: var(--cinza); }
.anuncie-opcao__num { font-family: var(--mono); color: var(--destaque-escuro); background: var(--claro); width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; margin-bottom: 4px; }
.anuncie-titulo { margin-top: 56px; margin-bottom: 24px; scroll-margin-top: 90px; }
#banners { scroll-margin-top: 90px; }
@media (max-width: 760px) {
	.anuncie-opcoes { grid-template-columns: minmax(0, 1fr); }
}
.marcar-grade .marcar input { flex-shrink: 0; }
