/* =========================================================
   BASE EDITORIAL
   Home, About, Contacto, páginas legales y Manual.
   El Manual añade encima su propio tratamiento de lectura.
   ========================================================= */

body {
  font-size: 1.08rem;
  line-height: 1.65;
}

a {
  color: var(--v4-petrol-link);
  text-underline-offset: 0.2em;
}

a:visited { color: #6b3f73; }
a:hover { color: var(--v4-ochre); }

a:focus-visible {
  outline: 3px solid var(--v4-petrol);
  outline-offset: 4px;
}

h1,
h2,
h3,
p { margin-top: 0; }

h1,
h2,
h3 {
  color: var(--v4-text-heading);
  font-family: var(--v4-font-text);
  font-weight: 600;
  line-height: 1.08;
}

h1 {
  max-width: 15ch;
  margin-bottom: 1.6rem;
  color: transparent;
  background: linear-gradient(90deg, var(--v4-petrol), #7fa5b2);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: clamp(3rem, 7vw, 6.4rem);
  letter-spacing: -0.045em;
  overflow-wrap: anywhere;
  hyphens: auto;
}

h2 {
  max-width: 18ch;
  margin-bottom: 1.35rem;
  font-size: clamp(2.15rem, 4vw, 4.25rem);
  letter-spacing: -0.035em;
}

h3 {
  margin-bottom: 0.75rem;
  font-size: clamp(1.4rem, 2vw, 1.9rem);
}

strong,
b { color: #82817d; }

cite,
blockquote,
q { color: var(--v4-ochre-light); }

.eyebrow {
  margin-bottom: 1rem;
  color: var(--v4-text-secondary);
  font-family: var(--v4-font-heading);
  font-size: 0.78rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.lead {
  max-width: 56ch;
  margin-bottom: 2rem;
  font-size: clamp(1.18rem, 1.8vw, 1.45rem);
}

.section-lead {
  max-width: 56ch;
  font-size: clamp(1.18rem, 1.8vw, 1.45rem);
}

@media (max-width: 38rem) {
  body { font-size: 1rem; }
  .shell { width: min(calc(100% - 2rem), var(--v4-shell)); }
  h1 { font-size: clamp(2.7rem, 15vw, 4.3rem); }
}

@media (forced-colors: active) {
  h1 {
    color: CanvasText;
    background: none;
    -webkit-text-fill-color: currentcolor;
  }
}
