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

/* Shared with the current gca-learning.com academic identity. Presentation only. */
:root {
  --navy: #762536;
  --navy-deep: #392b24;
  --navy-soft: #57192a;
  --gold: #e5c39c;
  --gold-dark: #762536;
  --ink: #392b24;
  --muted: #6c635d;
  --line: #dfd3c2;
  --surface: #fffefa;
  --soft: #f7f2ea;
  --shadow: 0 12px 30px rgb(57 43 36 / 8%);
  color: var(--ink);
  background: var(--soft);
  font-family: Manrope, Arial, sans-serif;
}
.brand__img { max-width: 100%; object-fit: contain; }
.brand--inverse .brand__img { filter: brightness(0) invert(1); }
h1, h2, h3, .enrollment-head strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  letter-spacing: -.025em;
}
.enrollment-screen { background: var(--soft); }
.enrollment-card, .trust-strip, .tuition-table, .payment-instructions,
.proof-panel, .success-receipt, .mpesa-checkout__left { background: var(--surface); }
.course-hero, .closing-cta { background: #4c3427; }
.button--gold { background: var(--navy); color: #fffefa; box-shadow: none; border-color: #b89380; }
.button--gold:hover:not(:disabled) { background: var(--navy-soft); box-shadow: none; }
.button--navy { box-shadow: none; }
.button--pale, .copy-row button, .tuition-total { background: #eee6da; }
.intake-chip { background: rgb(229 195 156 / 12%); }
.course-hero__summary, .countdown__title, .countdown__grid span,
.routing-heading p, .routing-step span, .routing-progress__label,
.enrollment-head span, .enroll-summary__fact span, .enroll-summary__price span,
.enroll-summary__price small, .enroll-summary > p, .site-footer__meta,
.payment-total > span, .payment-total small, .proof-panel__head p,
.iald-routing__subtitle { color: #e8d9cc; }
.countdown { background: rgb(37 27 22 / 35%); }
.countdown__urgent { color: var(--gold); }
input, select, textarea { background: #fffefa; border-color: #b9aa9b; }
input:hover, select:hover { border-color: #8d7462; }
.review-note, .payment-advisory, .bank-invoice {
  background: #eee6da; color: #573b30; border-color: #d2bdaa;
}
.bank-invoice p, .how-to-pay li { color: #655247; }
.how-to-pay li > span:first-child { background: #eee6da; color: #762536; }
.upload-box:not(.has-file) { background: #fbf7f1; border-color: #b9aa9b; }
.method-tab.is-selected { box-shadow: inset 0 -3px var(--navy); }
.mpesa-partner-card, .mpesa-amount-card, .mpesa-method-tab { background: #fbf7f1; border-color: var(--line); }
.mpesa-method-tab--active { background: #eee6da; border-color: var(--navy); }
.mpesa-heading, .mpesa-partner-card strong, .mpesa-payto > strong,
.mpesa-method-tab strong { color: var(--ink); }
.mpesa-partner-label, .mpesa-amount-label, .mpesa-payto > span,
.mpesa-methods-heading, .mpesa-method-tab span { color: var(--muted); }
.mpesa-initiate-btn { box-shadow: none; }
.button:focus-visible, .icon-button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, .upload-box:focus-visible,
a:focus-visible, button:focus-visible { outline: 3px solid #a97545; outline-offset: 3px; }
.copy-row button { min-width: 44px; height: 44px; flex-basis: 44px; }
@media (max-width: 600px) {
  .brand__img { height: auto !important; width: min(250px, 100%) !important; }
  .brand--compact .brand__img { width: min(200px, 100%) !important; }
  input, select, textarea { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .button, .routing-step, .routing-progress span, .mpesa-initiate-btn { transition: none; }
  .button:hover:not(:disabled), .mpesa-initiate-btn:hover:not(:disabled) { transform: none; }
}
