/* Approved desktop foundation. Sizes and spacing use direct pixel values.
   Future responsive media queries use direct values from supplied Figma frames.
   Semantic color assignments are defaults; Figma section usage takes priority. */
@font-face {
  font-family: "Libertinus Serif";
  src: url("../fonts/LibertinusSerif-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

/* Shared book-promotion journey: Home and Resources. */
.leadership-journey { min-height: 613px; overflow: hidden; background: var(--color-background); }
.leadership-journey-layout { position: relative; min-height: 613px; }
.leadership-journey-content { position: relative; width: 438px; padding-top: 133px; display: flex; flex-direction: column; gap: 32px; }
.leadership-journey-text { display: flex; flex-direction: column; gap: 16px; }
.leadership-journey-heading { display: flex; flex-direction: column; gap: 12px; }
.leadership-journey-eyebrow { display: flex; align-items: center; gap: 16px; color: var(--color-accent); }
.leadership-journey-eyebrow::before { content: ""; flex: 0 0 40px; height: 1px; background: var(--color-accent); }
.leadership-journey-heading h2,
.leadership-journey-series figcaption { color: var(--color-brand-hover); }
.leadership-journey-copy { color: var(--color-text-secondary); }
.leadership-journey-copy span { display: block; }
.leadership-journey-cta { align-self: flex-start; }
.leadership-journey-art { position: absolute; inset: 0px; pointer-events: none; }
.leadership-journey-first-book { position: absolute; left: 293px; top: 56px; width: 712px; height: 474px; overflow: hidden; }
.leadership-journey-first-book img { position: absolute; left: -20.5056px; top: -20.0028px; width: 753.0112px; height: 502.0134px; max-width: none; }
.leadership-journey-arrow { position: absolute; left: 847.75px; top: 278.795px; width: 60.5px; height: 18.4099px; max-width: none; }
.leadership-journey-series { position: absolute; left: 812px; top: 56px; width: 621px; height: 474px; }
.leadership-journey-series-frame { position: absolute; inset: 0px; overflow: hidden; }
.leadership-journey-series-frame img { position: absolute; left: 146.3076px; top: 45.5988px; width: 328.3227px; height: 405.9336px; max-width: none; }
.leadership-journey-series figcaption { position: absolute; left: 166px; top: 432px; width: 289px; text-align: center; white-space: nowrap; }

@media (max-width: 1399px) {
  .leadership-journey,
  .leadership-journey-layout { min-height: 540px; }
  .leadership-journey-content { width: 400px; padding-top: 108px; }
  .leadership-journey-copy span { display: inline; }
  .leadership-journey-copy span + span::before { content: " "; }
  .leadership-journey-first-book { left: 249px; top: 48px; width: 605px; height: 403px; }
  .leadership-journey-first-book img { left: -17.43px; top: -17px; width: 640.06px; height: 426.707px; }
  .leadership-journey-arrow { left: 721px; top: 237px; width: 51.425px; height: 15.648px; }
  .leadership-journey-series { left: 690px; top: 48px; width: 528px; height: 403px; }
  .leadership-journey-series-frame img { left: 124.36px; top: 38.76px; width: 279.074px; height: 345.04px; }
  .leadership-journey-series figcaption { left: 120px; top: 367px; width: 288px; }
}

@media (max-width: 1199px) {
  .leadership-journey { min-height: 0px; padding-block: 72px; }
  .leadership-journey-layout { min-height: 0px; }
  .leadership-journey-content { width: 438px; max-width: 100%; padding-top: 0px; }
  .leadership-journey-art { position: relative; inset: auto; height: 430px; margin-top: 40px; }
  .leadership-journey-first-book { left: 0px; top: 0px; width: 430px; height: 400px; }
  .leadership-journey-first-book img { left: -65px; top: 0px; width: 560px; height: 373.333px; }
  .leadership-journey-arrow { left: 0px; right: 0px; top: 190px; margin-inline: auto; }
  .leadership-journey-series { left: auto; right: 0px; top: 0px; width: 360px; height: 400px; }
  .leadership-journey-series-frame { bottom: auto; height: 360px; }
  .leadership-journey-series-frame img { left: 40.5px; top: 0px; width: 279px; height: 344.895px; }
  .leadership-journey-series figcaption { left: 0px; top: 365px; width: 360px; }
}

@media (max-width: 900px) {
  .leadership-journey { padding-block: 64px; }
}

@media (max-width: 767px) {
  .leadership-journey { padding-block: 48px; }
  .leadership-journey-content { gap: 28px; }
  .leadership-journey-art { height: 750px; margin-top: 32px; }
  .leadership-journey-first-book { right: 0px; width: auto; height: 360px; display: flex; justify-content: center; }
  .leadership-journey-first-book img { position: relative; left: auto; }
  .leadership-journey-arrow { top: 365px; transform: rotate(90deg); }
  .leadership-journey-series { left: 0px; top: 400px; width: auto; height: 350px; }
  .leadership-journey-series-frame { height: 310px; display: flex; justify-content: center; }
  .leadership-journey-series-frame img { position: relative; left: auto; width: 250px; height: 309.052px; }
  .leadership-journey-series figcaption { right: 0px; top: 315px; width: auto; }
}

@media (max-width: 479px) {
  .leadership-journey { padding-block: 40px; }
  .leadership-journey-content { gap: 24px; }
  .leadership-journey-text { gap: 12px; }
  .leadership-journey-heading { gap: 10px; }
  .leadership-journey-eyebrow { gap: 12px; }
  .leadership-journey-eyebrow::before { flex-basis: 32px; }
  .leadership-journey-art { height: 650px; margin-top: 24px; }
  .leadership-journey-first-book { height: 300px; }
  .leadership-journey-first-book img { width: 450px; height: 300px; }
  .leadership-journey-arrow { top: 302px; }
  .leadership-journey-series { top: 340px; height: 310px; }
  .leadership-journey-series-frame { height: 250px; }
  .leadership-journey-series-frame img { width: 200px; height: 247.242px; }
  .leadership-journey-series figcaption { top: 255px; white-space: normal; }
}

@media (max-width: 375px) {
  .leadership-journey-art { height: 600px; }
  .leadership-journey-first-book { height: 270px; }
  .leadership-journey-first-book img { width: 405px; height: 270px; }
  .leadership-journey-arrow { top: 272px; }
  .leadership-journey-series { top: 310px; height: 290px; }
  .leadership-journey-series-frame { height: 220px; }
  .leadership-journey-series-frame img { width: 178px; height: 220px; }
  .leadership-journey-series figcaption { top: 225px; }
}

@font-face {
  font-family: "Liter";
  src: url("../fonts/Liter-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

:root {
  --font-heading: "Libertinus Serif", Georgia, serif;
  --font-body: "Liter", Arial, sans-serif;

  --color-brand: #3008B5;
  --color-brand-hover: #311893;
  --color-accent: #C09631;
  --color-accent-50: rgba(192, 150, 49, 0.5);
  --color-surface: #FFFFFF;
  --color-surface-soft: rgba(254, 254, 254, 0.15);
  --color-text-secondary: #585858;
  --color-text: #1E1E1E;
  --color-border: #D8D8D8;
  --color-tag-surface: #EFEFEF;
  --color-background: #FDFBF7;
  --color-surface-dark: #050C2A;
  --color-surface-dark-transparent: rgba(5, 12, 42, 0);
  --color-surface-dark-80: rgba(5, 12, 42, 0.8);
  --color-surface-dark-90: rgba(5, 12, 42, 0.9);
  --color-border-dark: #373D55;
  --color-border-inverse: rgba(253, 251, 247, 0.15);
  --color-border-brand: rgba(49, 24, 147, 0.1);
  --color-disabled: #ABABAB;

  color-scheme: light;
  font-synthesis: none;
}

/* Reset and base */
*,
*::before,
*::after {
  box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
ul,
ol {
  margin: 0px;
}

body {
  background: var(--color-background);
  color: var(--color-text);
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  line-height: 140%;
  letter-spacing: -1px;
  overflow-wrap: break-word;
}

button,
input,
select,
textarea {
  font: inherit;
  letter-spacing: inherit;
  color: inherit;
}

button {
  cursor: pointer;
}

a {
  color: var(--color-brand);
  text-underline-offset: 3px;
  transition: color 200ms ease, opacity 200ms ease;
}

a:hover {
  color: var(--color-brand-hover);
}

:focus-visible {
  outline: 2px solid var(--color-brand);
  outline-offset: 4px;
}

/* Semantic elements and explicit role classes share the same source. */
h1,
h2,
h3,
h4,
h5,
.type-h1,
.type-h2,
.type-h3,
.type-h4,
.type-h5,
.type-stat {
  font-family: var(--font-heading);
  font-weight: 400;
  font-style: normal;
  line-height: 115%;
  letter-spacing: -1px;
}

h1,
.type-h1 {
  font-size: 64px;
  letter-spacing: 0px;
}

.type-stat { font-size: 64px; }

h2,
.type-h2 { font-size: 48px; }
h3,
.type-h3 { font-size: 32px; }
h4,
.type-h4 { font-size: 28px; }
h5,
.type-h5 { font-size: 22px; }

.type-body-1,
.type-body-2,
.type-eyebrow,
.type-cta-1,
.type-cta-2 {
  font-family: var(--font-body);
  font-weight: 400;
  font-style: normal;
}

.type-body-1,
.type-body-2 {
  line-height: 140%;
  letter-spacing: -1px;
  text-transform: none;
}

.type-body-1 { font-size: 18px; }
.type-body-2 { font-size: 16px; }

/* Paragraph tracking is normal in every frontend context, including when a
   component class or a later route stylesheet declares custom tracking. */
html[lang] body[class] p {
  letter-spacing: normal;
}

.type-eyebrow,
.type-cta-1,
.type-cta-2 {
  line-height: 130%;
  text-transform: uppercase;
}

.type-eyebrow {
  font-size: 16px;
  letter-spacing: 2px;
}

.type-cta-1,
.type-cta-2 { letter-spacing: 0px; }
.type-cta-1 { font-size: 16px; }
.type-cta-2 { font-size: 14px; }

/* Shared layout and role utilities. No section-specific size variables. */
.container {
  max-width: 1312px;
  margin-inline: auto;
}

.stack {
  display: grid;
  gap: 24px;
}

.stack > * {
  min-width: 0px;
}

.text-secondary { color: var(--color-text-secondary); }
.text-brand { color: var(--color-brand); }
.text-inverse { color: var(--color-surface); }
.surface { background-color: var(--color-surface); }
.surface-dark { background-color: var(--color-surface-dark); }

/* Shared header and footer. The container owns the sitewide horizontal grid. */
[hidden] { display: none !important; }
.skip-link {
  position: absolute;
  z-index: 10;
  top: -100px;
  left: 24px;
  padding: 12px 20px;
  background: var(--color-surface);
}
.skip-link:focus { top: 12px; }
.site-header { background: var(--color-surface-dark); }
.site-header--light { background: var(--color-surface); }
.site-header--light .primary-nav a,
.site-header--light .menu-toggle { color: var(--color-text-secondary); }
.site-header--light .primary-nav a:hover { color: var(--color-brand-hover); }
.site-header--light .menu-toggle:hover { color: var(--color-surface); }
.site-header.site-header--light :focus-visible { outline-color: var(--color-brand-hover); }
@media (min-width: 1400px) { .site-header--light .header-inner { min-height: 116px; } }
.header-inner {
  display: grid;
  grid-template-columns: minmax(120px, auto) max-content minmax(120px, auto);
  align-items: start;
  min-height: 132px;
}
.brand-mark { display: block; position: relative; overflow: hidden; }
.brand-mark img { position: absolute; max-width: none; }
.header-brand { width: 39.146px; height: 100px; margin-top: 15.5px; }
.header-brand img { width: 142.35px; height: 142.35px; left: -51.78px; top: -21.17px; }
.primary-nav { margin-top: 31px; }
.primary-nav ul { display: flex; gap: 32px; padding: 0px; list-style: none; }
.primary-nav a { color: var(--color-surface); text-decoration: none; }
.primary-nav a:hover { color: var(--color-accent); }
.primary-nav :is(.current-menu-item, .current_page_item, .current-menu-parent, .current-menu-ancestor, .current_page_parent, .current_page_ancestor) > a,
.primary-nav a[aria-current="page"] {
  color: var(--color-accent);
  background-image: linear-gradient(var(--color-accent), var(--color-accent));
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100% 2px;
  text-decoration: none;
}
.primary-nav :is(.current-menu-item, .current_page_item, .current-menu-parent, .current-menu-ancestor, .current_page_parent, .current_page_ancestor) > a:hover,
.primary-nav a[aria-current="page"]:hover {
  color: var(--color-accent);
  text-decoration: none;
}
.site-header--light .primary-nav :is(.current-menu-item, .current_page_item, .current-menu-parent, .current-menu-ancestor, .current_page_parent, .current_page_ancestor) > a,
.site-header--light .primary-nav a[aria-current="page"],
.site-header--light .primary-nav :is(.current-menu-item, .current_page_item, .current-menu-parent, .current-menu-ancestor, .current_page_parent, .current_page_ancestor) > a:hover,
.site-header--light .primary-nav a[aria-current="page"]:hover {
  color: var(--color-brand-hover);
}
/* Explicit shared control typography prevents inherited heading weights/styles.
   CTA role classes continue to own size, line-height and letter spacing. */
button,
.button {
  font-family: var(--font-body);
  font-weight: 400;
  font-style: normal;
  font-synthesis: none;
  transition: background-color 250ms ease, color 250ms ease, border-color 250ms ease, transform 250ms ease;
}
.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 48px;
  padding: 13.6px 28px;
  border: 0px;
  background: var(--color-accent);
  color: var(--color-surface);
  text-align: center;
  text-decoration: none;
}
.button--outline { border: 1px solid var(--color-accent); padding-block: 12.6px; background: transparent; color: var(--color-accent); }
.button--outline:hover { border-color: var(--color-brand-hover); }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0px; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0px; }
button:not(:disabled):hover,
.button:hover {
  background-color: var(--color-brand-hover);
  color: var(--color-surface);
  transform: translateY(-2px);
}
button:not(:disabled):active,
.button:active { transform: translateY(0px); }
.header-cta { justify-self: end; width: 120px; min-height: 44px; margin-top: 18px; padding: 12px; }
.header-cta.current-menu-item,
.header-cta[aria-current="page"],
.header-cta.current-menu-item:hover,
.header-cta[aria-current="page"]:hover {
  background-image: linear-gradient(var(--color-surface), var(--color-surface));
  background-repeat: no-repeat;
  background-position: center calc(100% - 6px);
  background-size: 32px 2px;
  text-decoration: none;
}
.menu-toggle { display: none; }
.navigation-backdrop { display: none; }
html.navigation-open, body.navigation-open { overflow: hidden; }
.navigation-backdrop:not([hidden]) { display: block; position: fixed; z-index: 39; inset: 0px; padding: 0px; border: 0px; background: rgba(5, 12, 42, 0.65); }
.navigation-backdrop:not([hidden]):hover { background: rgba(5, 12, 42, 0.65); transform: none; }
.navigation-backdrop[inert], .navigation-exit { pointer-events: none; }
.menu-icon { width: 22px; display: flex; flex-direction: column; gap: 5px; margin-inline: auto; }
.menu-icon > span { display: block; width: 22px; height: 2px; background: currentColor; transition: transform 180ms ease, opacity 180ms ease; }
.menu-toggle[aria-expanded="true"] .menu-icon > span:first-child { transform: translateY(7px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] .menu-icon > span:nth-child(2) { opacity: 0; }
.menu-toggle[aria-expanded="true"] .menu-icon > span:last-child { transform: translateY(-7px) rotate(-45deg); }
.site-header .menu-toggle:hover { background: transparent; color: var(--color-accent); transform: none; }
.site-header :focus-visible,
.prefooter :focus-visible,
.site-footer :focus-visible {
  outline-color: var(--color-surface);
}

.prefooter {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 820px;
  display: grid;
  align-items: end;
  padding-top: 80px;
  padding-bottom: 80px;
  color: var(--color-surface);
  background: var(--color-surface-dark);
}
/* Figma's image CROP matrix resolves to these desktop image bounds. */
.prefooter-photo {
  position: absolute;
  z-index: -2;
  width: 1642.05px;
  height: 935.58px;
  max-width: none;
  justify-self: center;
  top: -115.22px;
  object-fit: cover;
  filter: brightness(1.54);
}
.prefooter::before {
  content: "";
  position: absolute;
  inset: 0px;
  z-index: -1;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 348px, rgba(0, 0, 0, 0.56) 548.92px, rgba(0, 0, 0, 0.8) 820px), rgba(0, 0, 0, 0.15);
}
.prefooter > .container { min-width: 0px; justify-self: stretch; }
.prefooter-content { max-width: 760px; min-width: 0px; margin-inline: auto; text-align: center; overflow-wrap: anywhere; }
.prefooter-eyebrow { display: flex; justify-content: center; align-items: center; gap: 16px; margin-bottom: 12px; }
.prefooter-eyebrow::before { content: ""; width: 40px; height: 1px; background: var(--color-surface); }
.prefooter-copy { margin-top: 16px; letter-spacing: -0.18px; }
.prefooter--home .prefooter-copy,
.prefooter--about .prefooter-copy,
.prefooter--results .prefooter-copy,
.prefooter--resources .prefooter-copy,
.prefooter--book .prefooter-copy { color: var(--color-border); }
.prefooter--home .prefooter-photo,
.prefooter--results .prefooter-photo,
.prefooter--resources .prefooter-photo { filter: brightness(2.5325) contrast(0.8503); }
.prefooter .button { margin-top: 32px; }
.site-footer { background: var(--color-surface-dark); color: var(--color-border); padding: 80px 0px 20px; }
.footer-top { display: flex; justify-content: space-between; gap: 40px; }
.footer-brand-block { flex: 0 0 418px; min-width: 0px; }
.footer-brand { width: 54.804px; height: 140px; }
.footer-brand img { width: 199.29px; height: 199.29px; left: -72.49px; top: -29.64px; }
.footer-positioning { margin-top: 24px; letter-spacing: -0.18px; }
.footer-social { display: flex; gap: 10px; margin-top: 32px; padding: 0px; list-style: none; }
.footer-social a,
.footer-social img { display: block; width: 40px; height: 40px; }
.footer-social a:hover { opacity: 0.8; }
.footer-columns { flex: 0 0 744px; display: grid; grid-template-columns: 191px 0px 193px 0px 184px; justify-content: space-between; min-width: 0px; }
.footer-column { min-width: 0px; overflow-wrap: anywhere; }
.footer-navigation-lists { display: flex; align-items: flex-start; gap: 24px; }
.footer-navigation-lists > ul { min-width: 0px; }
.footer-column h3 { color: var(--color-accent); }
.footer-column-rule { display: block; height: 1px; margin-block: 15px 16px; }
.footer-column ul { display: grid; gap: 12px; padding: 0px; list-style: none; font-size: 16px; line-height: 140%; }
.footer-column a,
.footer-legal { font-size: 16px; line-height: 140%; letter-spacing: -0.16px; }
.site-footer a { color: inherit; text-decoration: none; }
.site-footer a:hover { color: var(--color-accent); text-decoration: underline; }
.site-footer .footer-column :is(.current-menu-item, .current_page_item, .current-menu-parent, .current-menu-ancestor, .current_page_parent, .current_page_ancestor) > a,
.site-footer .footer-column a[aria-current="page"],
.site-footer .footer-legal-links a:is(.current-menu-item, .current_page_item, .current-menu-parent, .current-menu-ancestor, .current_page_parent, .current_page_ancestor),
.site-footer .footer-legal-links a[aria-current="page"] {
  color: var(--color-accent);
  background-image: linear-gradient(var(--color-accent), var(--color-accent));
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100% 2px;
  text-decoration: none;
}
.site-footer .footer-column :is(.current-menu-item, .current_page_item, .current-menu-parent, .current-menu-ancestor, .current_page_parent, .current_page_ancestor) > a:hover,
.site-footer .footer-column a[aria-current="page"]:hover,
.site-footer .footer-legal-links a:is(.current-menu-item, .current_page_item, .current-menu-parent, .current-menu-ancestor, .current_page_parent, .current_page_ancestor):hover,
.site-footer .footer-legal-links a[aria-current="page"]:hover {
  color: var(--color-accent);
  text-decoration: none;
}
.footer-column:is(.current-menu-item, .current_page_item, .current-menu-parent, .current-menu-ancestor, .current_page_parent, .current_page_ancestor) > .footer-column-rule {
  background: var(--color-accent);
}
.footer-column-divider { width: 1px; height: 182px; overflow: visible; }
.footer-column-divider img { display: block; width: 182px; height: 1px; transform: rotate(90deg); transform-origin: 0px 0px; }
.footer-legal {
  margin-top: 120px;
  padding: 24px 0px 10px;
  box-shadow: inset 0px 1px rgba(255, 255, 255, 0.16);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.footer-legal-links { display: flex; align-items: center; gap: 22px; }
.legal-divider { width: 1px; height: 16px; }
.legal-divider img { display: block; width: 16px; height: 1px; transform: rotate(90deg); transform-origin: 0px 0px; }

/* Shared full-bleed hero header variant. */
.site-header--overlay {
  position: absolute;
  z-index: 2;
  inset: 0px 0px auto;
  background: transparent;
}

/* Shared inner-page hero structure used by Change & Transition and Challenges. */
.change-transition-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 640px;
  background: var(--color-surface-dark);
  color: var(--color-surface);
}
.change-transition-hero-media {
  position: absolute;
  z-index: -1;
  inset: 0px;
  overflow: hidden;
}
.change-transition-hero-media img {
  display: block;
  width: 100%;
  width: stretch;
  height: 100%;
  height: stretch;
  object-fit: cover;
  object-position: center;
}
.change-transition-hero-media::after {
  content: "";
  position: absolute;
  inset: 0px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 57.744%, rgba(0, 0, 0, 0.3) 70.421%, rgba(0, 0, 0, 0.5) 100%), linear-gradient(128.500848767deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.425) 37.732%, rgba(0, 0, 0, 0) 54.555%);
}
.change-transition-hero-layout {
  min-height: 640px;
  display: grid;
  grid-template-columns: 594px minmax(0px, auto) 508px;
  align-items: start;
}
.change-transition-hero-title-block {
  grid-column: 1;
  width: 594px;
  margin-top: 216px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.change-transition-hero-title-block h1 { letter-spacing: -1px; }
.change-transition-hero-intro {
  grid-column: 3;
  width: 508px;
  margin-top: 371px;
}
.change-transition-hero-intro p { max-width: 460px; }
.change-transition-hero--action .change-transition-hero-title-block,
.change-transition-hero--action .change-transition-hero-intro { min-width: 0px; overflow-wrap: anywhere; }
.change-transition-hero--action .change-transition-hero-intro { display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.change-transition-hero--action .change-transition-hero-intro p { max-width: 508px; letter-spacing: -0.18px; }
.change-transition-hero--action .change-transition-hero-intro .button { max-width: stretch; }

@media (min-width: 901px) {
  .change-transition-hero--soft-overlay .change-transition-hero-media::after { background: linear-gradient(180deg, rgba(0, 0, 0, 0) 57.744%, rgba(0, 0, 0, 0.24) 70.421%, rgba(0, 0, 0, 0.4) 100%), linear-gradient(128.5008487668deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.364) 37.732%, rgba(0, 0, 0, 0) 54.555%); }
}

@media (min-width: 1400px) {
  .change-transition-hero--action .type-eyebrow { min-height: 21px; }
  .change-transition-hero--two-line h1 { min-height: 148px; display: grid; align-content: center; }
  .change-transition-hero--three-line h1 { min-height: 222px; display: grid; align-content: center; }
  .change-transition-hero--action .change-transition-hero-intro .button { padding-block: 14px; }
}

.from-reaction { padding-block: 100px; background: var(--color-background); }
.from-reaction-content { display: flex; flex-direction: column; align-items: center; gap: 48px; }
.from-reaction-header { align-self: stretch; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; }
.from-reaction-eyebrow { display: flex; align-items: center; gap: 16px; color: var(--color-accent); }
.from-reaction-eyebrow::before { content: ""; flex: 0 0 40px; height: 1px; background: var(--color-accent); }
.from-reaction-header h2 { width: 672px; color: var(--color-brand-hover); overflow-wrap: anywhere; }
.from-reaction-table { position: relative; display: block; width: 760px; border-collapse: collapse; border-spacing: 0px; }
.from-reaction-table:not(:has(tbody tr)) { display: none; }
.from-reaction-table::after { content: ""; position: absolute; inset: 0px; border: 1px solid var(--color-accent-50); pointer-events: none; }
.from-reaction-table thead,
.from-reaction-table tbody,
.from-reaction-table tr,
.from-reaction-table th,
.from-reaction-table td { display: block; }
.from-reaction-table th,
.from-reaction-table td { padding: 0px; font-weight: 400; text-align: left; }
.from-reaction-table thead { background: var(--color-surface-dark); color: var(--color-surface); box-shadow: inset 0px -1px 0px var(--color-accent); }
.from-reaction-table tbody tr:nth-child(odd) { background: var(--color-surface-soft); }
.from-reaction-table tbody tr:nth-child(even) { background: var(--color-background); }
.from-reaction-row-grid { min-height: 65px; padding-inline: 24px; display: flex; align-items: center; gap: 24px; font-family: var(--font-body); font-size: 18px; font-weight: 400; line-height: 140%; letter-spacing: -1px; }
.from-reaction-row-grid--heading { font-family: var(--font-heading); font-size: 22px; line-height: 115%; letter-spacing: -1px; }
.from-reaction-cell { flex: 1 1 0px; min-width: 0px; overflow-wrap: anywhere; }
.from-reaction-table tbody .from-reaction-cell:first-child { color: var(--color-text-secondary); }
.from-reaction-table tbody .from-reaction-cell:last-child { color: var(--color-text); }
.from-reaction-arrow { flex: 0 0 32px; width: 32px; height: 11.046px; display: flex; align-items: center; justify-content: center; }
.from-reaction-arrow img { flex: none; width: 33.5px; height: 11.046px; }
.from-reaction-row-grid--heading .from-reaction-arrow { visibility: hidden; }


/* Leadership challenge: natural prose beside an authored image viewport. */
.leadership-challenge { padding-block: 100px; background: var(--color-surface); }
.challenge-layout { display: flex; align-items: center; gap: 80px; }
.challenge-content,
.challenge-media { flex: 1 1 0px; min-width: 0px; }
.challenge-content { display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.challenge-text,
.challenge-header,
.challenge-copy { display: flex; flex-direction: column; min-width: 0px; }
.challenge-text { gap: 16px; align-self: stretch; }
.challenge-header { gap: 12px; }
.challenge-eyebrow { display: flex; align-items: center; gap: 16px; color: var(--color-accent); }
.challenge-eyebrow::before { content: ""; flex: 0 0 40px; height: 1px; background: var(--color-accent); }
.challenge-header h2 { color: var(--color-brand-hover); }
/* Widest whole-pixel body measure matching Figma's 2/4/2 paragraph lines. */
.challenge-copy { max-width: 559px; gap: 12px; color: var(--color-text-secondary); }
.challenge-media { height: 632px; overflow: hidden; }
/* Cover positioning resolves the source crop to px without distorting the raster. */
.challenge-image { display: block; width: 100%; width: stretch; height: 632px; object-fit: cover; object-position: -158.312px -0.442px; }

/* Shared five-stat credentials row used by Home and About. */
.credential-stats { display: flex; gap: 40px; margin: 0px; }
.credential-stat { flex: 1 1 0px; min-width: 0px; }
.credential-stat + .credential-stat { border-left: 1px solid var(--color-border); padding-left: 40px; }
.credential-stat dt { color: var(--color-brand-hover); }
.credential-stat dd { margin: 8px 0px 0px; color: var(--color-text-secondary); letter-spacing: -0.16px; }
.credential-stat:nth-child(1) dd { max-width: 152px; }
.credential-stat:nth-child(2) dd { max-width: 198px; }
.credential-stat:nth-child(4) dd { max-width: 145px; }


/* Manual card carousel: native scrolling remains usable without JavaScript. */
.leadership-test { padding-block: 100px; overflow: clip; }
.leadership-test-inner { display: flex; flex-direction: column; align-items: center; gap: 40px; }
.leadership-test-header-wrap,
.leadership-test-action { align-self: stretch; text-align: center; }
.leadership-test-header { width: 760px; max-width: 100%; max-width: stretch; margin-inline: auto; display: flex; flex-direction: column; gap: 16px; text-align: center; }
.leadership-test-heading { display: flex; flex-direction: column; gap: 12px; }
.leadership-test-eyebrow { display: flex; justify-content: center; align-items: center; gap: 16px; color: var(--color-accent); }
.leadership-test-eyebrow::before { content: ""; flex: 0 0 40px; height: 1px; background: var(--color-accent); }
.leadership-test-intro,
.leadership-test-copy p { color: var(--color-border); }
.card-carousel { position: relative; display: grid; grid-template-columns: 0px 1312px 0px; justify-content: space-between; align-self: stretch; min-width: 0px; margin-top: 8px; }
.card-carousel-viewport { grid-column: 2 / 4; grid-row: 1; min-width: 0px; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; }
.card-carousel-controls { grid-column: 2; grid-row: 1; position: relative; pointer-events: none; }
.card-carousel-controls button { pointer-events: auto; }
.card-carousel-viewport::-webkit-scrollbar { display: none; }
.card-carousel-track { display: flex; align-items: stretch; width: max-content; gap: 24px; list-style: none; padding: 0px; }
.leadership-test-card { position: relative; isolation: isolate; display: flex; flex-direction: column; justify-content: end; flex: 0 0 400px; width: 400px; min-width: 0px; min-height: 520px; padding: 24px; scroll-snap-align: start; }
.leadership-test-media { position: absolute; inset: 0px; overflow: hidden; z-index: -1; pointer-events: none; }
.leadership-test-media img { display: block; width: 100%; height: 100%; position: absolute; inset: 0px; object-fit: cover; transition: transform 300ms ease-out; }
.leadership-test-media::after { content: ""; position: absolute; inset: 0px; background: linear-gradient(44.24015374383073deg, color-mix(in srgb, var(--color-surface-dark) 80%, transparent) 0%, transparent 61.372%); }
.leadership-test-card.is-hovered .leadership-test-media img,
.leadership-test-card:focus-visible .leadership-test-media img { transform: scale(1.068); }
.leadership-test-window { overflow: hidden; }
.leadership-test-copy { display: flex; flex-direction: column; gap: 12px; }
.leadership-test-copy > * { min-width: 0px; }
.leadership-test :focus-visible { outline-color: var(--color-surface); }
.leadership-test-card:focus-visible { outline-offset: -4px; }
.card-carousel-viewport:focus-visible { outline-offset: -2px; }
.carousel-arrow { position: absolute; top: 0px; bottom: 0px; margin-block: auto; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; padding: 14px; border: 0px; background: var(--color-accent); color: var(--color-surface); }
.carousel-arrow img { display: block; width: 18px; height: 18px; }
.carousel-arrow--previous { left: -24px; }
.carousel-arrow--previous img { transform: rotate(180deg); }
.carousel-arrow--next { right: -24px; }
.leadership-test-cta { max-width: 100%; max-width: stretch; }
.leadership-test:has(.card-carousel-track:empty) { display: none; }

/* With no supplied small-screen frame, use a portrait-first content reflow.
   Header remains in flow so its expanded disclosure cannot cover the hero. */
/* Responsive system: inferred from the approved 1440px desktop frame.
   Text roles step globally; components only own structure and spacing.
   Intrinsic sizing keywords retain fluid layout without relative size units. */

@media (min-width: 1441px) {
  .prefooter-photo { width: -moz-available; width: stretch; margin-inline: -101.015px; justify-self: stretch; object-fit: cover; }

}


@media (max-width: 1407px) {
  .card-carousel { grid-template-columns: 48px minmax(0px, auto) 48px; }
  .container { margin-inline: 48px; }

}


@media (max-width: 1399px) {
  .from-reaction { padding-block: 88px; }
  .from-reaction-content { gap: 44px; }
  .change-transition-hero,
.change-transition-hero-layout { min-height: 600px; }
  .change-transition-hero-layout { grid-template-columns: 520px minmax(0px, auto) 460px; }
  .change-transition-hero-title-block { width: 520px; margin-top: 196px; }
  .change-transition-hero-intro { width: 460px; margin-top: 348px; }
  .change-transition-hero--action .change-transition-hero-intro { gap: 28px; }
  .leadership-test { padding-block: 80px; }
  .card-carousel { margin-top: 0px; }
  .leadership-challenge { padding-block: 80px; }
  .challenge-layout { gap: 64px; }
  .challenge-content { gap: 28px; }
  .challenge-media,
.challenge-image { height: 560px; }
  .challenge-image { object-position: center; }
  h1,
.type-h1,
.type-stat { font-size: 56px; }
  h2,
.type-h2 { font-size: 44px; }
  h3,
.type-h3 { font-size: 30px; }
  h4,
.type-h4 { font-size: 26px; }
  h5,
.type-h5 { font-size: 21px; }
  body,
.type-body-1 { font-size: 17px; }
  .type-eyebrow { font-size: 15px; }
  .stack { gap: 22px; }
  .button { min-height: 44px; padding: 11.6px 24px; }
  .header-inner { min-height: 120px; }
  .header-brand { width: 35.231px; height: 90px; }
  .header-brand img { width: 128.115px; height: 128.115px; left: -46.602px; top: -19.053px; }
  .primary-nav ul { gap: 28px; }
  .header-cta { padding: 12px; }
  .prefooter { min-height: 760px; padding-top: 64px; padding-bottom: 64px; }
  .prefooter-content { max-width: 720px; }
  .prefooter .button { margin-top: 28px; }
  .site-footer { padding-top: 64px; }
  .footer-top { gap: 32px; }
  .footer-brand-block { flex-basis: 360px; }
  .footer-brand { width: 46.975px; height: 120px; }
  .footer-brand img { width: 170.82px; height: 170.82px; left: -62.134px; top: -25.406px; }
  .footer-positioning { margin-top: 20px; }
  .footer-social { margin-top: 28px; }
  .footer-columns { flex-basis: 704px; grid-template-columns: 191px 1px 184px 1px 176px; }
  .footer-column-rule { width: 160px; }
  .footer-legal { margin-top: 80px; padding-top: 20px; gap: 20px; }

}


@media (max-width: 1199px) {
  .from-reaction { padding-block: 72px; }
  .from-reaction-content { gap: 40px; }
  .change-transition-hero,
.change-transition-hero-layout { min-height: 580px; }
  .change-transition-hero-layout { grid-template-columns: 440px minmax(0px, auto) 380px; }
  .change-transition-hero-title-block { width: 440px; margin-top: 176px; }
  .change-transition-hero-intro { width: 380px; margin-top: 340px; }
  .change-transition-hero--action .change-transition-hero-intro { gap: 24px; }
  .card-carousel { grid-template-columns: 32px minmax(0px, auto) 32px; }
  .leadership-test { padding-block: 72px; }
  .leadership-challenge { padding-block: 72px; }
  .challenge-layout { gap: 48px; }
  .challenge-media,
.challenge-image { height: 520px; }
  .container { margin-inline: 32px; }
  h1,
.type-h1,
.type-stat { font-size: 52px; }
  h2,
.type-h2 { font-size: 42px; }
  h3,
.type-h3 { font-size: 28px; }
  h4,
.type-h4 { font-size: 25px; }
  h5,
.type-h5 { font-size: 20px; }
  .primary-nav ul { gap: 20px; }
  .prefooter-content { max-width: 680px; }
  .footer-top { flex-direction: column; gap: 40px; }
  .footer-brand-block { flex-basis: auto; max-width: 360px; }
  .footer-columns { flex-basis: auto; }
  .footer-legal { margin-top: 64px; }

}

/* Compact-height laptops retain the wide composition and a visible CTA.
   Ordinary-height 1280px layouts do not enter this height-limited rule. */

@media (min-width: 901px) and (max-width: 1399px) and (max-height: 650px) {
  .change-transition-hero,
.change-transition-hero-layout { min-height: 579px; }
  .change-transition-hero-title-block { margin-top: 166px; }
  .change-transition-hero-intro { margin-top: 340px; }

}


@media (max-width: 900px) {
  .from-reaction { padding-block: 64px; }
  .from-reaction-content { gap: 36px; }
  .change-transition-hero { min-height: 0px; padding-top: 380px; }
  .change-transition-hero-media { height: 380px; bottom: auto; }
  .change-transition-hero-media::after { background: linear-gradient(180deg, rgba(0, 0, 0, 0.12) 0%, rgba(5, 12, 42, 0.15) 250px, var(--color-surface-dark) 380px), linear-gradient(128.500848767deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.2) 54.555%, rgba(0, 0, 0, 0) 100%); }
  .change-transition-hero-layout { min-height: 0px; display: block; padding-block: 28px 56px; }
  .change-transition-hero-title-block { width: auto; max-width: 594px; margin-top: 0px; }
  .change-transition-hero-intro { width: auto; max-width: 594px; margin-top: 28px; }
  .leadership-test { padding-block: 64px; }
  .leadership-test-card { flex-basis: 360px; width: 360px; min-height: 468px; }
  .carousel-arrow--previous { left: 0px; }
  .carousel-arrow--next { right: 0px; }
  .leadership-challenge { padding-block: 64px; }
  .challenge-layout { flex-direction: column; align-items: stretch; gap: 40px; }
  .challenge-content,
.challenge-media { flex-basis: auto; }
  .challenge-content { gap: 24px; }
  .challenge-text { gap: 14px; }
  .challenge-eyebrow { gap: 14px; }
  .challenge-media,
.challenge-image { height: 480px; }
  h1,
.type-h1,
.type-stat { font-size: 48px; }
  h2,
.type-h2 { font-size: 40px; }
  h4,
.type-h4 { font-size: 24px; }
  .type-eyebrow { font-size: 14px; }
  .type-body-2,
.footer-column a,
.footer-column ul,
.footer-legal { font-size: 15px; }
  .stack { gap: 20px; }
  .header-inner { grid-template-columns: minmax(0px, auto) 120px 76px; column-gap: 20px; min-height: 104px; }
  .header-brand { width: 31.317px; height: 80px; margin-top: 12px; }
  .header-brand img { width: 113.88px; height: 113.88px; left: -41.424px; top: -16.936px; }
  .menu-toggle { display: block; grid-column: 3; grid-row: 1; align-self: center; margin-top: 0px; height: 44px; padding: 12px 16px; border: 1px solid var(--color-accent); background: transparent; color: var(--color-surface); }
  .menu-toggle[hidden] { display: none; }
  .header-cta { grid-column: 2; grid-row: 1; align-self: center; margin-top: 0px; height: 44px; }
  .site-header .header-cta:hover { transform: none; }
  .primary-nav { grid-column: 1 / -1; grid-row: 2; min-width: 0px; margin: 0px; padding-block: 12px 24px; }
  html.navigation-open,
  body.navigation-open { overflow: hidden; }
  .site-header { position: relative; z-index: 40; }
  .header-enhanced .primary-nav { position: fixed; z-index: 42; top: 104px; right: 0px; bottom: 0px; left: 0px; min-height: 0px; max-height: 100vh; max-height: 100dvh; margin: 0px; padding: 16px 32px; overflow-y: auto; overscroll-behavior: contain; background: var(--color-surface-dark); border-block: 1px solid var(--color-border-dark); border-inline: 0px; }
  .header-enhanced.site-header--light .primary-nav { background: var(--color-surface); border-color: var(--color-border); }
  .header-enhanced .primary-nav ul { flex-direction: column; gap: 0px; }
  .header-enhanced .primary-nav a { padding-block: 10px; white-space: normal; overflow-wrap: anywhere; }
  .navigation-backdrop:not([hidden]) { display: block; position: fixed; z-index: 39; inset: 0px; padding: 0px; border: 0px; background: rgba(5, 12, 42, 0.65); }
  .navigation-backdrop:not([hidden]):hover { background: rgba(5, 12, 42, 0.65); transform: none; }
  .primary-nav ul { flex-wrap: wrap; gap: 16px 24px; }
  .primary-nav a { display: flex; align-items: center; min-height: 44px; }
  .site-header--overlay { position: relative; z-index: 40; inset: auto; background: var(--color-surface-dark); }
  .prefooter { min-height: 720px; padding-top: 56px; padding-bottom: 56px; }
  .prefooter-eyebrow { gap: 14px; }
  .prefooter-copy { margin-top: 14px; }
  .prefooter .button { margin-top: 24px; }
  .site-footer { padding-top: 56px; }
  .footer-top { gap: 32px; }
  .footer-social { margin-top: 24px; }
  .footer-columns { grid-template-columns: auto 1px auto 1px auto; justify-content: normal; gap: 20px; }
  .footer-navigation-lists { flex-direction: column; gap: 10px; }
  .footer-column ul { gap: 10px; }
  .footer-column-rule { margin-block: 14px; }
  .footer-column-divider { height: 160px; }
  .footer-column-divider img { width: 160px; }
  .footer-legal { align-items: flex-start; flex-direction: column; gap: 16px; margin-top: 48px; }

}


@media (max-width: 767px) {
  .from-reaction { padding-block: 48px; }
  .from-reaction-content { gap: 32px; }
  .from-reaction-header h2 { width: auto; }
  .from-reaction-table { align-self: stretch; width: auto; }
  .from-reaction-row-grid { padding-inline: 20px; gap: 16px; }
  .from-reaction-arrow { flex-basis: 28px; width: 28px; height: 9.664px; }
  .from-reaction-arrow img { width: 29.312px; height: 9.664px; }
  .change-transition-hero { padding-top: 320px; }
  .change-transition-hero-media { height: 320px; }
  .change-transition-hero-media::after { background: linear-gradient(180deg, rgba(0, 0, 0, 0.12) 0%, rgba(5, 12, 42, 0.15) 205px, var(--color-surface-dark) 320px), linear-gradient(128.500848767deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.2) 54.555%, rgba(0, 0, 0, 0) 100%); }
  .change-transition-hero-layout { padding-block: 24px 48px; }
  .change-transition-hero-intro { margin-top: 24px; }
  .card-carousel { grid-template-columns: 24px minmax(0px, auto) 24px; }
  .leadership-test { padding-block: 48px; }
  .leadership-test-inner { gap: 32px; }
  .card-carousel-track { gap: 20px; }
  .leadership-test-card { flex-basis: 320px; width: 320px; min-height: 416px; }
  .leadership-challenge { padding-block: 48px; }
  .challenge-layout { gap: 32px; }
  .challenge-media,
.challenge-image { height: 440px; }
  .container { margin-inline: 24px; }
  h1,
.type-h1,
.type-stat { font-size: 40px; }
  h2,
.type-h2 { font-size: 36px; }
  h3,
.type-h3 { font-size: 26px; }
  h4,
.type-h4 { font-size: 23px; }
  h5,
.type-h5 { font-size: 19px; }
  body,
.type-body-1 { font-size: 16px; }
  .type-cta-1 { font-size: 15px; }
  .stack { gap: 18px; }
  .button { padding: 12px 20px; }
  .header-cta { padding: 12px; }
  .prefooter { min-height: 680px; padding-top: 48px; padding-bottom: 48px; }
  .prefooter-photo { translate: -40px 0px; width: 1400px; height: 797.675px; top: -100px; }
  .prefooter::before { background: linear-gradient(180deg, rgba(0, 0, 0, 0) 180px, rgba(0, 0, 0, 0.56) 380px, rgba(0, 0, 0, 0.8) 680px), rgba(0, 0, 0, 0.15); }
  .site-footer { padding-top: 48px; }
  .footer-columns { grid-template-columns: auto auto; gap: 32px 20px; }
  .footer-column-divider { display: none; }
  .footer-brand { width: 39.146px; height: 100px; }
  .footer-brand img { width: 142.35px; height: 142.35px; left: -51.78px; top: -21.17px; }
  .footer-positioning { margin-top: 16px; }
  .footer-legal { margin-top: 40px; padding-top: 16px; }
  .footer-legal-links { gap: 18px; }

}


@media (max-width: 767px) {
  .footer-columns > .footer-column:last-child { grid-column: 1 / -1; }
  .footer-columns > .footer-column:last-child ul { grid-template-columns: repeat(3, minmax(0px, auto)); column-gap: 24px; }
}


@media (max-width: 479px) {
  .from-reaction { padding-block: 40px; }
  .from-reaction-content { gap: 24px; }
  .from-reaction-header { gap: 10px; }
  .from-reaction-eyebrow { gap: 12px; }
  .from-reaction-eyebrow::before { flex-basis: 32px; }
  .from-reaction-row-grid { min-height: 0px; padding: 16px; gap: 12px; }
  .from-reaction-arrow { flex-basis: 24px; width: 24px; height: 8.284px; }
  .from-reaction-arrow img { width: 25.125px; height: 8.284px; }
  .change-transition-hero { padding-top: 280px; }
  .change-transition-hero-media { height: 280px; }
  .change-transition-hero-media::after { background: linear-gradient(180deg, rgba(0, 0, 0, 0.12) 0%, rgba(5, 12, 42, 0.2) 175px, var(--color-surface-dark) 280px), linear-gradient(128.500848767deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.2) 54.555%, rgba(0, 0, 0, 0) 100%); }
  .change-transition-hero-layout { padding-block: 20px 40px; }
  .change-transition-hero-title-block { gap: 10px; }
  .change-transition-hero-intro { margin-top: 20px; }
  .change-transition-hero--action .change-transition-hero-intro { gap: 20px; }
  .card-carousel { grid-template-columns: 20px minmax(0px, auto) 20px; }
  .leadership-test { padding-block: 40px; }
  .leadership-test-inner { gap: 24px; }
  .leadership-test-header { gap: 12px; }
  .leadership-test-eyebrow { gap: 12px; }
  .leadership-test-eyebrow::before { flex-basis: 32px; }
  .card-carousel-track { gap: 16px; }
  .leadership-test-card { flex-basis: 280px; width: 280px; min-height: 364px; padding: 20px; }
  .leadership-challenge { padding-block: 40px; }
  .challenge-layout { gap: 24px; }
  .challenge-content { gap: 20px; }
  .challenge-text { gap: 12px; }
  .challenge-eyebrow { gap: 12px; }
  .challenge-eyebrow::before { flex-basis: 32px; }
  .challenge-media,
.challenge-image { height: 360px; }
  .container { margin-inline: 20px; }
  h1,
.type-h1,
.type-stat { font-size: 36px; }
  h2,
.type-h2 { font-size: 32px; }
  h3,
.type-h3 { font-size: 24px; }
  h4,
.type-h4 { font-size: 22px; }
  h5,
.type-h5 { font-size: 18px; }
  .type-eyebrow { font-size: 13px; }
  .type-cta-1,
.type-body-2,
.footer-column a,
.footer-column ul,
.footer-legal { font-size: 14px; }
  .stack { gap: 16px; }
  .button { padding: 12px 16px; }
  .header-inner { grid-template-columns: minmax(0px, auto) 110px 68px; column-gap: 12px; min-height: 96px; }
  .header-brand { width: 27.402px; height: 70px; }
  .header-brand img { width: 99.645px; height: 99.645px; left: -36.246px; top: -14.819px; }
  .header-cta { width: 110px; padding: 12px; margin-top: 0px; }
  .menu-toggle { margin-top: 0px; padding: 12px; }
  .primary-nav ul { flex-direction: column; gap: 0px; }
  .primary-nav a { padding-block: 10px; }
  .prefooter { min-height: 640px; padding-top: 40px; padding-bottom: 40px; }
  .prefooter-photo { width: 1300px; height: 740.698px; top: -90px; translate: -20px 0px; }
  .prefooter-eyebrow { gap: 12px; margin-bottom: 10px; }
  .prefooter-eyebrow::before { width: 32px; }
  .prefooter-copy { margin-top: 12px; }
  .prefooter .button { margin-top: 20px; }
  .site-footer { padding: 40px 0px 16px; }
  .footer-top { gap: 28px; }
  .footer-columns { grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); gap: 28px 20px; }
  .footer-column-rule { margin-block: 12px; }
  .footer-social { margin-top: 20px; }
  .footer-legal { margin-top: 32px; gap: 12px; }
  .footer-legal-links { flex-wrap: wrap; gap: 16px; }

}

