/* Complementos ao CSS original do tema (Tailwind compilado): menu, artigos e filtro. */
[hidden] { display: none !important; }

/* Acessibilidade: foco bem visível e atalho para o conteúdo. */
:focus-visible { outline: 3px solid hsl(var(--gold)); outline-offset: 2px; border-radius: 2px; }
.ss-pular { position: absolute; left: -9999px; top: .5rem; z-index: 100; padding: .6rem 1rem; border-radius: .375rem; background: hsl(var(--navy)); color: #fff; font-size: .875rem; }
.ss-pular:focus { left: .5rem; }

.ss-drop { position: relative; }
.ss-drop-menu {
  position: absolute; left: 0; top: calc(100% + .75rem); z-index: 60; width: 20rem;
  padding: .5rem; border: 1px solid hsl(var(--border)); border-radius: .5rem;
  background: hsl(var(--card)); box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
}
.ss-drop-item { display: block; padding: .6rem .75rem; border-radius: .375rem; font-size: .875rem; color: hsl(var(--navy)); }
.ss-drop-item:hover { background: hsl(var(--secondary)); color: hsl(var(--primary)); }

.ss-filtro-ativo { border-color: hsl(var(--primary)) !important; background: hsl(var(--primary)) !important; color: hsl(var(--primary-foreground)) !important; }

/* Resposta rápida no topo do artigo. */
.ss-resposta { margin-top: 2rem; padding: 1.25rem 1.5rem; border-left: 4px solid hsl(var(--primary)); border-radius: .5rem; background: hsl(var(--accent) / .5); }
.ss-resposta-rotulo { margin-bottom: .35rem; font-size: .75rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: hsl(var(--primary)); }
.ss-resposta p:last-child { font-size: 1.0625rem; line-height: 1.65; color: hsl(var(--navy)); }

/* Corpo do artigo (gerado a partir de Markdown). */
.ss-artigo { margin-top: 2rem; color: hsl(var(--muted-foreground)); line-height: 1.75; }
.ss-artigo > * + * { margin-top: 1.1rem; }
.ss-artigo h2 { margin-top: 2.5rem; font-family: Lora, Georgia, serif; font-size: 1.5rem; font-weight: 600; line-height: 1.3; color: hsl(var(--navy)); }
.ss-artigo h3 { margin-top: 1.75rem; font-size: 1.125rem; font-weight: 600; color: hsl(var(--navy)); }
.ss-artigo strong { color: hsl(var(--navy)); font-weight: 600; }
.ss-artigo a { color: hsl(var(--primary)); text-decoration: underline; text-underline-offset: 2px; }
.ss-artigo ul { list-style: disc; padding-left: 1.4rem; }
.ss-artigo ol { list-style: decimal; padding-left: 1.4rem; }
.ss-artigo li + li { margin-top: .4rem; }
.ss-artigo table { width: 100%; border-collapse: collapse; font-size: .9rem; display: block; overflow-x: auto; }
.ss-artigo th, .ss-artigo td { border: 1px solid hsl(var(--border)); padding: .55rem .7rem; text-align: left; vertical-align: top; }
.ss-artigo th { background: hsl(var(--secondary)); color: hsl(var(--navy)); font-weight: 600; }
.ss-artigo .ss-destaque { padding: 1rem 1.25rem; border: 1px solid hsl(var(--gold) / .6); border-radius: .5rem; background: hsl(var(--gold) / .12); color: hsl(var(--navy)); }
.ss-artigo .ss-destaque > * + * { margin-top: .6rem; }

/* Topo da página inicial: botões "O que aconteceu com você?" e legenda da foto. */
.ss-chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.ss-chip { display: inline-block; padding: .5rem .9rem; border: 1px solid hsl(var(--border)); border-radius: 999px; background: hsl(var(--card)); color: hsl(var(--navy)); font-size: .875rem; line-height: 1.3; transition: border-color .15s, background .15s, color .15s; }
.ss-chip:hover { border-color: hsl(var(--primary)); background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); }
.ss-topo-foto { aspect-ratio: 4 / 5; }
.ss-legenda { position: relative; margin-top: .75rem; font-size: .875rem; line-height: 1.5; color: hsl(var(--muted-foreground)); }
.ss-legenda strong { color: hsl(var(--navy)); font-weight: 600; }

/* Fotos verticais nos cartões de artigo: enquadra o rosto, não o centro. */
.ss-card-img { object-position: center 6%; }


/* Classe do tema original que não veio no CSS compilado (traço dourado antes do sobretítulo). */
.bg-gold { background-color: hsl(var(--gold)); }


/* Âncoras da área de indenizações não ficam escondidas sob o cabeçalho fixo. */
#seguradoras, #construtoras { scroll-margin-top: 6rem; }
/* No celular, o traço dourado antes do sobretítulo do topo deslocava o texto. */
@media (max-width: 639px) { .ss-chips { gap: .625rem; } section .h-px.w-8.bg-gold { display: none; } }


/* Chamadas para falar com o advogado dentro dos artigos. */
.ss-artigo .ss-cta { margin: 2.25rem 0; padding: 1.25rem 1.5rem; border-radius: .75rem; background: hsl(var(--navy)); color: #fff; }
.ss-artigo .ss-cta > * + * { margin-top: .5rem; }
.ss-cta-titulo { font-family: Lora, Georgia, serif; font-size: 1.2rem; font-weight: 600; color: #fff; }
.ss-cta-texto { font-size: .95rem; line-height: 1.6; color: rgba(255,255,255,.8); }
.ss-cta-acoes { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.25rem; margin-top: 1rem !important; }
.ss-artigo .ss-cta-botao { display: inline-block; padding: .7rem 1.2rem; border-radius: .375rem; background: #128C7E; color: #fff; font-size: .9rem; font-weight: 500; text-decoration: none; }
.ss-artigo .ss-cta-botao:hover { background: #0e7568; }
.ss-artigo .ss-cta-tel { color: rgba(255,255,255,.85); font-size: .9rem; text-decoration: underline; text-underline-offset: 2px; }
