/**
 * Gateway Workshops — Luxury navy / gold / cream theme (local preview)
 * Typography: Playfair Display (headings), Cormorant Garamond (editorial), Source Sans 3 (UI/body)
 */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&family=Source+Sans+3:wght@400;500;600;700&display=swap');

:root,
.gw-site,
body.gw-backend-site,
#myModal.gw-login-modal {
  /* Surfaces */
  --gw-bg: #f7f3ec;
  --gw-bg-soft: #f3ede3;
  --gw-bg-muted: #ebe4d6;
  --gw-surface: #ffffff;

  /* Brand colours */
  --gw-primary: #0d1b4c;
  --gw-primary-dark: #081028;
  --gw-primary-mid: #162a63;
  --gw-primary-light: #ede8de;
  --gw-accent: #c8a15a;
  --gw-accent-soft: rgba(200, 161, 90, 0.38);
  --gw-gold: #c8a15a;
  --gw-gold-soft: #e8d4ad;

  /* Text — slightly darker muted for cream/white backgrounds */
  --gw-ink: #0d1b4c;
  --gw-ink-soft: #2f3a57;
  --gw-ink-muted: #454f6a;

  /* UI */
  --gw-border: rgba(13, 27, 76, 0.12);
  --gw-shadow: 0 20px 50px rgba(8, 16, 40, 0.12);
  --gw-shadow-sm: 0 6px 20px rgba(8, 16, 40, 0.08);
  --gw-shadow-md: 0 12px 32px rgba(8, 16, 40, 0.09);
  --gw-radius: 20px;
  --gw-radius-sm: 12px;

  /* Typography scale */
  --gw-text-base: 17px;
  --gw-text-md: 16px;
  --gw-text-sm: 15px;
  --gw-text-xs: 13px;
  --gw-line-body: 1.65;

  --gw-display: 'Playfair Display', 'Cormorant Garamond', Georgia, serif;
  --gw-font: 'Cormorant Garamond', Georgia, serif;
  --gw-ui: 'Source Sans 3', system-ui, sans-serif;

  /* Gradients */
  --gw-gradient-hero: linear-gradient(135deg, var(--gw-primary-dark) 0%, var(--gw-primary) 52%, var(--gw-primary-mid) 100%);
  --gw-gradient-brand: linear-gradient(135deg, var(--gw-primary) 0%, var(--gw-primary-mid) 100%);
  --gw-gradient-sidebar: linear-gradient(180deg, var(--gw-primary-dark) 0%, var(--gw-primary) 100%);
  --gw-gradient-gold: linear-gradient(135deg, var(--gw-gold) 0%, #d4b06a 100%);
}

