 /* ── Estilos exclusivos de la página de equipo editorial ── */

    .author-hero {
      background: linear-gradient(135deg, var(--color-primary) 0%, #0f2540 100%);
      padding: 4rem 0 3rem;
      color: #fff;
    }
    .author-hero .tag { color: var(--color-secondary); }
    .author-hero h1 {
      font-family: var(--font-heading);
      font-size: clamp(2rem, 4vw, 3rem);
      color: #fff;
      margin-bottom: .75rem;
    }
    .author-hero h1 em { color: var(--color-secondary); font-style: normal; }
    .author-hero__sub {
      color: rgba(255,255,255,.8);
      display: inline-block;
      font-size: 1.05rem;
      max-width: 560px;
      line-height: 1.7;
    
    }

    .author-profile {
      display: grid;
      grid-template-columns: 220px 1fr;
      gap: 2.5rem;
      align-items: start;
      background: var(--color-surface);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-lg);
      padding: 2.25rem;
      box-shadow: var(--shadow-md);
    }
    @media (max-width: 700px) {
      .author-profile {
        grid-template-columns: 1fr;
        text-align: center;
      }
    }

    .author-profile__avatar-wrap {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: .75rem;
    }
    .author-profile__avatar {
      width: 160px;
      height: 160px;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--color-primary), #22548a);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 4.5rem;
      border: 4px solid var(--color-secondary);
      flex-shrink: 0;
    }
    .author-profile__name {
      font-family: var(--font-heading);
      font-size: 1.1rem;
      color: var(--color-primary);
      text-align: center;
    }
    .author-profile__role {
      font-size: .78rem;
      font-weight: 700;
      color: var(--color-secondary);
      background: var(--color-primary);
      padding: .25rem .75rem;
      border-radius: 99px;
      text-transform: uppercase;
      letter-spacing: .07em;
      text-align: center;
    }

    .author-profile__body h2 {
      font-family: var(--font-heading);
      font-size: 1.35rem;
      color: var(--color-primary);
      margin-bottom: .6rem;
    }
    .author-profile__bio p {
      color: var(--color-text-muted);
      font-size: .97rem;
      line-height: 1.85;
      margin-bottom: .9rem;
    }

    .author-profile__tags {
      display: flex;
      gap: .5rem;
      flex-wrap: wrap;
      margin-bottom: 1.25rem;
    }
    .author-profile__tag {
      font-size: .75rem;
      font-weight: 600;
      color: var(--color-primary);
      background: var(--color-accent);
      border: 1px solid var(--color-border);
      padding: .22rem .65rem;
      border-radius: 99px;
    }

    .author-profile__quote {
      background: var(--color-accent);
      border-left: 4px solid var(--color-secondary);
      border-radius: 0 var(--radius-md) var(--radius-md) 0;
      padding: 1rem 1.25rem;
      font-style: italic;
      font-size: .95rem;
      color: var(--color-primary);
      line-height: 1.7;
    }
    .author-profile__quote cite {
      display: block;
      margin-top: .5rem;
      font-style: normal;
      font-size: .78rem;
      font-weight: 700;
      color: var(--color-text-muted);
    }

    .commitment-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 1.25rem;
      margin-top: 1.5rem;
    }
    .commitment-card {
      background: var(--color-surface);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
      padding: 1.25rem;
      transition: all var(--transition);
    }
    .commitment-card:hover {
      box-shadow: var(--shadow-md);
      border-color: var(--color-secondary);
      transform: translateY(-2px);
    }
    .commitment-card__icon { font-size: 1.75rem; margin-bottom: .5rem; }
    .commitment-card h3 {
      font-size: .92rem;
      font-weight: 700;
      color: var(--color-primary);
      margin-bottom: .35rem;
    }
    .commitment-card p {
      font-size: .82rem;
      color: var(--color-text-muted);
      line-height: 1.6;
    }

    .cta-contact-card {
      background: linear-gradient(135deg, var(--color-primary), #0f2540);
      border-radius: var(--radius-lg);
      padding: 2.5rem 2rem;
      text-align: center;
      color: #fff;
    }
    .cta-contact-card h2 {
      font-family: var(--font-heading);
      font-size: 1.5rem;
      color: var(--color-secondary);
      margin-bottom: .6rem;
    }
    .cta-contact-card p {
      color: rgba(255,255,255,.8);
      font-size: .97rem;
      max-width: 520px;
      margin: 0 auto 1.75rem;
      line-height: 1.7;
    }
    .cta-contact-card__actions {
      display: flex;
      gap: .75rem;
      justify-content: center;
      flex-wrap: wrap;
    }
    @media (max-width: 480px) {
      .cta-contact-card__actions { flex-direction: column; align-items: center; }
      .cta-contact-card__actions .btn { width: 100%; justify-content: center; }
    }
