/*
 * Exit Five — /executive/approved page styles.
 * Clone of cmo-council-approved.css for the "Exit Five Executive" rebrand
 * (see project_cmo_council_executive_rebrand memory — clone, don't rename).
 * Scoped under .executive-approved-page. Same serif-leaning type system as
 * executive-booked.css (Instrument Serif first in --exa-sans).
 */

@import url("https://fonts.googleapis.com/css2?family=Instrument+Serif:ital,wght@0,400;1,400&display=swap");

.executive-approved-page {
  --exa-bg:         #f5f2eb;
  --exa-card:       #ffffff;
  --exa-text:       #1a1f1a;
  --exa-muted:      #6b6f6a;
  --exa-border:     #e5e1d6;
  --exa-blue:       #5a89c3;
  --exa-blue-dark:  #3f6298;

  --exa-serif: "Instrument Serif", "Manrope", serif;
  --exa-sans:  "Instrument Serif", "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, serif;
  --exa-wrap:  1060px;

  font-family: var(--exa-sans);
  color: var(--exa-text);
  background: var(--exa-bg);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

.executive-approved-page * { box-sizing: border-box; }
.executive-approved-page a { color: inherit; }
.executive-approved-page img { display: block; max-width: 100%; }

.exa-wrap {
  width: 100%;
  max-width: var(--exa-wrap);
  margin: 0 auto;
  padding-left: clamp(1.25rem, 5vw, 2.5rem);
  padding-right: clamp(1.25rem, 5vw, 2.5rem);
}

.exa-eyebrow {
  font-family: var(--exa-sans);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--exa-blue-dark);
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.exa-eyebrow svg { width: 15px; height: 15px; flex-shrink: 0; }

.executive-approved-page h1,
.executive-approved-page h2 {
  font-family: var(--exa-serif);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -0.01em;
}
.executive-approved-page p { font-size: 1.08rem; }

/* ---------- top wordmark ---------- */
.exa-topbar { padding: 1.6rem 0; text-align: center; border-bottom: 1px solid var(--exa-border); }
.exa-brand { display: inline-flex; align-items: center; gap: 0.75rem; text-decoration: none; }
.exa-brand__logo { width: 104px; color: var(--exa-text); }
.exa-brand__logo svg { width: 100%; height: auto; display: block; }
.exa-brand__sep { width: 1px; height: 18px; background: var(--exa-border); }
.exa-brand__label {
  font-family: var(--exa-sans); font-weight: 700; font-size: 0.72rem;
  letter-spacing: 0.22em; text-transform: uppercase; color: var(--exa-text);
  /* Instrument Serif's line-box leading sits well above the logo SVG's
     baseline-flush artwork, so flex align-items:center visibly misaligns
     them; nudge down to match the logo's true baseline. */
  transform: translateY(6.64px);
}

/* ---------- main two-column section ---------- */
.exa-approve { padding-top: clamp(2.5rem, 5vw, 4rem); padding-bottom: clamp(3rem, 6vw, 5rem); }
.exa-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 4vw, 4rem); align-items: start; }
.exa-approve .exa-eyebrow { margin-bottom: 1rem; }
.exa-approve h1 { font-size: clamp(2.2rem, 5vw, 3.4rem); margin-bottom: 1rem; max-width: 16ch; }
.exa-lede { color: var(--exa-muted); font-family: var(--exa-serif); font-size: 1.3rem; margin-bottom: 2rem; max-width: 46ch; }
.exa-cover-head {
  font-family: var(--exa-sans); font-weight: 700; font-size: 0.82rem;
  letter-spacing: 0.14em; text-transform: uppercase; color: var(--exa-text);
}

.exa-cover-list { list-style: none; display: grid; gap: 1.05rem; margin-top: 1.6rem; padding: 0; }
.exa-cover-list li { display: flex; gap: 0.85rem; align-items: flex-start; padding-bottom: 1.05rem; border-bottom: 1px solid var(--exa-border); }
.exa-cover-list li:last-child { border-bottom: 0; padding-bottom: 0; }
.exa-tick { flex-shrink: 0; width: 22px; height: 22px; margin-top: 3px; color: var(--exa-blue-dark); }
.exa-cover-list b { display: block; color: var(--exa-text); font-weight: 700; font-size: 1.05rem; margin-bottom: 0.15rem; }
.exa-cover-list .exa-body { color: var(--exa-muted); font-size: 1.04rem; }

/* ---------- scheduler card ---------- */
.exa-sched { background: var(--exa-card); border: 1px solid var(--exa-border); border-radius: 16px; padding: clamp(1.1rem, 2vw, 1.6rem); }
.exa-sched-head { font-family: var(--exa-serif); font-size: 1.5rem; margin-bottom: 1rem; color: var(--exa-text); }
.exa-meetings-embed { width: 100%; min-height: 720px; }
.exa-sched-note { font-size: 0.92rem; color: var(--exa-muted); margin-top: 1rem; text-align: center; }

@media (max-width: 900px) {
  .exa-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .exa-sched { order: -1; }
}

/* ---------- footer ---------- */
.exa-footer { background: var(--exa-text); color: rgba(245, 242, 235, 0.7); text-align: center; padding: clamp(2.5rem, 5vw, 3.5rem) 0; }
.exa-footer__brand { display: inline-flex; align-items: center; gap: 0.75rem; margin-bottom: 1rem; text-decoration: none; }
.exa-footer__logo { width: 92px; color: #f5f2eb; }
.exa-footer__logo svg { width: 100%; height: auto; display: block; }
.exa-footer__sep { width: 1px; height: 17px; background: rgba(245, 242, 235, 0.28); }
.exa-footer__label {
  font-family: var(--exa-sans); font-weight: 700; font-size: 0.72rem;
  letter-spacing: 0.22em; text-transform: uppercase; color: #f5f2eb;
  transform: translateY(6.64px);
}
.exa-footer p { font-size: 0.95rem; max-width: 48ch; margin: 0 auto; }

/* ---------- focus + motion ---------- */
.executive-approved-page a:focus-visible { outline: 2px solid var(--exa-blue-dark); outline-offset: 3px; }
.exa-reveal { opacity: 0; transform: translateY(16px); transition: opacity 0.7s ease, transform 0.7s ease; }
.exa-reveal.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .exa-reveal { opacity: 1; transform: none; transition: none; }
}
