/* Padrão tipográfico do site principal — Trinus
   Escala única de entrelinha (line-height) para títulos, subtítulos e textos.
   Regra de ouro: quanto maior a fonte, menor a entrelinha.

   Hero (h1)            1.05
   Seção (h2)           1.15
   Card / h3, h4        1.25
   Subtítulo / lead     1.5
   Texto corrido        1.65
   Rótulos / números    1.2
*/

/* 1. Defaults por elemento.
   O seletor com [class] vence o line-height embutido nos utilitários text-*
   do Tailwind, mas continua abaixo das classes .lead-* / .leading-* abaixo. */
h1,
h1[class] {
  line-height: 1.05;
}

h2,
h2[class] {
  line-height: 1.15;
}

h3,
h3[class],
h4,
h4[class] {
  line-height: 1.25;
}

p,
p[class],
li,
li[class] {
  line-height: 1.65;
}

/* 2. Classes utilitárias do padrão */
.lead-hero {
  line-height: 1.05 !important;
}

.lead-section {
  line-height: 1.15 !important;
}

.lead-card {
  line-height: 1.25 !important;
}

.lead-sub {
  line-height: 1.5 !important;
}

.lead-body {
  line-height: 1.65 !important;
}

.lead-label {
  line-height: 1.2 !important;
}

/* 3. Utilitários Tailwind já presentes no markup, realinhados à escala.
   Mantém o markup existente funcionando sem entrelinhas divergentes. */
.leading-tight {
  line-height: 1.15 !important;
}

.leading-snug {
  line-height: 1.3 !important;
}

.leading-normal {
  line-height: 1.5 !important;
}

.leading-relaxed {
  line-height: 1.65 !important;
}

.leading-loose {
  line-height: 1.8 !important;
}

/* leading-none permanece 1 — usado em números, contadores e lockups
   de uma única linha. */
.leading-none {
  line-height: 1 !important;
}

/* ------------------------------------------------------------------
   4. Escala de tamanhos de fonte (acessibilidade)

   Texto corrido      16px (mínimo)
   Apoio / legenda    14px (mínimo)
   Rótulos / tags     12px (nunca menos)
   ------------------------------------------------------------------ */

.fs-body {
  font-size: 1rem !important;
}

.fs-support {
  font-size: 0.875rem !important;
}

.fs-label {
  font-size: 0.75rem !important;
}

/* Piso dos utilitários Tailwind usados no markup */
.text-xs {
  font-size: 0.75rem !important;
}

.text-sm {
  font-size: 0.875rem !important;
}

.text-base {
  font-size: 1rem !important;
}

/* Variantes responsivas precisam vencer o piso acima nos breakpoints,
   senão "text-sm md:text-base" ficaria travado em 14px no desktop. */
@media (min-width: 768px) {
  .md\:text-xs {
    font-size: 0.75rem !important;
  }
  .md\:text-sm {
    font-size: 0.875rem !important;
  }
  .md\:text-base {
    font-size: 1rem !important;
  }
  .md\:text-lg {
    font-size: 1.125rem !important;
  }
  .md\:text-xl {
    font-size: 1.25rem !important;
  }
}

@media (min-width: 1024px) {
  .lg\:text-sm {
    font-size: 0.875rem !important;
  }
  .lg\:text-base {
    font-size: 1rem !important;
  }
  .lg\:text-lg {
    font-size: 1.125rem !important;
  }
  .lg\:text-xl {
    font-size: 1.25rem !important;
  }
}

/* ------------------------------------------------------------------
   5. Conteúdo revelado em cards (dropdown / hover)

   O texto que aparece ao abrir o card é texto de leitura, não rótulo:
   sobe para 15px e o cinza fica mais legível.
   ------------------------------------------------------------------ */

.dev-card-content-inner p,
.dev-card-content-inner li,
.dev-card-content-inner span,
.dev-card-content-inner button,
.dev-card-content-inner a {
  font-size: 0.9375rem !important;
}

.dev-card-content-inner .text-white\/60,
.dev-card-content-inner .text-white\/65,
.dev-card-content-inner .text-white\/55,
.dev-card-content-inner .text-white\/45 {
  color: rgba(255, 255, 255, 0.75) !important;
}

/* Ícones dentro do conteúdo revelado não seguem a escala de texto */
.dev-card-content-inner svg {
  font-size: inherit !important;
}