/* Readable sans-serif body; reserve serif for headings + editorial blocks */
.gw-site {
  font-family: var(--gw-ui);
  font-size: var(--gw-text-base);
  line-height: var(--gw-line-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.gw-site .gw-header,
.gw-site .gw-nav,
.gw-site .gw-btn,
.gw-site label,
.gw-site input,
.gw-site select,
.gw-site textarea,
.gw-site .gw-footer {
  font-family: var(--gw-ui);
}

body.gw-backend-site {
  font-family: var(--gw-ui);
  font-size: var(--gw-text-base);
  line-height: var(--gw-line-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.gw-backend-site .gw-page__title,
body.gw-backend-site .gw-dash-hero__title,
body.gw-backend-site .card-header strong {
  font-family: var(--gw-display);
}

/* Cormorant for larger editorial copy only (not tiny UI text) */
.gw-site .gw-section-head__lead,
.gw-site .gw-professionals__footer p,
.gw-site .gw-hero__lead,
.gw-site .gw-about-lead {
  font-family: var(--gw-font);
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.7;
}

/* —— Backend readability —— */
body.gw-backend-site .main {
  background: var(--gw-bg);
}

body.gw-backend-site .sidebar .nav-link {
  font-size: 0.97rem;
}

body.gw-backend-site .sidebar .nav-dropdown-items .nav-link {
  font-size: 0.94rem;
}

body.gw-backend-site .gw-dash-hero__meta {
  font-size: 0.92rem;
}

body.gw-backend-site .gw-dash-hero__subtitle {
  font-size: 1.02rem;
  line-height: 1.6;
}

body.gw-backend-site .gw-dash-action {
  font-size: 0.95rem;
}

body.gw-backend-site .gw-dash-stat__label {
  font-size: 0.92rem;
}

body.gw-backend-site .gw-dash-stat__value {
  font-size: 1.85rem;
}

body.gw-backend-site .gw-dash-stat__cta {
  font-size: 0.88rem;
}

body.gw-backend-site .gw-dash-card__head p,
body.gw-backend-site .gw-dash-card__link {
  font-size: 0.92rem;
}

body.gw-backend-site .gw-dash-activity__head h3 {
  font-size: 1.02rem;
}

body.gw-backend-site .gw-dash-activity__head p {
  font-size: 0.88rem;
}

body.gw-backend-site .gw-dash-list__copy strong {
  font-size: 1rem;
  font-family: var(--gw-ui);
}

body.gw-backend-site .gw-dash-list__copy span,
body.gw-backend-site .gw-dash-list__copy a {
  font-size: 0.92rem;
}

body.gw-backend-site .gw-dash-list__copy p {
  font-size: 0.95rem;
  line-height: 1.55;
  font-family: var(--gw-ui);
}

body.gw-backend-site .gw-dash-list__time {
  font-size: 0.88rem;
}

body.gw-backend-site .gw-dash-card__foot {
  font-size: 0.9rem;
}

body.gw-backend-site .table,
body.gw-backend-site .gw-datatable {
  font-size: 0.95rem;
}

body.gw-backend-site .app-footer {
  font-size: 0.92rem;
}

/* —— Frontend readability —— */
.gw-site .gw-eyebrow {
  font-size: 0.8rem;
}

.gw-site .gw-section-head__lead {
  font-size: 1.05rem;
}

.gw-site .gw-footer__tagline {
  font-size: 0.95rem;
  line-height: 1.7;
  color: var(--gw-ink-soft);
}

.gw-site .gw-footer__col-list a {
  font-size: 0.95rem;
  line-height: 1.5;
  color: var(--gw-ink-soft);
}

.gw-site .gw-footer__legal {
  font-size: 0.88rem;
  color: var(--gw-ink-soft);
}

.gw-site .gw-professionals__footer p {
  font-size: 1.08rem;
  color: var(--gw-ink-soft);
}

.gw-site .gw-pro-card__name {
  font-family: var(--gw-display);
}

.gw-site .gw-btn {
  font-size: 0.98rem;
}

.gw-site .gw-nav__list a {
  font-size: 0.98rem;
}

/* —— Global form controls (GW frontend + inner pages) —— */
.gw-site input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.gw-site select,
.gw-site textarea,
.gw-site button,
.gw-site .form-control,
.gw-inner-page input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.gw-inner-page select,
.gw-inner-page textarea,
.gw-inner-page .form-control,
#myModal.gw-login-modal input,
#myModal.gw-login-modal select,
#myModal.gw-login-modal textarea,
#myModal.gw-login-modal button {
  font-family: var(--gw-ui);
  font-size: var(--gw-text-sm);
}

.gw-site select option,
.gw-inner-page select option {
  font-family: var(--gw-ui);
  font-size: var(--gw-text-sm);
}

.gw-site label,
.gw-inner-page label,
#myModal.gw-login-modal label {
  font-family: var(--gw-ui);
  font-size: 0.94rem;
  font-weight: 600;
}

.gw-site .gw-courses-filter__trigger,
.gw-site .gw-courses-filter__menu button {
  font-family: var(--gw-ui);
  font-size: var(--gw-text-sm);
}
