/**
 * eLearningHub Academy — Brand styles
 * Typography, buttons, cards, container, utility classes.
 */

body {
  font-family: var(--eh-ff-body);
  color: var(--eh-ink);
  background: var(--eh-cream);
  -webkit-font-smoothing: antialiased;
  line-height: 1.55;
}

.eh-container {
  max-width: var(--eh-container);
  margin: 0 auto;
  padding: 0 var(--eh-space-5);
}

@media (max-width: 720px) {
  .eh-container { padding: 0 var(--eh-space-4); }
}

.eh-container--narrow { max-width: var(--eh-container-narrow); }

/* Headings */
.eh-h1, .eh-h2, .eh-h3, .eh-h4 {
  font-family: var(--eh-ff-display);
  color: var(--eh-navy);
  font-weight: 600;
  line-height: 1.15;
  margin: 0 0 var(--eh-space-4);
}
.eh-h1 { font-size: clamp(2rem, 4vw, 3.2rem); }
.eh-h2 { font-size: clamp(1.5rem, 3vw, 2.2rem); }
.eh-h3 { font-size: clamp(1.2rem, 2.5vw, 1.6rem); }
.eh-h4 { font-size: 1.1rem; }

.eh-em { color: var(--eh-gold); font-style: normal; }

.eh-eyebrow {
  font-family: var(--eh-ff-heraldic);
  font-size: 0.7rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--eh-gold);
  font-weight: 600;
  margin-bottom: var(--eh-space-2);
}

.eh-reading {
  font-family: var(--eh-ff-accent);
  font-size: 1.05rem;
  line-height: 1.7;
  color: var(--eh-ink-soft);
}

/* Buttons */
.eh-btn {
  display: inline-block;
  padding: 12px 24px;
  font-family: var(--eh-ff-body);
  font-weight: 600;
  font-size: 0.95rem;
  text-decoration: none;
  border: 2px solid transparent;
  border-radius: var(--eh-radius);
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
}
.eh-btn--gold {
  background: var(--eh-gold);
  color: var(--eh-navy);
  border-color: var(--eh-gold);
}
.eh-btn--gold:hover {
  background: var(--eh-gold-dark);
  border-color: var(--eh-gold-dark);
}
.eh-btn--navy {
  background: var(--eh-navy);
  color: white;
  border-color: var(--eh-navy);
}
.eh-btn--navy:hover { background: var(--eh-navy-dark); }
.eh-btn--outline {
  background: transparent;
  color: var(--eh-navy);
  border-color: var(--eh-navy);
}
.eh-btn--outline:hover {
  background: var(--eh-navy);
  color: white;
}
.eh-btn--sm { padding: 8px 16px; font-size: 0.85rem; }

/* Cards */
.eh-card {
  background: white;
  border: 1px solid var(--eh-gray-200);
  border-radius: var(--eh-radius);
  box-shadow: var(--eh-shadow-sm);
  transition: box-shadow 0.2s;
}
.eh-card--elevated { box-shadow: var(--eh-shadow); }

/* Crest */
.eh-crest { display: inline-block; vertical-align: middle; }
.eh-crest svg { display: block; }
