/* ==========================================================================
   Hub institucional (cards) + página de detalhe (uma por assunto).
   Substitui o antigo T2 de página longa com âncora.
   ========================================================================== */

.hub-cards-grid{grid-template-columns:repeat(2,1fr)}
.hub-card{background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-card);transition:box-shadow var(--dur-base) var(--ease-out)}
.hub-card:hover{box-shadow:var(--shadow-md);border-color:transparent}
.hub-card-body{padding:var(--space-5)}
.hub-card-body h3{font-size:1.125rem;margin:0 0 8px}
.hub-card-body p{font-size:.9375rem;color:var(--ink-500);margin:0 0 var(--space-3)}
@media (max-width:767px){ .hub-cards-grid{grid-template-columns:1fr} }

.detalhe-layout{display:flex;gap:var(--space-8);align-items:flex-start;padding-block:var(--space-7)}
.detalhe-layout .pagina-corpo{max-width:38rem}
.detalhe-layout h1{font-size:clamp(1.5rem,1.2rem + 1vw,2rem);margin:0 0 var(--space-4)}

.detalhe-relacionados{width:260px;flex-shrink:0;position:sticky;top:140px}
.relacionados-lista{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}
.relacionados-lista a{font-size:.875rem;color:var(--ink-500)}
.relacionados-lista a:hover{color:var(--teal-700)}

@media (max-width:1023px){
  .detalhe-layout{flex-direction:column}
  .detalhe-relacionados{width:100%;position:static;border-top:1px solid var(--gray-100);padding-top:var(--space-5)}
}

.filtro-categorias{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-5)}
.chip-filtro{
  background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-pill);
  padding:8px 18px;font-family:var(--font-display);font-weight:600;font-size:.875rem;
  color:var(--ink-500);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);
}
.chip-filtro:hover{border-color:var(--teal-500);color:var(--teal-700)}
.chip-filtro.is-active{background:var(--teal-700);border-color:var(--teal-700);color:var(--white)}
.servicos-hub-grid{grid-template-columns:repeat(3,1fr)}
@media (max-width:1023px){ .servicos-hub-grid{grid-template-columns:1fr 1fr} }
@media (max-width:640px){ .servicos-hub-grid{grid-template-columns:1fr} }

.detalhe-subtitulo{color:var(--ink-500);font-size:.9375rem;margin:-8px 0 24px}

.tabela-setores-wrap{overflow-x:auto;margin-top:var(--space-4)}
.tabela-setores{width:100%;border-collapse:collapse;font-size:.9375rem;min-width:600px}
.tabela-setores th{
  text-align:left;padding:10px 14px;background:var(--teal-900);color:var(--white);
  font-family:var(--font-display);font-size:.8125rem;text-transform:uppercase;letter-spacing:.04em;
}
.tabela-setores td{padding:12px 14px;border-bottom:1px solid var(--gray-100)}
.tabela-setores tbody tr:nth-child(even){background:var(--gray-25)}
.tabela-nota{display:block;font-size:.75rem;color:var(--ink-500);font-weight:400;margin-top:2px}
.tabela-rodape{font-size:.8125rem;color:var(--ink-500);margin-top:var(--space-3)}

/* --- Corpo Clínico (T5) --- */
.medicos-grid{grid-template-columns:repeat(3,1fr)}
.medico-card{background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-card);overflow:hidden}
.medico-foto{aspect-ratio:1/1;background:var(--gray-100)}
.medico-info{padding:var(--space-4)}
.medico-info strong{display:block;font-family:var(--font-display);font-size:1.0625rem;margin-bottom:4px}
.medico-cargo{font-size:.875rem;color:var(--teal-700);font-weight:600;margin:0 0 2px}
.medico-especialidade{font-size:.875rem;color:var(--ink-500);margin:0 0 2px}
.medico-crm{font-size:.8125rem;color:var(--ink-300,#8D9797);margin:0}
@media (max-width:1023px){ .medicos-grid{grid-template-columns:1fr 1fr} }
@media (max-width:640px){ .medicos-grid{grid-template-columns:1fr} }

.medicos-vazio{
  max-width:32rem;text-align:center;margin:0 auto;padding:var(--space-9) 0;
}
.medicos-vazio h2{font-size:1.5rem;margin:var(--space-2) 0 var(--space-3)}
.medicos-vazio p{color:var(--ink-500);margin:0 0 var(--space-5)}
