/* ===================================================================
   Enterprise AI Strategy & Keynote Advisory
   Aesthetic Architecture: High-End Speaker Boutique Standard
   Modeled on Ama Agyapong (Inclusion Enterprises)
   Typography: 'Jost' (Display) & 'Outfit' (Body)
   Palette: Maroon, White and Grey
   Card Standards: Raised Product White, Flat Borders, Maroon Typography
   =================================================================== */

:root {
  --maroon-900: #3d0418;
  --maroon-700: #5a0624;
  --maroon-600: #75092f;
  --maroon-200: #f6dfe6;
  --maroon-50: #fbf1f4;
  --white: #ffffff;
  --grey-50: #f9f9f9;
  --grey-200: #ececec;
  --grey-300: #cfcfcf;
  --grey-400: #bdbdbd;
  --ink: #111111;
  --ink-2: #4d4d4d;
  --ink-3: #5f5f5f;
  --black: #111111;
  --black-2: #1a1a1a;
  --muted-on-dark: #dcdcdc;
  --line-dark: #2b2b2b;
  --white-raised: var(--white);
  --white-sunken: var(--grey-200);
  --line: var(--grey-300);
  --line-strong: var(--grey-400);
  --color-black: var(--black);
  --color-dark-gray: var(--black-2);
  --color-border-dark: var(--line-dark);
  --color-gold: var(--maroon-700);
  --color-gold-hover: var(--maroon-600);
  --color-gold-light: var(--maroon-200);
  --color-light-bg: var(--white);
  --color-light-card: var(--white-raised);
  --color-light-border: var(--line);
  --color-text-dark: var(--ink);
  --color-text-muted-dark: var(--ink-2);
  --color-text-light: var(--white);
  --color-text-muted-light: var(--muted-on-dark);
  --accent-on-dark: var(--maroon-200);
  --color-gold-dark: var(--maroon-700);
  --color-ivory: var(--white);
  --color-border: var(--line);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --font-display: 'Jost', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-body: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-accent: 'Jost', sans-serif;
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
  --forest: var(--maroon-700);
  --forest-action: var(--maroon-700);
  --forest-hover: var(--maroon-600);
  --forest-mist: var(--maroon-50);
  --forest-paper: var(--white);

  color: var(--ink);
}


* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.nav-menu a,
.brand-monogram-box,
.metric-box,
.card-clickable,
.keynote-card a,
.pkg-card a,
.framework-card a,
.kit-card a,
.bio-card a,
.impact-measure-card a,
.formats-card a {
  color: inherit;
  text-decoration: none;
}

html {
  scroll-behavior: smooth;
  font-size: 16px;
}

@media (prefers-reduced-motion: no-preference) {
  @view-transition {
    navigation: auto;
  }
}

dialog:modal {
  overscroll-behavior: contain;
}

dialog::backdrop {
  overflow: hidden;
  overscroll-behavior: contain;
  background-color: rgba(0, 0, 0, 0.85);
}

