/* ==========================================================================
   AEROPARTS - TYPOGRAPHY
   Google Fonts: Barlow (Titles) & Archivo (Body & UI)
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700&family=Barlow:wght@600;700;800&display=swap');

/* Typography Global Rules */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-title);
  text-transform: uppercase;
  letter-spacing: -0.01em;
  color: var(--color-blue-aeroparts);
}

/* Eyebrow Label (Etiqueta superior) */
.section-eyebrow {
  display: inline-block;
  font-family: var(--font-body);
  font-size: 0.8125rem; /* 13px */
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--color-gray-label);
  margin-bottom: 0.75rem;
}

/* Section Title */
.section-title {
  font-size: clamp(2rem, 4vw, 2.75rem); /* 32px - 44px */
  font-weight: 700;
  line-height: 1.1;
  color: var(--color-blue-aeroparts);
  margin-bottom: 1.25rem;
}

/* Short thick Title Accent Bar (Barra de título celeste) */
.title-accent-bar {
  display: block;
  width: 44px;
  height: 5px;
  background-color: var(--color-sky-aeroparts);
  margin-bottom: 2rem;
  border-radius: 1px;
}

/* Hero Typography */
.hero-claim {
  font-family: var(--font-title);
  font-size: clamp(3rem, 6.5vw, 5.25rem); /* 48px - 84px */
  font-weight: 800;
  line-height: 1.05;
  text-transform: uppercase;
  color: var(--color-white);
  max-width: 900px;
  margin-bottom: 1.5rem;
  text-wrap: balance;
}

.hero-subclaim {
  font-family: var(--font-body);
  font-size: clamp(0.875rem, 1.5vw, 1.05rem); /* 14px - 17px */
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--color-sky-aeroparts);
  margin-bottom: 0.75rem;
}

/* Paragraphs (Cambio 7: Justified with hyphens across all running text) */
p, .paragraph-lead, .airbus-panel-body p {
  font-family: var(--font-body);
  font-size: 1.0625rem; /* ~17px */
  font-weight: 400;
  line-height: 1.68;
  color: var(--color-blue-deep);
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
}

/* Exemptions: do not justify headings, labels, buttons, nav, inputs, or footer elements */
.section-eyebrow,
.section-title,
.hero-claim,
.hero-subclaim,
.nav-link,
.btn,
.form-label,
.field-error-msg,
.form-status-box,
.contact-subtitle,
.contact-address,
.contact-direct-links,
.footer-claim,
.footer-nav-link,
.footer-contact,
.footer-contact p,
.footer-bottom,
.footer-bottom p {
  text-align: left;
  hyphens: manual;
  -webkit-hyphens: manual;
}

.text-muted {
  color: var(--color-text-muted);
}