@media (max-width: 340px) {
  .footer-columns { grid-template-columns: minmax(0px, auto); gap: 28px; }
  .footer-columns > .footer-column:last-child { grid-column: auto; }
  .footer-columns > .footer-column:last-child ul { grid-template-columns: minmax(0px, auto); row-gap: 10px; column-gap: 0px; }
}


@media (max-width: 375px) {
  .from-reaction-row-grid { padding: 16px 12px; gap: 10px; }
  .from-reaction-arrow { flex-basis: 22px; width: 22px; height: 7.593px; }
  .from-reaction-arrow img { width: 23.031px; height: 7.593px; }
  .card-carousel { grid-template-columns: 16px minmax(0px, auto) 16px; }
  .leadership-test-card { flex-basis: 248px; width: 248px; min-height: 340px; padding: 16px; }
  .challenge-media,
.challenge-image { height: 320px; }
  .container { margin-inline: 16px; }
  h1,
.type-h1,
.type-stat { font-size: 32px; }
  h2,
.type-h2 { font-size: 30px; }
  body,
.type-body-1 { font-size: 15px; }

}


@media (max-width: 1399px) {
  .credential-stats { gap: 28px; }
  .credential-stat + .credential-stat { padding-left: 28px; }
}

@media (max-width: 1199px) {
  .credential-stats { display: grid; grid-template-columns: repeat(3, minmax(0px, auto)); gap: 32px; }
  .credential-stat:nth-child(3n + 1) { border-left: 0px; padding-left: 0px; }
}