body {
  font-family: var(--font-body);
  background-color: var(--color-black);
  color: var(--color-text-light);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

/* ================= Top Announcement ================= */
.top-announcement {
  background-color: var(--color-gold);
  color: var(--surface-heading);
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-align: center;
  padding: 8px 16px;
  text-transform: uppercase;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

/* ================= Site Header ================= */
.site-header {
  background-color: var(--color-black);
  border-bottom: 1px solid var(--color-border-dark);
  position: sticky;
  top: 0;
  z-index: 1000;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.header-inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 16px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.brand-monogram-box {
  display: flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
}

.brand-logo-circle {
  width: 44px;
  height: 44px;
  border: 2px solid var(--surface-accent);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logo-letters {
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: 500;
  color: var(--surface-accent);
  letter-spacing: 1px;
}

.brand-title-wrap {
  display: flex;
  flex-direction: column;
}

.brand-name {
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 500;
  letter-spacing: 1.5px;
  color: var(--white);
  line-height: 1.1;
}

.brand-sub {
  font-family: var(--font-accent);
  font-size: 12px;
  letter-spacing: 0.08em;
  color: var(--surface-accent);
  text-transform: uppercase;
  margin-top: 2px;
}

.nav-menu {
  display: flex;
  align-items: center;
  gap: 24px;
}

.nav-menu a {
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--line);
  text-decoration: none;
  text-transform: uppercase;
  transition: color 0.2s ease;
}

.nav-menu a:hover {
  color: var(--surface-accent);
}

.nav-contact-btn {
  border: 1px solid var(--white-raised) !important;
  color: var(--white) !important;
  padding: 7px 20px !important;
  font-size: 15px !important;
  transition: all 0.25s ease !important;
}

.nav-contact-btn:hover,
.nav-contact-btn:focus-visible,
.nav-contact-btn:active {
  background-color: var(--color-gold) !important;
  border-color: var(--surface-accent) !important;
  color: var(--surface-heading) !important;
  font-weight: 700 !important;}

/* ================= Hero Section (Dark with Dot Grid) ================= */
.hero-section {
  background-color: var(--color-black);
  background-image: radial-gradient(circle, var(--line-dark) 1px, transparent 1px);
  background-size: 18px 18px;
  padding: 60px 24px 80px;
  border-bottom: 1px solid var(--color-border-dark);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.hero-content-grid {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 50px;
  align-items: center;
}

.hero-kicker {
  font-family: var(--font-accent);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--surface-accent);
  margin-bottom: 18px;
  text-transform: uppercase;
}

.hero-main-title {
  font-family: var(--font-display);
  font-size: 48px;
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: 0.5px;
  color: var(--white);
  margin-bottom: 24px;
}

.gold-text {
  color: var(--surface-accent);
}

.hero-lead {
  font-size: 18px;
  font-weight: 400;
  color: var(--surface-muted);
  line-height: 1.65;
  margin-bottom: 36px;
  max-width: 620px;
}

.hero-actions {
  display: flex;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
}

.btn-outline {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-decoration: none;
  color: var(--white);
  border: 2px solid var(--white-raised);
  padding: 12px 32px;
  text-transform: uppercase;
  transition: all 0.25s ease;
}

.btn-outline:hover,
.btn-outline:focus-visible,
.btn-outline:active {
  background-color: var(--color-gold);
  border-color: var(--surface-accent);
  color: var(--surface-heading);
  font-weight: 800;}

.btn-gold {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-decoration: none;
  background-color: transparent;
  color: var(--surface-accent);
  border: 2px solid var(--surface-accent);
  padding: 12px 28px;
  text-transform: uppercase;
  transition: all 0.25s ease;
}

.btn-gold:hover,
.btn-gold:focus-visible,
.btn-gold:active {
  background-color: var(--color-gold);
  border-color: var(--surface-accent);
  color: var(--surface-heading);
  font-weight: 800;}

.btn-ghost {
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: 500;
  color: var(--line);
  text-decoration: none;
  letter-spacing: 1px;
  padding: 12px 16px;
  transition: color 0.2s ease;
}

.btn-ghost:hover {
  color: var(--surface-accent);
}

/* ================= Portrait Frame ================= */
.portrait-dashed-frame {
  border: 1px solid var(--line);
  padding: 12px;
  border-radius: 4px;
  background: var(--black);
  display: inline-block;
  max-width: 440px;
  width: 100%;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.portrait-dashed-frame.light-frame {
  border: 1px solid var(--line);
  background: var(--white-raised);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.speaker-portrait-img,
.about-portrait-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 4px;
  object-fit: cover;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
}

/* ================= Metrics Ribbon ================= */
.metrics-bar {
  background-color: var(--black);
  border-bottom: 1px solid var(--color-border-dark);
  padding: 30px 24px;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.metrics-inner {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  text-align: center;
  min-width: 0;
}

.metric-box {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  overflow-wrap: anywhere;
  transition: color 150ms ease;
}

.metric-box:hover .metric-num,
.metric-box:hover .metric-label {
  color: var(--maroon-200);
}

.metric-num {
  font-family: var(--font-display);
  font-size: 37px;
  font-weight: 500;
  color: var(--white);
  line-height: 1.1;
}

.metric-label {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.5px;
  color: var(--muted-on-dark);
  text-transform: uppercase;
}

.about-quote-panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100%;
  padding: 48px;
  border-left: 1px solid var(--line);
  color: var(--ink);
}

.about-quote {
  max-width: 18ch;
  font-family: var(--font-display);
  font-size: clamp(36px, 4vw, 56px);
  font-weight: 500;
  line-height: 1.12;
  color: var(--maroon-700);
}

.about-quote-attribution {
  margin-top: 24px;
  font-family: var(--font-accent);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-style: normal;
  color: var(--ink-2);
}

/* ================= Speaker About Section (Light Gray) ================= */
.about-section {
  background-color: var(--color-light-bg);
  background-image: repeating-linear-gradient(45deg, var(--white), var(--white) 12px, var(--white-sunken) 12px, var(--white-sunken) 24px);
  color: var(--color-text-dark);
  padding: 72px 24px;
  border-bottom: 1px solid var(--color-light-border);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.about-inner-grid {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 60px;
  align-items: center;
}

.speaker-display-name {
  font-family: var(--font-display);
  font-size: 51px;
  font-weight: 500;
  color: var(--surface-accent);
  line-height: 1;
  margin-bottom: 14px;
}

.gold-badge-banner {
  background-color: var(--color-gold);
  color: var(--white);
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 500;
  letter-spacing: 0.18em;
  padding: 8px 18px;
  display: inline-block;
  margin-bottom: 24px;
  text-transform: uppercase;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

.about-p-lead {
  font-size: 19px;
  font-weight: 500;
  color: var(--ink);
  line-height: 1.65;
  margin-bottom: 24px;
}

.about-sub-heading {
  font-family: var(--font-display);
  font-size: 29px;
  font-weight: 500;
  color: var(--surface-heading);
  margin-bottom: 12px;
}

.about-p {
  font-size: 17px;
  color: var(--ink);
  line-height: 1.7;
  margin-bottom: 18px;
}

.about-cta-row {
  display: flex;
  gap: 16px;
  margin-top: 30px;
  flex-wrap: wrap;
}

.btn-dark-outline {
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-decoration: none;
  color: var(--surface-heading);
  border: 2px solid var(--maroon-700);
  padding: 12px 28px;
  text-transform: uppercase;
  transition: all 0.25s ease;
}

.btn-dark-outline:hover,
.btn-dark-outline:focus-visible,
.btn-dark-outline:active {
  background-color: var(--color-gold);
  border-color: var(--surface-accent);
  color: var(--surface-heading);
  font-weight: 800;}

.btn-gold-solid {
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-decoration: none;
  background-color: var(--color-gold);
  color: var(--surface-heading);
  border: 2px solid var(--surface-accent);
  padding: 12px 30px;
  text-transform: uppercase;
  display: inline-block;
  text-align: center;
  cursor: pointer;
  transition: all 0.25s ease;}

.btn-gold-solid:hover,
.btn-gold-solid:focus-visible,
.btn-gold-solid:active {
  background-color: var(--black);
  border-color: var(--maroon-600);
  color: var(--surface-heading) !important;
  font-weight: 800;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);}

/* ================= Section Base Layouts ================= */
.section-wrapper {
  max-width: 1240px;
  margin: 0 auto;
}

.section-title-center {
  text-align: center;
  margin-bottom: 50px;
}

.section-headline {
  font-family: var(--font-display);
  font-size: 41px;
  font-weight: 500;
  letter-spacing: 1px;
  color: var(--white);
}

.section-headline.dark-headline {
  color: var(--surface-heading);
}

.gold-underline {
  width: 60px;
  height: 3px;
  background-color: var(--surface-accent);
  margin: 12px auto 16px;
}

.section-subtext {
  font-size: 18px;
  color: var(--surface-muted);
  max-width: 680px;
  margin: 0 auto;
}

.section-subtext.dark-sub {
  color: var(--surface-muted);
}

/* ================= Signature Keynotes (Pure White Cards) ================= */
.keynotes-section {
  background-color: var(--color-black);
  padding: 72px 24px;
  border-bottom: 1px solid var(--color-border-dark);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.keynote-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
}

.keynote-card {
  background-color: var(--white-raised);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 36px 32px;
  position: relative;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  display: flex;
  flex-direction: column;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.keynote-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  border-color: var(--surface-accent);
}

.topic-tag {
  font-family: var(--font-accent);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--surface-accent);
  margin-bottom: 12px;
  text-transform: uppercase;
}

.topic-title {
  font-family: var(--font-display);
  font-size: 27px;
  font-weight: 500;
  color: var(--surface-heading);
  line-height: 1.15;
  margin-bottom: 16px;
}

.topic-desc {
  font-size: 16px;
  color: var(--ink);
  line-height: 1.65;
  margin-bottom: 24px;
  flex-grow: 1;
}

.topic-outcomes {
  border-top: 1px solid var(--line);
  padding-top: 18px;
  margin-bottom: 24px;
  font-size: 14px;
  color: var(--ink);
}

.topic-outcomes strong {
  color: var(--surface-heading);
  display: block;
  margin-bottom: 8px;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 1px;
}

.topic-outcomes ul {
  list-style: none;
}

.topic-outcomes li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 6px;
  line-height: 1.5;
  color: var(--ink);
}

.topic-outcomes li::before {
  content: "✔";
  position: absolute;
  left: 0;
  color: var(--surface-accent);
  font-size: 13px;
  font-weight: bold;
}

.keynote-card-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid var(--line);
  padding-top: 16px;
}

.btn-syllabus {
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  background: transparent;
  border: 1px solid var(--surface-accent);
  border-radius: 4px;
  color: var(--surface-heading);
  cursor: pointer;
  text-transform: uppercase;
  transition: all 0.2s ease;
  padding: 6px 12px;
}

.btn-syllabus:hover,
.btn-syllabus:focus-visible,
.btn-syllabus:active {
  background-color: var(--color-gold);
  border-color: var(--surface-accent);
  color: var(--surface-heading);
  font-weight: 800;}

.btn-card-select {
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--surface-heading);
  text-decoration: none;
  border: 1.5px solid var(--maroon-700);
  padding: 6px 14px;
  border-radius: 4px;
  text-transform: uppercase;
  transition: all 0.2s ease;
}

.btn-card-select:hover,
.btn-card-select:focus-visible,
.btn-card-select:active {
  background-color: var(--color-gold);
  border-color: var(--surface-accent);
  color: var(--surface-heading);
  font-weight: 800;}

/* ================= Proprietary Frameworks (White Cards) ================= */
.frameworks-section {
  background-color: var(--color-light-bg);
  padding: 72px 24px;
  border-bottom: 1px solid var(--color-light-border);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.frameworks-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
}

.framework-card {
  background-color: var(--white-raised);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 36px 32px;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.framework-badge {
  font-family: var(--font-accent);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--surface-accent);
  text-transform: uppercase;
  margin-bottom: 10px;
}

.framework-title {
  font-family: var(--font-display);
  font-size: 26px;
  font-weight: 500;
  color: var(--surface-heading);
  line-height: 1.15;
  margin-bottom: 6px;
}

.framework-subtitle {
  font-size: 15px;
  color: var(--surface-muted);
  margin-bottom: 24px;
}

/* Cascade Tiers */
.cascade-tiers {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.cascade-tier {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 12px 16px;
  background-color: var(--white-sunken);
  border-left: 4px solid var(--surface-accent);
  border-radius: 0 4px 4px 0;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.tier-level {
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: 500;
  color: var(--surface-accent);
  letter-spacing: 1px;
}

.tier-info strong {
  display: block;
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: 500;
  color: var(--surface-heading);
}

.tier-info p {
  font-size: 13px;
  color: var(--surface-muted);
  margin-top: 2px;
}

/* ADKAR Grid */
.adkar-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
}

.adkar-step {
  background-color: var(--white-sunken);
  border: 1px solid var(--line);
  padding: 14px 10px;
  text-align: center;
  border-radius: 4px;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.adkar-letter {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: 500;
  color: var(--surface-accent);
  line-height: 1;
  margin-bottom: 4px;
}

.adkar-step h4 {
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  color: var(--surface-heading);
  margin-bottom: 6px;
  text-transform: uppercase;
}

.adkar-step p {
  font-size: 12px;
  color: var(--surface-muted);
  line-height: 1.35;
}

/* ================= Why Sean Section (Light Gray) ================= */
.why-section {
  background-color: var(--white);
  padding: 72px 24px;
  border-bottom: 1px solid var(--color-light-border);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.why-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
}

.why-item {
  background-color: var(--white-sunken);
  border: 1px solid var(--color-light-border);
  padding: 32px 24px;
  border-radius: 4px;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.why-icon-box {
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: 500;
  color: var(--surface-accent);
  margin-bottom: 14px;
}

.why-item-title {
  font-family: var(--font-display);
  font-size: 20px;
  font-weight: 500;
  color: var(--surface-heading);
  margin-bottom: 12px;
  line-height: 1.15;
}

.why-item-desc {
  font-size: 15px;
  color: var(--surface-muted);
  line-height: 1.6;
}

/* ================= Our Services (Pure White Tiles) ================= */
.services-section {
  background-color: var(--color-black);
  background-image: radial-gradient(circle, var(--line-dark) 1px, transparent 1px);
  background-size: 18px 18px;
  padding: 72px 24px;
  border-bottom: 1px solid var(--color-border-dark);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.services-header-wrap {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 50px;
}

.services-main-title {
  font-family: var(--font-display);
  font-size: 48px;
  font-weight: 500;
  letter-spacing: 2px;
  color: var(--white);
  margin-bottom: 14px;
}

.services-sub-intro {
  font-size: 19px;
  color: var(--surface-muted);
  line-height: 1.6;
}

.services-eight-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.service-tile {
  background-color: var(--white-raised);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 36px 24px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 160px;
  text-decoration: none;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  transition: all 0.25s ease;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.service-tile:hover {
  border-color: var(--surface-accent);
  background-color: var(--white-raised);
  transform: translateY(-2px);
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.service-tile-title {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 500;
  color: var(--surface-heading);
  line-height: 1.15;
  letter-spacing: 0.5px;
  margin-bottom: 10px;
  transition: color 0.2s ease;
}

.service-tile:hover .service-tile-title {
  color: var(--surface-accent);
}

.service-tile-link {
  font-family: var(--font-accent);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--surface-accent);
  text-transform: uppercase;
}

/* ================= Event Planners & Media Kit (Pure White Cards) ================= */
.mediakit-section {
  background-color: var(--black);
  padding: 72px 24px;
  border-bottom: 1px solid var(--color-border-dark);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.mediakit-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.kit-card {
  background-color: var(--white-raised);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 32px 24px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  transition: transform 0.2s ease, border-color 0.2s ease;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.kit-card:hover {
  transform: translateY(-2px);
  border-color: var(--surface-accent);
}

.kit-icon {
  font-size: 32px;
  margin-bottom: 16px;
}

.kit-title {
  font-family: var(--font-display);
  font-size: 20px;
  font-weight: 500;
  color: var(--surface-heading);
  margin-bottom: 10px;
  line-height: 1.15;
}

.kit-desc {
  font-size: 14px;
  color: var(--surface-muted);
  line-height: 1.55;
  margin-bottom: 22px;
  flex-grow: 1;
}

.kit-btn {
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-decoration: none;
  background-color: transparent;
  color: var(--surface-heading);
  border: 1.5px solid var(--maroon-700);
  padding: 10px 16px;
  border-radius: 4px;
  cursor: pointer;
  text-align: center;
  text-transform: uppercase;
  transition: all 0.2s ease;
}

.kit-btn:hover,
.kit-btn:focus-visible,
.kit-btn:active {
  background-color: var(--color-gold);
  border-color: var(--surface-accent);
  color: var(--surface-heading);
  font-weight: 800;}

/* ================= Speaking Packages & Calculator ================= */
.calculator-section {
  background-color: var(--color-light-bg);
  padding: 72px 24px;
  border-bottom: 1px solid var(--color-light-border);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.packages-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-bottom: 45px;
}

.pkg-card {
  background-color: var(--white-raised);
  border: 1px solid var(--color-light-border);
  padding: 30px 22px;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  position: relative;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.pkg-card.featured-pkg {
  border: 2px solid var(--surface-accent);
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
}

.pkg-badge {
  font-family: var(--font-accent);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: var(--surface-muted);
  text-transform: uppercase;
  margin-bottom: 8px;
}

.featured-badge {
  color: var(--surface-accent);
}

.pkg-title {
  font-family: var(--font-display);
  font-size: 20px;
  font-weight: 500;
  color: var(--surface-heading);
  line-height: 1.15;
  margin-bottom: 14px;
}

.pkg-price {
  font-family: var(--font-display);
  font-size: 34px;
  font-weight: 500;
  color: var(--surface-accent);
  line-height: 1;
  margin-bottom: 14px;
}

.per-mo {
  font-size: 18px;
  font-weight: 500;
  color: var(--surface-muted);
}

.pkg-desc {
  font-size: 14px;
  color: var(--surface-muted);
  line-height: 1.55;
  margin-bottom: 22px;
  flex-grow: 1;
}

.pkg-select-btn {
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.18em;
  background-color: transparent;
  color: var(--surface-heading);
  border: 1.5px solid var(--maroon-700);
  padding: 10px 16px;
  cursor: pointer;
  border-radius: 4px;
  text-transform: uppercase;
  transition: all 0.25s ease;
}

.pkg-select-btn:hover,
.pkg-select-btn:focus-visible,
.pkg-select-btn:active {
  background-color: var(--color-gold);
  border-color: var(--surface-accent);
  color: var(--surface-heading);
  font-weight: 800;}

/* Calculator Panel */
.calculator-panel {
  background-color: var(--white-raised);
  border: 1px solid var(--color-light-border);
  padding: 40px;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.calc-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
  align-items: start;
}

.calc-sub-title {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 500;
  color: var(--surface-heading);
  margin-bottom: 20px;
}

.form-group {
  margin-bottom: 20px;
}

.form-group label {
  display: block;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  color: var(--line-dark);
  margin-bottom: 8px;
}

.form-control {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--muted-on-dark);
  border-radius: 4px;
  font-family: var(--font-body);
  font-size: 15px;
  color: var(--ink);
  background-color: var(--white-sunken);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.form-control:focus {
  outline: none;
  border-color: var(--surface-accent);
}

.checkbox-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.checkbox-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: var(--ink);
  cursor: pointer;
  min-height: 44px;
  padding: 4px 0;
}

.checkbox-item input[type="checkbox"] {
  width: 20px;
  height: 20px;
  min-width: 20px;
  accent-color: var(--color-gold);
  cursor: pointer;
}

.calc-results-card {
  background-color: var(--color-black);
  border: 1px solid var(--line-dark);
  padding: 32px;
  border-radius: 4px;
  color: var(--white);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

.results-header {
  font-family: var(--font-accent);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 2px;
  color: var(--surface-accent);
  margin-bottom: 10px;
}

.total-fee-display {
  font-family: var(--font-display);
  font-size: 44px;
  font-weight: 500;
  color: var(--surface-accent);
  line-height: 1;
  margin-bottom: 24px;
}

.fee-breakdown {
  border-top: 1px solid var(--line-dark);
  border-bottom: 1px solid var(--line-dark);
  padding: 18px 0;
  margin-bottom: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: 14px;
}

.breakdown-line {
  display: flex;
  justify-content: space-between;
  color: var(--surface-muted);
}

.calc-note {
  font-size: 13px;
  color: var(--surface-muted);
  line-height: 1.5;
  margin-bottom: 24px;
}

.calc-actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.btn-copy-scope {
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.18em;
  background-color: transparent;
  color: var(--white);
  border: 1.5px solid var(--ink-3);
  padding: 10px 16px;
  border-radius: 4px;
  cursor: pointer;
  text-transform: uppercase;
  transition: all 0.2s ease;
}

.btn-copy-scope:hover,
.btn-copy-scope:focus-visible,
.btn-copy-scope:active {
  background-color: var(--color-gold);
  border-color: var(--surface-accent);
  color: var(--surface-heading);
  font-weight: 800;}

.copy-feedback-msg {
  margin-top: 8px;
  font-size: 13px;
  color: var(--surface-accent);
  text-align: center;
}

.w-100 {
  width: 100%;
}

/* ================= Client Testimonials (Pure White Cards) ================= */
.testimonials-section {
  background-color: var(--color-light-bg);
  background-image: repeating-linear-gradient(45deg, var(--white), var(--white) 12px, var(--white-sunken) 12px, var(--white-sunken) 24px);
  padding: 72px 24px;
  border-bottom: 1px solid var(--color-light-border);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.testimonial-card {
  background-color: var(--white-raised);
  border: 1px solid var(--color-light-border);
  padding: 36px 28px;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.testimonial-quote {
  font-size: 16px;
  color: var(--line-dark);
  line-height: 1.7;
  font-style: italic;
  margin-bottom: 24px;
}

.testimonial-author {
  border-top: 1px solid var(--white-sunken);
  padding-top: 16px;
  display: flex;
  flex-direction: column;
}

.author-name {
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 500;
  color: var(--surface-accent);
}

.author-role {
  font-size: 13px;
  color: var(--surface-muted);
  font-weight: 500;
  margin-top: 2px;
}

/* ================= Sectors Grid ================= */
.sectors-section {
  background-color: var(--black);
  border-bottom: 1px solid var(--color-border-dark);
  padding: 36px 24px;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.sectors-grid {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  text-align: center;
}

.sector-item {
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 500;
  color: var(--surface-muted);
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

/* ================= Signature Quote Callout ================= */
.signature-quote-banner {
  background-color: var(--color-black);
  padding: 80px 24px;
  border-bottom: 1px solid var(--color-border-dark);
  text-align: center;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.quote-inner {
  max-width: 900px;
  margin: 0 auto;
}

.banner-quote-text {
  font-family: var(--font-display);
  font-size: 41px;
  font-weight: 500;
  color: var(--surface-accent);
  line-height: 1.15;
  letter-spacing: 0.5px;
  margin-bottom: 18px;
}

.banner-quote-author {
  font-family: var(--font-accent);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--surface-muted);
  text-transform: uppercase;
}

/* ================= Contact Section (Crisp White Card Container) ================= */
.contact-section {
  background-color: var(--color-black);
  background-image: radial-gradient(circle, var(--line-dark) 1px, transparent 1px);
  background-size: 18px 18px;
  padding: 72px 24px;
  border-bottom: 1px solid var(--color-border-dark);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.contact-box {
  max-width: 820px;
  margin: 0 auto;
  background-color: var(--white-raised);
  border: 1px solid var(--line);
  padding: 48px 44px;
  border-radius: 4px;
  color: var(--ink);
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.contact-box label {
  color: var(--line-dark);
  font-weight: 600;
  font-size: 14px;
}

.contact-box .form-control {
  background-color: var(--white-raised);
  border-color: var(--line);
  color: var(--ink);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.contact-box .form-control:focus {
  border-color: var(--surface-accent);
  background-color: var(--white-raised);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.btn-large {
  width: 100%;
  padding: 16px;
  font-size: 20px;
  cursor: pointer;
}

/* Confirmation Panel */
.booking-confirmation-panel {
  text-align: center;
  padding: 20px 0;
}

.confirmation-icon {
  width: 60px;
  height: 60px;
  background-color: var(--color-gold);
  color: var(--surface-heading);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  font-weight: bold;
  margin: 0 auto 18px;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

.confirmation-title {
  font-family: var(--font-display);
  font-size: 31px;
  font-weight: 500;
  color: var(--surface-heading);
  margin-bottom: 8px;
}

.confirmation-ref {
  font-family: var(--font-accent);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 2px;
  color: var(--surface-accent);
  margin-bottom: 16px;
}

.confirmation-message {
  font-size: 16px;
  color: var(--surface-muted);
  line-height: 1.6;
  max-width: 600px;
  margin: 0 auto 24px;
}

.confirmation-summary-box {
  background-color: var(--white-sunken);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 20px;
  max-width: 540px;
  margin: 0 auto 28px;
  text-align: left;
  font-size: 14px;
  color: var(--ink);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.summary-row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 8px;
}

.summary-row:last-child {
  margin-bottom: 0;
}

.summary-row strong {
  color: var(--surface-heading);
}

.confirmation-actions {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}

/* ================= Modals ================= */
.custom-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.modal-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
}

.modal-content {
  position: relative;
  background-color: var(--white-raised);
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 40px;
  max-width: 720px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  z-index: 2001;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.modal-close-btn {
  position: absolute;
  top: 18px;
  right: 20px;
  background: transparent;
  border: none;
  font-size: 28px;
  color: var(--surface-muted);
  cursor: pointer;
  line-height: 1;
}

.modal-close-btn:hover {
  color: var(--surface-heading);
}

.modal-title {
  font-family: var(--font-display);
  font-size: 27px;
  font-weight: 500;
  color: var(--surface-heading);
  margin-bottom: 8px;
}

.modal-note {
  font-size: 14px;
  color: var(--surface-muted);
  margin-bottom: 20px;
}

.script-card {
  background-color: var(--white-sunken);
  border-left: 4px solid var(--surface-accent);
  padding: 20px;
  border-radius: 0 4px 4px 0;
  font-size: 15px;
  line-height: 1.65;
  color: var(--line-dark);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.script-card p {
  margin-bottom: 12px;
}

.script-card p:last-child {
  margin-bottom: 0;
}

.copy-feedback-inline {
  display: inline-block;
  margin-left: 14px;
  font-size: 14px;
  color: var(--surface-accent);
  font-weight: 600;
}

.rider-specs-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 18px;
}

.rider-item {
  background-color: var(--white-sunken);
  border: 1px solid var(--line);
  padding: 14px 18px;
  border-radius: 4px;
  font-size: 14px;
  color: var(--ink);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.rider-item strong {
  display: block;
  font-family: var(--font-display);
  font-size: 15px;
  color: var(--surface-heading);
  margin-bottom: 4px;
}

/* Syllabus Modal Specifics */
.syllabus-timing-pill {
  display: inline-block;
  background-color: var(--color-gold);
  color: var(--white);
  font-family: var(--font-accent);
  font-size: 12px;
  font-weight: 500;
  padding: 3px 10px;
  border-radius: 3px;
  margin-bottom: 14px;
  letter-spacing: 1px;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

.syllabus-agenda {
  margin: 20px 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.agenda-block {
  padding: 10px 14px;
  background-color: var(--white-sunken);
  border-left: 3px solid var(--surface-accent);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.agenda-block strong {
  font-family: var(--font-display);
  font-size: 15px;
  color: var(--surface-heading);
}

.agenda-block p {
  font-size: 13px;
  color: var(--surface-muted);
}

/* ================= Site Footer ================= */
.site-footer {
  background-color: var(--black);
  padding: 50px 24px 40px;
  text-align: center;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.footer-inner {
  max-width: 1240px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
}

.footer-brand {
  display: flex;
  align-items: center;
  gap: 12px;
}

.footer-monogram {
  font-family: var(--font-display);
  font-size: 17px;
  font-weight: 500;
  color: var(--surface-accent);
  border: 1px solid var(--surface-accent);
  padding: 2px 8px;
  border-radius: 3px;
}

.footer-text {
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 1.5px;
  color: var(--white);
}

.footer-tagline {
  font-size: 14px;
  color: var(--surface-muted);
}

.footer-links {
  font-size: 14px;
  color: var(--surface-muted);
}

.footer-links a {
  color: var(--surface-muted);
  text-decoration: none;
  transition: color 0.2s ease;
}

.footer-links a:hover {
  color: var(--surface-accent);
}

.footer-copyright {
  font-size: 13px;
  color: var(--surface-muted);
  margin-top: 10px;
}

.mt-4 {
  margin-top: 16px;
}

/* ================= Responsive Breakpoints ================= */
@media (max-width: 1024px) {
  .hero-content-grid {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .hero-lead {
    margin-left: auto;
    margin-right: auto;
  }
  .hero-actions {
    justify-content: center;
  }
  .portrait-dashed-frame {
    margin: 0 auto;
  }
  .about-inner-grid {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .about-cta-row {
    justify-content: center;
  }
  .keynote-grid {
    grid-template-columns: 1fr;
  }
  .frameworks-container {
    grid-template-columns: 1fr;
  }
  .why-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .services-eight-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .mediakit-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .packages-summary-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .calc-grid {
    grid-template-columns: 1fr;
  }
  .testimonials-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .hero-main-title {
    font-size: 38px;
  }
  .speaker-display-name {
    font-size: 42px;
  }
  .metrics-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 12px;
  }
  .why-grid {
    grid-template-columns: 1fr;
  }
  .services-eight-grid {
    grid-template-columns: 1fr;
  }
  .mediakit-grid {
    grid-template-columns: 1fr;
  }
  .packages-summary-grid {
    grid-template-columns: 1fr;
  }
  .form-row {
    grid-template-columns: 1fr;
  }
  .adkar-grid {
    grid-template-columns: 1fr;
  }
}

/* ===================================================================
   MULTI-PAGE ARCHITECTURE & ENHANCED INTERACTIVE COMPONENTS
   =================================================================== */

/* Active Navigation State & Mobile Drawer */
.nav-menu a.active {
  color: var(--surface-accent);
  position: relative;
}

.nav-menu a.active::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  height: 2px;
  background-color: var(--color-gold);
}

.nav-menu a.nav-contact-btn.active::after {
  display: none;
}

.nav-menu a.nav-contact-btn.active {
  background-color: var(--color-gold);
  color: var(--surface-heading);}

.mobile-menu-toggle {
  display: none;
  background: transparent;
  border: 1px solid var(--surface-accent);
  color: var(--surface-accent);
  width: 44px;
  height: 44px;
  border-radius: 4px;
  font-size: 20px;
  cursor: pointer;
  align-items: center;
  justify-content: center;
}

@media (max-width: 900px) {
  .mobile-menu-toggle {
    display: inline-flex;
  }
  .nav-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: var(--black);
    border-bottom: 2px solid var(--surface-accent);
    flex-direction: column;
    padding: 20px 24px;
    gap: 14px;
    z-index: 1001;
    box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}
  .nav-menu.nav-open {
    display: flex;
  }
  .nav-menu a {
    font-size: 16px;
    padding: 10px 0;
    min-height: 44px;
    display: flex;
    align-items: center;
  }
}

/* Subpage Hero Banner */
.subpage-hero {
  background-color: var(--black);
  background-image: radial-gradient(rgba(0,0,0,0.16) 1px, transparent 1px);
  background-size: 24px 24px;
  padding: 72px 24px 64px;
  border-bottom: 1px solid var(--line-dark);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);

  color: var(--white);
}

.subpage-hero-inner {
  max-width: 1140px;
  margin: 0 auto;
  text-align: center;
}

.subpage-breadcrumb {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--surface-accent);
  background: rgba(0,0,0,0.12);
  border: 1px solid rgba(0,0,0,0.35);
  padding: 6px 16px;
  border-radius: 3px;
  margin-bottom: 18px;
}

.subpage-title {
  font-family: var(--font-display);
  font-size: 43px;
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: 0;
  text-transform: none;
  color: var(--white);
  margin-bottom: 18px;
}

.subpage-lead {
  font-size: 19px;
  color: var(--surface-muted);
  max-width: 780px;
  margin: 0 auto 28px;
  line-height: 1.6;
}

.subpage-actions {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}

/* Full-Surface Clickable Cards */
.card-clickable {
  cursor: pointer;
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.card-clickable:hover {
  transform: translateY(-2px);
  border-color: var(--surface-accent) !important;
  box-shadow: 0 1px 2px rgba(0,0,0,.06) !important;
}

.card-clickable:focus-visible {
  outline: 2px solid var(--focus-color);
  outline-offset: 2px;
}

/* 5-Stage Linear Pipeline (Modeled on Ama's EPK Page 3 System) */
.system-pipeline-wrap {
  background-color: var(--white-raised);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 40px 32px;
  margin-bottom: 48px;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.system-pipeline-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  margin: 32px 0 28px;
}

.pipeline-stage-card {
  background-color: var(--white-raised);
  border: 1px solid var(--line);
  border-top: 4px solid var(--surface-accent);
  border-radius: 4px;
  padding: 22px 16px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.pipeline-step-num {
  width: 32px;
  height: 32px;
  background-color: var(--black);
  color: var(--surface-accent);
  font-family: var(--font-display);
  font-weight: 500;
  font-size: 15px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 12px;
  border: 1px solid var(--surface-accent);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

.pipeline-stage-title {
  font-family: var(--font-display);
  font-size: 16px;
  font-weight: 500;
  color: var(--surface-heading);
  text-transform: uppercase;
  letter-spacing: 0.18em;
  margin-bottom: 10px;
}

.pipeline-stage-desc {
  font-size: 14px;
  color: var(--ink);
  line-height: 1.5;
  margin-bottom: 16px;
}

.pipeline-builds-tag {
  border-top: 1px solid var(--line);
  padding-top: 10px;
  font-size: 12px;
  font-weight: 700;
  color: var(--surface-heading);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.pipeline-builds-tag span {
  display: block;
  color: var(--surface-accent);
  font-weight: 600;
  margin-top: 2px;
}

.pipeline-outcome-bar {
  background-color: var(--black);
  color: var(--white);
  border-radius: 4px;
  padding: 24px 28px;
  display: grid;
  grid-template-columns: 220px 1fr 1.2fr;
  gap: 24px;
  align-items: center;
  border-left: 5px solid var(--surface-accent);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

.outcome-label-col {
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 500;
  line-height: 1.15;
  text-transform: uppercase;
}

.outcome-label-col span {
  color: var(--surface-accent);
  display: block;
}

.outcome-desc-col {
  font-size: 14px;
  color: var(--white);
  border-left: 1px solid var(--ink);
  padding-left: 20px;
}

.outcome-checks-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 16px;
  font-size: 13px;
  font-weight: 600;
  color: var(--white);
}

.outcome-checks-grid div::before {
  content: '✔ ';
  color: var(--surface-accent);
  font-weight: 800;
}

/* Post-Session Survey Results Dashboard (Modeled on Ama's Proposal Page 6) */
.survey-dashboard-card {
  background-color: var(--white-raised);
  border: 1px solid var(--line);
  border-top: 5px solid var(--surface-accent);
  border-radius: 4px;
  padding: 44px 40px;
  color: var(--ink);
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.survey-kicker {
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--surface-accent);
  text-transform: uppercase;
  margin-bottom: 6px;
}

.survey-header-title {
  font-family: var(--font-display);
  font-size: 32px;
  font-weight: 500;
  color: var(--surface-heading);
  text-transform: none;
  margin-bottom: 28px;
  border-bottom: 2px solid var(--surface-accent);
  padding-bottom: 14px;
}

.survey-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 36px;
}

.survey-kpi-box {
  background-color: var(--white);
  border: 1px solid var(--line);
  padding: 24px 16px;
  text-align: center;
  border-radius: 4px;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.survey-kpi-val {
  font-family: var(--font-display);
  font-size: 41px;
  font-weight: 500;
  color: var(--surface-accent);
  line-height: 1;
  margin-bottom: 8px;
}

.survey-kpi-title {
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  color: var(--surface-heading);
  text-transform: uppercase;
  margin-bottom: 4px;
}

.survey-kpi-sub {
  font-size: 13px;
  color: var(--surface-muted);
}

.rating-distribution-wrap {
  background-color: var(--white-sunken);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 24px 28px;
  margin-bottom: 36px;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.dist-row {
  display: grid;
  grid-template-columns: 60px 1fr 50px;
  align-items: center;
  gap: 16px;
  margin-bottom: 12px;
  font-weight: 700;
  color: var(--surface-heading);
}

.dist-row:last-child {
  margin-bottom: 0;
}

.dist-bar-bg {
  background-color: var(--line);
  height: 22px;
  border-radius: 3px;
  overflow: hidden;
}

.dist-bar-fill {
  background-color: var(--color-gold);
  height: 100%;
}

.nps-summary-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 18px;
}

.nps-pill-box {
  background-color: var(--white-sunken);
  border: 1px solid var(--line);
  padding: 18px;
  text-align: center;
  border-radius: 4px;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.nps-pill-val {
  font-family: var(--font-display);
  font-size: 31px;
  font-weight: 500;
  color: var(--surface-accent);
  line-height: 1.1;
}

.nps-pill-label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.2px;
  color: var(--surface-muted);
  text-transform: uppercase;
}

/* Detailed Advisory Services Cards (services.html) */
.detailed-services-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
}

.practice-detail-card {
  background-color: var(--white-raised);
  color: var(--ink);
  border: 1px solid var(--line);
  border-top: 4px solid var(--surface-accent);
  border-radius: 4px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.practice-header-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
  gap: 10px;
  flex-wrap: wrap;
}

.practice-number-tag {
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  background-color: var(--black);
  color: var(--surface-accent);
  padding: 4px 12px;
  border-radius: 3px;
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

.practice-fee-pill {
  font-family: var(--font-display);
  font-size: 15px;
  font-weight: 500;
  color: var(--surface-accent);
  background-color: var(--white);
  border: 1px solid var(--line);
  padding: 4px 12px;
  border-radius: 3px;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.practice-title {
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: 500;
  color: var(--surface-heading);
  line-height: 1.15;
  margin-bottom: 12px;
}

.practice-desc {
  font-size: 15px;
  color: var(--ink);
  line-height: 1.6;
  margin-bottom: 18px;
}

.practice-deliverables {
  background-color: var(--white-sunken);
  border: 1px solid var(--line);
  border-radius: 4px;
  padding: 16px 18px;
  margin-bottom: 22px;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}

.practice-deliverables strong {
  display: block;
  font-family: var(--font-display);
  font-size: 13px;
  text-transform: uppercase;
  color: var(--surface-heading);
  margin-bottom: 8px;
  letter-spacing: 0.18em;
}

.practice-deliverables ul {
  list-style: none;
  padding: 0;
}

.practice-deliverables li {
  font-size: 14px;
  color: var(--ink);
  padding-left: 20px;
  position: relative;
  margin-bottom: 6px;
}

.practice-deliverables li::before {
  content: '✔';
  position: absolute;
  left: 0;
  color: var(--surface-accent);
  font-weight: 700;
}

/* Executive AI Decision Deck Cards (Modeled on Ama's Classy Clapback Cards) */
.decision-deck-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 28px;
}

.decision-card {
  background-color: var(--white-raised);
  color: var(--ink);
  border: 1px solid var(--line);
  border-top: 4px solid var(--maroon-700);
  border-radius: 4px;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  transition: transform 0.2s ease, border-color 0.2s ease;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.decision-card:hover {
  transform: translateY(-2px);
  border-top-color: var(--surface-accent);
}

.archetype-label {
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--surface-accent);
  margin-bottom: 6px;
}

.archetype-name {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 500;
  color: var(--surface-heading);
  margin-bottom: 10px;
}

.archetype-symptom {
  font-size: 14px;
  color: var(--surface-muted);
  font-style: italic;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}

.archetype-response {
  background-color: var(--white);
  border-left: 3px solid var(--surface-accent);
  padding: 14px;
  font-size: 14px;
  color: var(--ink);
  line-height: 1.55;
  margin-bottom: 16px;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

/* Pre-Selected Scope Alert Banner on contact.html */
.preselected-scope-banner {
  background-color: var(--white);
  border: 2px solid var(--surface-accent);
  border-radius: 4px;
  padding: 18px 22px;
  margin-bottom: 24px;
  color: var(--ink);
  display: none;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.preselected-scope-banner strong {
  font-family: var(--font-display);
  font-size: 14px;
  text-transform: uppercase;
  color: var(--surface-heading);
  display: block;
  margin-bottom: 4px;
}

/* Copyable Bio Cards on media-kit.html */
.bio-tiers-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 28px;
}

.bio-card {
  background-color: var(--white-raised);
  color: var(--ink);
  border: 1px solid var(--line);
  border-top: 4px solid var(--surface-accent);
  border-radius: 4px;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);
}

.bio-card-text {
  font-size: 14px;
  color: var(--ink);
  line-height: 1.65;
  margin: 14px 0 20px;
}

@media (max-width: 1024px) {
  .system-pipeline-grid {
    grid-template-columns: 1fr;
  }
  .pipeline-outcome-bar {
    grid-template-columns: 1fr;
  }
  .outcome-desc-col {
    border-left: none;
    padding-left: 0;
  }
  .survey-kpi-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .detailed-services-grid,
  .decision-deck-grid,
  .bio-tiers-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .subpage-title {
    font-size: 38px;
  }
  .survey-kpi-grid,
  .nps-summary-strip {
    grid-template-columns: 1fr;
  }
}

/* Job 1: extracted inline styles */
.mb-0 { margin-bottom: 0; }
.mb-32 { margin-bottom: 32px; }
.mb-44 { margin-bottom: 44px; }
.mb-48 { margin-bottom: 48px; }
.mb-52 { margin-bottom: 52px; }
.cta-center-mt44 { text-align: center; margin-top: 44px; }
.action-btn-row { display: flex; gap: 12px; flex-wrap: wrap; }
.bg-card-white { background-color: var(--white-raised);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}
.pillar-card { padding: 28px 24px; }
.pillar-title { font-size: 24px; }
.pillar-desc { font-size: 15px; margin-bottom: 0; }
.dist-header-title {
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 500;
  color: var(--surface-heading);
  text-transform: uppercase;
  margin-bottom: 12px;
}
.dist-bar-fill-96 { width: 96%; }
.dist-bar-fill-4 { width: 4%; }
.dist-bar-fill-0 { width: 0%; }
.nps-callout-card {
  background-color: var(--black);
  color: var(--white);
  padding: 24px 28px;
  border-radius: 4px;
  border-left: 5px solid var(--surface-accent);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}
.nps-callout-headline {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 500;
  color: var(--surface-accent);
  text-transform: none;
}
.nps-callout-caption {
  font-size: 14px;
  color: var(--line);
  margin-top: 4px;
}
.target-aud-desc {
  margin-bottom: 10px;
  color: var(--surface-muted);
}
.workshop-why-item {
  background-color: var(--white-raised);
  border-top: 4px solid var(--surface-accent);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
  --button-bg: var(--maroon-700);
  --button-text: var(--white);
  --button-hover: var(--maroon-600);

  color: var(--ink);
}
.section-title-h3-banner {
  font-family: var(--font-display);
  font-size: 29px;
  font-weight: 500;
  color: var(--surface-heading);
  text-transform: none;
}
.lead-sub-55 {
  font-size: 16px;
  color: var(--surface-muted);
}
.script-card-mb22 {
  margin-bottom: 22px;
}
.rider-specs-spaced {
  margin-top: 0;
  margin-bottom: 22px;
}

/* Engagement measurement and media kit editorial styles. */
.impact-measure-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.impact-measure-card { background: var(--white); color: var(--ink); border: 1px solid var(--surface-muted); border-radius: 4px; padding: 24px; }
.impact-measure-card h3 { margin-bottom: 16px; }
.impact-measure-card p { margin-bottom: 16px; }
.impact-measure-card a { color: var(--ink); text-decoration: none; }
@media (max-width: 640px) { .impact-measure-grid { grid-template-columns: 1fr; } }
.media-editorial-1 { font-size: 26px; margin-bottom: 4px; }
.media-editorial-2 { font-size: 13px; color: var(--surface-muted); }
.media-editorial-3 { display:none; }

.engagement-measure-section { background: var(--color-light-bg); padding: 96px 24px; border-bottom: 1px solid var(--color-light-border); --surface-accent: var(--maroon-700); --surface-heading: var(--maroon-700); --surface-muted: var(--ink-2); --focus-color: var(--maroon-700); }
@media (max-width: 640px) { .engagement-measure-section { padding: 64px 24px; } }

/* Shared engagement formats */
.formats-section { padding: 96px 24px; background: var(--white); color: var(--ink); }
.formats-container { max-width: 1200px; margin: 0 auto; }
.formats-heading { font-family: var(--font-display); font-size: 34px; font-weight: 500; margin: 0 0 32px; }
.formats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.formats-card { display: flex; flex-direction: column; min-width: 0; padding: 24px; background: var(--white-raised); border: 1px solid var(--line); border-radius: 4px; }
.formats-title { font-family: var(--font-display); font-size: 24px; line-height: 1.2; font-weight: 500; margin: 0 0 16px; }
.formats-duration, .formats-fee, .formats-description { font-family: var(--font-body); font-size: 16px; line-height: 1.6; margin: 0 0 16px; }
.formats-fee { font-weight: 600; }
.formats-actions { display: flex; flex-direction: column; gap: 8px; margin-top: auto; padding-top: 8px; }
.formats-button { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px; border: 1px solid var(--maroon-700); color: var(--maroon-700); font-family: var(--font-display); font-size: 15px; font-weight: 500; text-align: center; text-decoration: none; transition: color 150ms ease; }
.formats-button:hover, .formats-button:active { color: var(--ink); text-decoration: underline; }
.formats-button:focus-visible { color: var(--ink); text-decoration: underline; outline: 2px solid var(--focus-color); outline-offset: 4px; }
@media (max-width: 1024px) { .formats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .formats-section { padding: 64px 24px; } .formats-grid { grid-template-columns: 1fr; } }

/* Kado brand surfaces and reserved logo slot. */
.site-footer { background-color: var(--maroon-900); --surface-muted: var(--white); }
.btn-gold-solid { background-color: var(--button-bg); color: var(--button-text); }
.btn-gold-solid:hover, .btn-gold-solid:focus-visible, .btn-gold-solid:active { background-color: var(--button-hover); border-color: var(--button-hover); }
:focus-visible { outline: 2px solid var(--focus-color); outline-offset: 4px; }

.kado-layout-1 { display:none; }
.kado-layout-2 { margin-top: 40px; background: var(--white-raised); border: 1px solid var(--line); border-top: 4px solid var(--color-gold); border-radius: 4px; padding: 36px 40px; box-shadow: 0 1px 2px rgba(0,0,0,.06); --surface-accent: var(--maroon-700); --surface-heading: var(--maroon-700); --surface-muted: var(--ink-2); --focus-color: var(--maroon-700); }
.kado-layout-3 { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
.kado-layout-4 { font-size: 14px; color: var(--surface-muted); }
.kado-layout-5 { display: flex; gap: 12px; flex-wrap: wrap; }
.kado-layout-6 { display: none; }
.kado-layout-7 { max-width: 820px; margin: 28px auto 0; text-align: center; color: var(--surface-muted); font-size: 15px; }
.kado-layout-8 { color: var(--surface-accent); }
.kado-layout-9 { text-align: center; max-width: 820px; margin: 0 auto; }
.kado-layout-10 { margin-bottom: 6px; }
.kado-layout-11 { font-size: 15px; color: var(--surface-muted); }
.kado-layout-12 { margin-top: 64px; }
.kado-layout-13 { text-align: center; margin-top: 48px; }
.kado-layout-14 { text-align: center; margin-top: 44px; }
.kado-layout-15 { text-align: center; margin-top: 48px; }

/* Alternate neutral surfaces while preserving each section's light text tokens. */
.about-section, .services-section, .engagement-measure-section { background-color: var(--grey-50); }

.kado-dynamic-1 { font-family: var(--font-display); font-size: 12px; font-weight: 500; color: var(--surface-accent); letter-spacing: 0.18em; text-transform: uppercase; margin-bottom: 6px; }
.kado-dynamic-2 { font-family: var(--font-display); font-size: 20px; color: var(--surface-heading); margin-bottom: 10px; }
.kado-dynamic-3 { font-size: 14px; color: var(--ink); line-height: 1.6; margin-bottom: 12px; }
.kado-dynamic-4 { background: var(--white-raised); border: 1px solid var(--line); padding: 12px 16px; border-radius: 4px; font-size: 13px; color: var(--ink); --surface-accent: var(--maroon-700); --surface-heading: var(--maroon-700); --surface-muted: var(--ink-2); --focus-color: var(--maroon-700); }
.kado-dynamic-5 { margin-top: 6px; font-size: 15px; font-weight: 700; color: var(--surface-heading); }
.kado-dynamic-6 { margin-top: 8px; }
.kado-dynamic-7 { font-size: 15px; color: var(--ink); line-height: 1.6; margin: 16px 0; }
.kado-dynamic-8 { font-family: var(--font-display); font-size: 19px; color: var(--surface-heading); margin-top: 24px; border-bottom: 2px solid var(--color-gold); padding-bottom: 4px; }
.kado-dynamic-9 { font-family: var(--font-display); font-size: 19px; color: var(--surface-heading); margin-top: 24px; border-bottom: 2px solid var(--color-gold); padding-bottom: 4px; }
.kado-dynamic-10 { list-style: none; padding: 12px 0 20px; }
.kado-dynamic-11 { position: relative; padding-left: 20px; margin-bottom: 6px; font-size: 14px; color: var(--ink); }
.kado-dynamic-12 { position: absolute; left: 0; color: var(--surface-accent); font-weight: bold; }
.kado-dynamic-13 { display: flex; gap: 14px; margin-top: 10px; border-top: 1px solid var(--line); padding-top: 20px; flex-wrap: wrap; }
.kado-dynamic-14 { margin-top: 8px; }

.brand-logo { display: block; width: 36px; height: 36px; flex-shrink: 0; }

/* Feedback round: team and scope use the established type and palette. */
.team-section { padding: 96px 0; background: var(--white); --surface-accent: var(--maroon-700); --surface-heading: var(--maroon-700); --surface-muted: var(--ink-2); --focus-color: var(--maroon-700); color: var(--ink); }
.team-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; margin-top: 48px; }
.team-profile { border-top: 1px solid var(--maroon-200); padding-top: 24px; }
.team-profile img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; margin-bottom: 16px; }
.team-profile h3 { font-size: 28px; margin: 8px 0; }
.team-label, .section-eyebrow { font-family: Jost, sans-serif; text-transform: uppercase; letter-spacing: .12em; font-size: 12px; }
.team-profile h3, .team-label { color: var(--ink); }
.team-role { font-weight: 600; }
.team-bio { font-style: italic; }
.team-profile a, .proposal-link { display: inline-block; padding: 8px 0; text-decoration: underline; }
.team-teaser { padding-top: 64px; padding-bottom: 64px; }
.foundation-section .section-headline { color: var(--ink); }
#preselected-scope-banner.scope-visible { display: block; }
@media(max-width: 700px) { .team-grid { grid-template-columns: 1fr; } .team-section { padding: 64px 0; } }

.is-hidden { display:none !important; }
#booking-confirmation-panel.scope-visible { display:block; }
.dialog-visible { display:flex; }
.nav-open { top:80px; }

.subpage-adoption { margin-top: 14px; max-width: 62ch; font-size: 17px; line-height: 1.6; color: var(--maroon-200); border-left: 2px solid var(--maroon-200); padding-left: 14px; }

/* Team: human-review marker, detail lines, lead portrait */
.team-review { display: inline-block; margin-left: 8px; padding: 2px 8px; border: 1px solid var(--maroon-700); color: var(--maroon-700); font-family: Jost, sans-serif; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; }
.team-detail { font-size: 15px; line-height: 1.55; margin: 6px 0; color: var(--ink-2); }
.team-detail strong { color: var(--ink); font-weight: 600; }
.team-profile-lead img { aspect-ratio: 1; object-fit: cover; object-position: top; }
.team-note { margin-top: 32px; font-size: 15px; color: var(--ink-2); border-left: 2px solid var(--maroon-700); padding-left: 12px; }

/* ===================================================================
   EDITORIAL DENSITY, SPACE RHYTHM & FULL-BLEED IMAGE BANDS (ITEM 4)
   =================================================================== */

/* 1. Cut vertical padding sitewide (56px to 64px desktop, 40px mobile) */
.hero-section {
  padding: 56px 24px 64px;
}

.subpage-hero {
  padding: 56px 24px 48px;
}

.about-section,
.keynotes-section,
.frameworks-section,
.why-section,
.services-section,
.mediakit-section,
.calculator-section,
.contact-section,
.engagement-measure-section,
.formats-section {
  padding: 60px 24px;
}

.team-section {
  padding: 60px 24px;
}

.signature-quote-banner {
  padding: 48px 24px;
}

.sectors-section {
  padding: 28px 24px;
}

.site-footer {
  padding: 44px 24px 36px;
}

/* 2. Remove oversized gaps, empty columns, and loose vertical margins */
.section-title-center {
  margin-bottom: 32px;
}

.services-header-wrap {
  margin: 0 auto 28px;
}

.gold-underline {
  margin: 10px auto 14px;
}

.k-rule {
  margin: 0 0 16px;
}

.subpage-hero .k-rule {
  margin: 0 auto 16px;
}

.kado-layout-12 {
  margin-top: 44px;
}

.kado-layout-13,
.kado-layout-14,
.kado-layout-15,
.cta-center-mt44 {
  margin-top: 28px;
}

.mb-32 { margin-bottom: 24px; }
.mb-44, .mb-48, .mb-52 { margin-bottom: 32px; }

/* 3. Larger confident type for section headings */
.section-headline,
.services-main-title,
.formats-heading {
  font-family: var(--font-display);
  font-size: clamp(34px, 3.6vw, 48px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: 0.03em;
}

.formats-heading {
  margin: 0 0 24px;
  text-transform: uppercase;
  color: var(--surface-heading);
}

.subpage-title {
  font-size: clamp(36px, 4vw, 52px);
  font-weight: 400;
  line-height: 1.06;
  margin-bottom: 14px;
}

.speaker-display-name {
  font-size: clamp(38px, 4vw, 52px);
  font-weight: 500;
  margin-bottom: 12px;
}

.banner-quote-text {
  font-size: clamp(30px, 3.4vw, 44px);
  margin-bottom: 12px;
}

/* 4. Tighter, denser card grids and reduced internal card bloat */
.about-inner-grid {
  grid-template-columns: 360px 1fr;
  gap: 40px;
  align-items: start;
}

.about-image-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.portrait-dashed-frame {
  padding: 8px;
  max-width: 360px;
}

.about-quote-panel {
  min-height: auto;
  padding: 20px 24px;
  background-color: var(--maroon-50);
  border: 1px solid var(--maroon-200);
  border-left: 4px solid var(--maroon-700);
}

.about-quote {
  max-width: none;
  font-size: clamp(22px, 2.2vw, 28px);
  line-height: 1.2;
}

.about-quote-attribution {
  margin-top: 10px;
}

.about-p-lead {
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 16px;
}

.about-p {
  font-size: 16px;
  line-height: 1.62;
  margin-bottom: 14px;
}

.about-cta-row {
  margin-top: 20px;
  gap: 12px;
}

.keynote-grid,
.frameworks-container,
.detailed-services-grid {
  gap: 20px;
}

.why-grid,
.services-eight-grid,
.mediakit-grid,
.packages-summary-grid,
.formats-grid,
.decision-deck-grid,
.bio-tiers-grid,
.impact-measure-grid {
  gap: 16px;
}

.packages-summary-grid {
  margin-bottom: 28px;
}

.keynote-card,
.framework-card,
.practice-detail-card {
  padding: 24px;
}

.why-item,
.kit-card,
.pkg-card,
.decision-card,
.bio-card,
.formats-card,
.impact-measure-card {
  padding: 22px 20px;
}

.service-tile {
  padding: 24px 18px;
  min-height: 128px;
}

.calculator-panel {
  padding: 28px;
}

.calc-grid {
  gap: 28px;
}

.contact-box {
  max-width: 960px;
  padding: 32px;
}

.team-section .section-subtext {
  margin: 8px 0 0;
  text-align: left;
}

/* Dense 5-column team layout on desktop so row 2 has zero empty columns */
.team-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-top: 28px;
}

.team-profile-lead {
  grid-column: 1 / -1;
  background-color: var(--maroon-50);
  border: 1px solid var(--maroon-200);
  border-left: 4px solid var(--maroon-700);
  border-radius: 4px;
  padding: 20px 24px;
  display: grid;
  grid-template-columns: 72px 1fr auto;
  gap: 20px 24px;
  align-items: center;
}

.team-profile-lead .team-lead-badge {
  width: 72px;
  height: 72px;
  border-radius: 4px;
  background-color: var(--maroon-700);
  color: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 30px;
  font-weight: 500;
  letter-spacing: 0.06em;
  border: 1px solid var(--maroon-600);
}

.team-profile-lead .team-lead-copy {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.team-profile-lead .team-label,
.team-profile-lead h3,
.team-profile-lead .team-role,
.team-profile-lead p {
  margin: 0;
}

.team-profile-lead h3 {
  font-size: 26px;
}

.team-profile-lead a {
  padding: 10px 20px;
  border: 1px solid var(--maroon-700);
  border-radius: 4px;
  background-color: var(--maroon-700);
  color: var(--white);
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}

.team-profile-lead a:hover,
.team-profile-lead a:focus-visible {
  background-color: var(--maroon-600);
}

.team-profile {
  background-color: var(--white-raised);
  border: 1px solid var(--line);
  border-top: 3px solid var(--maroon-700);
  border-radius: 4px;
  padding: 18px;
}

.team-profile h3 {
  font-size: 22px;
  margin: 6px 0 2px;
}

.team-note {
  margin-top: 20px;
}

/* 5. Alternate dark space sections (with subtle maroon glow) and crisp white sections,
      plus full-bleed Flow b-alternate image bands behind dark scrims */
.subpage-hero,
.metrics-bar,
.keynotes-section,
.mediakit-section,
.contact-section,
.signature-quote-banner,
.sectors-section,
#services-preview.services-section,
#benchmarks.engagement-measure-section {
  position: relative;
  background-color: var(--black);
  color: var(--white);
  border-bottom: 1px solid var(--line-dark);
  --surface-accent: var(--accent-on-dark);
  --surface-heading: var(--white);
  --surface-muted: var(--muted-on-dark);
  --focus-color: var(--white);
  --button-bg: var(--white);
  --button-text: var(--maroon-700);
  --button-hover: var(--white-sunken);
}

.subpage-hero {
  background-image:
    radial-gradient(ellipse at 78% 24%, rgba(90, 6, 36, 0.34) 0%, rgba(61, 4, 24, 0.14) 48%, rgba(17, 17, 17, 0) 78%),
    linear-gradient(180deg, rgba(17, 17, 17, 0.84) 0%, rgba(17, 17, 17, 0.94) 100%),
    url("assets/foundation/step-1b-1920.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.keynotes-section {
  background-image:
    radial-gradient(ellipse at 20% 20%, rgba(90, 6, 36, 0.32) 0%, rgba(61, 4, 24, 0.14) 50%, rgba(17, 17, 17, 0) 80%),
    linear-gradient(180deg, rgba(17, 17, 17, 0.86) 0%, rgba(17, 17, 17, 0.95) 100%),
    url("assets/foundation/step-3b-1920.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#services-preview.services-section {
  background-image:
    radial-gradient(ellipse at 80% 30%, rgba(90, 6, 36, 0.34) 0%, rgba(61, 4, 24, 0.15) 52%, rgba(17, 17, 17, 0) 80%),
    linear-gradient(180deg, rgba(17, 17, 17, 0.86) 0%, rgba(17, 17, 17, 0.94) 100%),
    url("assets/foundation/step-4b-1920.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.signature-quote-banner,
.mediakit-section,
.contact-section {
  background-image:
    radial-gradient(ellipse at 50% 50%, rgba(90, 6, 36, 0.34) 0%, rgba(61, 4, 24, 0.16) 52%, rgba(17, 17, 17, 0) 82%),
    linear-gradient(180deg, rgba(17, 17, 17, 0.85) 0%, rgba(17, 17, 17, 0.94) 100%),
    url("assets/foundation/step-5b-1920.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#benchmarks.engagement-measure-section {
  background-image:
    radial-gradient(ellipse at 25% 30%, rgba(90, 6, 36, 0.32) 0%, rgba(61, 4, 24, 0.14) 50%, rgba(17, 17, 17, 0) 80%),
    linear-gradient(180deg, rgba(17, 17, 17, 0.86) 0%, rgba(17, 17, 17, 0.95) 100%),
    url("assets/foundation/step-4b-1920.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#benchmarks.engagement-measure-section .section-headline.dark-headline {
  color: var(--white);
}

#benchmarks.engagement-measure-section .section-subtext.dark-sub {
  color: var(--muted-on-dark);
}

#benchmarks.engagement-measure-section .impact-measure-card {
  background-color: var(--white-raised);
  border-color: var(--line);
  border-top: 3px solid var(--maroon-700);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
}

#benchmarks.engagement-measure-section .impact-measure-card h3 {
  color: var(--maroon-700);
  font-size: 22px;
  margin-bottom: 8px;
}

#benchmarks.engagement-measure-section .impact-measure-card a {
  color: var(--maroon-700);
  font-family: var(--font-display);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

/* Crisp editorial white and soft maroon-tint sections */
.about-section,
.why-section,
.frameworks-section,
.calculator-section {
  background-color: var(--white);
  background-image: none;
}

.formats-section {
  background-color: var(--maroon-50);
  border-top: 1px solid var(--maroon-200);
  --surface-accent: var(--maroon-700);
  --surface-heading: var(--maroon-700);
  --surface-muted: var(--ink-2);
  --focus-color: var(--maroon-700);
}

.formats-card {
  border-top: 3px solid var(--maroon-700);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}

@media (max-width: 1024px) {
  .about-inner-grid {
    grid-template-columns: 300px 1fr;
    gap: 28px;
    text-align: left;
  }
  .about-cta-row {
    justify-content: flex-start;
  }
  .team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .hero-section,
  .subpage-hero,
  .about-section,
  .keynotes-section,
  .frameworks-section,
  .why-section,
  .services-section,
  .mediakit-section,
  .calculator-section,
  .contact-section,
  .engagement-measure-section,
  .formats-section,
  .team-section {
    padding: 40px 20px;
  }
  .signature-quote-banner {
    padding: 36px 20px;
  }
  .sectors-section {
    padding: 24px 20px;
  }
  .about-inner-grid {
    grid-template-columns: 1fr;
  }
  .portrait-dashed-frame {
    max-width: 280px;
    margin: 0;
  }
  .team-grid {
    grid-template-columns: 1fr;
  }
  .team-profile-lead {
    grid-template-columns: 1fr;
  }
  .team-profile-lead a {
    grid-column: 1;
    grid-row: auto;
    justify-self: start;
    margin-top: 8px;
  }
  .calculator-panel,
  .contact-box {
    padding: 20px;
  }
}