@media (max-width: 900px) {
  .credential-stats { gap: 24px; }
  .credential-stat + .credential-stat { padding-left: 24px; }
  .credential-stat:nth-child(3n + 1) { padding-left: 0px; }
}

@media (max-width: 767px) {
  .credential-stats { grid-template-columns: repeat(2, minmax(0px, auto)); }
  .credential-stat:nth-child(3n + 1) { border-left: 1px solid var(--color-border); padding-left: 24px; }
  .credential-stat:nth-child(2n + 1) { border-left: 0px; padding-left: 0px; }
}

@media (max-width: 479px) {
  .credential-stats { grid-template-columns: minmax(0px, auto); gap: 20px; }
  .credential-stat:nth-child(n) { border-left: 0px; padding-left: 0px; }
  .credential-stat:nth-child(n) dd { max-width: none; }
  .credential-stat + .credential-stat { border-top: 1px solid var(--color-border); padding-top: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .leadership-test-media img { transition: none; }
  .leadership-test-card.is-hovered .leadership-test-media img,
  .leadership-test-card:focus-visible .leadership-test-media img { transform: none; }
  a,
button,
.button { transition-duration: 0ms; }
  button:not(:disabled):hover,
button:not(:disabled):active,
.button:hover,
.button:active { transform: none; }

}


/* Shared six-item support accordion: Home and Areas of Focus. */
.how-we-help {
  padding-block: 100px;
  background: var(--color-surface-dark);
  color: var(--color-surface);
}

.how-we-help-content {
  display: flex;
  flex-direction: column;
  /* Source list starts at 188px after the natural 143.203125px text block. */
  gap: 44.796875px;
}

.how-we-help-eyebrow {
  display: flex;
  align-items: center;
  gap: 16px;
  color: var(--color-accent);
}

.how-we-help-eyebrow::before {
  content: "";
  flex: 0 0 40px;
  height: 1px;
  background: var(--color-accent);
}

.how-we-help-item-title {
  color: var(--color-surface);
}

.how-we-help-list {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.how-we-help-list:empty {
  display: none;
}

.how-we-help-item {
  position: relative;
  min-height: 110px;
  overflow: hidden;
  background: var(--color-surface-dark);
  box-shadow: 0px -1px 0px var(--color-border-dark);
  transition: min-height 600ms ease-out;
}

.how-we-help-item.is-active {
  min-height: 314px;
}

.how-we-help-trigger {
  width: 100%;
  min-height: 110px;
  display: grid;
  grid-template-columns: 600px 360.202px 46px;
  align-items: center;
  justify-content: space-between;
  gap: 0px;
  padding: 32px 0px;
  overflow: hidden;
  border: 0px;
  background: var(--color-surface-dark);
  color: var(--color-surface);
  text-align: left;
  text-decoration: none;
  transition: min-height 600ms ease-out;
}

.how-we-help-row-link:hover,
.how-we-help-row-link:active,
.how-we-help-row-link:focus {
  background: var(--color-surface-dark);
  transform: none;
}

.how-we-help-row-link:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: -2px;
}

.how-we-help-row-link:focus:not(:focus-visible) {
  outline: none;
}

.how-we-help-row-link--static {
  cursor: default;
}

.how-we-help-item.is-active .how-we-help-trigger {
  min-height: 314px;
}

.how-we-help-copy {
  min-width: 0px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: gap 600ms ease-out;
}

:where(.how-we-help.is-enhanced) .how-we-help-copy {
  gap: 0px;
}

.how-we-help-item.is-active .how-we-help-copy {
  gap: 16px;
}

.how-we-help-item-title,
.how-we-help-item-body {
  display: block;
  min-width: 0px;
}

.how-we-help-item-body {
  width: 568px;
  max-width: 100%;
  color: var(--color-border);
  letter-spacing: -0.18px;
}

/* Content is visible by default, including when the script fails to load. */
:where(.how-we-help.is-enhanced) .how-we-help-item-body {
  max-height: 0px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: max-height 600ms ease-out, opacity 600ms ease-out, transform 600ms ease-out, visibility 0ms linear 600ms;
}

:where(.how-we-help.is-enhanced) .how-we-help-item.is-active .how-we-help-item-body {
  max-height: 500px;
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
  transition: max-height 600ms ease-out, opacity 600ms ease-out, transform 600ms ease-out, visibility 0ms linear 0ms;
}

.how-we-help-media {
  position: relative;
  display: block;
  width: 360.202px;
  height: 250px;
}

:where(.how-we-help.is-enhanced) .how-we-help-media {
  height: 0px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: scale(0.96);
  transition: height 600ms ease-out, margin-top 600ms ease-out, opacity 600ms ease-out, transform 600ms ease-out, visibility 0ms linear 600ms;
}

.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media {
  height: 250px;
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  transition: height 600ms ease-out, margin-top 600ms ease-out, opacity 600ms ease-out, transform 600ms ease-out, visibility 0ms linear 0ms;
}

.how-we-help-media::before {
  content: "";
  position: absolute;
  left: 17.599px;
  top: 16.771px;
  width: 324.948px;
  height: 216.457px;
  border-radius: 6.056px;
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(3.751px);
  transform: rotate(-6.66deg);
}

.how-we-help-photo {
  position: absolute;
  left: 17.564px;
  top: 16.771px;
  display: block;
  width: 324.948px;
  height: 216.457px;
  overflow: hidden;
  border-radius: 6.289px;
  transform: rotate(4.96deg);
}

.how-we-help-photo img {
  display: block;
  width: 324.948px;
  height: 216.457px;
  max-width: none;
  object-fit: cover;
  object-position: center 34.488%;
}

.how-we-help-arrow {
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-accent);
  border-radius: 23px;
}

.how-we-help-arrow img {
  display: block;
  width: 14.922px;
  height: 12px;
  max-width: none;
  transition: transform 600ms ease-out;
}

.how-we-help-item.is-active .how-we-help-arrow img,
.how-we-help-item:first-child.is-active + .how-we-help-item .how-we-help-arrow img {
  transform: rotate(-45deg);
}

.how-we-help.is-motion-managed :is(.how-we-help-item, .how-we-help-trigger, .how-we-help-copy, .how-we-help-item-body, .how-we-help-media, .how-we-help-arrow img) {
  transition: none;
}

@media (max-width: 1399px) {
.how-we-help {
    padding-block: 80px;
  }

.how-we-help-content {
    gap: 40px;
  }

.how-we-help-item,
  .how-we-help-trigger {
    min-height: 104px;
  }

.how-we-help-item.is-active,
  .how-we-help-item.is-active .how-we-help-trigger {
    min-height: 294px;
  }

.how-we-help-trigger {
    grid-template-columns: 560px 340px 46px;
    padding-block: 29px;
  }

.how-we-help-media {
    width: 340px;
  }

.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media {
    height: 236px;
  }

.how-we-help-media::before {
    left: 16px;
    top: 16px;
    width: 307px;
    height: 204px;
  }

.how-we-help-photo {
    left: 16px;
    top: 16px;
    width: 307px;
    height: 204px;
  }

.how-we-help-photo img {
    width: 307px;
    height: 204px;
  }
}

@media (max-width: 1199px) {
.how-we-help {
    padding-block: 72px;
  }

.how-we-help-content {
    gap: 36px;
  }

.how-we-help-item,
  .how-we-help-trigger {
    min-height: 96px;
  }

.how-we-help-item.is-active,
  .how-we-help-item.is-active .how-we-help-trigger {
    min-height: 278px;
  }

.how-we-help-trigger {
    grid-template-columns: minmax(0px, auto) 300px 46px;
    padding-block: 24px;
  }

.how-we-help-media {
    width: 300px;
  }

.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media {
    height: 230px;
  }

.how-we-help-media::before {
    left: 15px;
    top: 15px;
    width: 270px;
    height: 180px;
  }

.how-we-help-photo {
    left: 15px;
    top: 15px;
    width: 270px;
    height: 180px;
  }

.how-we-help-photo img {
    width: 270px;
    height: 180px;
  }
}

@media (max-width: 900px) {
.how-we-help {
    padding-block: 64px;
  }
.how-we-help.is-motion-managed { overflow-anchor: none; }

.how-we-help-item,
  .how-we-help-item.is-active,
  .how-we-help-trigger,
  .how-we-help-item.is-active .how-we-help-trigger {
    min-height: 94px;
  }

.how-we-help-trigger {
    height: auto;
    grid-template-columns: minmax(0px, auto) 46px;
    grid-template-rows: auto auto;
    column-gap: 20px;
    row-gap: 0px;
  }

.how-we-help-copy {
    grid-column: 1;
    grid-row: 1;
  }

.how-we-help-arrow {
    grid-column: 2;
    grid-row: 1;
  }

.how-we-help-media {
    grid-column: 1 / -1;
    grid-row: 2;
    width: 360px;
    max-width: 100%;
    margin-top: 0px;
    justify-self: center;
    transform: none;
  }

.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media {
    height: 250px;
    margin-top: 24px;
  }
}

@media (max-width: 767px) {
.how-we-help {
    padding-block: 48px;
  }

.how-we-help-content {
    gap: 32px;
  }

.how-we-help-media,
.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media {
    width: 340px;
  }
.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media { height: 236px; }

.how-we-help-media::before {
    left: 16px;
    top: 16px;
    width: 307px;
    height: 204px;
  }

.how-we-help-photo {
    left: 16px;
    top: 16px;
    width: 307px;
    height: 204px;
  }

.how-we-help-photo img {
    width: 307px;
    height: 204px;
  }
}

@media (max-width: 479px) {
.how-we-help {
    padding-block: 40px;
  }

.how-we-help-content {
    gap: 28px;
  }

.how-we-help-eyebrow {
    gap: 12px;
  }

.how-we-help-eyebrow::before {
    flex-basis: 32px;
  }

.how-we-help-item,
  .how-we-help-item.is-active,
  .how-we-help-trigger,
  .how-we-help-item.is-active .how-we-help-trigger {
    min-height: 86px;
  }

.how-we-help-trigger {
    grid-template-columns: minmax(0px, auto) 42px;
    column-gap: 14px;
    padding-block: 20px;
  }

.how-we-help-arrow {
    width: 42px;
    height: 42px;
    border-radius: 21px;
  }

.how-we-help:not(.is-enhanced) .how-we-help-copy,
.how-we-help-item.is-active .how-we-help-copy {
    gap: 12px;
  }

.how-we-help-media,
.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media {
    width: 312px;
  }
.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media {
    height: 220px;
    margin-top: 20px;
  }

.how-we-help-media::before {
    width: 280px;
    height: 186px;
  }

.how-we-help-photo {
    width: 280px;
    height: 186px;
  }

.how-we-help-photo img {
    width: 280px;
    height: 186px;
  }
}

@media (max-width: 375px) {
.how-we-help-trigger {
    grid-template-columns: minmax(0px, auto) 40px;
    column-gap: 12px;
  }

.how-we-help-arrow {
    width: 40px;
    height: 40px;
    border-radius: 20px;
  }

.how-we-help-media,
.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media {
    width: 280px;
  }
.how-we-help:not(.is-enhanced) .how-we-help-media,
.how-we-help-item.is-active .how-we-help-media { height: 200px; }

.how-we-help-media::before {
    width: 248px;
    height: 165px;
  }

.how-we-help-photo {
    width: 248px;
    height: 165px;
  }

.how-we-help-photo img {
    width: 248px;
    height: 165px;
  }
}

@media (prefers-reduced-motion: reduce) {
.how-we-help-item,
  .how-we-help-trigger,
  .how-we-help-copy,
  .how-we-help-item-body,
  .how-we-help-media,
  .how-we-help-arrow,
  .how-we-help-arrow img {
    transition: none;
  }

.how-we-help-item.is-active .how-we-help-item-body,
  .how-we-help-item.is-active .how-we-help-media {
    transition: none;
  }
}

@media (max-width: 767px) { .header-enhanced .primary-nav { padding-inline: 24px; } }
@media (max-width: 479px) { .header-enhanced .primary-nav { padding: 12px 20px; } }
@media (max-width: 375px) { .header-enhanced .primary-nav { padding-inline: 16px; } }
@media (prefers-reduced-motion: reduce) { .menu-icon > span { transition: none; } }

/* Keep the shared prefooter portrait centered on narrow viewports. */
@media (max-width: 767px) { body .prefooter .prefooter-photo { left: 50%; right: auto; justify-self: auto; translate: -50% 0px; } }

/* Page-owned fill frames must not inherit the centered fixed-photo layout. */
@media (max-width: 767px) {
  body .prefooter--book .prefooter-photo,
  body .prefooter--how-we-help .prefooter-photo,
  body .prefooter--change-transition .prefooter-photo {
    left: 0px;
    right: 0px;
    width: 100%;
    height: 100%;
    translate: 0px 0px;
  }
}

/* Keep the shared long prefooter CTA readable on one line across mobile widths. */
@media (max-width: 735px) {
  .prefooter .button { max-width: 100%; padding-inline: 12px; font-size: 14px; white-space: nowrap; overflow-wrap: normal; word-break: normal; }
}

@media (max-width: 399px) {
  .prefooter .button { padding-inline: 8px; font-size: 13px; }
}

@media (max-width: 333px) {
  .prefooter .button { padding-inline: 4px; font-size: 12px; }
}

/* Smooth shared sticky header. The logo viewport and its oversized crop scale together. */
.header-sticky {
  position: sticky;
  z-index: 40;
  top: 0px;
  transition: background-color 320ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 320ms cubic-bezier(0.22, 1, 0.36, 1);
}
.header-sticky.site-header--overlay {
  position: fixed;
  width: 100%;
}
.header-sticky .header-inner,
.header-sticky .header-brand,
.header-sticky .header-brand img,
.header-sticky .primary-nav,
.header-sticky .header-cta,
.header-sticky .menu-toggle {
  transition-duration: 320ms;
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
.header-sticky .header-inner { transition-property: min-height; }
.header-sticky .header-brand { transition-property: width, height, margin-top; }
.header-sticky .header-brand img { transition-property: width, height, left, top; }
.header-sticky .primary-nav,
.header-sticky .header-cta,
.header-sticky .menu-toggle { transition-property: margin, align-self; }
.header-sticky.is-compact {
  box-shadow: 0px 8px 24px rgba(5, 12, 42, 0.18);
}
.header-sticky.site-header--overlay.is-compact { background: var(--color-surface-dark); }
.header-sticky.is-compact .header-inner {
  grid-template-columns: minmax(120px, 1fr) max-content minmax(120px, 1fr);
  align-items: center;
  min-height: 84px;
}
.header-sticky.is-compact .header-brand {
  width: 27.402px;
  height: 70px;
  margin-top: 0px;
}
.header-sticky.is-compact .header-brand img {
  width: 99.645px;
  height: 99.645px;
  left: -36.246px;
  top: -14.819px;
}
.header-sticky.is-compact .primary-nav,
.header-sticky.is-compact .header-cta {
  align-self: center;
  margin-top: 0px;
}

body.admin-bar .header-sticky { top: 32px; }

@media (max-width: 900px) {
  .header-sticky,
  .header-sticky.site-header--overlay {
    position: sticky;
    inset: auto;
    top: 0px;
  }
  .header-sticky.site-header--overlay { background: var(--color-surface-dark); }
  html.navigation-open .header-sticky {
    position: fixed;
    right: 0px;
    left: 0px;
    width: 100%;
  }
  .header-sticky.header-enhanced .primary-nav {
    align-self: stretch;
    grid-column: auto;
    grid-row: auto;
  }
  .header-sticky.is-compact .header-inner {
    grid-template-columns: minmax(0px, 1fr) 120px 76px;
    column-gap: 20px;
    min-height: 76px;
  }
  .header-sticky.is-compact .header-brand {
    width: 23.488px;
    height: 60px;
  }
  .header-sticky.is-compact .header-brand img {
    width: 85.41px;
    height: 85.41px;
    left: -31.068px;
    top: -12.702px;
  }
}

@media (max-width: 782px) {
  body.admin-bar .header-sticky { top: 46px; }
}

@media (max-width: 479px) {
  .header-sticky.is-compact .header-inner {
    grid-template-columns: minmax(0px, 1fr) 110px 68px;
    column-gap: 12px;
    min-height: 72px;
  }
  .header-sticky.is-compact .header-brand {
    width: 21.53px;
    height: 55px;
  }
  .header-sticky.is-compact .header-brand img {
    width: 78.293px;
    height: 78.293px;
    left: -28.479px;
    top: -11.643px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .header-sticky,
  .header-sticky .header-inner,
  .header-sticky .header-brand,
  .header-sticky .header-brand img,
  .header-sticky .primary-nav,
  .header-sticky .header-cta,
  .header-sticky .menu-toggle { transition: none; }
}

/* Give decorated labels their owner's available width in Firefox as well as Chromium. */
body .type-eyebrow { width: 100%; min-width: 0px; white-space: nowrap; }
/* Keep the original visual alignment when a flex row now fills its owner. */
body .what-we-build-eyebrow,
body .impactful-performance-eyebrow,
body .start-resources-eyebrow,
body .book-coming-next-heading .challenge-eyebrow,
body .book-from-ideas-heading .challenge-eyebrow,
body .challenges-reality-eyebrow,
body .pressure-effects-eyebrow,
body .from-reaction-eyebrow,
body .contact-heading .challenge-eyebrow,
body .error-404-kicker,
body .areas-of-focus-header .how-we-help-eyebrow,
body .leadership-transformation-eyebrow { justify-content: center; }
body .about-why-work-matters-header .leadership-test-eyebrow,
body .about-experience-system-header .leadership-test-eyebrow { justify-content: flex-start; }
body .type-eyebrow > span { flex: 0 0 auto; min-width: 0px; white-space: nowrap; }
body .type-eyebrow::before,
body .type-eyebrow::after { flex-shrink: 0; }
body .prefooter--resources .prefooter-content { width: 100%; width: stretch; }
/* Long service labels retain readable wrapping only when their real content requires it. */
@media (max-width: 479px) {
  body .change-test-eyebrow { gap: 8px; white-space: normal; }
  body .change-test-eyebrow::before { flex-basis: 16px; width: 16px; }
}
@media (max-width: 375px) {
  body .about-leadership-reality-header .challenge-eyebrow,
  body .challenges-stretched .leadership-test-eyebrow,
  body .old-patterns .from-reaction-eyebrow,
  body .closing-quote-eyebrow,
  body .change-test-eyebrow { gap: 8px; }
  body .about-leadership-reality-header .challenge-eyebrow::before,
  body .challenges-stretched .leadership-test-eyebrow::before,
  body .old-patterns .from-reaction-eyebrow::before,
  body .closing-quote-eyebrow::before,
  body .change-test-eyebrow::before { flex-basis: 16px; width: 16px; }
}

/* Two-sentence prose groups on the approved marketing blocks only. */
.sentence-pair {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0px;
  max-width: 100%;
  gap: 12px;
}

@media (max-width: 479px) {
  .sentence-pair { gap: 10px; }
}
