:root {
  --bg: #f4efe7;
  --site-bg: var(--bg);
  --site-header-block-pad: 2px;
  --panel: rgba(255, 250, 243, 0.82);
  --panel-strong: #fff9f0;
  --text: #1f1b16;
  --muted: #6a5f53;
  --line: rgba(31, 27, 22, 0.12);
  --gold: #b8872f;
  --accent-gold: var(--gold);
  --red: #8f2d1e;
  --accent-red: var(--red);
  --coach-red: #8f2d1e;
  --coach-red-warm: #a33a1f;
  --coach-orange: #cf4f1f;
  --coach-orange-dark: #a93a1d;
  --coach-orange-hover: #dc5d25;
  --coach-gold-border: #d6a24b;
  --coach-cream-text: #ffffff;
  --blue: #244f73;
  --green: #315c43;
  --sand: #d7b377;
  --ink: #2f3148;
  --ink-navy: var(--ink);
  --shadow: 0 20px 60px rgba(52, 36, 24, 0.12);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 120px;
}

section[id],
#about,
#systems,
#featured-work,
#credentials,
#program-impact,
#media,
#playing-career,
#contact {
  scroll-margin-top: 120px;
}

body {
  margin: 0;
  color: var(--text);
  font-family: "Trebuchet MS", "Gill Sans", sans-serif;
  overflow-x: hidden;
  background:
    radial-gradient(circle at top left, rgba(184, 135, 47, 0.18), transparent 28%),
    radial-gradient(circle at top right, rgba(36, 79, 115, 0.12), transparent 24%),
    linear-gradient(180deg, #f6f0e5 0%, #f3ede4 38%, #efe6da 100%);
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Shared site canvas: these pages intentionally follow the homepage white outer webpage background. */
body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) {
  background: #ffffff;
}

html:has(body :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)),
body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) {
  overflow-x: clip;
}

main#top {
  --home-system-card-cream: #fff4e6;
  --home-accent-red: var(--coach-red);
  --home-accent-red-warm: var(--coach-red-warm);
  --home-accent-orange: var(--coach-orange);
  --home-accent-orange-dark: var(--coach-orange-dark);
  --home-accent-orange-hover: var(--coach-orange-hover);
  --home-accent-gold-border: var(--coach-gold-border);
  --home-accent-cream-text: var(--coach-cream-text);
  --section-eyebrow-color: var(--home-accent-red);
  --home-proof-pill-bg: linear-gradient(180deg, #fffaf1 0%, #f7ead8 100%);
  --home-proof-pill-border-width: 1px;
  --home-proof-pill-border: rgba(214, 162, 75, 0.58);
  --home-proof-pill-main: #111827;
  --home-proof-pill-label: #5f4a32;
  --home-card-pill-bg: #fffefa;
  --home-card-pill-border: rgba(32, 32, 32, 0.12);
  --home-card-pill-color: #111827;
  --home-card-pill-hover-bg: #fff4df;
  --home-card-pill-hover-border: rgba(184, 128, 45, 0.45);
  --home-card-pill-hover-color: var(--home-accent-orange-dark);
  --home-cta-bg: #d95a24;
  --home-cta-bg-hover: #d95a24;
  --home-cta-color: #ffffff;
  --home-cta-border: #d95a24;
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome {
  background: var(--home-system-card-cream, #fff4e6);
}

.page-shell {
  width: min(1200px, calc(100% - 32px));
  margin: 0 auto;
  padding-bottom: 0;
}

.site-chrome {
  --site-chrome-width: 100vw;
}

.site-header.site-chrome,
.site-footer.site-chrome {
  width: var(--site-chrome-width);
  max-width: none;
  margin-left: calc(50% - (var(--site-chrome-width) * 0.5));
  margin-right: calc(50% - (var(--site-chrome-width) * 0.5));
}

main {
  width: 100%;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 0;
  padding: 8px max(26px, calc((100vw - 1200px) / 2 + 18px)) 8px max(18px, calc((100vw - 1200px) / 2 + 18px));
  border: 1px solid var(--line);
  border-right: 0;
  border-left: 0;
  border-radius: 0;
  backdrop-filter: blur(16px) saturate(1.05);
  -webkit-backdrop-filter: blur(16px) saturate(1.05);
  background: rgba(255, 255, 255, 0.5);
  box-shadow: none;
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: inherit;
  text-decoration: none;
}

.brand-mark {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
  font-weight: 700;
  background: var(--red);
}

.brand-copy {
  display: inline-flex;
  align-items: center;
  line-height: 1;
}

.brand-copy strong,
.site-nav a,
.hero h1,
.section-heading h2,
.story-card h3,
.system-card h3,
.quote-panel h3,
.achievement-card strong {
  font-family: Georgia, "Palatino Linotype", serif;
}

.brand-copy small {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.2;
}

.brand-copy strong {
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1;
}

.site-header .brand-copy {
  display: none;
}

.site-nav {
  display: flex;
  flex-wrap: nowrap;
  gap: 16px;
  align-items: center;
  transform: none;
}

.site-nav a {
  color: #100d0a;
  text-decoration: none;
  font-size: 0.98rem;
  font-weight: 500;
  white-space: nowrap;
}

.site-nav-item {
  display: flex;
  align-items: center;
}

.featured-nav-dropdown,
.systems-nav-dropdown,
.gallery-nav-dropdown {
  display: none;
}

.hero,
.section{
  margin-top: 28px;
}

.site-header,
.hero,
.section,
.site-footer {
  width: 100%;
}

.site-header + main .hero{
  margin-top: 22px;
}

.hero {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 28px;
  align-items: center;
  padding: 36px 42px 22px;
  border: 1px solid var(--line);
  border-radius: 34px;
  background: linear-gradient(135deg, rgba(255, 248, 237, 0.92), rgba(246, 236, 219, 0.76));
  box-shadow: var(--shadow);
}

.eyebrow {
  margin: 0 0 12px;
  color: var(--red);
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.76rem;
  font-weight: 700;
}

.section-heading .eyebrow {
  margin-bottom: 2px;
}

main#top .section-heading h2 {
  margin-top: 1px;
  font-size: 25px;
  line-height: 27px;
}

main#top .section-heading .eyebrow {
  font-size: 12.25px;
  line-height: 15px;
}

.hero h1 {
  margin: 0;
  font-size: clamp(2.9rem, 5.2vw, 4.45rem);
  line-height: 0.98;
  max-width: none;
  white-space: nowrap;
}

.hero-text {
  max-width: 720px;
  margin: 22px 0 0;
}

.hero-text,
.section-intro,
.copy-panel p,
.story-card p,
.testimonial-card p,
.system-card p,
.innovation-panel p,
.library-card p {
  color: var(--muted);
  line-height: 1.65;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 999px;
  cursor: pointer;
  text-decoration: none;
  font-weight: 700;
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

.button:hover,
.button:focus-visible {
  transform: translateY(-2px);
}

.button-primary {
  border-color: #d95a24;
  background: #d95a24;
  background-image: none;
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
  box-shadow: none;
  text-shadow: none;
  filter: none;
  opacity: 1;
  mix-blend-mode: normal;
}

.button-secondary {
  color: var(--text);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.58);
}

.hero-button-equal {
  width: 100%;
}

.button-small {
  min-height: 40px;
  padding: 0 14px;
  font-size: 0.9rem;
}

main#top .button-primary {
  border: 1px solid #d95a24;
  background: #d95a24;
  background-image: none;
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
  box-shadow: none;
  text-shadow: none;
  filter: none;
  opacity: 1;
  mix-blend-mode: normal;
}

main#top .button-primary:hover,
main#top .button-primary:focus-visible {
  border-color: #d95a24;
  background: #d95a24;
  background-image: none;
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
  box-shadow: none;
  text-shadow: none;
  filter: none;
  opacity: 1;
  mix-blend-mode: normal;
}

main#top .button-secondary,
main#top .card-actions a:not(.button-primary),
main#top .system-card .library-actions a:not(.button-primary),
main#top .document-actions .button-secondary {
  border: 1px solid var(--home-card-pill-border);
  background: var(--home-card-pill-bg);
  color: var(--home-card-pill-color);
}

main#top .button-secondary:hover,
main#top .button-secondary:focus-visible,
main#top .card-actions a:not(.button-primary):hover,
main#top .card-actions a:not(.button-primary):focus-visible,
main#top .system-card .library-actions a:not(.button-primary):hover,
main#top .system-card .library-actions a:not(.button-primary):focus-visible,
main#top .document-actions .button-secondary:hover,
main#top .document-actions .button-secondary:focus-visible {
  border-color: var(--home-card-pill-hover-border);
  background: var(--home-card-pill-hover-bg);
  color: var(--home-card-pill-hover-color);
}
.hero-mobile-credentials {
  display: none;
}
   .hero-pill-main{
  max-width: 100%;
  margin-bottom: 0;
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: clamp(0.72rem, 2.75vw, 1.06rem);
  font-variant-numeric: lining-nums;
  font-feature-settings: "lnum" 1;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

@media (min-width: 1025px) {
  .hero {
    grid-template-columns: minmax(0, 1fr) clamp(330px, 33vw, 410px);
    grid-template-areas:
      "copy portrait"
      "stats stats";
    gap: 14px 34px;
    align-items: center;
    padding: 26px 42px;
  }
}
.impact-grid article,
.story-card,
.system-card,
.library-card,
.gallery-card,
.copy-panel,
.quote-panel {
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--panel);
  box-shadow: var(--shadow);
}

.impact-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 18px;
}

.impact-grid article strong {
  display: block;
  margin-bottom: 8px;
  color: var(--red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.65rem;
  line-height: 1.05;
}

.impact-grid article span {
  color: var(--muted);
  line-height: 1.45;
}

.section {
  padding: 34px;
  border: 1px solid var(--line);
  border-radius: 34px;
  background: rgba(255, 248, 240, 0.58);
}

.section-split .split-layout {
  display: grid;
  gap: 20px;
}

.split-layout {
  grid-template-columns: 1.1fr 0.9fr;
}

.portfolio-matters-grid {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 390px);
  gap: 22px;
  align-items: stretch;
}

.portfolio-matters-card,
.credentials-card {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.portfolio-matters-card {
  align-self: stretch;
  height: 100%;
  justify-content: flex-start;
  gap: 10px;
  padding: 28px;
}

.portfolio-matters-card .section-heading {
  margin: 0;
}

.portfolio-matters-card .section-heading .eyebrow {
  color: var(--red);
}

.portfolio-matters-card .section-heading h2 {
  margin-bottom: 0;
}

.portfolio-matters-card p {
  max-width: 780px;
  margin: 0;
  font-size: 1.02rem;
  line-height: 1.58;
  text-wrap: pretty;
}

.portfolio-value-list {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: space-between;
  gap: 0;
  padding-top: 14px;
  border-top: 1px solid rgba(158, 111, 53, 0.16);
}

.portfolio-value-list article {
  position: relative;
  padding-left: 16px;
}

.portfolio-value-list article::before {
  position: absolute;
  top: 2px;
  bottom: 3px;
  left: 0;
  width: 3px;
  border-radius: 999px;
  background: rgba(184, 135, 47, 0.7);
  content: "";
}

.portfolio-value-list h3 {
  margin: 0 0 4px;
  color: var(--text);
  font-size: 0.98rem;
  line-height: 1.2;
}

.portfolio-value-list p {
  font-size: 0.94rem;
  line-height: 1.42;
}

.portfolio-highlights {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}

.portfolio-highlights h3 {
  margin: 0 0 10px;
  color: var(--text);
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: 1.05rem;
}

.portfolio-highlights ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px 16px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.portfolio-highlights li {
  position: relative;
  padding-left: 18px;
  color: var(--muted);
  line-height: 1.4;
}

.portfolio-highlights li::before {
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--gold);
  content: "";
  transform: translateY(-50%);
}

.credentials-card {
  align-self: start;
  height: auto;
  justify-content: flex-start;
  padding: 18px 20px 12px;
}

.credentials-card h3 {
  margin-bottom: 8px;
}

.quote-panel.credentials-card h3 {
  margin-bottom: 8px;
}

.quote {
  margin-top: 0;
  font-size: 1.4rem;
  line-height: 1.35;
  font-family: Georgia, "Palatino Linotype", serif;
}

.quote-panel h3 {
  margin: 0 0 14px;
  font-size: 1.45rem;
}

.quote-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 9px;
  align-items: flex-start;
}

.credential-hub {
  display: grid;
  gap: 0;
}

.credential-group {
  margin-top: 8px;
}

.credential-group:first-of-type {
  margin-top: 0;
}

.credential-group h4 {
  margin: 0 0 3px;
  color: var(--blue);
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: 0.96rem;
}

.quote-grid .button {
  justify-content: flex-start;
  min-height: 38px;
  white-space: normal;
  text-align: left;
}

.credential-link-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.credential-link-grid .button {
  justify-content: center;
  min-height: 44px;
  padding-inline: 16px;
  text-align: center;
  white-space: normal;
}

.credential-link-wide {
  grid-column: auto;
}

.credentials-card .quote-grid .button {
  min-height: 34px;
  padding-inline: 12px;
  font-size: 0.84rem;
  line-height: 1.2;
}

.credentials-card .credential-group:nth-of-type(3) .quote-grid {
  gap: 5px 6px;
}

.credentials-card .credential-group:nth-of-type(3) .quote-grid .button {
  flex: 1 1 auto;
  justify-content: center;
  padding-inline: 10px;
  text-align: center;
}

.credential-static {
  cursor: default;
  opacity: 0.82;
}

.credential-pill[href],
.credential-pill.clickable,
.core-credentials a,
a.credential-static[href] {
  cursor: pointer;
}

.systems-grid,
.story-grid,
.testimonial-grid,
.library-grid,
.gallery-grid {
  display: grid;
  gap: 18px;
}

.systems-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.story-grid,
.testimonial-grid,
.library-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.library-section .library-grid {
  grid-auto-rows: 1fr;
  row-gap: 14px;
  margin-top: 4px;
}

.portfolio-systems-intro {
  width: 100%;
  max-width: none;
  margin: -4px 0 14px;
  color: var(--muted);
  font-size: 0.98rem;
  line-height: 1.45;
}

.system-card {
  position: relative;
  overflow: hidden;
  display: flex;
  min-height: 455px;
  flex-direction: column;
  padding: 14px;
  border-color: rgba(31, 27, 22, 0.1);
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.9), rgba(255, 248, 239, 0.78)),
    var(--panel);
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    border-color 180ms ease,
    background 180ms ease;
}

.system-card[id] {
  scroll-margin-top: 96px;
}

.system-card-link {
  position: absolute;
  z-index: 1;
  inset: 0;
  border-radius: inherit;
}

.system-card .library-actions {
  position: relative;
  z-index: 2;
}

.system-card:hover,
.system-card:focus-within {
  transform: translateY(-4px);
  border-color: rgba(184, 135, 47, 0.24);
  background:
    linear-gradient(180deg, rgba(255, 254, 251, 0.96), rgba(255, 249, 240, 0.84)),
    var(--panel-strong);
  box-shadow: 0 24px 58px rgba(52, 36, 24, 0.16);
}

.library-card-media {
  display: block;
  width: 100%;
  height: 188px;
  overflow: hidden;
  margin-bottom: 10px;
  border: 1px solid rgba(31, 27, 22, 0.08);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(36, 79, 115, 0.12), rgba(184, 135, 47, 0.12)),
    rgba(31, 27, 22, 0.08);
}

.library-card-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 220ms ease;
}

.system-card:hover .library-card-media img,
.system-card:focus-within .library-card-media img {
  transform: scale(1.025);
}

.library-card-media.is-missing {
  min-height: 188px;
}

.system-card h3 {
  max-width: 100%;
  min-height: 0;
  margin: 0 0 2px;
  line-height: 1.18;
}

.system-card p {
  margin: 0;
  min-width: 0;
  min-height: 1.45em;
  max-width: 100%;
  overflow: hidden;
  line-height: 1.45;
  text-overflow: ellipsis;
  text-wrap: pretty;
  white-space: nowrap;
}

.system-card .library-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-height: 76px;
  margin-top: auto;
  padding-top: 8px;
  align-content: flex-start;
  gap: 10px;
}

.system-card h3 + .library-card-media + .library-actions {
  margin-top: 0;
  padding-top: 0;
}

.system-card .library-type {
  width: fit-content;
  align-self: flex-start;
  justify-content: center;
  margin-bottom: 9px;
  padding: 6px 11px;
  border: 0;
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
  font-size: 0.74rem;
  box-shadow: 0 8px 20px rgba(143, 45, 30, 0.16);
}

.system-card[data-system-type="development"] .library-type {
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
}

.system-card[data-system-type="evaluation"] .library-type {
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
}

.system-card[data-system-type="dpat"] .library-type {
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
}

.system-card[data-system-type="operations"] .library-type {
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
}

.system-card[data-system-type="leadership"] .library-type {
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
}

.system-card[data-system-type="innovation"] .library-type {
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
}

.system-card .button-small {
  width: 100%;
  min-height: 40px;
  padding-inline: 8px;
  font-size: 0.86rem;
  line-height: 1.15;
  text-align: center;
  white-space: normal;
}

.system-card .button-secondary {
  border-color: rgba(31, 27, 22, 0.11);
  background: rgba(255, 253, 249, 0.74);
}

.system-card[data-system-type="innovation"] .library-actions {
  justify-content: flex-start;
}

.system-card::after {
  display: none;
}

.accent-gold::after {
  background: var(--gold);
}

.accent-red::after {
  background: var(--red);
}

.accent-blue::after {
  background: var(--blue);
}

.accent-green::after {
  background: var(--green);
}

.accent-sand::after {
  background: var(--sand);
}

.accent-ink::after {
  background: var(--ink);
}

.story-label,
.library-type {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 10px;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(36, 79, 115, 0.12);
  color: var(--blue);
  font-size: 0.8rem;
  font-weight: 700;
}

.innovation-panel {
  display: grid;
  grid-template-columns: minmax(190px, 240px) minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  min-height: 230px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255, 252, 247, 0.88), rgba(215, 179, 119, 0.18));
  box-shadow: var(--shadow);
}

.innovation-section .eyebrow,
.innovation-section .section-heading h2 {
  white-space: nowrap;
  overflow-wrap: normal;
}

.innovation-section .section-heading h2 {
  font-size: 25px;
  line-height: 27px;
}

.innovation-panel > div {
  align-self: center;
}

.innovation-panel .button {
  justify-self: end;
  white-space: nowrap;
}

.innovation-thumbnail {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 18px;
  cursor: pointer;
  background: #1f1b16;
}

.innovation-thumbnail img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.library-card h3 {
  margin: 4px 0 12px;
  line-height: 1.18;
}

.library-card.system-card h3 {
  min-height: 1.16em;
  margin: 0 0 10px;
  font-size: 0.83rem;
  line-height: 1.16;
  overflow-wrap: normal;
  text-wrap: balance;
  white-space: nowrap;
}

.library-card {
  display: flex;
  min-height: 270px;
  flex-direction: column;
  padding: 26px;
}

.library-card.system-card {
  min-height: 430px;
  height: 100%;
  padding: 14px;
}

.library-card p {
  margin: 0;
  text-wrap: pretty;
}

.testimonial-card,
.achievement-card {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--panel);
  box-shadow: var(--shadow);
}

.testimonial-card {
  display: flex;
  min-height: 168px;
  height: 100%;
  flex-direction: column;
  justify-content: space-between;
  gap: 10px;
  padding: 18px;
}

.testimonial-card p {
  margin: 0;
  font-size: 0.95rem;
}

.testimonial-card span,
.achievement-card span {
  color: var(--muted);
  line-height: 1.45;
}

.testimonial-card span {
  display: block;
  margin-top: 0;
  color: var(--red);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.2;
}

.testimonial-section .section-heading {
  max-width: 920px;
}

.testimonial-section .section-intro {
  max-width: 820px;
}

.achievement-card {
  appearance: none;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--panel);
  color: inherit;
  font: inherit;
  cursor: pointer;
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.achievement-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  background: #1f1b16;
}

.achievement-card strong,
.achievement-card span {
  display: block;
  padding-inline: 16px;
}

.achievement-card strong {
  padding-top: 16px;
  color: var(--text);
  font-size: 1rem;
  line-height: 1.2;
}

.achievement-card span {
  padding-top: 6px;
  padding-bottom: 16px;
  font-size: 0.92rem;
}

.achievement-card:hover,
.achievement-card:focus-visible {
  border-color: rgba(184, 135, 47, 0.44);
  box-shadow: 0 22px 64px rgba(52, 36, 24, 0.18);
  transform: translateY(-2px);
}

.achievement-card:focus-visible {
  outline: 3px solid rgba(184, 135, 47, 0.36);
  outline-offset: 4px;
}

.library-actions,
.contact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.library-actions {
  margin-top: auto;
  padding-top: 18px;
  gap: 9px;
}

.gallery-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gallery-card {
  width: 100%;
  appearance: none;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--line);
  background: var(--panel);
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  text-decoration: none;
}

.gallery-media {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  height: auto;
  overflow: hidden;
}

.gallery-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--img-x, 50%) var(--img-y, 50%);
  transform: scale(var(--img-zoom, 1));
  transform-origin: var(--img-x, 50%) var(--img-y, 50%);
}

/* ================================
   MEDIA GALLERY CROPS
   Desktop / Tablet / Mobile grouped by card
   ================================ */

/* Sideline leadership — DESKTOP / DEFAULT */
.gallery-card-sideline img {
  --img-x: 50%;
  --img-y: 67%;
  --img-zoom: 1;
}

/* Sideline leadership — TABLET / IPAD */
@media (max-width: 1024px) {
  .gallery-card-sideline img {
    --img-x: 50%;
    --img-y: 67%;
    --img-zoom: 1;
  }
}

/* Sideline leadership — MOBILE */
@media (max-width: 600px) {
  .gallery-card-sideline img {
    --img-x: 50%;
    --img-y: 66%;
    --img-zoom: 1;
  }
}

/* Team huddle — DESKTOP / DEFAULT */
.gallery-card-huddle img {
  --img-x: 50%;
  --img-y: 80%;
  --img-zoom: 1;
}

/* Team huddle — TABLET / IPAD */
@media (max-width: 1024px) {
  .gallery-card-huddle img {
    --img-x: 50%;
    --img-y: 72%;
    --img-zoom: 1;
  }
}

/* Team huddle — MOBILE */
@media (max-width: 600px) {
  .gallery-card-huddle img {
    --img-x: 50%;
    --img-y: 70%;
    --img-zoom: 1;
  }
}

/* Coaching Details — DESKTOP / DEFAULT */
.gallery-card-teaching img {
  --img-x: 50%;
  --img-y: 76%;
  --img-zoom: 1;
}

/* Coaching Details — TABLET / IPAD */
@media (max-width: 1024px) {
  .gallery-card-teaching img {
    --img-x: 50%;
    --img-y: 74%;
    --img-zoom: 1;
  }
}

/* Coaching Details — MOBILE */
@media (max-width: 600px) {
  .gallery-card-teaching img {
    --img-x: 50%;
    --img-y: 72%;
    --img-zoom: 1;
  }
}

/* Player Development — DESKTOP / DEFAULT */
.gallery-card-oncourt img {
  --img-x: 50%;
  --img-y: 56%;
  --img-zoom: 1;
}

/* Player Development — TABLET / IPAD */
@media (max-width: 1024px) {
  .gallery-card-oncourt img {
    --img-x: 50%;
    --img-y: 63%;
    --img-zoom: 1;
  }
}

/* Player Development — MOBILE */
@media (max-width: 600px) {
  .gallery-card-oncourt img {
    --img-x: 50%;
    --img-y: 62%;
    --img-zoom: 1;
  }
}

/* Team Celebration — DESKTOP / DEFAULT */
.gallery-card-celebration img {
  --img-x: 50%;
  --img-y: 25%;
  --img-zoom: 1;
}

/* Team Celebration — TABLET / IPAD */
@media (max-width: 1024px) {
  .gallery-card-celebration img {
    --img-x: 70%;
    --img-y: 15%;
    --img-zoom: 1;
  }
}

/* Team Celebration — MOBILE */
@media (max-width: 600px) {
  .gallery-card-celebration img {
    --img-x: 80%;
    --img-y: 15%;
    --img-zoom: 1;
  }
}

/* Championship Culture — DESKTOP / DEFAULT */
.gallery-card-culture img {
  --img-x: 50%;
  --img-y: 50%;
  --img-zoom: 1;
}

/* Championship Culture — TABLET / IPAD */
@media (max-width: 1024px) {
  .gallery-card-culture img {
    --img-x: 50%;
    --img-y: 50%;
    --img-zoom: 1;
  }
}

/* Championship Culture — MOBILE */
@media (max-width: 600px) {
  .gallery-card-culture img {
    --img-x: 50%;
    --img-y: 50%;
    --img-zoom: 1;
  }
}

.gallery-card figcaption,
.gallery-card > span:not(.gallery-media) {
  display: block;
  padding: 16px;
  color: var(--muted);
}

.gallery-card .gallery-media {
  padding: 0;
}

.gallery-card > .gallery-card-caption {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24px;
  align-items: center;
  gap: 8px;
}

.gallery-card > .gallery-card-caption > .gallery-card-title {
  min-width: 0;
  overflow: hidden;
  padding: 0;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gallery-card > .gallery-card-caption > .gallery-card-arrow {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 1px solid rgba(158, 111, 53, 0.32);
  border-radius: 999px;
  color: var(--red);
  background: rgba(255, 250, 243, 0.9);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1;
}

.gallery-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow);
}

.media-overlay {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(15, 12, 10, 0.82);
}

.media-overlay.is-open {
  display: flex;
}

.media-overlay.is-gallery-overlay,
.media-overlay.is-awards-overlay {
  --gallery-overlay-bottom-offset: 24px;
  --overlay-panel-padding: clamp(16px, 2.2vw, 26px);
  --overlay-content-gap: clamp(6px, 1.1vh, 10px);
  --overlay-thumb-width: clamp(88px, 9.6vw, 120px);
  --overlay-thumb-height: clamp(58px, 6.4vw, 80px);
}

.media-overlay-open {
  overflow: hidden;
}

.proof-modal-open {
  overflow: hidden;
}

.media-overlay-panel {
  position: relative;
  width: min(100%, 980px);
  max-height: min(calc(100vh - 48px), 820px);
  overflow: visible;
  padding: 26px;
  border: 1px solid rgba(255, 250, 243, 0.22);
  border-radius: 28px;
  background: rgba(31, 27, 22, 0.96);
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.44);
}

.media-overlay.is-gallery-overlay .media-overlay-panel {
  width: min(calc(100vw - 48px), 860px);
  height: min(calc(100vh - 32px), 760px);
  max-height: min(calc(100vh - 32px), 760px);
  overflow: hidden;
  padding: var(--overlay-panel-padding);
}

.media-overlay-content {
  display: grid;
  grid-template-areas:
    "eyebrow"
    "title"
    "counter"
    "viewer"
    "caption"
    "strip";
  grid-template-rows: auto auto auto auto auto auto;
  max-height: calc(100vh - 112px);
  gap: 12px;
  min-height: 0;
}

.media-overlay.is-gallery-overlay .media-overlay-content {
  grid-template-areas:
    "eyebrow"
    "title"
    "counter"
    "viewer"
    "caption"
    "strip";
  grid-template-rows: auto auto auto minmax(0, 1fr) minmax(1.4em, auto) minmax(calc(var(--overlay-thumb-height) + 20px), auto);
  height: 100%;
  max-height: none;
  gap: var(--overlay-content-gap);
  overflow: hidden;
}

.media-overlay-content .eyebrow {
  grid-area: eyebrow;
  margin-bottom: 0;
  color: var(--sand);
}

.media-overlay-content h2 {
  grid-area: title;
  margin: 0;
  color: #fff7eb;
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  line-height: 1.06;
}

.media-overlay-viewer {
  grid-area: viewer;
  position: relative;
  display: grid;
  place-items: center;
  min-height: 220px;
  height: clamp(260px, 46vh, 500px);
  max-height: calc(100vh - 350px);
  overflow: hidden;
  border-radius: 20px;
  background: transparent;
}

.media-overlay-viewer > img,
.media-overlay-viewer > video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  background: transparent;
  object-fit: contain;
  object-position: center center;
}

.media-overlay.has-multiple-media .media-overlay-viewer > img {
  cursor: pointer;
}

.media-overlay.is-overlay-portrait:not(.is-awards-overlay) .media-overlay-viewer {
  height: clamp(340px, 60vh, 620px);
  max-height: calc(100vh - 280px);
}

.media-overlay.is-gallery-overlay .media-overlay-viewer {
  justify-self: center;
  align-self: stretch;
  width: 100%;
  min-height: 0;
  height: 100%;
  max-height: 100%;
}

.media-overlay.is-gallery-overlay.is-overlay-portrait:not(.is-awards-overlay) .media-overlay-viewer {
  width: 100%;
  height: 100%;
  max-height: 100%;
}

.media-overlay.is-awards-overlay .media-overlay-panel {
  width: min(100%, 980px);
  height: min(calc(100vh - 48px), 820px);
  max-height: min(calc(100vh - 48px), 820px);
  overflow: hidden;
  padding: var(--overlay-panel-padding);
  background: rgba(31, 27, 22, 0.96);
  color: #fff7eb;
}

.media-overlay.is-awards-overlay.is-award-landscape .media-overlay-panel {
  width: min(100%, 980px);
}

.media-overlay.is-awards-overlay.is-award-portrait .media-overlay-panel {
  width: min(100%, 980px);
}

.media-overlay.is-awards-overlay .media-overlay-content .eyebrow,
.media-overlay.is-awards-overlay .media-overlay-counter {
  color: var(--sand);
}

.media-overlay.is-awards-overlay .media-overlay-content h2 {
  color: #fff7eb;
}

.media-overlay.is-awards-overlay .media-overlay-content {
  grid-template-rows: auto auto auto minmax(0, 1fr) minmax(1.4em, auto) minmax(calc(var(--overlay-thumb-height) + 36px), auto);
  height: 100%;
  max-height: none;
  gap: var(--overlay-content-gap);
  overflow: hidden;
}

.media-overlay.is-awards-overlay .media-overlay-viewer {
  min-height: 0;
  height: 100%;
  max-height: 100%;
  overflow: visible;
  border-radius: 0;
  background: transparent;
}

.award-slide {
  display: block;
  overflow: hidden;
  width: auto;
  height: 100%;
  max-width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 18px;
  background: transparent;
}

.award-slide--landscape {
  height: 104%;
  aspect-ratio: 4 / 3;
}

.award-slide--portrait {
  width: auto;
  height: 100%;
  aspect-ratio: 3 / 4;
}

.award-slide img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center;
  background: transparent;
}

.award-slide--landscape img {
  object-fit: contain;
}

.media-overlay.is-awards-overlay .media-overlay-strip-shell {
  --awards-overlay-thumb-gap: clamp(14px, 1.4vw, 18px);
  box-sizing: border-box;
  grid-template-columns: minmax(0, 1fr);
  justify-self: center;
  width: min(100%, calc((var(--overlay-thumb-width) * 5) + (var(--awards-overlay-thumb-gap) * 4) + 8px));
  gap: 0;
  overflow: hidden;
  padding: 0;
  background: transparent;
}

.media-overlay.is-awards-overlay .media-overlay-strip {
  min-height: calc(var(--overlay-thumb-height) + 14px);
  padding: 2px 2px 8px;
  gap: var(--awards-overlay-thumb-gap);
  scrollbar-color: rgba(255, 247, 235, 0.36) transparent;
}

.media-overlay.is-awards-overlay .media-overlay-caption {
  color: rgba(255, 247, 235, 0.78);
}

.media-overlay.is-awards-overlay .media-overlay-thumb-nav {
  display: none;
}

.media-overlay-caption {
  grid-area: caption;
  margin: 0;
  color: rgba(255, 247, 235, 0.78);
  line-height: 1.5;
}

.media-overlay.is-gallery-overlay .media-overlay-caption {
  min-height: 1.4em;
  max-height: 3em;
  overflow: auto;
  padding-right: 4px;
}

.media-overlay-counter {
  grid-area: counter;
  margin: -8px 0 0;
  color: var(--sand);
  font-size: 0.86rem;
  font-weight: 700;
}

.media-overlay-counter[hidden] {
  display: none;
}

.media-overlay-strip-shell {
  grid-area: strip;
  align-self: end;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 38px;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}

.media-overlay-strip-shell[hidden] {
  display: none;
}

.media-overlay-strip-shell .media-overlay-strip {
  grid-area: auto;
}

.media-overlay--single-item .media-overlay-strip-shell,
.media-overlay-strip-shell.is-single-item {
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
}

.media-overlay-thumb-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 48px;
  padding: 0;
  border: 1px solid rgba(255, 247, 235, 0.28);
  border-radius: 999px;
  color: #fff7eb;
  cursor: pointer;
  background: rgba(255, 247, 235, 0.12);
  font-size: 1.8rem;
  line-height: 1;
  text-align: center;
}

.media-overlay-thumb-nav[hidden] {
  display: none;
}

.media-overlay-thumb-nav:hover,
.media-overlay-thumb-nav:focus-visible {
  border-color: rgba(184, 135, 47, 0.82);
  background: rgba(184, 135, 47, 0.22);
  outline: none;
}

.media-overlay-strip {
  display: flex;
  gap: 10px;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  padding: 4px 2px 12px;
  overscroll-behavior-inline: contain;
  scrollbar-color: rgba(255, 247, 235, 0.36) transparent;
  touch-action: pan-x;
  -webkit-overflow-scrolling: touch;
}

.media-overlay.is-gallery-overlay .media-overlay-strip {
  min-height: calc(var(--overlay-thumb-height) + 14px);
  padding: 2px 2px 8px;
}

.media-overlay.is-gallery-overlay .media-overlay-strip-shell .media-overlay-strip,
.media-overlay.is-awards-overlay .media-overlay-strip-shell .media-overlay-strip {
  min-height: calc(var(--overlay-thumb-height) + 14px);
  padding: 2px 2px 8px;
}

.media-overlay-strip[hidden] {
  display: none;
}

.media-overlay-strip.has-single-thumb {
  justify-content: center;
  width: max-content;
  min-width: var(--overlay-thumb-width, 120px);
  max-width: 100%;
  overflow-x: hidden;
}

.media-overlay-strip-shell.is-single-item .media-overlay-strip {
  justify-self: center;
  width: max-content;
  min-width: var(--overlay-thumb-width, 120px);
  max-width: 100%;
}

.media-overlay-strip-shell.is-single-item .media-thumb {
  flex: 0 0 var(--overlay-thumb-width, 120px);
  width: var(--overlay-thumb-width, 120px);
  height: var(--overlay-thumb-height, 80px);
}

.media-thumb {
  position: relative;
  flex: 0 0 var(--overlay-thumb-width, 120px);
  width: var(--overlay-thumb-width, 120px);
  height: var(--overlay-thumb-height, 80px);
  overflow: hidden;
  padding: 0;
  border: 2px solid rgba(255, 247, 235, 0.2);
  border-radius: 12px;
  cursor: pointer;
  background: rgba(255, 247, 235, 0.08);
}

.media-thumb.is-active {
  border-color: var(--gold);
  box-shadow: 0 0 0 2px rgba(184, 135, 47, 0.28);
}

.media-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
  object-fit: cover;
  image-rendering: auto;
  transform: translateZ(0);
  backface-visibility: hidden;
}

.media-thumb-video {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: #fff7eb;
  font-size: 0.82rem;
  font-weight: 700;
}

.media-thumb-video-badge {
  position: absolute;
  right: 5px;
  bottom: 5px;
  width: auto;
  height: auto;
  padding: 2px 5px;
  border-radius: 999px;
  background: rgba(31, 27, 22, 0.78);
  font-size: 0.68rem;
}

.media-overlay-close,
.media-overlay-nav {
  border: 1px solid rgba(255, 247, 235, 0.28);
  color: #fff7eb;
  cursor: pointer;
  background: rgba(255, 247, 235, 0.12);
}

.media-overlay-close {
  position: absolute;
  top: 16px;
  right: 16px;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  font-size: 1.4rem;
  line-height: 1;
}

.proof-modal {
  position: fixed;
  inset: 0;
  z-index: 105;
  display: none;
  align-items: center;
  justify-content: center;
  padding: clamp(14px, 4vw, 28px);
  background: rgba(15, 12, 10, 0.82);
}

.proof-modal.is-open {
  display: flex;
}

.proof-modal-panel {
  position: relative;
  width: min(100%, 560px);
  max-height: calc(100vh - 32px);
  overflow: auto;
  padding: clamp(22px, 4vw, 32px);
  border: 1px solid rgba(224, 206, 174, 0.8);
  border-radius: 18px;
  background: #fffaf1;
  color: var(--text);
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.34);
}

.proof-modal-close {
  position: absolute;
  top: 10px;
  right: 10px;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(45, 36, 28, 0.18);
  border-radius: 999px;
  background: #ffffff;
  color: var(--text);
  cursor: pointer;
  font-size: 1.35rem;
  line-height: 1;
}

.proof-modal-close:hover,
.proof-modal-close:focus-visible {
  border-color: rgba(230, 85, 36, 0.5);
  color: var(--orange);
  outline: none;
}

.proof-modal-content {
  display: grid;
  gap: 12px;
  padding-right: 24px;
}

.proof-modal-content .eyebrow {
  margin-bottom: 0;
}

.proof-modal-content h2 {
  margin: 0;
  color: var(--ink);
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: clamp(1.8rem, 5vw, 2.45rem);
  line-height: 1.05;
}

.proof-modal-stats,
.proof-modal-context {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.proof-modal-stats {
  color: var(--text);
  font-weight: 700;
}

.proof-modal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 8px;
}

.proof-modal-actions[hidden] {
  display: none;
}

.proof-modal-actions .button {
  min-height: 44px;
}

@media (max-width: 543px) {
  .proof-modal-panel {
    padding: 22px 18px;
  }

  .proof-modal-content {
    padding-right: 18px;
  }

  .proof-modal-actions {
    display: grid;
  }

  .proof-modal-actions .button {
    width: 100%;
  }
}

.media-overlay-nav {
  position: absolute;
  z-index: 2;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 58px;
  padding: 0;
  border-radius: 999px;
  font-size: 2.4rem;
  line-height: 1;
  text-align: center;
  transform: translateY(-50%);
}

.media-overlay-nav::before,
.media-overlay-nav::after,
.media-overlay-thumb-nav::before,
.media-overlay-thumb-nav::after {
  content: none !important;
}

.media-overlay-prev {
  left: 14px;
}

.media-overlay-next {
  right: 14px;
}

.media-overlay-nav[hidden] {
  display: none;
}

@media (max-width: 1024px) {
  .media-overlay.is-gallery-overlay {
    align-items: center;
    padding-bottom: 12px;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  .media-overlay.is-gallery-overlay,
  .media-overlay.is-awards-overlay {
    --overlay-panel-padding: clamp(14px, 2vw, 22px);
    --overlay-thumb-width: clamp(78px, 10.5vw, 112px);
    --overlay-thumb-height: clamp(52px, 7vw, 74px);
    padding: 12px;
  }

  .media-overlay.is-gallery-overlay .media-overlay-panel {
    width: min(calc(100vw - 24px), 860px);
    height: min(calc(100vh - 24px), 760px);
    max-height: min(calc(100vh - 24px), 760px);
  }

  .media-overlay.is-gallery-overlay .media-overlay-content h2 {
    font-size: clamp(1.55rem, 3.6vw, 2.15rem);
  }

  .media-overlay.is-gallery-overlay .media-overlay-nav {
    width: 44px;
    height: 52px;
    font-size: 2rem;
  }

  .media-overlay.is-gallery-overlay .media-overlay-prev {
    left: 10px;
  }

  .media-overlay.is-gallery-overlay .media-overlay-next {
    right: 10px;
  }
}

@media (min-width: 768px) and (max-height: 760px) {
  .media-overlay.is-gallery-overlay,
  .media-overlay.is-awards-overlay {
    --overlay-panel-padding: clamp(12px, 1.8vw, 20px);
    --overlay-content-gap: 6px;
    --overlay-thumb-width: clamp(72px, 9vw, 104px);
    --overlay-thumb-height: clamp(48px, 6vw, 68px);
    padding: 8px;
  }

  .media-overlay.is-gallery-overlay .media-overlay-panel {
    height: calc(100vh - 16px);
    max-height: calc(100vh - 16px);
  }

  .media-overlay.is-gallery-overlay .media-overlay-content .eyebrow {
    font-size: 0.7rem;
  }

  .media-overlay.is-gallery-overlay .media-overlay-content h2 {
    font-size: clamp(1.35rem, 3.2vw, 1.95rem);
  }

  .media-overlay.is-gallery-overlay .media-overlay-counter {
    margin-top: 0;
    font-size: 0.78rem;
  }

  .media-overlay.is-gallery-overlay .media-overlay-caption {
    max-height: 2.6em;
    font-size: 0.9rem;
    line-height: 1.3;
  }

  .media-overlay.is-gallery-overlay .media-overlay-strip {
    min-height: calc(var(--overlay-thumb-height) + 14px);
    padding-bottom: 6px;
  }
}
.credential-summary-card,
.credential-document-card {
  border: 1px solid rgba(31, 27, 22, 0.1);
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.9), rgba(255, 248, 239, 0.78)),
    var(--panel);
  box-shadow: 0 16px 38px rgba(52, 36, 24, 0.1);
}
.credential-card-label {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1;
}

.credential-card-label {
  padding: 6px 10px;
}
.credential-summary-card h3,
.credential-section h2,
.credential-document-card h3,
.credential-packet-cta h2 {
  font-family: Georgia, "Palatino Linotype", serif;
}

.credential-summary-section,
.credential-section,
.credential-packet-cta {
  margin-top: 28px;
}

.credential-summary-grid,
.credential-document-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.credential-summary-card,
.credential-document-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  border-radius: 24px;
}

.credential-summary-card {
  min-height: 210px;
  padding: 20px;
}

.credential-summary-card h3,
.credential-document-card h3 {
  margin: 12px 0 8px;
  line-height: 1.18;
}

.credential-summary-card p,
.credential-document-card p,
.credential-section-copy p,
.credential-section-intro,
.credential-packet-cta p {
  color: var(--muted);
  line-height: 1.58;
}

.credential-summary-card p,
.credential-document-card p {
  margin: 0;
}

.credential-summary-card .button,
.credential-document-card .credential-actions {
  margin-top: auto;
}

.credential-section,
.credential-packet-cta {
  padding: 34px;
  border: 1px solid var(--line);
  border-radius: 34px;
  background: rgba(255, 248, 240, 0.58);
  box-shadow: var(--shadow);
}

.credential-section-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.45fr);
  gap: 28px;
  align-items: stretch;
}

.credential-section-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
}

.credential-section-copy h2,
.credential-packet-cta h2 {
  margin: 0;
  font-size: clamp(1.9rem, 2.7vw, 2.45rem);
  line-height: 1.02;
}

.credential-section-copy p {
  max-width: 820px;
  margin: 18px 0 0;
}

.credential-section-intro {
  max-width: 960px;
  margin: 0 0 22px;
}

.credential-document-grid-compact {
  grid-template-columns: minmax(280px, 0.48fr);
}

.credential-document-card {
  min-height: 330px;
  padding: 18px;
}

.credential-feature-card {
  min-height: 100%;
}

.credential-preview {
  display: grid;
  min-height: 136px;
  gap: 8px;
  align-content: start;
  margin-bottom: 16px;
  padding: 18px;
  overflow: hidden;
  border: 1px solid rgba(184, 135, 47, 0.2);
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(255, 252, 247, 0.94), rgba(250, 237, 218, 0.78)),
    rgba(255, 250, 243, 0.86);
}

.credential-preview span {
  width: fit-content;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(36, 79, 115, 0.12);
  color: var(--blue);
  font-size: 0.7rem;
  font-weight: 800;
  text-transform: uppercase;
}

.credential-preview strong {
  color: var(--text);
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: clamp(1.16rem, 1.65vw, 1.5rem);
  line-height: 1.04;
}

.credential-preview i {
  display: block;
  height: 8px;
  border-radius: 999px;
  background: rgba(31, 27, 22, 0.09);
}

.credential-preview i:nth-of-type(2) {
  width: 78%;
}

.credential-preview i:nth-of-type(3) {
  width: 58%;
}

.credential-actions,
.credential-section-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.credential-actions {
  margin-top: 18px;
}

.credential-section-actions {
  margin-top: 18px;
}

.credential-actions .button {
  min-width: 132px;
}

.credential-packet-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  background:
    linear-gradient(135deg, rgba(255, 252, 247, 0.88), rgba(215, 179, 119, 0.18)),
    rgba(255, 248, 240, 0.7);
}

.credential-packet-cta p {
  max-width: 860px;
  margin: 18px 0 0;
}

.credential-packet-cta .credential-actions {
  display: grid;
  min-width: 260px;
  margin-top: 0;
}

.credential-packet-cta .button {
  width: 100%;
}

.featured-summary-section,
.featured-pillar,
.featured-strategy-panel,
.featured-final-cta {
  margin-top: 0;
}

.featured-summary-grid,
.featured-value-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.featured-summary-card,
.featured-stat-card,
.featured-value-grid article {
  border: 1px solid rgba(31, 27, 22, 0.1);
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.9), rgba(255, 248, 239, 0.78)),
    var(--panel);
  box-shadow: 0 16px 38px rgba(52, 36, 24, 0.1);
}

.featured-summary-card {
  display: flex;
  min-height: 222px;
  flex-direction: column;
  padding: 20px;
  border-radius: 24px;
}

.featured-card-label {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1;
}

.featured-summary-card h3,
.featured-pillar-copy h2,
.featured-stat-card strong,
.featured-value-grid h3,
.featured-strategy-panel h2,
.featured-final-cta h2 {
  font-family: Georgia, "Palatino Linotype", serif;
}

.featured-summary-card h3 {
  margin: 14px 0 8px;
  line-height: 1.12;
}

.featured-summary-card strong {
  display: block;
  color: var(--blue);
  line-height: 1.25;
}

.featured-summary-card p {
  margin: 12px 0 0;
  color: var(--muted);
  line-height: 1.52;
}

.featured-pillar,
.featured-strategy-panel,
.featured-final-cta {
  padding: var(--featured-section-padding, 42px);
  border: 1px solid var(--line);
  border-radius: 34px;
  background: rgba(255, 248, 240, 0.58);
  box-shadow: var(--shadow);
}

.featured-pillar-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, 0.95fr);
  gap: 36px;
  align-items: stretch;
}

.featured-pillar-grid-reverse {
  grid-template-columns: minmax(340px, 0.95fr) minmax(0, 1.05fr);
}

.featured-pillar-grid-reverse .featured-pillar-copy {
  order: 2;
}

.featured-pillar-grid-reverse .featured-pillar-visual {
  order: 1;
}

.featured-pillar-copy {
  min-width: 0;
}

.featured-pillar-copy h2,
.featured-strategy-panel h2,
.featured-final-cta h2 {
  margin: 0;
  font-size: clamp(1.8rem, 2.6vw, 2.35rem);
  line-height: 1.04;
}

.featured-pillar-copy > p,
.featured-strategy-panel > p,
.featured-final-cta p {
  max-width: min(100%, var(--featured-body-copy-max, 900px));
  margin: 18px 0 0;
  color: var(--muted);
  line-height: 1.6;
}

.featured-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 22px;
  margin-bottom: 22px;
}

.featured-stat-card {
  min-height: 108px;
  padding: 16px;
  border-radius: 18px;
}

.featured-stat-card strong {
  display: block;
  color: var(--text);
  font-size: clamp(1.35rem, 1.8vw, 1.75rem);
  line-height: 1.05;
}

.featured-stat-card span {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  line-height: 1.3;
}

.featured-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.featured-pillar-visual {
  margin: 0;
  overflow: visible;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.featured-pillar-visual img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  height: auto;
  border-radius: 20px;
  object-fit: cover;
}

/* Featured desktop media grids: four images replace the old single image while preserving the same 4:3 visual footprint. */
.featured-visual-grid {
  display: grid;
  width: 100%;
  aspect-ratio: 4 / 3;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 12px;
  background: #ffffff;
}

.featured-visual-grid img {
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  aspect-ratio: auto;
}

.featured-value-grid {
  margin-top: 28px;
}

.featured-value-grid article {
  padding: 20px;
  border-radius: 22px;
}

.featured-value-grid h3 {
  margin: 0 0 8px;
  line-height: 1.15;
}

.featured-value-grid p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.featured-final-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  background:
    linear-gradient(135deg, rgba(255, 252, 247, 0.88), rgba(215, 179, 119, 0.18)),
    rgba(255, 248, 240, 0.7);
}

.featured-final-cta .featured-actions {
  display: grid;
  min-width: 240px;
  margin-top: 0;
}

.featured-final-cta .button {
  width: 100%;
}

.featured-final-cta > div,
.featured-final-cta .featured-actions,
.featured-final-cta .button {
  min-width: 0;
  max-width: 100%;
}

@media (min-width: 1025px) {
  .featured-page {
    --featured-max-width: var(--page-shell-width);
    --featured-section-gap: 24px;
    --featured-section-padding: clamp(34px, 2.15vw, 44px);
    --featured-radius: 30px;
    --featured-card-radius: 18px;
  }
  .featured-page > .section,
  .featured-page > .featured-pillar,
  .featured-page > .featured-strategy-panel,
  .featured-page > .featured-final-cta {
    width: min(var(--featured-max-width), 100%);
    margin-right: auto;
    margin-left: auto;
  }

  .featured-page > .featured-summary-section,
  .featured-page > .featured-pillar,
  .featured-page > .featured-strategy-panel,
  .featured-page > .featured-final-cta {
    margin-top: 0;
    padding: var(--featured-section-padding);
    border-radius: var(--featured-radius);
  }

  .featured-page > .featured-pillar {
    padding-block: clamp(30px, 1.9vw, 38px);
  }

  .featured-summary-section .section-heading {
    margin-bottom: 18px;
  }

  .featured-summary-grid,
  .featured-value-grid {
    gap: 16px;
  }

  .featured-summary-card {
    min-height: 186px;
    padding: 18px;
    border-radius: var(--featured-card-radius);
  }

  .featured-summary-card h3 {
    margin: 12px 0 6px;
  }

  .featured-summary-card p {
    margin-top: 10px;
    line-height: 1.45;
  }

  .featured-card-label {
    padding: 5px 9px;
    font-size: 0.68rem;
  }

  .featured-pillar-grid {
    grid-template-columns: minmax(0, 1fr) minmax(420px, 0.86fr);
    gap: clamp(30px, 3vw, 44px);
    align-items: center;
  }

  .featured-pillar-grid-reverse {
    grid-template-columns: minmax(420px, 0.86fr) minmax(0, 1fr);
  }

  .featured-pillar-copy h2,
  .featured-strategy-panel h2,
  .featured-final-cta h2 {
    font-size: clamp(2rem, 1.8vw, 2.5rem) !important;
    line-height: 1.03 !important;
  }

  .featured-pillar-copy > p,
  .featured-strategy-panel > p,
  .featured-final-cta p {
    margin-top: 14px;
    line-height: 1.52;
  }

  .featured-stat-grid {
    gap: 12px;
    margin-top: 18px;
    margin-bottom: 18px;
  }

  .featured-stat-card {
    min-height: 96px;
    padding: 14px;
    border-radius: 16px;
  }

  .featured-stat-card strong {
    font-size: clamp(1.28rem, 1.25vw, 1.55rem);
  }

  .featured-stat-card span {
    margin-top: 5px;
    line-height: 1.25;
  }

  .featured-actions {
    gap: 10px;
    margin-top: 20px;
  }

  .featured-pillar-visual {
    padding: 0;
    border-radius: 0;
  }

  .featured-pillar-visual img {
    aspect-ratio: 4 / 3;
    border-radius: 18px;
  }

  .featured-value-grid article {
    padding: 16px;
    border-radius: var(--featured-card-radius);
  }

  .featured-value-grid {
    margin-top: 22px;
  }

  .featured-final-cta {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 260px);
  }
}

@media (min-width: 1025px) and (max-width: 1240px) {
  .featured-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.system-detail-section {
  scroll-margin-top: 120px;
  margin-top: 28px;
  padding: 30px 34px;
  border: 1px solid var(--line);
  border-radius: 34px;
  background: rgba(255, 248, 240, 0.58);
  box-shadow: var(--shadow);
}

.system-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  align-items: center;
}

.system-detail-grid-reverse {
  grid-template-columns: minmax(320px, 0.78fr) minmax(0, 1fr);
}

.system-detail-grid-reverse .system-detail-copy {
  order: 2;
}

.system-detail-grid-reverse .system-detail-visual {
  order: 1;
}

.system-detail-copy {
  min-width: 0;
}

.system-detail-copy h2 {
  margin: 1px 0 10px;
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: clamp(1.6rem, 2.25vw, 2.2rem);
  line-height: 1.05;
}

.system-detail-copy > p:not(.eyebrow) {
  max-width: none;
  margin: 0;
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.62;
  text-wrap: pretty;
}

.system-detail-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  max-width: 620px;
  margin-top: 22px;
}

.system-detail-actions .button {
  width: 100%;
  min-height: 42px;
  padding-inline: 12px;
  line-height: 1.15;
  text-align: center;
}

.system-detail-visual {
  overflow: hidden;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255, 252, 247, 0.84), rgba(215, 179, 119, 0.16)),
    var(--panel);
  box-shadow: var(--shadow);
}

.system-detail-visual img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 20px;
}

.system-document-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 22px;
}

.system-document-carousel {
  position: relative;
  margin-top: 22px;
}

.system-document-carousel .system-document-grid {
  display: flex;
  gap: 16px;
  margin-top: 0;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-behavior: smooth;
  scroll-padding-inline: 2px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: pan-x pan-y;
  -webkit-overflow-scrolling: touch;
}

.system-document-carousel .system-document-grid::-webkit-scrollbar {
  display: none;
}

.system-document-carousel .system-document-card {
  flex: 0 0 calc((100% - 48px) / 4);
  scroll-snap-align: start;
}

.system-document-carousel img {
  pointer-events: none;
}

.system-carousel-arrow {
  position: absolute;
  top: 50%;
  z-index: 2;
  display: inline-grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid rgba(31, 27, 22, 0.14);
  border-radius: 999px;
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.96), rgba(255, 248, 239, 0.9)),
    var(--panel);
  color: var(--text);
  cursor: pointer;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
  box-shadow: 0 14px 28px rgba(52, 36, 24, 0.16);
  transform: translateY(-50%);
  transition:
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    opacity 180ms ease,
    transform 180ms ease;
}

.system-carousel-arrow:hover,
.system-carousel-arrow:focus-visible {
  border-color: rgba(170, 67, 40, 0.32);
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
  transform: translateY(-50%) scale(1.04);
}

.system-carousel-arrow:disabled {
  cursor: default;
  opacity: 0.42;
  transform: translateY(-50%);
}

.system-carousel-arrow-prev {
  left: -18px;
}

.system-carousel-arrow-next {
  right: -18px;
}

.system-document-card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 12px;
  overflow: hidden;
  border: 1px solid rgba(31, 27, 22, 0.1);
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.94), rgba(255, 248, 239, 0.78)),
    var(--panel);
  color: var(--text);
  text-decoration: none;
  box-shadow: 0 16px 34px rgba(52, 36, 24, 0.1);
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.system-document-card:hover,
.system-document-card:focus-visible {
  border-color: rgba(170, 67, 40, 0.28);
  box-shadow: 0 22px 42px rgba(52, 36, 24, 0.14);
  transform: translateY(-2px);
}

.system-document-preview {
  display: flex;
  min-height: 190px;
  aspect-ratio: 4 / 3;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid #1f1b16;
  border-radius: 16px;
  background: #fffaf3;
}

.system-document-preview img {
  display: block;
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  max-width: none;
  margin: -3px;
  object-fit: cover;
  object-position: center top;
}

.system-document-card-media .system-document-preview img {
  object-fit: cover;
  object-position: center center;
}

.system-document-card-fit-contain .system-document-preview {
  background: #050505;
}

.system-document-card-fit-contain .system-document-preview img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: contain;
  object-position: center center;
}

.dpat-card-cover-top .system-document-preview img {
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  margin: -3px;
  object-fit: cover;
  object-position: center top;
}

#leadership .system-document-preview img {
  height: calc(100% + 3px);
  margin: 0 -3px -3px;
}

.system-document-copy {
  display: grid;
  gap: 6px;
  padding: 12px 4px 2px;
}

.system-document-copy span {
  width: fit-content;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(170, 67, 40, 0.1);
  color: var(--red);
  font-size: 0.66rem;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
}

.system-document-copy strong {
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: 1.04rem;
  line-height: 1.14;
}

.system-document-copy small {
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.38;
}

.media-library-section .section-heading {
  margin-bottom: 14px;
}

.media-category-grid,
.media-section-grid,
.media-feature-grid {
  display: grid;
  gap: 14px;
}

.media-category-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.media-section-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.media-section-grid:has(> .media-preview-carousel) {
  grid-template-columns: 1fr;
}

.media-preview-carousel {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  gap: 10px;
  align-items: center;
}

.media-preview-carousel > .media-section-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  touch-action: pan-y;
}

.media-carousel-arrow {
  display: inline-flex;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line);
  border-radius: 999px;
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.92), rgba(255, 248, 239, 0.78)),
    var(--panel);
  box-shadow: 0 14px 34px rgba(52, 36, 24, 0.1);
  color: var(--text);
  cursor: pointer;
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: 2rem;
  line-height: 1;
  transition:
    transform 180ms ease,
    border-color 180ms ease,
    color 180ms ease;
}

.media-carousel-arrow:hover,
.media-carousel-arrow:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(184, 135, 47, 0.3);
  color: var(--red);
}

.media-carousel-arrow[hidden] {
  visibility: hidden;
}

.media-feature-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 22px;
}

.media-feature-grid:has(.media-library-card:only-child) {
  grid-template-columns: minmax(0, 0.62fr);
}

.media-category-card,
.media-library-card {
  border: 1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.9), rgba(255, 248, 239, 0.78)),
    var(--panel);
  box-shadow: var(--shadow);
}

.media-category-card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  gap: 8px;
  padding: 10px;
  border-radius: 20px;
}

.media-category-frame,
.media-library-frame {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 16px;
  background: rgba(31, 27, 22, 0.1);
}

.media-category-frame img,
.media-library-frame img,
.media-library-frame video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.media-category-card[data-gallery-category="championship-culture"] .media-category-frame img {
  object-position: center 62%;
  transform: scale(1.035);
  transform-origin: center bottom;
}

.media-category-card h3,
.media-album-heading h3,
.media-subsection-heading h3 {
  margin: 0;
  font-family: Georgia, "Palatino Linotype", serif;
  line-height: 1.12;
}

.media-category-card h3 {
  font-size: 1.08rem;
}

.media-category-card p,
.media-album-heading p {
  margin: 0;
  color: var(--muted);
  line-height: 1.45;
}

.media-category-card p {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.media-category-card .button {
  width: 100%;
  margin-top: auto;
}

.media-album-stack {
  display: grid;
  gap: 24px;
}

.media-album-heading {
  margin-bottom: 16px;
}

.media-album-heading h3 {
  font-size: 1.5rem;
}

.media-library-card {
  width: 100%;
  appearance: none;
  display: flex;
  min-height: 100%;
  flex-direction: column;
  gap: 8px;
  padding: 10px;
  border-radius: 20px;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    border-color 180ms ease;
}

.media-library-card:hover,
.media-library-card:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(184, 135, 47, 0.24);
  box-shadow: 0 24px 58px rgba(52, 36, 24, 0.15);
}

.media-library-meta {
  display: grid;
  gap: 6px;
}

.media-library-meta strong {
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: 0.96rem;
  line-height: 1.12;
}

.media-card-kind {
  position: absolute;
  right: 10px;
  bottom: 10px;
  padding: 5px 9px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--red), #c4542c);
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 700;
}

main.media-library-page .media-section-grid .media-library-card {
  position: relative;
  display: block;
  aspect-ratio: 4 / 3;
  min-height: 0;
  overflow: hidden;
  gap: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #1f1b16;
  box-shadow: none;
}

main.media-library-page .media-section-grid .media-library-card::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 42%,
      rgba(0, 0, 0, 0.24) 70%,
      rgba(0, 0, 0, 0.62) 100%
    );
  content: "";
  pointer-events: none;
}

main.media-library-page .media-section-grid .media-library-card:hover,
main.media-library-page .media-section-grid .media-library-card:focus-visible {
  transform: none;
  box-shadow: none;
}

main.media-library-page .media-section-grid .media-library-frame {
  height: 100%;
  aspect-ratio: auto;
  border-radius: 0;
  background: #1f1b16;
}

main.media-library-page .media-section-grid .media-library-frame img,
main.media-library-page .media-section-grid .media-library-frame video {
  filter: brightness(0.96);
  transition:
    filter 180ms ease,
    transform 220ms ease;
}

main.media-library-page .media-section-grid .media-library-card:hover .media-library-frame img,
main.media-library-page .media-section-grid .media-library-card:focus-visible .media-library-frame img,
main.media-library-page .media-section-grid .media-library-card:hover .media-library-frame video,
main.media-library-page .media-section-grid .media-library-card:focus-visible .media-library-frame video {
  filter: brightness(1.04);
}

main.media-library-page .media-section-grid .media-library-meta {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: block;
  padding: 14px;
  background: transparent;
  color: #fff8ec;
  pointer-events: none;
}

main.media-library-page .media-section-grid .media-library-meta .library-type {
  display: none;
}

main.media-library-page .media-section-grid .media-library-meta strong {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  color: #fff8ec;
  font-size: clamp(15px, 1.15vw, 22px);
  font-weight: 800;
  line-height: 1.1;
  text-overflow: ellipsis;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.46);
  white-space: nowrap;
}

main.media-library-page .media-section-grid .media-card-kind {
  top: 10px;
  right: 10px;
  bottom: auto;
  z-index: 2;
}

main.media-library-page #playing-awards-media .media-library-card::after,
main.media-library-page #playing-awards-media .media-library-meta {
  display: none;
}

main.media-library-page #playing-awards-media .media-library-card {
  background: #f7f2e9;
}

main.media-library-page #playing-awards-media .media-library-frame {
  height: 100%;
  background: #f7f2e9;
}

main.media-library-page #playing-awards-media .media-library-frame img {
  filter: none;
  object-fit: contain;
  object-position: center center;
}

.media-subsection-heading {
  margin: 22px 0 14px;
}

.media-related-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.media-directory-card {
  min-height: 0;
}

.media-final-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  margin-top: 28px;
  padding: 34px;
  border: 1px solid var(--line);
  border-radius: 34px;
  background:
    linear-gradient(135deg, rgba(255, 252, 247, 0.88), rgba(215, 179, 119, 0.18)),
    rgba(255, 248, 240, 0.7);
  box-shadow: var(--shadow);
}

.media-final-cta h2 {
  margin: 0;
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: clamp(1.8rem, 2.6vw, 2.35rem);
  line-height: 1.04;
}

.media-final-cta p:not(.eyebrow) {
  max-width: 820px;
  margin: 18px 0 0;
  color: var(--muted);
  line-height: 1.6;
}

.media-final-cta .media-related-actions {
  display: grid;
  min-width: 240px;
  margin-top: 0;
}

.media-final-cta .button {
  width: 100%;
}

.case-study-section {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 22px;
  align-items: stretch;
}

.case-study-copy,
.case-study-media {
  min-height: 100%;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--panel);
  box-shadow: var(--shadow);
}

.case-study-copy p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.case-study-copy h3 {
  margin: 0 0 12px;
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: 1.35rem;
}

.case-study-copy p + p {
  margin-top: 14px;
}

.case-study-list {
  display: grid;
  gap: 10px;
  padding: 0;
  margin: 18px 0 0;
  list-style: none;
}

.case-study-list li {
  position: relative;
  padding-left: 18px;
  color: var(--muted);
  line-height: 1.45;
}

.case-study-list li::before {
  position: absolute;
  top: 0.64em;
  left: 0;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--gold);
  content: "";
  transform: translateY(-50%);
}

.placeholder-media {
  display: grid;
  place-items: center;
  min-height: 260px;
  color: rgba(31, 27, 22, 0.44);
  text-align: center;
  background:
    linear-gradient(135deg, rgba(255, 252, 247, 0.78), rgba(215, 179, 119, 0.16)),
    var(--panel);
}

.placeholder-media span {
  padding: 12px 16px;
  border: 1px dashed rgba(31, 27, 22, 0.22);
  border-radius: 999px;
  font-weight: 700;
}

.production-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.production-grid article {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.46);
}

.production-link-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.production-card {
  display: block;
  min-height: 150px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 18px;
  appearance: none;
  background: rgba(255, 255, 255, 0.46);
  color: inherit;
  cursor: pointer;
  font: inherit;
  text-decoration: none;
  box-shadow: var(--shadow);
  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease;
}

.production-card:hover,
.production-card:focus-visible {
  transform: translateY(-3px);
  box-shadow: 0 22px 62px rgba(52, 36, 24, 0.16);
}

.production-card:focus-visible {
  outline: 3px solid rgba(230, 85, 36, 0.68);
  outline-offset: 4px;
}

.production-grid strong {
  display: block;
  margin-bottom: 7px;
  color: var(--red);
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: 1.35rem;
  line-height: 1.1;
}

.production-grid span {
  display: block;
  color: var(--muted);
  line-height: 1.45;
}

.anaya-gallery-block {
  margin-top: 26px;
}

.anaya-gallery-preview {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.anaya-gallery-featured {
  grid-template-columns: minmax(0, 1fr);
  max-width: 900px;
  margin: 0 auto;
}

.anaya-media-card {
  width: 100%;
  appearance: none;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--panel);
  color: inherit;
  font: inherit;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  box-shadow: var(--shadow);
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.anaya-media-card-featured {
  padding: 0;
  border-color: rgba(184, 135, 47, 0.32);
  background:
    linear-gradient(135deg, rgba(255, 249, 240, 0.96), rgba(215, 179, 119, 0.2)),
    var(--panel-strong);
}

.anaya-media-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow);
}

.anaya-media-frame {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  height: auto;
  overflow: hidden;
  padding: 0;
  background: rgba(31, 27, 22, 0.1);
}

.anaya-media-card-featured .anaya-media-frame {
  height: auto;
  max-height: none;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.anaya-media-frame img,
.anaya-media-frame video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.anaya-media-frame video {
  pointer-events: none;
}

.anaya-media-card-featured .anaya-media-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.anaya-media-card span,
.anaya-media-empty span {
  display: block;
  padding: 15px 16px;
  color: var(--muted);
  line-height: 1.45;
}

.anaya-media-card .anaya-media-frame {
  padding: 0;
  line-height: 0;
}

.anaya-media-card-featured > span:last-child {
  padding: 18px 16px 20px;
  color: var(--text);
  font-size: clamp(1rem, 1.6vw, 1.25rem);
  font-weight: 700;
  text-align: center;
}

.anaya-media-empty {
  display: grid;
  min-height: 220px;
  overflow: hidden;
  border: 1px dashed rgba(31, 27, 22, 0.22);
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255, 252, 247, 0.78), rgba(215, 179, 119, 0.16)),
    var(--panel);
  box-shadow: var(--shadow);
}

.anaya-gallery-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 14px;
}

.anaya-gallery-actions .button[disabled] {
  cursor: default;
  opacity: 0.55;
}

.timeline-grid,
.asset-grid {
  display: grid;
  gap: 18px;
}

.timeline-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.timeline-grid article,
.asset-grid figure {
  margin: 0;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--panel);
  box-shadow: var(--shadow);
}

.timeline-grid span {
  color: var(--red);
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: 1.7rem;
  font-weight: 700;
}

.timeline-grid h3 {
  margin: 12px 0 8px;
  font-family: Georgia, "Palatino Linotype", serif;
}

.timeline-grid p {
  color: var(--muted);
  line-height: 1.55;
}

.resource-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.asset-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.asset-grid img,
.asset-grid video {
  display: block;
  width: 100%;
  height: 250px;
  border-radius: 16px;
  object-fit: cover;
  background: #1f1b16;
}

.asset-grid figcaption {
  margin-top: 12px;
  color: var(--muted);
  line-height: 1.45;
}

.contact-section {
  padding-block: 28px 22px;
}

.contact-section .section-heading {
  margin-bottom: 8px;
}

.contact-section .section-heading h2 {
  margin: 0 0 10px;
}

.contact-section .section-intro {
  margin: 0;
}

.contact-form {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.footer-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.footer-socials a {
  display: inline-flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(170, 92, 35, 0.24);
  border-radius: 50%;
  background: rgba(255, 248, 240, 0.88);
  color: var(--red);
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.footer-socials a:hover {
  transform: translateY(-2px);
  border-color: rgba(170, 62, 35, 0.52);
  background: rgba(255, 241, 224, 0.96);
}

.footer-socials svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.contact-form {
  display: grid;
  gap: 12px;
  width: 100%;
}

.contact-name-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.contact-form label {
  display: grid;
  gap: 6px;
  color: var(--red);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.contact-form .select-field {
  position: relative;
}

.contact-form .select-field::after {
  content: "";
  position: absolute;
  right: 18px;
  bottom: 16px;
  width: 8px;
  height: 8px;
  border-right: 2.5px solid var(--red);
  border-bottom: 2.5px solid var(--red);
  pointer-events: none;
  transform: rotate(45deg);
}

.contact-form input,
.contact-form select,
.contact-form textarea {
  width: 100%;
  border: 1px solid rgba(158, 111, 53, 0.24);
  border-radius: 16px;
  background: rgba(255, 255, 252, 0.86);
  color: var(--text);
  font: inherit;
  font-size: 1rem;
  line-height: 1.2;
  letter-spacing: 0;
  outline: none;
  padding: 11px 14px;
  resize: vertical;
  transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.contact-form select {
  appearance: none;
  min-height: 43px;
  background-image: none;
  padding-right: 48px;
}

.contact-form textarea {
  min-height: 132px;
  height: 132px;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color: rgba(170, 62, 35, 0.74);
  background-color: #fffefa;
  box-shadow: 0 0 0 4px rgba(194, 138, 53, 0.14);
}

.contact-form .button {
  width: 100%;
  min-height: 46px;
  margin-top: 4px;
  border: 1px solid rgba(170, 62, 35, 0.32);
  box-shadow: 0 12px 24px rgba(170, 62, 35, 0.16);
}

.contact-form-status {
  margin: 0;
  color: #4f2f12;
  font-family: "Inter", sans-serif;
  font-size: 0.88rem;
  font-weight: 800;
  text-align: center;
}

.contact-form.is-sent .contact-form-status {
  margin-top: 2px;
}

@media (max-width: 1024px) {
  .credential-section-grid,
  .credential-packet-cta,
  .featured-pillar-grid,
  .featured-pillar-grid-reverse,
  .featured-final-cta {
    grid-template-columns: 1fr;
  }

  .credential-summary-grid,
  .credential-document-grid,
  .featured-summary-grid,
  .featured-value-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .credential-document-grid-compact {
    grid-template-columns: minmax(0, 1fr);
  }

  .featured-pillar-grid-reverse .featured-pillar-copy,
  .featured-pillar-grid-reverse .featured-pillar-visual {
    order: initial;
  }

  .featured-final-cta .featured-actions {
    min-width: 0;
    max-width: 520px;
  }

  .credential-packet-cta .credential-actions {
    min-width: 0;
    max-width: 520px;
  }
}

@media (max-width: 767px) {
  .credential-summary-grid,
  .credential-document-grid,
  .credential-actions,
  .credential-section-actions,
  .featured-summary-grid,
  .featured-stat-grid,
  .featured-value-grid,
  .featured-actions {
    grid-template-columns: 1fr;
  }

  .credential-summary-grid,
  .credential-document-grid,
  .featured-summary-grid,
  .featured-stat-grid,
  .featured-value-grid {
    display: grid;
  }

  .credential-section,
  .credential-packet-cta,
  .featured-pillar,
  .featured-strategy-panel,
  .featured-final-cta {
    padding: 18px;
    border-radius: 28px;
  }

  .credential-summary-card,
  .credential-document-card {
    min-height: 0;
    padding: 16px;
  }

  .credential-preview {
    min-height: 118px;
    padding: 16px;
  }

  .credential-actions {
    display: grid;
    width: 100%;
  }

  .credential-actions .button,
  .credential-section-actions .button,
  .featured-actions .button{
    width: 100%;
    min-width: 0;
  }

  .featured-summary-card,
  .featured-stat-card,
  .featured-value-grid article {
    min-height: 0;
  }

  .featured-pillar-visual {
    padding: 10px;
    border-radius: 22px;
  }

  .featured-pillar-visual img {
    border-radius: 18px;
  }
}

.site-footer {
  margin-top: 28px;
  width: 100%;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

@media (max-width: 1024px) {
  .innovation-section,
  .innovation-panel,
  .innovation-panel > div,
  .innovation-thumbnail {
    min-width: 0;
    max-width: 100%;
  }

  .innovation-section .section-heading,
  .innovation-section .eyebrow,
  .innovation-section .section-heading h2,
  .innovation-panel p {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .innovation-panel {
    overflow: hidden;
  }

  html {
    scroll-padding-top: 140px;
  }

  section[id],
  #about,
  #systems,
  #featured-work,
  #credentials,
  #program-impact,
  #media,
  #playing-career,
  #contact {
    scroll-margin-top: 140px;
  }

  .site-header {
    flex-wrap: nowrap;
    gap: 16px;
    align-items: center;
    padding: 9px 20px 9px 16px;
  }

  .site-nav {
    flex: 0 1 auto;
    flex-wrap: nowrap;
    gap: 11px;
    justify-content: flex-end;
  }

  .site-nav a {
    font-size: 0.92rem;
  }

  .hero,
  .split-layout,
  .portfolio-matters-grid,
  .innovation-panel,
  .systems-grid,
  .story-grid,
  .testimonial-grid,
  .impact-grid,
  .library-grid,
  .system-detail-grid,
  .media-final-cta,
  .media-category-grid,
  .media-section-grid,
  .media-feature-grid,
  .case-study-section,
  .production-link-grid,
  .timeline-grid,
  .asset-grid {
    grid-template-columns: 1fr;
  }

  .system-detail-grid-reverse .system-detail-copy,
  .system-detail-grid-reverse .system-detail-visual {
    order: initial;
  }

  .system-detail-actions {
    max-width: none;
  }

  .system-document-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .system-document-carousel .system-document-card {
    flex-basis: calc((100% - 16px) / 2);
  }

  .media-category-grid,
  .media-section-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .anaya-gallery-preview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .portfolio-matters-card,
  .credentials-card {
    height: auto;
  }

  .portfolio-matters-card {
    justify-content: flex-start;
    gap: 12px;
    padding: 20px;
  }

  .portfolio-value-list {
    display: grid;
    flex: none;
    gap: 14px;
    justify-content: stretch;
    padding-top: 12px;
  }

  .credentials-card {
    padding: 20px;
  }

  .portfolio-highlights ul {
    grid-template-columns: 1fr;
  }

  .contact-actions {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .contact-actions .button {
    width: auto;
  }

  .contact-section {
    padding-block: 24px 18px;
  }

  .contact-section .section-heading {
    margin-bottom: 8px;
  }

  .contact-name-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .contact-form,
  .contact-name-row {
    gap: 8px;
  }

}

@media (max-width: 1220px) {
  .portfolio-matters-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .portfolio-matters-card,
  .credentials-card {
    height: auto;
  }

  .portfolio-matters-card {
    justify-content: flex-start;
    gap: 8px;
  }

  .portfolio-value-list {
    display: grid;
    flex: none;
    gap: 14px;
    justify-content: stretch;
    padding-top: 12px;
  }

  .library-card-media {
    height: 175px;
  }

  .library-card.system-card,
  .system-card {
    min-height: 0;
  }

  .library-card.system-card h3 {
    font-size: clamp(1.08rem, 2.35vw, 1.22rem);
  }

}

@media (max-width: 900px) {
  .innovation-section,
  .innovation-panel,
  .innovation-panel > div,
  .innovation-thumbnail {
    min-width: 0;
    max-width: 100%;
  }

  .innovation-section .section-heading,
  .innovation-section .eyebrow,
  .innovation-section .section-heading h2,
  .innovation-panel p {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .innovation-panel {
    gap: 14px;
    overflow: hidden;
    padding: 18px;
  }

  .innovation-panel > div {
    display: grid;
    gap: 10px;
  }

  .innovation-panel p {
    margin: 0;
    line-height: 1.55;
  }

  .innovation-panel img,
  .innovation-panel .button {
    max-width: 100%;
  }

  .innovation-panel .button {
    margin-top: 0;
  }

}

@media (max-width: 767px) {
  html {
    scroll-padding-top: 28px;
  }

  section[id],
  #about,
  #systems,
  #featured-work,
  #credentials,
  #program-impact,
  #media,
  #playing-career,
  #contact {
    scroll-margin-top: 28px;
  }

  .page-shell {
    width: min(1200px, calc(100% - 24px));
  }

  .site-chrome {
    --site-chrome-gutter: 24px;
  }

  .site-header,
  .section,
  .system-detail-section {
    padding: 18px;
  }

  .hero {
    gap: 18px;
    padding: 14px 20px 12px;
  }

  .section{
    margin-top: 32px;
  }

  .section-heading h2 {
    font-size: clamp(2rem, 9vw, 2.65rem);
    line-height: 1.05;
  }

  main#top .section-heading h2 {
    font-size: 25px;
    line-height: 27px;
  }

  main#top .library-section .section-heading h2 {
    font-size: clamp(0.94rem, 4.2vw, 1.03rem);
    line-height: 1.06;
    white-space: nowrap;
  }

  main#top .section-heading .eyebrow {
    font-size: 12.25px;
    line-height: 15px;
  }

  .innovation-section .eyebrow {
    font-size: 12.25px;
    line-height: 15px;
    letter-spacing: 0.1em;
  }

  main#top .innovation-section .section-heading h2 {
    max-width: 100%;
    font-size: clamp(1rem, 4.15vw, 1.08rem);
    line-height: 1.08;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .innovation-panel,
  .innovation-panel > div,
  .innovation-thumbnail {
    min-width: 0;
    max-width: 100%;
  }

  .innovation-section {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
  }

  .innovation-section .section-heading,
  .innovation-section .eyebrow {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .innovation-panel {
    gap: 10px;
    justify-items: stretch;
    overflow: hidden;
    padding: 16px 14px 18px;
  }

  .innovation-panel > div {
    display: grid;
    gap: 8px;
  }

  .innovation-panel p {
    max-width: 100%;
    min-width: 0;
    margin: 0;
    line-height: 1.5;
    overflow-wrap: anywhere;
  }

  main#top #featured-work .innovation-panel p {
    width: 100%;
    max-width: none;
    font-size: 1rem;
    line-height: 1.5;
    text-align: left;
  }

  .innovation-panel img,
  .innovation-panel .button {
    max-width: 100%;
  }

  .innovation-panel .button {
    justify-self: end;
    margin-top: 0;
    margin-bottom: 0;
    white-space: normal;
  }

  .system-detail-section {
    scroll-margin-top: 28px;
    margin-top: 24px;
    padding: 18px;
    border-radius: 28px;
  }

  .system-detail-grid {
    gap: 18px;
  }

  .system-detail-copy h2 {
    font-size: clamp(1.42rem, 6.2vw, 1.8rem);
  }

  .system-detail-actions {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .system-detail-visual {
    padding: 10px;
    border-radius: 22px;
  }

  .system-detail-visual img {
    border-radius: 18px;
  }

  .system-document-grid {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 18px;
  }

  .system-document-carousel {
    margin-top: 18px;
  }

  .system-document-carousel .system-document-grid {
    gap: 12px;
    padding-inline: 2px;
  }

  .system-document-carousel .system-document-card {
    flex-basis: 100%;
  }

  .system-carousel-arrow {
    width: 38px;
    height: 38px;
    font-size: 1.55rem;
  }

  .system-carousel-arrow-prev {
    left: -8px;
  }

  .system-carousel-arrow-next {
    right: -8px;
  }

  .system-document-card {
    padding: 10px;
    border-radius: 20px;
  }

  .system-document-preview {
    min-height: 220px;
  }

  .site-header {
    position: relative;
    z-index: 1000;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 18px;
  }

  .brand {
    gap: 13px;
  }

  .brand-mark {
    width: 38px;
    height: 38px;
    border-radius: 11px;
  }

  .site-nav {
    display: grid;
    grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
    flex: none;
    width: 100%;
    align-self: stretch;
    gap: 8px 14px;
  }

  .site-nav a:nth-child(even) {
    justify-self: auto;
  }

  .site-nav a {
    font-size: 0.92rem;
  }

  .hero h1 {
    max-width: none;
    font-size: clamp(1.9rem, 8.7vw, 2.45rem);
    line-height: 1.02;
    white-space: normal;
  }
  .hero-text {
    max-width: 100%;
  }

  .hero {
    overflow: hidden;
  }

  .hero-text {
    width: 100%;
    max-width: 100%;
    margin-top: 18px;
    font-size: 0.88rem;
    line-height: 1.56;
  }

  main#top .portfolio-matters-grid > .credentials-card {
    display: none;
  }

  .production-grid {
    grid-template-columns: 1fr;
  }

  .anaya-gallery-preview {
    grid-template-columns: 1fr;
  }

  .anaya-media-frame {
    height: auto;
  }

  .gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .gallery-card {
    min-width: 0;
    border-radius: 18px;
  }

  .gallery-card .gallery-media {
    aspect-ratio: 4 / 3;
  }

  .gallery-card figcaption,
  .gallery-card > span:not(.gallery-media) {
    padding: 10px 11px;
    font-size: 0.78rem;
    line-height: 1.22;
  }

  .media-final-cta,
  .media-category-grid,
  .media-section-grid,
  .media-feature-grid {
    grid-template-columns: 1fr;
  }

  .media-category-card,
  .media-library-card,
  .media-album-section {
    border-radius: 22px;
  }

  .media-album-section {
    padding: 14px;
  }

  .media-final-cta {
    padding: 18px;
    border-radius: 28px;
  }

  .media-final-cta .media-related-actions {
    min-width: 0;
  }

  .portfolio-matters-card p {
    font-size: 0.96rem;
    line-height: 1.52;
  }

  .portfolio-matters-card,
  .credentials-card {
    padding: 18px;
  }

  .library-card-media {
    height: 180px;
  }

  .library-card.system-card h3 {
    font-size: clamp(1.2rem, 5.65vw, 1.46rem);
    line-height: 1.08;
    font-weight: 800;
    white-space: normal;
  }

  .system-card p {
    min-height: 0;
    font-size: 0.98rem;
    line-height: 1.38;
  }

  .system-card .library-type {
    margin-bottom: 10px;
    font-size: 0.78rem;
  }

  .portfolio-value-list h3 {
    font-size: 0.94rem;
  }

  .portfolio-value-list p {
    font-size: 0.9rem;
    line-height: 1.36;
  }

  .credential-link-grid {
    grid-template-columns: 1fr;
  }

  .contact-section {
    padding-block: 21px 16px;
  }

  .contact-section .section-heading {
    margin-bottom: 8px;
  }

  .contact-section .section-heading h2 {
    font-size: clamp(1.28rem, 5.6vw, 1.42rem);
    line-height: 1.02;
    margin-bottom: 6px;
    white-space: nowrap;
  }

  .contact-section .section-intro {
    font-size: 0.9rem;
    line-height: 1.38;
  }

  .contact-form,
  .contact-name-row {
    gap: 7px;
  }

  .contact-name-row {
    grid-template-columns: 1fr;
  }

  .contact-form label {
    gap: 5px;
    font-size: 0.7rem;
  }

  .contact-form input,
  .contact-form select,
  .contact-form textarea {
    border-radius: 14px;
    padding: 7px 10px;
  }

  .contact-form input {
    min-height: 33px;
  }

  .contact-form select {
    min-height: 37px;
    padding-right: 44px;
  }

  .contact-form textarea {
    height: 72px;
  }

  .contact-form .button {
    min-height: 39px;
    margin-top: 2px;
  }

}

@media (max-width: 390px) {

  main#top .library-section .section-heading h2 {
    font-size: 0.94rem;
  }
}

/* Unified page heading rhythm: match the homepage section heading scale. */
:root {
  --portfolio-eyebrow-size: 12.25px;
  --portfolio-eyebrow-line: 15px;
  --portfolio-title-size: 25px;
  --portfolio-title-line: 27px;
}

main:not(#top) .eyebrow {
  color: var(--red);
  font-size: var(--portfolio-eyebrow-size);
  line-height: var(--portfolio-eyebrow-line);
}

main:not(#top) .section-heading .eyebrow,
main:not(#top) .featured-pillar-copy > .eyebrow,
main:not(#top) .system-detail-copy > .eyebrow,
main:not(#top) .credential-section-copy > .eyebrow,
main:not(#top) .featured-strategy-panel > .eyebrow,
main:not(#top) .featured-final-cta > div > .eyebrow,
main:not(#top) .media-final-cta .eyebrow {
  margin-bottom: 2px;
}

main:not(#top) .section-heading h2,
main:not(#top) .featured-pillar-copy h2,
main:not(#top) .featured-strategy-panel h2,
main:not(#top) .featured-final-cta h2,
main:not(#top) .system-detail-copy h2,
main:not(#top) .credential-section-copy h2,
main:not(#top) .credential-packet-cta h2,
main:not(#top) .media-final-cta h2,
main:not(#top) .contact-section .section-heading h2 {
  color: var(--text);
  margin-top: 1px;
  font-size: var(--portfolio-title-size);
  line-height: var(--portfolio-title-line);
}

/* Real credential document previews. */
.credential-hero-preview {
  grid-template-columns: 74px minmax(0, 1fr);
  align-items: center;
  min-height: 104px;
  padding: 10px;
}

.credential-hero-preview img {
  width: 74px;
  height: 88px;
  border: 1px solid rgba(31, 27, 22, 0.12);
  border-radius: 10px;
  background: #fffaf3;
  object-fit: cover;
  object-position: top center;
  box-shadow: 0 10px 24px rgba(52, 36, 24, 0.12);
}

.credential-hero-preview span {
  justify-self: start;
}

.credential-preview {
  display: flex;
  width: 100%;
  min-height: 210px;
  aspect-ratio: 4 / 3;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  padding: 10px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fffaf3;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.52);
}

.credential-preview img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  background: #fffaf3;
  object-fit: contain;
  object-position: center center;
}

.credential-preview-wide {
  aspect-ratio: 4 / 3;
}

.credential-preview-portrait,
.credential-preview-large {
  aspect-ratio: 3 / 4;
}

.credential-preview-large {
  min-height: 360px;
}

.credential-preview-packet {
  min-width: 210px;
  max-width: 230px;
  min-height: 280px;
  margin-bottom: 0;
  aspect-ratio: 3 / 4;
}

.credential-preview-crop-top img {
  object-fit: cover;
  object-position: top center;
}

.credential-preview-contain img {
  object-fit: contain;
}

.credential-license-feature {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(360px, 0.72fr);
  gap: 28px;
  align-items: center;
}

.credential-license-feature .credential-section-copy {
  justify-content: center;
}

.credential-document-grid-feature {
  grid-template-columns: minmax(320px, 0.58fr);
}

.credential-packet-cta {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

@media (max-width: 1024px) {
  .credential-license-feature,
  .credential-packet-cta {
    grid-template-columns: 1fr;
  }

  .credential-preview-packet {
    max-width: 320px;
  }
}

@media (max-width: 767px) {
  .credential-preview {
    min-height: 190px;
    padding: 8px;
  }

  .credential-preview-large {
    min-height: 300px;
  }

  .credential-preview-packet {
    width: 100%;
    max-width: none;
  }

  .credential-hero-preview {
    grid-template-columns: 62px minmax(0, 1fr);
  }

  .credential-hero-preview img {
    width: 62px;
    height: 78px;
  }
}

.credential-hero-bundle {
  position: relative;
  width: min(100%, 360px);
  height: 322px;
}

#resume .credential-section-grid {
  grid-template-columns: minmax(0, 0.9fr) minmax(390px, 0.55fr);
  align-items: center;
}

#resume .credential-feature-card .credential-preview {
  min-height: 430px;
}

#licenses .credential-section-intro,
#recommendation-letters .credential-section-intro {
  max-width: 900px;
}

#licenses .credential-license-feature {
  margin-top: 22px;
  grid-template-columns: minmax(0, 0.76fr) minmax(420px, 0.74fr);
}

#licenses .credential-feature-card .credential-preview {
  min-height: 320px;
  aspect-ratio: 6 / 5;
}

#certifications .credential-preview,
#memberships .credential-preview {
  min-height: 225px;
  aspect-ratio: 4 / 3;
}

#certifications .credential-preview img,
#memberships .credential-preview img {
  object-fit: contain;
}

#memberships .credential-document-card {
  min-height: 100%;
}

.credential-reference-feature {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(440px, 0.72fr);
  gap: 28px;
  align-items: center;
  margin-top: 22px;
}

.credential-reference-feature .credential-feature-card .credential-preview {
  min-height: 520px;
}

.credential-reference-feature .credential-section-copy {
  padding: 26px;
  border: 1px solid rgba(31, 27, 22, 0.1);
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.9), rgba(255, 248, 239, 0.78)),
    var(--panel);
}

.credential-packet-cta {
  grid-template-columns: minmax(0, 1fr) minmax(270px, auto) minmax(250px, 0.34fr);
}

.credential-preview-packet {
  width: 290px;
  min-width: 270px;
  max-width: 310px;
  min-height: 380px;
}

@media (max-width: 1024px) {
  #resume .credential-section-grid,
  #licenses .credential-license-feature,
  .credential-reference-feature,
  .credential-packet-cta {
    grid-template-columns: 1fr;
  }

  .credential-hero-bundle {
    margin-inline: auto;
  }

  #resume .credential-feature-card .credential-preview,
  .credential-reference-feature .credential-feature-card .credential-preview {
    min-height: 390px;
  }
}

@media (max-width: 767px) {
  .credential-hero-bundle {
    width: min(100%, 300px);
    height: 280px;
  }

  #resume .credential-feature-card .credential-preview,
  .credential-reference-feature .credential-feature-card .credential-preview,
  .credential-preview-packet {
    min-height: 320px;
  }

  #certifications .credential-preview,
  #memberships .credential-preview,
  #licenses .credential-feature-card .credential-preview {
    min-height: 205px;
  }
}

@media (max-width: 767px) {
  .media-preview-carousel > .media-section-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* Mobile gallery carousels use overlaid arrows, so the card track must own the full row. */
  .media-preview-carousel {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }

  .media-carousel-arrow {
    width: 38px;
    height: 38px;
    font-size: 1.7rem;
  }

  .contact-section {
    padding: 22px;
  }

  .contact-name-row {
    grid-template-columns: 1fr;
  }

  .contact-form input,
  .contact-form select {
    min-height: 42px;
  }

  .contact-form textarea {
    min-height: 140px;
    height: 140px;
  }

  .contact-form .button {
    min-height: 46px;
  }

  .contact-document-actions {
    grid-template-columns: 1fr;
  }

  .contact-document-actions .button {
    min-height: 42px;
  }
}

/* Footer responsive navigation */
.site-footer {
  padding: 0 30px 28px;
}

.site-footer .footer-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: clamp(28px, 4vw, 62px);
  row-gap: 16px;
  align-items: start;
  justify-content: stretch;
  padding-top: 18px;
  border-top: 1px solid rgba(31, 27, 22, 0.14);
}

.site-footer .footer-links,
.site-footer .footer-links-wide {
  gap: 0;
  min-width: 0;
}

.footer-accordion-toggle {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  margin: 0 0 6px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--red);
  cursor: default;
  font-family: inherit;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1.25;
  text-align: left;
  text-transform: uppercase;
}

.footer-accordion-caret {
  display: none;
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: transform 180ms ease;
}

.footer-link-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.site-footer .footer-link-list a {
  color: var(--text);
  font-size: 0.92rem;
  line-height: 1.34;
  text-decoration: none;
}

@media (min-width: 1025px) {
  .site-footer .footer-link-list a {
    white-space: nowrap;
  }
}

.site-footer .footer-link-list a:hover {
  color: var(--red);
}

.site-footer .footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid rgba(158, 111, 53, 0.22);
}

.site-footer .footer-copyright {
  display: block;
  margin: 0;
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.35;
}

.site-footer .footer-socials {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.site-footer .footer-socials a {
  width: 32px;
  height: 32px;
}

.site-footer .footer-socials svg {
  width: 15px;
  height: 15px;
}

@media (max-width: 1024px) {
  .site-footer {
    padding: 14px 24px 22px;
  }

  .site-footer .footer-grid {
    display: block;
    column-gap: clamp(18px, 3.4vw, 34px);
  }

  .site-footer .footer-links,
  .site-footer .footer-links-wide {
    border-bottom: 1px solid rgba(158, 111, 53, 0.13);
  }

  .footer-accordion-toggle {
    min-height: 42px;
    margin: 0;
    cursor: pointer;
    justify-content: space-between;
  }

  .footer-accordion-caret {
    display: block;
    flex: 0 0 auto;
  }

  .footer-link-list {
    display: none;
    gap: 6px;
    padding: 0 0 11px;
  }

  .footer-links.is-open .footer-link-list,
  .footer-links-wide.is-open .footer-link-list {
    display: flex;
  }

  .footer-links.is-open .footer-accordion-caret,
  .footer-links-wide.is-open .footer-accordion-caret {
    transform: rotate(225deg);
  }

  .site-footer .footer-link-list a {
    font-size: 0.95rem;
    line-height: 1.42;
  }

  .site-footer .footer-bottom {
    flex-direction: column-reverse;
    justify-content: center;
    gap: 7px;
    margin-top: 10px;
    padding-top: 10px;
    padding-bottom: 6px;
    border-top: 0;
    text-align: center;
  }

  .site-footer .footer-socials {
    justify-content: center;
  }
}

@media (max-width: 767px) {
  .site-footer {
    padding: 14px 18px 12px;
  }
}

@media (min-width: 1025px) {
  .site-footer.site-chrome {
    padding-right: 0;
    padding-left: 0;
    border-top: 0;
    background: transparent;
    box-shadow: none;
  }

  .site-footer.site-chrome .footer-grid,
  .site-footer.site-chrome .footer-bottom {
    width: var(--page-shell-width);
    margin-right: auto;
    margin-left: auto;
  }

}

@media (max-width: 767px) {
  .site-header {
    position: sticky;
    top: 0;
  }
}

/* Canonical Home Media system: card layout, responsive rhythm, and ratio-based thumbnails. */
main#top #media {
  --home-section-wall-bg: #FFFAF3;
  --gallery-section-pad: clamp(28px, 3vw, 42px);
  --gallery-heading-gap: clamp(12px, 1.3vw, 18px);
  --gallery-grid-gap: clamp(13px, 1.35vw, 22px);
  --gallery-overlay-pad-y: clamp(14px, 1.05vw, 20px);
  --gallery-overlay-pad-x: clamp(14px, 1.15vw, 22px);
  --gallery-title-size: clamp(0.9rem, calc(0.72rem + 0.28vw), 1.04rem);
  --gallery-arrow-size: clamp(24px, 1.8vw, 30px);
  overflow: hidden;
  padding: var(--gallery-section-pad) var(--gallery-section-pad) 0 !important;
  border-radius: 0 !important;
  background: #FFFAF3;
}

main#top #media .section-heading {
  margin-bottom: var(--gallery-heading-gap) !important;
}

main#top #media .section-heading .eyebrow {
  font-size: clamp(0.68rem, calc(0.52rem + 0.28vw), 0.78rem) !important;
  line-height: 1.12 !important;
}

main#top #media .gallery-section-title {
  font-size: clamp(1.7rem, calc(1.08rem + 1.28vw), 2.35rem) !important;
  line-height: 1.03 !important;
  white-space: nowrap !important;
}

main#top #media .gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--gallery-grid-gap) !important;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  background: #ffffff;
}

main#top #media .gallery-card {
  position: relative;
  display: block;
  min-width: 0;
  min-height: 0;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #1f1b16;
  box-shadow: none !important;
}

main#top #media .gallery-card .gallery-media {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  aspect-ratio: auto;
  overflow: hidden;
  border-radius: 0 !important;
  background: #1f1b16;
}

main#top #media .gallery-card img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 0 !important;
  filter: brightness(0.96);
  object-fit: cover;
  transition:
    filter 180ms ease,
    transform 220ms ease;
}

main#top #media .gallery-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 42%,
      rgba(0, 0, 0, 0.24) 70%,
      rgba(0, 0, 0, 0.62) 100%
    );
  pointer-events: none;
}

main#top #media .gallery-card:hover,
main#top #media .gallery-card:focus-visible {
  box-shadow: none !important;
  transform: none;
}

main#top #media .gallery-card:hover img,
main#top #media .gallery-card:focus-visible img {
  filter: brightness(1.04);
}

main#top #media .gallery-card > span.gallery-card-caption,
main#top #media .gallery-card figcaption,
main#top #media .gallery-card > span:not(.gallery-media) {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 0;
  padding:
    var(--gallery-overlay-pad-y)
    var(--gallery-overlay-pad-x)
    var(--gallery-overlay-pad-y) !important;
  border-top: 0;
  background: transparent;
  text-align: left;
  pointer-events: none;
}

main#top #media .gallery-card > span.gallery-card-caption > span.gallery-card-title,
main#top #media .gallery-card .gallery-card-title {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: visible;
  padding-inline: 0;
  color: #fff8ec;
  font-size: var(--gallery-title-size) !important;
  font-weight: 800;
  line-height: 1.1;
  text-align: left;
  text-overflow: clip;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.46);
  text-wrap: nowrap;
  white-space: nowrap;
}

main#top #media .gallery-card > span.gallery-card-caption > span.gallery-card-arrow,
main#top #media .gallery-card .gallery-card-arrow {
  position: static;
  flex: 0 0 auto;
  width: var(--gallery-arrow-size);
  height: var(--gallery-arrow-size);
  border-color: #d95a24;
  color: #d95a24;
  -webkit-text-fill-color: #d95a24;
  background: rgba(255, 255, 255, 0.88);
  background-image: none;
  font-size: calc(var(--gallery-arrow-size) * 0.62);
  box-shadow: none;
  text-shadow: none;
  filter: none;
  opacity: 1;
  mix-blend-mode: normal;
  transform: none;
}

@media (max-width: 1024px) {
  main#top #media .gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 1025px) {
  main#top #media {
    --gallery-section-pad: var(--home-media-rail-section-pad);
    --gallery-grid-gap: var(--home-media-rail-grid-gap);
    --gallery-wall-width: min(var(--home-section-wall-width), calc(100vw - 16px));
  }

  main#top #media .gallery-grid {
    width: var(--gallery-wall-width);
    max-width: 2560px;
    margin-inline: calc((100% - var(--gallery-wall-width)) / 2);
  }

  main#top #media .gallery-card .gallery-media {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
  }
}

@media (min-width: 1600px) {
  main#top #media {
    --gallery-overlay-pad-y: clamp(16px, 0.9vw, 22px);
    --gallery-overlay-pad-x: clamp(18px, 1vw, 26px);
    --gallery-title-size: clamp(1.02rem, calc(0.84rem + 0.22vw), 1.2rem);
    --gallery-arrow-size: clamp(24px, 1.25vw, 28px);
  }

  main#top #media .gallery-grid {
    max-width: none;
    margin-inline: calc((100% - var(--gallery-wall-width)) / 2);
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  main#top #media {
    --gallery-section-pad: clamp(18px, 3vw, 28px);
    --gallery-heading-gap: clamp(10px, 1.55vw, 16px);
    --gallery-grid-gap: clamp(13px, 2vw, 22px);
    --gallery-overlay-pad-y: clamp(12px, 1.7vw, 18px);
    --gallery-overlay-pad-x: clamp(12px, 1.85vw, 20px);
    --gallery-title-size: clamp(0.84rem, calc(0.7rem + 0.38vw), 0.98rem);
    --gallery-arrow-size: clamp(22px, 2.4vw, 26px);
  }
}

@media (max-width: 767px) {
  main#top #media {
    --gallery-section-pad: clamp(12px, 4vw, 20px);
    --gallery-heading-gap: clamp(8px, 2.1vw, 12px);
    --gallery-grid-gap: clamp(8px, 2.6vw, 13px);
    --gallery-overlay-pad-y: clamp(10px, 3vw, 14px);
    --gallery-overlay-pad-x: clamp(10px, 3.2vw, 16px);
    --gallery-title-size: clamp(0.82rem, 3.5vw, 0.96rem);
    --gallery-arrow-size: clamp(21px, 5vw, 24px);
  }

  main#top #media .gallery-section-title {
    font-size: clamp(1.18rem, 5.5vw, 1.7rem) !important;
    white-space: normal !important;
  }

  main#top #media .gallery-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  main#top #media .gallery-card {
    align-items: stretch;
    border-radius: 0 !important;
  }
}

@media (max-width: 430px) {
  main#top #media .gallery-section-title {
    font-size: clamp(1.02rem, 4.25vw, 1.22rem) !important;
    line-height: 1.04 !important;
    white-space: normal !important;
  }

  main#top #media .gallery-card > span.gallery-card-caption {
    padding: 10px 10px 11px !important;
  }

  main#top #media .gallery-card > span.gallery-card-caption > span.gallery-card-title {
    padding-inline: 0;
  }

  main#top #media .gallery-card > span.gallery-card-caption > span.gallery-card-arrow {
    display: grid;
  }
}

/* Mobile header drawer */
.mobile-nav-toggle,
.mobile-contact-link,
.mobile-subnav-toggle,
.nav-label-mobile {
  display: none;
}

@media (max-width: 767px) {
  .site-header {
    display: grid;
    grid-template-columns: 44px 1fr auto;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 22px;
  }

  .mobile-nav-toggle {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: var(--text);
    cursor: pointer;
    justify-self: start;
  }

  .mobile-nav-toggle span {
    display: block;
    width: 22px;
    height: 2px;
    margin: 3px 0;
    border-radius: 999px;
    background: currentColor;
    transition:
      transform 180ms ease,
      opacity 160ms ease;
  }

  .site-header.nav-open .mobile-nav-toggle span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }

  .site-header.nav-open .mobile-nav-toggle span:nth-child(2) {
    opacity: 0;
  }

  .site-header.nav-open .mobile-nav-toggle span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }

  .site-header .brand {
    gap: 0;
    justify-self: center;
  }

  .site-header .brand-copy {
    display: none;
  }

  .site-header .brand-mark {
    width: 38px;
    height: 38px;
    border-radius: 11px;
  }

  .mobile-contact-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 4px;
    color: var(--text);
    font-family: Georgia, "Palatino Linotype", serif;
    font-size: 0.95rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    justify-self: end;
  }

  .site-header .site-nav {
    position: fixed;
    top: 72px;
    left: 14px;
    z-index: 60;
    display: flex;
    flex-direction: column;
    width: min(282px, calc(100vw - 28px));
    padding: 8px 0;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: rgba(255, 249, 240, 0.97);
    box-shadow: var(--shadow);
    backdrop-filter: blur(18px);
    transform: translateX(calc(-100% - 28px));
    opacity: 0;
    pointer-events: none;
    transition:
      transform 220ms ease,
      opacity 180ms ease;
  }

  .site-header.nav-open .site-nav {
    transform: translateX(0);
    opacity: 1;
    pointer-events: auto;
  }

  .site-header .site-nav a {
    display: block;
    width: 100%;
    padding: 14px 18px;
    border-bottom: 1px solid rgba(158, 111, 53, 0.18);
    color: var(--text);
    font-size: 1rem;
    line-height: 1.2;
  }

  .site-header .nav-label-desktop {
    display: none;
  }

  .site-header .nav-label-mobile {
    display: inline;
  }

  .site-header .site-nav a:last-child {
    border-bottom: 0;
  }

  .site-footer .footer-bottom {
    border-top: 0;
  }
}

.site-header.site-chrome,
.site-footer.site-chrome {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}

.site-header.site-chrome {
  position: sticky;
  top: 0;
  z-index: 1000;
  margin-top: 0;
}

.page-shell {
  padding-bottom: 0;
}

/* Full-bleed header/footer chrome with wider content than the page cards. */
:root {
  --page-gutter: 44px;
  --page-max-desktop: 1680px;
  --page-max-wide: 2240px;
  --page-shell-width: min(var(--page-max-desktop), calc(100vw - 88px));
  --hero-media-portrait-width: clamp(390px, 25vw, 660px);
  --hero-media-portrait-height: clamp(370px, 18.5vw, 500px);
  --hero-media-landscape-width: clamp(410px, 26vw, 680px);
  --hero-media-landscape-ratio: 4 / 3;
  --hero-title-size: clamp(59.2px, 3.15vw, 76px);
  --hero-title-line: 0.95;
  --hero-body-size: clamp(16px, calc(13.12px + 0.28vw), 18px);
  --hero-body-line: 1.52;
  --hero-copy-max: 980px;
  --hero-paragraph-max: 920px;
  --hero-eyebrow-size: clamp(11.84px, calc(10.56px + 0.12vw), 13.76px);
  --hero-eyebrow-line: 1.15;
  /* Shared wide hero tokens consumed by the canonical .page-hero-system. */
  --hero-wide-gap: 0px;
  --hero-wide-copy-max: 1180px;
  --hero-wide-paragraph-max: 1120px;
  --hero-wide-support-max: 1354px;
  --hero-wide-title-size: clamp(76px, 3.1vw, 82px);
  --hero-wide-portrait-width: clamp(660px, 28vw, 740px);
  --hero-wide-portrait-height: clamp(480px, 20vw, 540px);
  --hero-wide-landscape-width: clamp(680px, 29vw, 760px);
  --site-card-width: 2560px;
  --site-chrome-content-width: 2560px;
  --site-chrome-gutter: 44px;
}

.page-shell {
  width: min(var(--site-card-width), calc(100% - 88px));
}

.site-header.site-chrome,
.site-footer.site-chrome {
  width: 100vw;
  max-width: none;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  border-right: 0;
  border-left: 0;
  border-radius: 0;
  box-shadow: none;
}

.site-header.site-chrome {
  padding:
    var(--site-header-block-pad) max(var(--site-chrome-gutter), calc((100vw - var(--site-chrome-content-width)) / 2 + var(--site-chrome-gutter)))
    var(--site-header-block-pad) max(var(--site-chrome-gutter), calc((100vw - var(--site-chrome-content-width)) / 2 + var(--site-chrome-gutter)));
  border-top: 0;
  border-bottom: 0;
  background: rgba(255, 255, 255, 0.5);
}

.site-footer.site-chrome {
  padding: 0 0 28px;
  border-top: 0;
  border-bottom: 0;
  background: transparent;
}

@media (max-width: 900px) {
  :root {
    --site-chrome-gutter: 16px;
  }
}

@media (max-width: 767px) {
  :root {
    --site-chrome-gutter: 16px;
  }

  .page-shell {
    width: min(var(--site-card-width), calc(100% - 24px));
  }

  .site-header.site-chrome {
    border-radius: 0;
    padding: var(--site-header-block-pad) var(--site-chrome-gutter);
  }

  .site-footer.site-chrome {
    padding: 0 var(--site-chrome-gutter) 22px;
  }
}

@media (max-width: 820px) {
  main#top .contact-form,
  main#top .contact-name-row {
    gap: 6px;
  }

  main#top .contact-form label {
    gap: 4px;
  }

  main#top .contact-form input,
  main#top .contact-form select,
  main#top .contact-form textarea {
    padding-block: 8px;
  }

  main#top .contact-form input,
  main#top .contact-form select {
    min-height: 39px;
  }

  main#top .contact-form textarea {
    min-height: 132px;
    height: 132px;
  }

  main#top .contact-form .button {
    min-height: 44px;
    margin-top: -2px;
  }

  main#top .contact-document-actions {
    gap: 6px;
    margin-top: 10px;
    padding-top: 0;
    border-top: 0;
  }

  main#top .contact-document-actions .button {
    min-height: 39px;
    font-weight: 650;
  }

}

@media (max-width: 430px) {
  :root {
    --mobile-page-gutter: 12px;
    --mobile-section-gap: 18px;
    --mobile-card-padding: 16px;
    --mobile-card-radius: 22px;
    --mobile-inner-radius: 16px;
  }

  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  body {
    font-size: 15px;
  }

  img,
  video,
  svg {
    max-width: 100%;
  }

  .page-shell {
    width: calc(100% - (var(--mobile-page-gutter) * 2));
    max-width: none;
  }

  .site-header.site-chrome,
  .site-footer.site-chrome {
    padding-right: var(--mobile-page-gutter);
    padding-left: var(--mobile-page-gutter);
  }

  .site-header {
    grid-template-columns: 38px minmax(0, 1fr) auto;
    gap: 8px;
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .site-header .site-nav {
    top: 58px;
    left: var(--mobile-page-gutter);
    width: min(282px, calc(100vw - (var(--mobile-page-gutter) * 2)));
  }

  .mobile-nav-toggle,
  .site-header .brand-mark {
    width: 36px;
    height: 36px;
  }

  .mobile-contact-link {
    min-height: 34px;
    font-size: 0.88rem;
  }

  .hero,
  .section,
  .system-detail-section,
  .about-letter-section,
  .credential-section,
  .credential-packet-cta,
  .featured-pillar,
  .featured-strategy-panel,
  .featured-final-cta,
  .media-final-cta,
  .media-album-section,
  .media-library-page .media-library-section {
    padding: var(--mobile-card-padding);
    border-radius: var(--mobile-card-radius);
  }

  .section,
  .system-detail-section,
  .credential-section,
  .featured-pillar,
  .featured-strategy-panel,
  .featured-final-cta,
  .media-album-section,
  .media-library-page .media-library-section,
  main#top .contact-section {
    margin-top: var(--mobile-section-gap);
  }

  .hero {
    gap: 14px;
    padding: 14px var(--mobile-card-padding) 13px;
  }

  .hero h1 {
    font-size: 2.02rem;
    line-height: 1;
    white-space: nowrap;
  }

  .section-heading {
    margin-bottom: 14px;
  }

  .eyebrow,
  main#top .section-heading .eyebrow,
  .innovation-section .eyebrow{
    margin-bottom: 4px;
    font-size: 11px;
    line-height: 11px;
    letter-spacing: 0.1em;
  }

  .section-heading h2,
  main#top .section-heading h2,
  main#top .library-section .section-heading h2,
  main#top .innovation-section .section-heading h2,
  main#top .contact-section .section-heading h2 {
    font-size: 24px;
    line-height: 28px;
    white-space: normal;
    overflow-wrap: normal;
  }

  main#top .library-section .section-heading h2 {
    font-size: 1.05rem;
    line-height: 1.06;
    white-space: nowrap;
  }

  p,
  .hero-text,
  .section-intro,
  .copy-panel p,
  .story-card p,
  .testimonial-card p,
  .system-card p,
  .innovation-panel p,
  .library-card p {
    font-size: 0.92rem;
    line-height: 1.46;
  }

  .hero-text {
    margin-top: 12px;
  }

  .button,
  .button-small{
    max-width: 100%;
    min-width: 0;
    min-height: 40px;
    padding-right: 12px;
    padding-left: 12px;
    border-radius: 999px;
    font-size: 0.84rem;
    line-height: 1.1;
    text-align: center;
    white-space: nowrap;
  }

  .button-small {
    font-size: 0.8rem;
  }

  .story-card,
  .system-card,
  .library-card,
  .gallery-card,
  .copy-panel,
  .quote-panel,
  .credential-summary-card,
  .credential-document-card,
  .featured-summary-card,
  .featured-stat-card,
  .featured-value-grid article,
  .media-category-card,
  .media-library-card,
  .innovation-panel {
    width: 100%;
    min-width: 0;
    padding: var(--mobile-card-padding);
    border-radius: var(--mobile-card-radius);
  }

  .media-library-page .gallery-grid {
    gap: 10px;
  }

  .media-library-page .gallery-card {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    align-items: stretch;
    padding: 0;
    border-radius: 18px;
  }

  .media-library-page .gallery-card .gallery-media {
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 0;
  }

  .media-library-page .gallery-card figcaption,
  .media-library-page .gallery-card > span:not(.gallery-media) {
    align-self: end;
    padding: 7px 9px 9px;
    font-size: 0.76rem;
    line-height: 1.16;
  }

  .section-split .split-layout,
  .system-detail-grid,
  .credential-packet-cta,
  .featured-final-cta,
  .innovation-panel,
  .about-letter-body {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .library-grid,
  .systems-grid,
  .story-grid,
  .testimonial-grid,
  .credential-summary-grid,
  .credential-document-grid,
  .featured-summary-grid,
  .featured-stat-grid,
  .featured-value-grid,
  .media-feature-grid,
  .media-final-cta {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .library-section .library-grid {
    row-gap: 16px;
    margin-top: 0;
  }

  .portfolio-systems-intro {
    margin: -4px 0 12px;
    font-size: 0.9rem;
    line-height: 1.34;
  }

  .library-card-media {
    height: 230px;
    margin-bottom: 12px;
    border-radius: var(--mobile-inner-radius);
  }

  .library-card.system-card h3 {
    margin-bottom: 2px;
    font-size: var(--mobile-fit-card-title-size, 20px);
    line-height: var(--mobile-fit-card-title-line, 24px);
    white-space: nowrap;
  }

  .system-card p {
    min-height: 0;
    margin-bottom: 9px;
    overflow: hidden;
    color: var(--muted);
    font-size: 0.78rem;
    line-height: 1.18;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .system-card .library-type {
    margin-bottom: 8px;
    font-size: var(--mobile-fit-eyebrow-size, 11px);
    line-height: var(--mobile-fit-eyebrow-line, 11px);
  }

  .system-card .library-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-height: 0;
    gap: 9px;
    margin-top: 0;
    padding-top: 0;
  }

  .system-card .library-actions .button {
    width: 100%;
    min-height: 40px;
    padding-right: 8px;
    padding-left: 8px;
    font-size: 0.78rem;
  }

  .portfolio-matters-card,
  .credentials-card {
    padding: var(--mobile-card-padding);
  }

  .portfolio-value-list {
    gap: 12px;
    padding-top: 12px;
  }

  .portfolio-value-list article {
    min-width: 0;
    padding-left: 14px;
  }

  .portfolio-value-list h3 {
    font-size: 0.95rem;
    line-height: 1.16;
  }

  .portfolio-value-list p {
    font-size: 0.88rem;
    line-height: 1.34;
  }

  .credential-link-grid,
  .contact-document-actions,
  .credential-actions,
  .credential-section-actions,
  .featured-actions{
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .credential-link-grid .button,
  .contact-document-actions .button,
  .credential-actions .button,
  .credential-section-actions .button,
  .featured-actions .button{
    width: 100%;
  }

  .innovation-panel {
    min-height: 0;
    padding: 15px;
  }

  .innovation-thumbnail {
    border-radius: var(--mobile-inner-radius);
  }

  .innovation-panel .button {
    width: 100%;
    justify-self: stretch;
  }

  .gallery-grid,
  .media-category-grid,
  .media-section-grid,
  .media-preview-carousel > .media-section-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px;
  }

  .gallery-card {
    border-radius: var(--mobile-inner-radius);
  }

  .gallery-card figcaption,
  .gallery-card > span:not(.gallery-media) {
    padding: 9px 10px;
    font-size: 0.76rem;
    line-height: 1.18;
  }

  .contact-form,
  .contact-name-row,
  main#top .contact-form,
  main#top .contact-name-row {
    gap: 7px;
  }

  .contact-form input,
  .contact-form select,
  .contact-form textarea,
  main#top .contact-form input,
  main#top .contact-form select,
  main#top .contact-form textarea {
    min-width: 0;
    border-radius: 14px;
    padding: 8px 10px;
    font-size: 1rem;
    line-height: 1.2;
  }

  .contact-form .select-field::after,
  main#top .contact-form .select-field::after {
    right: 18px;
    bottom: 14px;
  }

  .contact-form select,
  main#top .contact-form select {
    background-image: none;
    padding-right: 52px;
  }

  .contact-form input,
  .contact-form select,
  main#top .contact-form input,
  main#top .contact-form select {
    min-height: 40px;
  }

  .contact-form textarea,
  main#top .contact-form textarea {
    min-height: 132px;
    height: 132px;
  }

  .system-document-carousel .system-document-card,
  .system-document-card {
    border-radius: var(--mobile-card-radius);
  }

  .system-document-preview {
    min-height: 190px;
    border-radius: var(--mobile-inner-radius);
  }

  .site-footer.site-chrome {
    padding-top: 0;
    padding-bottom: 22px;
  }

  .footer-accordion-toggle {
    min-height: 40px;
    font-size: 0.72rem;
    letter-spacing: 0.12em;
  }

  .site-footer .footer-link-list a {
    font-size: 0.9rem;
    line-height: 1.34;
  }

  .site-footer .footer-bottom {
    gap: 6px;
    margin-top: 8px;
  }
}

/* Source-order final mobile harmonizer for 430px and below. */
@media (max-width: 430px) {
  :root {
    --mobile-page-gutter: 12px;
    --mobile-section-gap: 18px;
    --mobile-section-pad: 16px;
    --mobile-section-radius: 22px;
    --mobile-grid-gap: 10px;
  }

  .page-shell {
    width: calc(100% - (var(--mobile-page-gutter) * 2));
  }

  .hero,
  .section,
  .system-detail-section,
  .about-letter-section,
  .media-library-page .media-library-section {
    width: 100%;
    max-width: 100%;
    padding: var(--mobile-section-pad);
    border-radius: var(--mobile-section-radius);
  }

  .section,
  .system-detail-section,
  .media-library-page .media-library-section,
  main#top .contact-section {
    margin-top: var(--mobile-section-gap);
  }

  .section-heading {
    margin-bottom: 14px;
  }

  .gallery-grid,
  .library-grid,
  .systems-grid,
  .story-grid,
  .testimonial-grid,
  .media-category-grid,
  .media-section-grid,
  .media-feature-grid,
  .credential-link-grid,
  .contact-document-actions {
    gap: var(--mobile-grid-gap);
  }

  .button,
  button.button,
  .button-small{
    min-height: 40px;
    max-width: 100%;
    padding-right: 12px;
    padding-left: 12px;
    border-radius: 999px;
    font-size: 0.84rem;
    line-height: 1.1;
  }

}

@media (max-width: 430px) {
  main#top #featured-work .innovation-section .section-heading h2 {
    font-size: clamp(0.96rem, 4.05vw, 1.1rem);
    line-height: 1.05;
    text-wrap: nowrap;
    white-space: nowrap;
    overflow-wrap: normal;
    letter-spacing: 0;
  }

  .media-library-page .gallery-grid {
    gap: 10px;
  }

  .media-library-page .gallery-card {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    align-items: stretch;
    padding: 0;
    border-radius: 18px;
  }

  .media-library-page .gallery-card .gallery-media {
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 0;
  }

  .media-library-page .gallery-card figcaption,
  .media-library-page .gallery-card > span:not(.gallery-media) {
    align-self: end;
    padding: 7px 9px 9px;
    font-size: 0.76rem;
    line-height: 1.16;
  }

}

/* Final mobile override: keep featured copy at natural four-line lengths. */
@media (max-width: 430px) {
  main#top #featured-work .innovation-section .section-heading {
    margin-bottom: 15px;
  }

  main#top #featured-work .innovation-panel p {
    width: 100%;
    max-width: none;
    font-size: 1rem;
    line-height: 1.5;
    text-align: left;
    text-align-last: auto;
    text-justify: auto;
    text-wrap: balance;
    hyphens: none;
    word-break: normal;
    overflow-wrap: normal;
  }
}

@media (max-width: 399px) {
  main#top #featured-work .innovation-panel p {
    font-size: 0.9375rem;
  }
}

/* Final compact heading scale: non-hero mobile page headings stay one line. */
@media (max-width: 767px), (max-height: 640px) and (max-width: 920px) {
  .section-heading > .eyebrow,
  .about-letter-heading > .eyebrow,
  .featured-pillar-copy > .eyebrow,
  .featured-strategy-panel > .eyebrow,
  .featured-final-cta > div > .eyebrow,
  .system-detail-copy > .eyebrow,
  .credential-section-copy > .eyebrow,
  .credential-packet-cta > .eyebrow,
  .media-final-cta .eyebrow,
  .contact-info-copy > .eyebrow {
    max-width: 100%;
    overflow: hidden;
    font-size: var(--mobile-fit-eyebrow-size, 11px) !important;
    line-height: var(--mobile-fit-eyebrow-line, 11px) !important;
    text-overflow: clip;
    white-space: nowrap !important;
  }

  .section-heading > h2,
  .about-letter-heading > h1,
  .featured-pillar-copy > h2,
  .featured-strategy-panel > h2,
  .featured-final-cta h2,
  .system-detail-copy > h2,
  .credential-section-copy > h2,
  .credential-packet-cta h2,
  .media-final-cta h2,
  .contact-info-copy > h2 {
    max-width: 100%;
    overflow: visible;
    font-size: var(--mobile-fit-title-size, 24px) !important;
    line-height: var(--mobile-fit-title-line, 28px) !important;
    overflow-wrap: normal;
    white-space: nowrap !important;
  }

  .library-card.system-card h3 {
    max-width: 100%;
    overflow: visible;
    font-size: var(--mobile-fit-card-title-size, 20px) !important;
    line-height: var(--mobile-fit-card-title-line, 24px) !important;
    overflow-wrap: normal;
    white-space: nowrap !important;
  }
}

main#top .credentials-card {
  overflow: hidden;
  border-color: rgba(184, 135, 47, 0.26);
  background:
    linear-gradient(145deg, rgba(255, 252, 246, 0.96), rgba(244, 233, 216, 0.88)),
    rgba(255, 250, 243, 0.9);
  box-shadow:
    0 18px 42px rgba(52, 36, 24, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

main#top .credentials-card .credential-document-heading {
  margin-bottom: 10px !important;
}

main#top .credentials-card .credential-document-heading .eyebrow {
  margin-bottom: 4px;
}

main#top .credentials-card .credential-document-heading h2 {
  margin: 0;
  font-family: Georgia, "Palatino Linotype", serif;
  line-height: 1.05;
}

main#top .credentials-card .credential-link-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 8px;
}

main#top .credentials-card .credential-link-grid .button {
  min-height: 30px;
  border-color: rgba(184, 135, 47, 0.34);
  color: var(--text);
  background: rgba(255, 255, 255, 0.54);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.56);
  font-size: 0.78rem;
  line-height: 1.08;
}

main#top .credentials-card .credential-link-grid .button:hover,
main#top .credentials-card .credential-link-grid .button:focus-visible {
  border-color: rgba(184, 135, 47, 0.48);
  color: var(--text);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.62),
    0 8px 18px rgba(184, 135, 47, 0.12);
}

main#top .credentials-card .credential-link-grid .credential-priority-link {
  border-color: rgba(184, 135, 47, 0.34);
  background: rgba(255, 255, 255, 0.54);
}

@media (max-width: 520px) {
  main#top .credentials-card .credential-link-grid .button {
    min-height: 30px;
    padding-right: 8px;
    padding-left: 8px;
    font-size: 0.78rem;
    line-height: 1.08;
  }
}

/* Final shared section rhythm: keep heading-to-content spacing consistent. */
:root {
  --section-heading-content-gap: 16px;
}

.section-heading {
  margin-bottom: var(--section-heading-content-gap) !important;
}

.section-heading > h2:last-child {
  margin-bottom: 0 !important;
}

.section-heading + * {
  margin-top: 0 !important;
}

.portfolio-matters-card {
  row-gap: 0 !important;
}

.portfolio-matters-card > p {
  margin-bottom: 10px;
}

@media (max-width: 430px) {
  main#top #featured-work .innovation-section .section-heading {
    margin-bottom: 15px !important;
  }
}

/* Final responsive type scale: hero, section titles, card titles and eyebrows. */
:root {
  --type-hero-title-size: clamp(3.25rem, 5vw, 4.45rem);
  --type-hero-title-line: 0.98;
  --type-section-title-size: clamp(2.2rem, 3vw, 2.5rem);
  --type-section-title-line: 1.04;
  --type-card-title-size: clamp(1.6rem, 2vw, 1.85rem);
  --type-card-title-line: 1.08;
  --type-stat-value-size: clamp(0.95rem, 1.2vw, 1.25rem);
  --type-stat-label-size: clamp(0.64rem, 0.74vw, 0.78rem);
  --type-eyebrow-size: 0.76rem;
  --type-eyebrow-line: 1.15;
  --type-heading-white-space: nowrap;
  --type-card-title-white-space: nowrap;
  --type-eyebrow-white-space: nowrap;
}

.section-heading h2,
main#top .section-heading h2,
main:not(#top) .section-heading h2,
main:not(#top) .about-letter-heading > h1,
main:not(#top) .featured-pillar-copy > h2,
main:not(#top) .featured-strategy-panel > h2,
main:not(#top) .featured-final-cta h2,
main:not(#top) .system-detail-copy > h2,
main:not(#top) .credential-section-copy > h2,
main:not(#top) .credential-packet-cta h2,
main:not(#top) .media-final-cta h2,
main#top .credentials-card .credential-document-heading h2,
main#top .contact-section .section-heading h2,
.contact-info-copy h2 {
  overflow: visible !important;
  font-size: var(--mobile-fit-title-size, var(--type-section-title-size)) !important;
  line-height: var(--mobile-fit-title-line, var(--type-section-title-line)) !important;
  text-overflow: clip !important;
  white-space: var(--type-heading-white-space, normal) !important;
}

.library-card h3,
.library-card.system-card h3,
.system-card h3,
.story-card h3,
.quote-panel h3,
.media-subsection-heading h3,
.media-album-heading h3,
.media-category-card h3,
.media-library-meta strong,
.achievement-card strong {
  overflow: visible !important;
  font-size: var(--mobile-fit-card-title-size, var(--type-card-title-size)) !important;
  line-height: var(--mobile-fit-card-title-line, var(--type-card-title-line)) !important;
  text-overflow: clip !important;
  white-space: var(--type-card-title-white-space, normal) !important;
}

.eyebrow,
.section-heading .eyebrow,
main#top .section-heading .eyebrow,
.innovation-section .eyebrow,
.featured-pillar-copy > .eyebrow,
.featured-strategy-panel > .eyebrow,
.featured-final-cta > div > .eyebrow,
.system-detail-copy > .eyebrow,
.credential-section-copy > .eyebrow,
.credential-packet-cta > .eyebrow,
.media-final-cta .eyebrow,
.contact-info-copy > .eyebrow,
main#top .credentials-card .credential-document-heading .eyebrow {
  overflow: visible !important;
  font-size: var(--mobile-fit-eyebrow-size, var(--type-eyebrow-size)) !important;
  line-height: var(--mobile-fit-eyebrow-line, var(--type-eyebrow-line)) !important;
  letter-spacing: 0.12em;
  text-overflow: clip !important;
  white-space: var(--type-eyebrow-white-space, normal) !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  :root {
    --type-hero-title-size: clamp(2.35rem, calc(4.0625vw + 0.4rem), 3rem);
    --type-section-title-size: clamp(1.6rem, calc(3.75vw - 0.2rem), 2.2rem);
    --type-section-title-line: 1.05;
    --type-card-title-size: clamp(1.46rem, calc(0.875vw + 1.04rem), 1.6rem);
    --type-card-title-line: 1.08;
    --type-eyebrow-size: clamp(0.7rem, calc(0.375vw + 0.52rem), 0.76rem);
    --type-heading-white-space: nowrap;
    --type-card-title-white-space: nowrap;
    --type-eyebrow-white-space: nowrap;
  }
}

@media (max-width: 767px) {
  :root {
    --type-hero-title-size: 2.15rem;
    --type-hero-title-line: 1;
    --type-section-title-size: 1.55rem;
    --type-section-title-line: 1.08;
    --type-card-title-size: 1.42rem;
    --type-card-title-line: 1.1;
    --type-eyebrow-size: 0.68rem;
    --type-eyebrow-line: 1.2;
    --type-heading-white-space: nowrap;
    --type-card-title-white-space: nowrap;
    --type-eyebrow-white-space: nowrap;
  }
}

@media (max-width: 360px) {
  :root {
    --type-hero-title-size: 2rem;
    --type-section-title-size: 1.46rem;
    --type-card-title-size: 1.34rem;
    --type-eyebrow-size: 0.64rem;
  }
}

@media (max-width: 430px) {
  #libraryGrid .library-card.system-card h3 {
    overflow: visible !important;
    font-size: var(--mobile-fit-card-title-size, 20px) !important;
    line-height: var(--mobile-fit-card-title-line, 24px) !important;
    white-space: nowrap !important;
  }

}

/* Tablet follows the mobile layout, with roomier spacing for the larger screen. */
@media (min-width: 768px) and (max-width: 1024px) {
  :root {
    --mobile-page-gutter: clamp(16px, 3vw, 28px);
    --mobile-section-gap: 24px;
    --mobile-section-pad: clamp(18px, 3vw, 28px);
    --mobile-section-radius: 26px;
    --mobile-grid-gap: 14px;
  }

  html {
    scroll-padding-top: 28px;
  }

  section[id],
  #about,
  #systems,
  #featured-work,
  #credentials,
    #program-impact,
    #media,
  #playing-career,
  #contact {
    scroll-margin-top: 28px;
  }

  .page-shell {
    width: calc(100% - (var(--mobile-page-gutter) * 2));
    max-width: none;
  }

  .site-header.site-chrome,
  .site-footer.site-chrome {
    padding-right: var(--mobile-page-gutter);
    padding-left: var(--mobile-page-gutter);
  }

  .site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
    border-radius: 22px;
  }

  .mobile-nav-toggle {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: var(--text);
    cursor: pointer;
    justify-self: start;
  }

  .mobile-nav-toggle span {
    display: block;
    width: 22px;
    height: 2px;
    margin: 3px 0;
    border-radius: 999px;
    background: currentColor;
    transition:
      transform 180ms ease,
      opacity 160ms ease;
  }

  .site-header.nav-open .mobile-nav-toggle span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }

  .site-header.nav-open .mobile-nav-toggle span:nth-child(2) {
    opacity: 0;
  }

  .site-header.nav-open .mobile-nav-toggle span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }

  .site-header .brand {
    gap: 0;
    justify-self: center;
  }

  .site-header .brand-copy {
    display: none;
  }

  .site-header .brand-mark {
    width: 38px;
    height: 38px;
    border-radius: 11px;
  }

  .mobile-contact-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 4px;
    color: var(--text);
    font-family: Georgia, "Palatino Linotype", serif;
    font-size: 0.95rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    justify-self: end;
  }

  .site-header .site-nav {
    position: fixed;
    top: 72px;
    left: var(--mobile-page-gutter);
    z-index: 1001;
    display: flex;
    flex-direction: column;
    width: min(282px, calc(100vw - (var(--mobile-page-gutter) * 2)));
    padding: 8px 0;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: rgba(255, 249, 240, 0.97);
    box-shadow: var(--shadow);
    backdrop-filter: blur(18px);
    transform: translateX(calc(-100% - 28px));
    opacity: 0;
    pointer-events: none;
    transition:
      transform 220ms ease,
      opacity 180ms ease;
  }

  .site-header.nav-open .site-nav {
    transform: translateX(0);
    opacity: 1;
    pointer-events: auto;
  }

  .site-header .site-nav a {
    display: block;
    width: 100%;
    padding: 14px 18px;
    border-bottom: 1px solid rgba(158, 111, 53, 0.18);
    color: var(--text);
    font-size: 1rem;
    line-height: 1.2;
  }

  .site-header .site-nav a:last-child {
    border-bottom: 0;
  }

  .hero,
  .section,
  .system-detail-section,
  .about-letter-section,
  .credential-section,
  .credential-packet-cta,
  .featured-pillar,
  .featured-strategy-panel,
  .featured-final-cta,
  .media-final-cta,
  .media-album-section,
  .media-library-page .media-library-section {
    width: 100%;
    max-width: 100%;
    padding: var(--mobile-section-pad);
    border-radius: var(--mobile-section-radius);
  }

  .section,
  .system-detail-section,
  .media-library-page .media-library-section,
  main#top .contact-section {
    margin-top: var(--mobile-section-gap);
  }

  .hero,
  .split-layout,
  .portfolio-matters-grid,
  .innovation-panel,
  .systems-grid,
  .story-grid,
  .testimonial-grid,
  .impact-grid,
  .library-grid,
  .system-detail-grid,
  .system-document-grid,
  .media-final-cta,
  .media-category-grid,
  .media-section-grid,
  .media-feature-grid,
  .case-study-section,
  .production-link-grid,
  .timeline-grid,
  .asset-grid,
  .anaya-gallery-preview,
  .gallery-grid,
  .credential-summary-grid,
  .credential-document-grid,
  .credential-document-grid-compact,
  .credential-document-grid-feature,
  .credential-section-grid,
  .credential-license-feature,
  .credential-reference-feature,
  .credential-packet-cta {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .gallery-grid,
  .library-grid,
  .systems-grid,
  .story-grid,
  .testimonial-grid,
  .media-category-grid,
  .media-section-grid,
  .media-feature-grid,
  .credential-summary-grid,
  .credential-document-grid,
  .credential-link-grid,
  .contact-document-actions,
  .credential-actions,
  .credential-section-actions,
  .featured-actions{
    display: grid;
    gap: var(--mobile-grid-gap);
  }

  .credential-link-grid,
  .contact-document-actions,
  .credential-actions,
  .credential-section-actions,
  .featured-actions{
    grid-template-columns: minmax(0, 1fr);
  }

  .button,
  button.button,
  .button-small,
  .credential-link-grid .button,
  .contact-document-actions .button,
  .credential-actions .button,
  .credential-section-actions .button,
  .featured-actions .button{
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .hero h1{
    white-space: normal !important;
  }
  main#top .credentials-card .credential-link-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 8px;
  }
  main#top .credentials-card .credential-link-grid .button {
    min-height: 30px;
    padding-right: 9px;
    padding-left: 9px;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.1;
    white-space: nowrap;
  }

  .credential-hero-bundle {
    width: min(100%, 300px);
    height: 280px;
    margin-inline: auto;
  }

  .credential-section,
  .credential-packet-cta {
    padding: var(--mobile-section-pad);
    border-radius: var(--mobile-section-radius);
  }

  .credential-summary-card,
  .credential-document-card {
    min-height: 0;
    padding: 16px;
  }

  .credential-preview,
  #resume .credential-feature-card .credential-preview,
  .credential-reference-feature .credential-feature-card .credential-preview,
  .credential-preview-packet {
    min-height: 320px;
  }

  #certifications .credential-preview,
  #memberships .credential-preview,
  #licenses .credential-feature-card .credential-preview {
    min-height: 205px;
  }

  .credential-preview-packet {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .credential-reference-feature .credential-section-copy {
    padding: 18px;
    border-radius: 22px;
  }
}

/* Desktop hero stats sit under the intro copy in a responsive 3 x 2 pill grid. */
@media (min-width: 1025px) {
  .section {
    padding-inline: clamp(42px, 3.4vw, 88px);
  }
}

/* Locked copy-width rules: section intros use the full content lane; compact card subtext stays one line. */
.section-heading + .section-intro,
.section-heading + .portfolio-systems-intro,
.section-heading + .credential-section-intro {
  width: 100%;
  max-width: none;
}

.system-card p,
.media-category-card p {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  font-size: clamp(0.78rem, 1.08vw, 0.92rem);
  line-height: 1.35;
  text-overflow: ellipsis;
  text-wrap: nowrap;
  white-space: nowrap;
}
.section-heading,
.about-letter-heading,
.featured-pillar-copy,
.featured-strategy-panel,
.featured-final-cta,
.system-detail-copy,
.credential-section-copy,
.credential-packet-cta,
.media-final-cta,
.contact-info-copy {
  container-type: inline-size;
}

.section-heading,
.about-letter-heading,
.featured-pillar-copy,
.featured-strategy-panel,
.featured-final-cta,
.system-detail-copy,
.credential-section-copy,
.credential-packet-cta,
.media-final-cta,
.contact-info-copy {
  --type-section-title-size: clamp(1.25rem, calc(1rem + 1.8cqw), 2.72rem);
  --type-section-title-line: 1.03;
  --type-eyebrow-size: clamp(0.62rem, calc(0.54rem + 0.26cqw), 0.84rem);
  --type-eyebrow-line: 1.15;
  --type-eyebrow-letter-spacing: clamp(0.08em, 0.16cqw, 0.14em);
}

@media (max-width: 767px) {
  .section-heading,
  .about-letter-heading,
  .featured-pillar-copy,
  .featured-strategy-panel,
  .featured-final-cta,
  .system-detail-copy,
  .credential-section-copy,
  .credential-packet-cta,
  .media-final-cta,
  .contact-info-copy {
    --type-section-title-size: clamp(1.25rem, calc(1rem + 1.8cqw), 2.72rem);
    --type-section-title-line: 1.03;
    --type-eyebrow-size: clamp(0.62rem, calc(0.54rem + 0.26cqw), 0.84rem);
    --type-eyebrow-line: 1.15;
    --type-eyebrow-letter-spacing: clamp(0.08em, 0.16cqw, 0.14em);
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .section-heading,
  .about-letter-heading,
  .featured-pillar-copy,
  .featured-strategy-panel,
  .featured-final-cta,
  .system-detail-copy,
  .credential-section-copy,
  .credential-packet-cta,
  .media-final-cta,
  .contact-info-copy {
    --type-section-title-size: clamp(1.25rem, calc(1rem + 1.8cqw), 2.72rem);
    --type-section-title-line: 1.03;
    --type-eyebrow-size: clamp(0.62rem, calc(0.54rem + 0.26cqw), 0.84rem);
    --type-eyebrow-line: 1.15;
    --type-eyebrow-letter-spacing: clamp(0.08em, 0.16cqw, 0.14em);
  }
}

@media (max-width: 1024px) {

  .section-heading h2,
  main#top .section-heading h2,
  main:not(#top) .section-heading h2,
  main:not(#top) .about-letter-heading > h1,
  main:not(#top) .featured-pillar-copy > h2,
  main:not(#top) .featured-strategy-panel > h2,
  main:not(#top) .featured-final-cta h2,
  main:not(#top) .system-detail-copy > h2,
  main:not(#top) .credential-section-copy > h2,
  main:not(#top) .credential-packet-cta h2,
  main:not(#top) .media-final-cta h2,
  main#top .credentials-card .credential-document-heading h2,
  main#top .contact-section .section-heading h2,
  .contact-info-copy h2 {
    font-size: var(--mobile-fit-title-size, var(--type-section-title-size)) !important;
    line-height: var(--mobile-fit-title-line, var(--type-section-title-line)) !important;
    white-space: var(--type-heading-white-space, nowrap) !important;
  }

  .eyebrow,
  .section-heading .eyebrow,
  main#top .section-heading .eyebrow,
  .innovation-section .eyebrow,
  main:not(#top) .featured-pillar-copy > .eyebrow,
  main:not(#top) .featured-strategy-panel > .eyebrow,
  main:not(#top) .featured-final-cta > div > .eyebrow,
  main:not(#top) .system-detail-copy > .eyebrow,
  main:not(#top) .credential-section-copy > .eyebrow,
  main:not(#top) .credential-packet-cta > .eyebrow,
  main:not(#top) .media-final-cta .eyebrow,
  .contact-info-copy > .eyebrow,
  main#top .credentials-card .credential-document-heading .eyebrow {
    font-size: var(--mobile-fit-eyebrow-size, var(--type-eyebrow-size)) !important;
    line-height: var(--mobile-fit-eyebrow-line, var(--type-eyebrow-line)) !important;
    letter-spacing: var(--type-eyebrow-letter-spacing, clamp(0.08em, 0.16cqw, 0.14em));
    white-space: var(--type-eyebrow-white-space, nowrap) !important;
  }
}

/* Desktop cap type scale: grows with the expanded 2560px content canvas. */
@media (min-width: 1025px) {
  :root {
    --type-hero-title-size: clamp(3.65rem, calc(2.2rem + 2.55vw), 6.7rem);
    --type-hero-title-line: 0.95;
    --type-section-title-size: clamp(2.15rem, calc(1.45rem + 1.12vw), 3.25rem);
    --type-section-title-line: 1.02;
    --type-card-title-size: clamp(1.7rem, calc(1.14rem + 0.8vw), 2.35rem);
    --type-card-title-line: 1.06;
    --type-eyebrow-size: clamp(0.76rem, calc(0.57rem + 0.22vw), 1.1rem);
    --type-eyebrow-line: 1.15;
    --type-body-size: clamp(0.98rem, calc(0.76rem + 0.25vw), 1.18rem);
    --type-small-body-size: clamp(0.9rem, calc(0.72rem + 0.18vw), 1.02rem);
    --type-stat-value-size: clamp(1.18rem, calc(0.82rem + 0.68vw), 1.72rem);
    --type-stat-label-size: clamp(0.68rem, calc(0.5rem + 0.28vw), 0.88rem);
    --hero-portrait-width: clamp(390px, 30vw, 720px);
    --hero-portrait-height: clamp(410px, 27vw, 650px);
    --hero-desktop-gap: clamp(16px, 2.6vw, 72px);
  }

  .hero h1{
    font-size: clamp(3.35rem, 9.1cqw, var(--type-hero-title-size)) !important;
    line-height: var(--type-hero-title-line) !important;
  }

  .section-heading h2,
  main#top .section-heading h2,
  main:not(#top) .section-heading h2,
  main:not(#top) .about-letter-heading > h1,
  main:not(#top) .featured-pillar-copy > h2,
  main:not(#top) .featured-strategy-panel > h2,
  main:not(#top) .featured-final-cta h2,
  main:not(#top) .system-detail-copy > h2,
  main:not(#top) .credential-section-copy > h2,
  main:not(#top) .credential-packet-cta h2,
  main:not(#top) .media-final-cta h2,
  main#top .credentials-card .credential-document-heading h2,
  main#top .contact-section .section-heading h2,
  .contact-info-copy h2 {
    font-size: var(--type-section-title-size) !important;
    line-height: var(--type-section-title-line) !important;
  }

  .library-card h3,
  .library-card.system-card h3,
  .system-card h3,
  .story-card h3,
  .quote-panel h3,
  .media-subsection-heading h3,
  .media-album-heading h3,
  .media-category-card h3,
  .media-library-meta strong,
  .achievement-card strong,
  .portfolio-matters-card .section-heading h2,
  .credentials-card h3,
  .credential-summary-card h3,
  .credential-document-card h3,
  .featured-summary-card h3 {
    font-size: var(--type-card-title-size) !important;
    line-height: var(--type-card-title-line) !important;
  }

  main#top .credentials-card .credential-document-heading h2 {
    max-width: 100%;
    font-size: var(--type-section-title-size) !important;
    line-height: var(--type-section-title-line) !important;
    white-space: nowrap !important;
  }

  .eyebrow,
  .section-heading .eyebrow,
  main#top .section-heading .eyebrow,
  .innovation-section .eyebrow,
  .featured-pillar-copy > .eyebrow,
  .featured-strategy-panel > .eyebrow,
  .featured-final-cta > div > .eyebrow,
  .system-detail-copy > .eyebrow,
  .credential-section-copy > .eyebrow,
  .credential-packet-cta > .eyebrow,
  .media-final-cta .eyebrow,
  main#top .credentials-card .credential-document-heading .eyebrow {
    font-size: var(--type-eyebrow-size) !important;
    line-height: var(--type-eyebrow-line) !important;
    letter-spacing: var(--type-eyebrow-letter-spacing, clamp(0.08em, 0.16cqw, 0.14em));
  }

  .hero-text,
  .section-intro,
  .copy-panel p,
  .story-card p,
  .testimonial-card p,
  .system-card p,
  .innovation-panel p,
  .library-card p,
  .media-category-card p{
    font-size: var(--type-body-size) !important;
    line-height: 1.62;
  }

  .button,
  .button-small,
  .site-nav a,
  .credential-link-grid .button,
  .contact-document-actions .button,
  .credential-actions .button,
  .credential-section-actions .button,
  .featured-actions .button{
    font-size: var(--type-small-body-size);
  }

  .brand-copy strong {
    font-size: clamp(1.08rem, calc(0.88rem + 0.22vw), 1.28rem);
  }
}

/* Shared desktop header: compact Apple-style nav with the MF mark before the links. */
@media (min-width: 1025px) {
  .site-header.site-chrome {
    min-height: 44px;
    justify-content: center;
    gap: clamp(34px, 4vw, 58px);
    border-bottom: 0;
    background: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(18px) saturate(1.08);
    -webkit-backdrop-filter: blur(18px) saturate(1.08);
  }

  .site-header .brand {
    z-index: 1;
    display: grid;
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    place-items: center;
    align-self: center;
    gap: 0;
    transform: none;
  }

  .site-header .brand-mark {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 7px;
    color: #ffffff;
    font-size: 0.78rem;
    line-height: 1;
    background: #a83a24;
  }

  .site-header .site-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    max-width: calc(100vw - 88px);
    gap: clamp(34px, 4vw, 58px);
    margin: 0;
  }

  .site-header .site-nav a {
    font-family: "Trebuchet MS", "Gill Sans", sans-serif;
    font-size: clamp(calc(0.7rem + 2px), calc(0.64rem + 0.1vw + 2px), calc(0.82rem + 2px));
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0;
  }

  .site-header .site-nav-featured,
  .site-header .site-nav-systems,
  .site-header .site-nav-gallery {
    position: static;
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    margin-block: calc(var(--site-header-block-pad) * -1);
  }

  .site-header .site-nav-featured > a,
  .site-header .site-nav-systems > a,
  .site-header .site-nav-gallery > a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }

  .site-header .featured-nav-dropdown,
  .site-header .systems-nav-dropdown,
  .site-header .gallery-nav-dropdown {
    position: fixed;
    top: 44px;
    left: 0;
    right: 0;
    z-index: 999;
    display: block;
    visibility: hidden;
    width: 100vw;
    background: rgba(255, 250, 243, 0.965);
    backdrop-filter: blur(14px) saturate(1.04);
    -webkit-backdrop-filter: blur(14px) saturate(1.04);
    box-shadow: 0 14px 26px rgba(31, 27, 22, 0.06);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-8px);
    transition:
      opacity 160ms ease,
      transform 180ms ease,
      visibility 0ms linear 180ms;
  }

  .site-header .site-nav-featured:is(:hover, :focus-within) .featured-nav-dropdown {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0ms;
  }

  .site-header .site-nav-systems:is(:hover, :focus-within) .systems-nav-dropdown {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0ms;
  }
  .site-header .site-nav-gallery:is(:hover, :focus-within) .gallery-nav-dropdown {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    transition-delay: 0ms;
  }

  .site-header .featured-nav-panel,
  .site-header .systems-nav-panel,
  .site-header .gallery-nav-panel {
    display: grid;
    grid-template-columns: minmax(210px, 1.15fr) minmax(150px, 0.8fr) minmax(190px, 0.9fr);
    column-gap: clamp(48px, 6vw, 100px);
    width: min(860px, calc(100vw - 88px));
    margin: 0 auto;
    padding: 22px 0 28px;
  }

  .site-header .featured-nav-column,
  .site-header .systems-nav-column,
  .site-header .gallery-nav-column {
    display: grid;
    align-content: start;
    gap: 8px;
  }

  .site-header .featured-nav-column p,
  .site-header .systems-nav-column p,
  .site-header .gallery-nav-column p {
    margin: 0 0 2px;
    color: rgba(29, 29, 31, 0.56);
    font-family: "Trebuchet MS", "Gill Sans", sans-serif;
    font-size: 0.73rem;
    font-weight: 600;
    line-height: 1.2;
  }

  .site-header .featured-nav-column a,
  .site-header .systems-nav-column a,
  .site-header .gallery-nav-column a {
    display: block;
    padding: 0;
    color: #1d1d1f;
    font-family: "Trebuchet MS", "Gill Sans", sans-serif;
    font-size: clamp(1.08rem, calc(0.98rem + 0.18vw), 1.24rem);
    font-weight: 650;
    line-height: 1.14;
    text-decoration: none;
    white-space: nowrap;
  }

  .site-header .featured-nav-column a:hover,
  .site-header .featured-nav-column a:focus-visible,
  .site-header .systems-nav-column a:hover,
  .site-header .systems-nav-column a:focus-visible,
  .site-header .gallery-nav-column a:hover,
  .site-header .gallery-nav-column a:focus-visible {
    color: var(--red);
  }

  .site-footer.site-chrome {
    padding-top: 10px;
    padding-bottom: 24px;
  }

  .site-footer.site-chrome .footer-grid {
    padding-top: 16px;
  }

  .site-footer .footer-link-list {
    gap: 3px;
  }

  .site-footer .footer-bottom {
    gap: 14px;
    margin-top: 16px;
    padding-top: 12px;
  }
}

@media (max-width: 1024px) {
  .site-header .site-nav-featured,
  .site-header .site-nav-systems,
  .site-header .site-nav-gallery {
    display: block;
    width: 100%;
  }

  .site-header .featured-nav-dropdown,
  .site-header .systems-nav-dropdown,
  .site-header .gallery-nav-dropdown {
    display: none;
  }
}

@media (max-width: 767px) {
  .site-header .site-nav {
    max-height: calc(100dvh - 88px);
    overflow-y: auto;
  }

  .site-header .site-nav-featured {
    position: relative;
  }

  .site-header .site-nav-featured > a {
    padding-right: 54px;
  }

  .site-header .mobile-subnav-toggle {
    position: absolute;
    top: 2px;
    right: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--text);
    cursor: pointer;
  }

  .site-header .mobile-subnav-toggle::before {
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    content: "";
    transform: rotate(45deg) translateY(-2px);
    transition: transform 160ms ease;
  }

  .site-header .site-nav-featured.is-mobile-subnav-open .mobile-subnav-toggle::before {
    transform: rotate(225deg) translate(-2px, -2px);
  }

  .site-header .featured-nav-dropdown {
    display: none;
  }

  .site-header .site-nav-featured.is-mobile-subnav-open .featured-nav-dropdown {
    display: block;
  }

  .site-header .featured-nav-panel {
    display: grid;
    gap: 0;
    padding: 0 0 8px;
  }

  .site-header .featured-nav-column {
    display: grid;
    gap: 0;
  }

  .site-header .featured-nav-column:first-child {
    display: none;
  }

  .site-header .featured-nav-column p {
    margin: 0;
    padding: 8px 18px 4px;
    color: rgba(29, 29, 31, 0.58);
    font-family: "Trebuchet MS", "Gill Sans", sans-serif;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
  }

  .site-header .featured-nav-column a {
    padding: 8px 18px 8px 30px;
    font-size: 0.92rem;
    line-height: 1.2;
  }
}

/* System cards keep the description attached to the title, then separate it from the image. */
.system-card > h3,
.library-card.system-card > h3 {
  margin-bottom: 3px !important;
}

.system-card > p,
.library-card.system-card > p {
  flex: 0 0 auto;
  min-height: 0;
  margin: 0 0 clamp(10px, 0.9vw, 14px) !important;
  overflow: hidden;
  line-height: 1.25 !important;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.system-card > p + .library-card-media {
  margin-top: 0;
}

@media (max-width: 430px) {
  .system-card > h3,
  .library-card.system-card > h3 {
    margin-bottom: 2px !important;
  }

  .system-card > p,
  .library-card.system-card > p {
    margin-bottom: 8px !important;
    font-size: 13px !important;
    line-height: 1.24 !important;
  }
}

/* Systems & Proof of Work: responsive fit for intro and mini-card text. */
main#top #systems.library-section,
main#top #playing-career.playing-career-section,
main#top #featured-work {
  container-type: inline-size;
  overflow: visible;
}

main#top #systems .section-heading,
main#top #playing-career .section-heading,
main#top #featured-work > .featured-work-section-heading {
  max-width: 100%;
  margin-bottom: clamp(8px, 1.1cqw, 14px);
}

main#top #systems .section-heading .eyebrow,
main#top #playing-career .section-heading .eyebrow,
main#top #featured-work > .featured-work-section-heading .eyebrow {
  font-size: clamp(0.62rem, calc(0.54rem + 0.26cqw), 0.84rem) !important;
  line-height: 1.15 !important;
  letter-spacing: clamp(0.08em, 0.16cqw, 0.14em);
  white-space: nowrap !important;
}

main#top #systems .section-heading h2,
main#top #playing-career .section-heading h2,
main#top #featured-work > .featured-work-section-heading h2 {
  font-size: clamp(1.25rem, calc(1rem + 1.8cqw), 2.72rem) !important;
  line-height: 1.03 !important;
  white-space: nowrap !important;
  overflow-wrap: normal;
}

main#top #systems .portfolio-systems-intro {
  max-width: 100%;
  margin: clamp(-4px, -0.2cqw, -1px) 0 clamp(12px, 1.1cqw, 20px);
  font-size: clamp(0.74rem, calc(0.6rem + 0.46cqw), 1rem) !important;
  line-height: 1.32;
  text-wrap: pretty;
  overflow-wrap: normal;
}

main#top #systems .system-card {
  container-type: inline-size;
  min-width: 0;
}

main#top #systems .system-card > p,
main#top #systems .library-card.system-card > p {
  font-size: clamp(13px, calc(12.5px + 0.18cqw), 14px) !important;
  line-height: 1.24 !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (min-width: 2200px) {
  main#top #systems .library-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  main#top #systems .portfolio-systems-intro {
    white-space: nowrap;
  }
}

@media (max-width: 767px) {
  main#top #systems .section-heading,
  main#top #playing-career .section-heading,
  main#top #featured-work > .featured-work-section-heading {
    margin-bottom: 9px;
  }

  main#top #systems .portfolio-systems-intro {
    font-size: clamp(0.76rem, 3.35cqw, 0.9rem) !important;
    line-height: 1.34;
  }
}

@media (max-width: 360px) {
  .section-heading,
  .about-letter-heading,
  .featured-pillar-copy,
  .featured-strategy-panel,
  .featured-final-cta,
  .system-detail-copy,
  .credential-section-copy,
  .credential-packet-cta,
  .media-final-cta,
  .contact-info-copy {
    --type-section-title-size: clamp(1.18rem, 6.4cqw, 1.3rem);
    --type-section-title-line: 1.05;
    --type-eyebrow-size: clamp(0.6rem, 2.35cqw, 0.64rem);
    --type-eyebrow-line: 1.15;
    --type-eyebrow-letter-spacing: clamp(0.07em, 0.16cqw, 0.12em);
  }

  main#top #systems .section-heading h2,
  main#top #playing-career .section-heading h2,
  main#top #featured-work > .featured-work-section-heading h2 {
    font-size: clamp(1.18rem, 6.4cqw, 1.3rem) !important;
  }

  main#top #systems .system-card > p,
  main#top #systems .library-card.system-card > p {
    font-size: 13px !important;
  }
}

/* Systems & Proof of Work locked grid: mobile 1x6, tablet 2x3, desktop 2x3. */
main#top #systems .library-grid {
  grid-auto-rows: auto;
  background: #ffffff;
}

main#top #systems .system-card,
main#top #systems .library-card.system-card {
  height: auto;
  min-height: 0;
  align-items: center;
  border: 0;
  background: #fff4e6;
  box-shadow: none;
  text-align: center;
}

main#top #systems .system-card[data-system-type="dpat"] {
  order: 1;
}

main#top #systems .system-card[data-system-type="development"] {
  order: 2;
}

main#top #systems .system-card[data-system-type="operations"] {
  order: 3;
}

main#top #systems .system-card[data-system-type="recruiting"] {
  order: 4;
}

main#top #systems .system-card[data-system-type="scouting"] {
  order: 5;
}

main#top #systems .system-card[data-system-type="leadership"] {
  order: 6;
}

main#top #systems .system-card > h3,
main#top #systems .library-card.system-card > h3 {
  width: min(100%, 620px);
  margin-inline: auto;
  color: #8f2d1e;
  text-align: center;
}

main#top #systems .system-card > p,
main#top #systems .library-card.system-card > p {
  width: min(100%, 620px);
  margin-inline: auto;
  color: #6a5f53;
  text-align: center;
}

main#top #systems .library-card-media {
  order: 4;
  aspect-ratio: 4 / 3;
  height: auto;
  min-height: 0;
  margin: clamp(14px, 2vw, 22px) auto 0;
}

main#top #systems [data-system-type="dpat"] .library-card-media img,
main#top #systems [data-system-type="recruiting"] .library-card-media img,
main#top #systems [data-system-type="scouting"] .library-card-media img {
  object-position: center top;
}

main#top #systems .system-card .library-actions {
  order: 3;
  width: min(100%, 520px);
  margin: clamp(10px, 1.4vw, 16px) auto 0;
  padding-top: 0;
  justify-content: center;
}

main#top #systems .system-card .library-actions .button,
main#top #systems .system-card .button-small {
  border: 1px solid #d95a24;
  background: rgba(255, 255, 255, 0.48);
  background-image: none;
  box-shadow: none;
  color: #d95a24;
  -webkit-text-fill-color: #d95a24;
  text-shadow: none;
  filter: none;
  font-size: clamp(12.5px, calc(12px + 0.16vw), 13px) !important;
  opacity: 1;
  mix-blend-mode: normal;
}

main#top #systems .system-card .library-actions .button:first-child,
main#top #systems .system-card .button-small:first-child {
  border-color: #d95a24;
  background: #d95a24;
  background-image: none;
  box-shadow: none;
  color: #ffffff;
  font-weight: 900;
  -webkit-text-fill-color: #ffffff;
  filter: none;
  opacity: 1;
  text-shadow: none;
  mix-blend-mode: normal;
}

main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]),
main#top #systems .library-card.system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) {
  border: 0;
  background: #111111;
  box-shadow: none;
}

main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) > h3,
main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) > h3 *,
main#top #systems .library-card.system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) > h3,
main#top #systems .library-card.system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) > h3 * {
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
}

main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) > p,
main#top #systems .library-card.system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) > p {
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
}

main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) .library-actions .button,
main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) .button-small {
  border: 1px solid #d95a24;
  background: transparent;
  background-image: none;
  color: #d95a24;
  -webkit-text-fill-color: #d95a24;
  box-shadow: none;
  text-shadow: none;
  filter: none;
  opacity: 1;
  mix-blend-mode: normal;
}

main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) .library-actions .button:first-child,
main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) .button-small:first-child {
  border-color: #d95a24;
  background: #d95a24;
  background-image: none;
  box-shadow: none;
  color: #ffffff;
  font-weight: 900;
  -webkit-text-fill-color: #ffffff;
  filter: none;
  opacity: 1;
  text-shadow: none;
  mix-blend-mode: normal;
}

@media (min-width: 768px) and (max-width: 1024px) {
  main#top #systems .library-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(14px, 2vw, 22px);
  }

  main#top #systems .system-card,
  main#top #systems .library-card.system-card {
    min-height: 0;
  }

  main#top #systems .library-card-media {
    aspect-ratio: 4 / 3;
    height: auto;
  }

  main#top #systems .system-card .library-actions .button,
  main#top #systems .system-card .button-small {
    font-size: clamp(0.74rem, 1.35vw, 0.86rem);
  }
}

@media (min-width: 1025px) {
  main#top #systems.library-section {
    --systems-wall-width: min(var(--home-section-wall-width), calc(100vw - 16px));
    padding-bottom: 0;
  }

  main#top #systems .library-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: var(--systems-wall-width);
    max-width: 2560px;
    margin-inline: calc((100% - var(--systems-wall-width)) / 2);
    align-items: stretch;
  }

  main#top #systems .system-card,
  main#top #systems .library-card.system-card {
    justify-content: flex-start;
    border-radius: 0;
    overflow: hidden;
  }

  main#top #systems .system-card:hover,
  main#top #systems .system-card:focus-within {
    transform: none;
    border-color: transparent;
    background: #fff4e6;
    box-shadow: none;
  }

  main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]):hover,
  main#top #systems .system-card:is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]):focus-within {
    border-color: transparent;
    background: #111111;
  }

  main#top #systems .library-card-media {
    aspect-ratio: 4 / 3;
    height: auto;
    max-width: 100%;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  main#top #systems .system-card:hover .library-card-media img,
  main#top #systems .system-card:focus-within .library-card-media img {
    transform: none;
  }
}

@media (max-width: 767px) {
  main#top #systems .library-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Largest desktop cap: keep 2560px screens from scaling the page past the intended reading rhythm. */
@media (min-width: 1025px) {
  main#top {
    --home-media-rail-section-pad: clamp(36px, 2.4vw, 58px);
    --home-media-rail-system-pad: 18px;
    --home-media-rail-system-inset: 19px;
    --home-media-rail-grid-gap: clamp(13px, 1.15vw, 22px);
    --home-media-frame-grid-gap: clamp(13px, 1.35vw, 22px);
    --home-media-reference-frame-width: calc((var(--page-shell-width) - var(--home-media-rail-section-pad) - var(--home-media-rail-section-pad) - var(--home-media-rail-grid-gap) - var(--home-media-rail-grid-gap)) / 3 - 38px);
    --home-systems-media-frame-width: calc((var(--page-shell-width) - var(--home-media-rail-section-pad) - var(--home-media-rail-section-pad) - 2px - var(--home-media-rail-grid-gap) - var(--home-media-rail-grid-gap)) / 3);
    --home-section-wall-width: min(100vw, 2560px);
    --home-section-wall-border: transparent;
    --home-section-wall-bg: #ffffff;
    --home-contact-wall-bg:
      linear-gradient(180deg, rgba(255, 253, 248, 0.82), rgba(252, 243, 230, 0.66)),
      rgba(255, 250, 243, 0.74);
  }

  :root {
    --site-card-width: var(--page-shell-width);
    --site-chrome-content-width: var(--page-shell-width);
    --site-chrome-gutter: var(--page-gutter);
    --type-hero-title-size: clamp(3.3rem, calc(2.35rem + 1.7vw), 4.45rem);
    --type-section-title-size: clamp(2.1rem, calc(1.72rem + 0.62vw), 2.5rem);
    --type-card-title-size: clamp(1.62rem, calc(1.26rem + 0.48vw), 1.95rem);
    --type-eyebrow-size: clamp(0.74rem, calc(0.66rem + 0.14vw), 0.86rem);
    --type-body-size: clamp(0.95rem, calc(0.86rem + 0.14vw), 1.02rem);
    --type-small-body-size: clamp(0.86rem, calc(0.78rem + 0.12vw), 0.94rem);
  }

  .page-shell {
    width: var(--page-shell-width);
  }

  .site-header.site-chrome {
    padding-inline: calc((100vw - var(--page-shell-width)) / 2);
  }

  .section {
    padding-inline: clamp(36px, 2.4vw, 58px);
  }

  main#top > :is(#systems, #media, #playing-career, #contact).section {
    position: relative;
    isolation: isolate;
    overflow: visible;
    border-color: transparent;
    background: transparent;
    box-shadow: none;
  }

  main#top > .page-hero-system.page-hero-system {
    position: relative !important;
    isolation: isolate;
    overflow: visible !important;
    box-shadow: none !important;
  }

  main#top > :is(#systems, #media, #playing-career, #contact).section::before {
    box-sizing: border-box;
    content: "";
    position: absolute;
    z-index: -1;
    inset-block: 0;
    left: 50%;
    width: var(--home-section-wall-width);
    max-width: 2560px;
    border: 1px solid var(--home-section-wall-border);
    border-radius: 0;
    background: var(--home-section-wall-bg);
    box-shadow: none;
    pointer-events: none;
    transform: translateX(-50%);
  }

  main#top > .page-hero-system.page-hero-system::before {
    box-sizing: border-box;
    content: "";
    position: absolute;
    z-index: -1;
    inset-block: 0;
    left: 50%;
    width: var(--home-section-wall-width);
    max-width: 2560px;
    border: 1px solid var(--home-section-wall-border);
    border-radius: 0;
    background: var(--home-section-wall-bg);
    box-shadow: none;
    pointer-events: none;
    transform: translateX(-50%);
  }

  main#top > #contact.section::before {
    content: none;
  }

  main#top #systems .section-heading h2 {
    font-size: var(--type-section-title-size) !important;
  }

  main#top #systems .portfolio-systems-intro {
    font-size: var(--type-body-size) !important;
    line-height: 1.35;
  }

}

@media (min-width: 2200px) {
  :root {
    --page-shell-width: min(var(--page-max-wide), calc(100vw - 320px));
  }
}

/* Featured page pillar image slots use the shared thumbnail rule: filled 4:3 image, no inner frame. */
.featured-page .featured-pillar-visual {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.featured-page .featured-pillar-visual {
  overflow: visible !important;
  border-radius: 0 !important;
}

.featured-page .featured-pillar-visual img {
  display: block;
  width: 100%;
  min-height: 0 !important;
  aspect-ratio: 4 / 3 !important;
  border-radius: 18px;
  background: #1f1b16;
  object-fit: cover !important;
  object-position: center center;
}

.featured-page .featured-pillar-visual img {
  height: auto !important;
}

/* Featured body rhythm: section intros share one left wall with their cards, proof rows and CTAs. */
main.featured-page {
  --featured-body-copy-max: 100%;
  --featured-section-gap: 24px;
  --featured-section-padding: clamp(22px, 6vw, 26px);
  --featured-eyebrow-gap: 6px;
  --featured-title-to-body-gap: 10px;
  --featured-body-to-proof-gap: 20px;
  --featured-body-to-button-gap: 18px;
  --featured-proof-to-button-gap: 12px;
  --featured-proof-card-gap: 12px;
}

@media (min-width: 768px) {
  main.featured-page {
    --featured-section-padding: clamp(28px, 4vw, 34px);
    --featured-title-to-body-gap: 12px;
    --featured-body-to-proof-gap: 20px;
    --featured-body-to-button-gap: 22px;
    --featured-proof-to-button-gap: 13px;
    --featured-proof-card-gap: 14px;
  }
}

@media (min-width: 1025px) {
  main.featured-page {
    --featured-body-copy-max: clamp(820px, 54vw, 1080px);
    --featured-section-padding: clamp(34px, 2.15vw, 44px);
    --featured-eyebrow-gap: 8px;
    --featured-title-to-body-gap: 20px;
    --featured-body-to-proof-gap: 24px;
    --featured-body-to-button-gap: 24px;
    --featured-proof-to-button-gap: 30px;
    --featured-proof-card-gap: 14px;
  }
}

/* Featured body copy cap: wide enough to avoid floating beside excessive blank space without becoming full-width prose. */
main.featured-page :is(
  .featured-pillar-copy > p:not(.eyebrow),
  .featured-final-cta > div > p:not(.eyebrow)
) {
  max-width: min(100%, var(--featured-body-copy-max)) !important; /* Overrides older shared page body-width locks that also use !important. */
  margin-top: var(--featured-title-to-body-gap) !important;
}

/* Featured body sections preserve image crops while tightening media/text alignment and panel padding. */
main.featured-page > :is(.featured-summary-section, .featured-pillar, .featured-strategy-panel, .featured-final-cta) {
  padding: var(--featured-section-padding) !important; /* Overrides older shared mobile/card padding locks that also use !important. */
}

main.featured-page > :is(#collegiate-impact, #anaya-case-study, #the-archer-feature) {
  margin-top: var(--featured-section-gap) !important;
}

main.featured-page > :is(.featured-summary-section, #program-turnaround, .featured-final-cta) {
  margin-top: 0 !important;
}

main.featured-page :is(.featured-pillar-grid, .featured-pillar-grid-reverse) {
  align-items: stretch !important;
  gap: clamp(22px, 3vw, 40px);
}

main.featured-page :is(
  .featured-summary-section > .section-heading,
  .featured-pillar-copy,
  .featured-strategy-panel > .section-heading,
  .featured-final-cta > div
) {
  max-width: min(100%, var(--featured-body-copy-max));
}

main.featured-page :is(
  .featured-summary-section > .section-heading,
  .featured-strategy-panel > .section-heading
) {
  margin-bottom: var(--featured-body-to-proof-gap) !important; /* Overrides older shared heading-to-content locks that also use !important. */
}

main.featured-page :is(
  .featured-summary-section .section-heading > .eyebrow,
  .featured-pillar-copy > .eyebrow,
  .featured-strategy-panel .section-heading > .eyebrow,
  .featured-final-cta > div > .eyebrow
) {
  margin: 0 0 var(--featured-eyebrow-gap) !important; /* Overrides older shared heading rhythm locks that also use !important. */
}

main.featured-page :is(
  .featured-summary-section .section-heading > h2,
  .featured-pillar-copy > h2,
  .featured-strategy-panel .section-heading > h2,
  .featured-final-cta h2
) {
  margin: 0 !important;
  white-space: nowrap !important;
}

main.featured-page :is(
  .featured-stat-grid,
  .featured-actions,
  .featured-value-grid
) {
  margin-top: var(--featured-body-to-proof-gap) !important;
}

main.featured-page :is(.featured-stat-grid, .featured-value-grid) {
  gap: var(--featured-proof-card-gap);
  align-items: stretch;
  grid-auto-rows: 1fr;
}

main.featured-page :is(.featured-stat-card, .featured-value-grid article) {
  height: 100%;
}

main.featured-page .featured-stat-grid {
  margin-bottom: 0 !important;
}

main.featured-page .featured-stat-grid + .featured-actions {
  margin-top: var(--featured-proof-to-button-gap) !important;
}

main.featured-page .featured-pillar-copy > p:not(.eyebrow) + .featured-actions,
main.featured-page .featured-final-cta > div + .featured-actions {
  margin-top: var(--featured-body-to-button-gap) !important;
}

@media (max-width: 767px) {
  main.featured-page :is(
    .featured-summary-section .section-heading > h2,
    .featured-pillar-copy > h2,
    .featured-strategy-panel .section-heading > h2,
    .featured-final-cta h2
  ) {
    font-size: clamp(22px, 6vw, 28px) !important;
    line-height: 1.06 !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  main.featured-page :is(
    .featured-summary-section .section-heading > h2,
    .featured-pillar-copy > h2,
    .featured-strategy-panel .section-heading > h2,
    .featured-final-cta h2
  ) {
    font-size: clamp(28px, 3.6vw, 34px) !important;
    line-height: 1.05 !important;
  }
}

@media (min-width: 1025px) {
  main.featured-page .featured-pillar-copy {
    max-width: 100%;
  }

  main.featured-page .featured-pillar-grid {
    grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.98fr);
  }

  main.featured-page .featured-pillar-grid-reverse {
    grid-template-columns: minmax(420px, 0.98fr) minmax(0, 1.02fr);
  }
}

@media (min-width: 1250px) {
  main.featured-page .featured-stat-grid {
    gap: 14px;
  }
}

/* Featured final CTA spacing: normalize the breathing room before the shared footer without changing footer content. */
main.featured-page > .featured-final-cta {
  margin-bottom: 28px !important; /* Overrides older shared footer closeout spacing that also uses !important. */
}

@media (min-width: 768px) {
  main.featured-page > .featured-final-cta {
    margin-bottom: 36px !important;
  }
}

@media (min-width: 1025px) {
  main.featured-page > .featured-final-cta {
    margin-bottom: 44px !important;
  }
}

@media (min-width: 821px) {
  .contact-form,
  main#top .contact-form {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px 16px !important;
  }

  .contact-name-row,
  main#top .contact-name-row {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }

  .contact-form label:has(textarea),
  main#top .contact-form label:has(textarea),
  .contact-form .button,
  main#top .contact-form .button {
    grid-column: 1 / -1;
  }
}

.media-library-page .media-category-card,
.media-library-page .media-library-card,
.media-library-page .media-album-heading {
  --type-card-title-size: clamp(1.6rem, calc(1.36rem + 0.4vw), 1.85rem);
  --type-card-title-line: 1.08;
}

@media (min-width: 768px) and (max-width: 1024px) {
  .media-library-page .media-category-card,
  .media-library-page .media-library-card,
  .media-library-page .media-album-heading {
    --type-card-title-size: clamp(1.46rem, calc(1.25rem + 0.34vw), 1.6rem);
  }
}

@media (max-width: 767px) {
  .media-library-page .media-category-card,
  .media-library-page .media-library-card,
  .media-library-page .media-album-heading {
    --type-card-title-size: 1.42rem;
    --type-card-title-line: 1.1;
  }
}

@media (max-width: 360px) {
  .media-library-page .media-category-card,
  .media-library-page .media-library-card,
  .media-library-page .media-album-heading {
    --type-card-title-size: 1.34rem;
  }
}

/* Gallery page mobile polish: keep desktop intact while preserving the two-card carousel pattern. */
@media (max-width: 767px) {
  .media-library-page,
  .media-library-page .media-library-section{
    min-width: 0;
    max-width: 100%;
  }

  .media-library-page .media-library-section {
    overflow: hidden;
  }

  .media-library-page .section-heading {
    margin-bottom: 14px;
  }

  .media-library-page .section-heading h2 {
    font-size: var(--mobile-fit-title-size, var(--type-section-title-size)) !important;
    line-height: var(--mobile-fit-title-line, var(--type-section-title-line)) !important;
    white-space: var(--type-heading-white-space, normal) !important;
  }

  .media-library-page .media-section-grid:has(> .media-preview-carousel) {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .media-library-page .media-category-card,
  .media-library-page .media-library-card {
    gap: 10px;
    padding: 10px;
    border-radius: 18px;
  }

  .media-library-page .media-category-frame,
  .media-library-page .media-library-frame {
    aspect-ratio: 4 / 3;
    border-radius: 14px;
  }

  .media-library-page .media-category-card h3,
  .media-library-page .media-library-meta strong {
    font-size: clamp(1.18rem, 5.6vw, 1.5rem);
    line-height: 1.06;
    white-space: normal;
  }

  .media-library-page .media-category-card p {
    display: -webkit-box;
    overflow: hidden;
    line-height: 1.34;
    text-overflow: clip;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .media-library-page .media-library-meta {
    gap: 8px;
  }

  .media-library-page .library-type {
    width: 100%;
    padding: 7px 11px;
    border-radius: 999px;
    font-size: 0.78rem;
    line-height: 1.1;
  }

  .media-library-page .media-card-kind {
    right: 12px;
    bottom: 12px;
  }

}

/* Gallery awards: keep certificate and diploma tops visible inside the same card frame. */
#playing-awards-media .media-library-frame {
  aspect-ratio: 4 / 3;
  padding: 0;
  background: rgba(31, 27, 22, 0.1);
}

#playing-awards-media .media-library-frame img {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center center;
  transform-origin: center center;
}

/* Gallery card titles follow the responsive text rules: fit, then wrap inside the card. */
.media-library-page .media-library-card,
.media-library-page .media-library-meta,
.media-library-page .media-library-meta strong {
  min-width: 0;
  max-width: 100%;
}

.media-library-page .media-library-card {
  overflow: hidden;
}

.media-library-page .media-category-card {
  cursor: pointer;
}

.media-library-page .media-library-meta strong {
  display: block;
  overflow: visible !important;
  font-size: var(--mobile-fit-card-title-size, clamp(1.18rem, 1.35vw, 1.42rem)) !important;
  line-height: var(--mobile-fit-card-title-line, 1.08) !important;
  text-overflow: clip !important;
  overflow-wrap: break-word;
  text-wrap: balance;
  white-space: normal !important;
}

@media (max-width: 767px) {
  .media-library-page .media-library-meta strong {
    font-size: var(--mobile-fit-card-title-size, clamp(1.12rem, 5vw, 1.34rem)) !important;
  }
}

/* Wide-desktop homepage polish: tighten the opening hero/credentials without changing tablet or mobile. */
@media (min-width: 1720px) {
  main#top > .section,
  main#top > #featured-work {
    width: min(var(--page-shell-width), 100%);
    margin-inline: auto;
  }
}

/* Retired 2026-05-19: old Homepage Featured row-card lock.
   The active source-of-truth is the Apple-style centered feature panel block below.
main#top #featured-work {
  --featured-card-bg: #fbf1e2;
  --featured-card-radius: 30px;
  --featured-card-border: rgba(152, 105, 31, 0.62);
  --featured-copy-max: 820px;
  --featured-body-max: 680px;
  --featured-cta-width: 380px;
  --featured-max-width: var(--page-shell-width);
  --featured-media-width: minmax(0, 1fr);
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: clamp(18px, 2vw, 30px);
  min-width: 0;
}

main#top #featured-work .featured-card {
  position: relative;
  container-type: inline-size;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  padding: clamp(18px, 4cqw, 34px);
  border: 1px solid var(--featured-card-border);
  border-radius: clamp(22px, 3cqw, var(--featured-card-radius));
  background: var(--featured-card-bg);
  box-shadow:
    inset 0 1px 0 rgba(236, 198, 119, 0.78),
    0 10px 24px rgba(52, 36, 24, 0.08);
}

main#top #featured-work .featured-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(210, 158, 63, 0.72);
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px rgba(152, 105, 31, 0.22);
  pointer-events: none;
}

@media (min-width: 1025px) {
  main#top #featured-work {
    gap: 7px;
  }

  main#top #featured-work .featured-card {
    isolation: isolate;
    overflow: visible;
    border-color: transparent;
    background: transparent;
    box-shadow: none;
  }

  main#top #featured-work .featured-card::before {
    z-index: -1;
    inset-block: 0;
    right: auto;
    left: 50%;
    width: var(--home-featured-frame-width);
    max-width: 2535px;
    border: solid var(--home-featured-frame-border);
    border-width: 7px var(--home-featured-side-fill-right) 7px var(--home-featured-side-fill-left);
    border-radius: 0;
    background:
      linear-gradient(135deg, rgba(255, 246, 221, 0.46), rgba(255, 246, 221, 0) 26%, rgba(218, 163, 58, 0.16) 52%, rgba(255, 246, 221, 0) 78%),
      var(--featured-card-bg);
    box-shadow:
      inset 0 1px 0 rgba(255, 229, 168, 0.92),
      inset 0 -1px 0 rgba(138, 93, 21, 0.24);
    transform: translateX(calc(-50% - 0.5px));
  }
}

main#top #featured-work .innovation-panel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: clamp(14px, 4cqw, 22px);
  align-items: center;
  min-width: 0;
  min-height: 0;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

main#top #featured-work .innovation-thumbnail {
  display: grid;
  position: relative;
  width: 100%;
  min-width: 0;
  min-height: 0;
  place-items: center;
  aspect-ratio: 4 / 3;
  border-radius: clamp(16px, 2.4cqw, 22px);
  background: #ffffff;
  overflow: hidden;
}

main#top #featured-work .featured-card--anaya .innovation-thumbnail {
  background: #211a15;
}

main#top #featured-work .innovation-thumbnail img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: center center !important;
}

main#top #featured-work .featured-card--anaya .innovation-thumbnail img {
  object-position: center 50% !important;
}

main#top #featured-work .innovation-card-copy {
  display: grid;
  min-width: 0;
  width: 100%;
  gap: clamp(10px, 2.8cqw, 16px);
  align-content: center;
}

main#top #featured-work .innovation-proof-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

main#top #featured-work .innovation-proof-chips :is(span, a) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 6px 12px;
  border: 1px solid var(--home-proof-pill-border);
  border-radius: 999px;
  background: var(--home-proof-pill-bg);
  color: var(--home-proof-pill-main);
  font-size: clamp(0.74rem, 2.1cqw, 0.86rem);
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

main#top #featured-work .featured-card .section-heading {
  width: 100%;
  max-width: none;
  margin: 0;
  min-width: 0;
}

main#top #featured-work .featured-card .eyebrow {
  max-width: 100%;
  font-size: clamp(0.72rem, 2.2cqw, 0.96rem) !important;
  line-height: 1.15 !important;
  letter-spacing: clamp(0.1em, 0.42cqw, 0.16em);
  overflow-wrap: anywhere;
  text-wrap: balance;
  white-space: normal !important;
}

main#top #featured-work .featured-card .section-heading h2 {
  max-width: 100%;
  font-size: var(--mobile-fit-title-size, clamp(1.8rem, 7.8cqw, 2.8rem)) !important;
  line-height: 1 !important;
  overflow-wrap: break-word;
  text-wrap: balance;
  white-space: normal !important;
}

main#top #featured-work .innovation-card-copy > p {
  max-width: 64ch;
  margin: 0;
  font-size: clamp(0.94rem, 3.2cqw, 1.08rem) !important;
  line-height: 1.55 !important;
  overflow-wrap: break-word;
  text-wrap: pretty;
}

main#top #featured-work .innovation-panel .button {
  justify-self: stretch;
  width: 100% !important;
  max-width: none !important;
  min-height: clamp(42px, 10cqw, 50px);
  padding-inline: clamp(16px, 5cqw, 24px);
  border: 1px solid #d95a24;
  background-image: none;
  font-size: clamp(0.86rem, 2.8cqw, 0.98rem);
  white-space: normal;
  box-shadow: none;
  text-shadow: none;
  filter: none;
  opacity: 1;
  mix-blend-mode: normal;
}

@media (min-width: 768px) {
  main#top #featured-work {
    --featured-media-width: clamp(300px, 34cqw, 440px) minmax(0, 1fr);
  }

  main#top #featured-work .innovation-panel {
    grid-template-columns: clamp(300px, 34cqw, 440px) minmax(0, 1fr) !important;
  }

  main#top #featured-work .featured-card {
    padding:
      clamp(20px, 2.1vw, 34px)
      clamp(28px, 3.2vw, 52px);
  }

  main#top #featured-work .innovation-panel {
    gap: clamp(28px, 3.2vw, 48px);
  }

  main#top #featured-work .innovation-thumbnail {
    justify-self: start;
    align-self: center;
  }

  main#top #featured-work .innovation-card-copy {
    width: min(100%, 760px);
    gap: clamp(14px, 1.5vw, 20px);
    align-content: center;
  }

  main#top #featured-work .featured-card .eyebrow {
    font-size: clamp(0.72rem, 0.9vw, 0.92rem) !important;
  }

  main#top #featured-work .featured-card .section-heading h2 {
    font-size: clamp(1.9rem, 2.6vw, 2.85rem) !important;
  }

  main#top #featured-work .innovation-card-copy > p {
    max-width: 58ch;
    font-size: clamp(0.95rem, 1.18vw, 1.12rem) !important;
  }

  main#top #featured-work .innovation-panel .button {
    justify-self: start;
    width: min(100%, 360px) !important;
    min-height: clamp(42px, 3vw, 50px);
  }
}

@media (min-width: 1025px) {
  main#top #featured-work {
    --featured-media-width: var(--home-systems-media-frame-width) minmax(0, 1fr);
    width: min(100%, var(--featured-max-width)) !important;
    max-width: var(--featured-max-width) !important;
    justify-self: center;
    margin: 28px auto 0;
  }

  main#top #featured-work .innovation-panel {
    grid-template-columns: var(--home-systems-media-frame-width) minmax(0, 1fr) !important;
  }

  main#top #featured-work .innovation-thumbnail {
    transform: translateX(calc(var(--home-media-rail-system-inset) * -1));
  }

  main#top #featured-work .featured-card {
    margin: 0;
    padding:
      clamp(18px, 1.8cqw, 28px)
      clamp(36px, 4.2cqw, 64px);
    padding-left: calc(var(--home-media-rail-section-pad) + var(--home-media-rail-system-inset));
  }

  main#top #featured-work .innovation-panel {
    gap: clamp(32px, 3.8cqw, 62px);
  }

  main#top #featured-work .innovation-card-copy {
    width: min(100%, var(--featured-copy-max));
    gap: clamp(14px, 1.15cqw, 18px);
  }

  main#top #featured-work .featured-card .eyebrow {
    color: var(--red);
    font-size: clamp(0.76rem, 0.58rem + 0.18vw, 0.82rem) !important;
    letter-spacing: 0.15em;
  }

  main#top #featured-work .featured-card .section-heading h2 {
    font-size: clamp(2rem, 2.8vw, 3rem) !important;
    line-height: 0.98 !important;
  }

  main#top #featured-work .innovation-card-copy > p {
    max-width: var(--featured-body-max);
    font-size: clamp(1rem, 0.86rem + 0.18vw, 1.08rem) !important;
    line-height: 1.6 !important;
  }

  main#top #featured-work .innovation-proof-chips {
    flex-wrap: nowrap;
    gap: 10px;
    margin-top: 2px;
  }

  main#top #featured-work .innovation-proof-chips :is(span, a) {
    min-height: 30px;
    padding: 6px 13px;
    font-size: clamp(0.82rem, 0.68rem + 0.16vw, 0.88rem);
  }

  main#top #featured-work .innovation-panel .button {
    width: min(100%, var(--featured-cta-width)) !important;
    min-height: 44px;
    margin-top: 4px;
  }
}

@media (min-width: 1025px) and (max-width: 1199px) {
  main#top #featured-work {
    --featured-cta-width: 360px;
  }
}

@media (min-width: 1025px) and (max-width: 1180px) {

  main#top #featured-work .featured-card {
    padding:
      clamp(28px, 3cqw, 38px)
      clamp(30px, 3.8cqw, 48px);
    padding-left: calc(var(--home-media-rail-section-pad) + var(--home-media-rail-system-inset));
  }

  main#top #featured-work .innovation-panel {
    gap: clamp(26px, 3cqw, 42px);
  }

  main#top #featured-work .innovation-card-copy {
    width: min(100%, 740px);
  }
}

@media (min-width: 1181px) {
  main#top #featured-work {
    --featured-media-width: var(--home-systems-media-frame-width) minmax(0, 1fr);
  }

  main#top #featured-work .innovation-panel {
    grid-template-columns: var(--home-systems-media-frame-width) minmax(0, 1fr) !important;
  }
}

@media (min-width: 1280px) {
  main#top #featured-work {
    --featured-media-width: var(--home-systems-media-frame-width) minmax(0, 1fr);
  }

  main#top #featured-work .innovation-panel {
    grid-template-columns: var(--home-systems-media-frame-width) minmax(0, 1fr) !important;
  }
}

@media (min-width: 1600px) {
  main#top #featured-work {
    --featured-copy-max: 900px;
    --featured-body-max: 740px;
    --featured-cta-width: 420px;
  }
}

@media (min-width: 1920px) {
  main#top #featured-work {
    --featured-copy-max: 980px;
    --featured-body-max: 780px;
    --featured-cta-width: 440px;
  }
}

@media (min-width: 2200px) {
  main#top #featured-work {
    --featured-copy-max: 1040px;
    --featured-body-max: 800px;
    --featured-cta-width: 460px;
    --featured-media-width: var(--home-systems-media-frame-width) minmax(0, 1fr);
  }

  main#top #featured-work .featured-card {
    padding-left: calc(var(--home-media-rail-section-pad) + var(--home-media-rail-system-inset));
  }

  main#top #featured-work .innovation-panel {
    grid-template-columns: var(--home-systems-media-frame-width) minmax(0, 1fr) !important;
  }
}

@media (max-width: 520px) {
  main#top #featured-work .featured-card {
    padding: clamp(16px, 5vw, 20px);
  }

  main#top #featured-work .featured-card .section-heading h2 {
    font-size: var(--mobile-fit-title-size, clamp(1.72rem, 9vw, 2.35rem)) !important;
  }

  main#top #featured-work .innovation-panel .button {
    min-height: 44px;
  }
}

*/

/* Final responsive sweep: phone-width guards for single-line headings and CTA grids. */
@media (max-width: 430px) {
  main.credentials-page:not(#top) .credential-packet-cta,
  main.credentials-page:not(#top) .credential-packet-cta > *,
  main.credentials-page:not(#top) .credential-packet-cta .credential-actions {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  main.credentials-page:not(#top) .credential-packet-cta {
    grid-template-columns: minmax(0, 1fr) !important;
    overflow: hidden;
  }

  main.credentials-page:not(#top) .credential-packet-cta h2 {
    white-space: normal !important;
    overflow-wrap: break-word;
  }

  main.credentials-page:not(#top) .credential-packet-cta .credential-actions,
  main.credentials-page:not(#top) .credential-packet-cta .button {
    width: 100% !important;
  }
}

/* Absolute final Anaya hero pass: copy homepage hero structure after all legacy overrides. */
/* Unified site section heading system. Home hero stays separate. */
:root {
  --section-eyebrow-color: var(--red);
  --section-title-color: var(--text);
  --section-heading-top-gap-desktop: 34px;
  --section-eyebrow-to-title-gap: 10px;
  --section-title-to-intro-gap: 20px;
  --section-title-to-content-gap: 24px;
  --section-eyebrow-size-desktop: 12px;
  --section-eyebrow-line-desktop: 15px;
  --section-title-size-desktop: clamp(36px, 2.1vw, 42px);
  --section-title-line-desktop: 1.05;
}

body .page-shell :is(
  .section-heading,
  .home-closeout-heading,
  .about-letter-heading,
  .system-detail-copy,
  .featured-pillar-copy,
  .featured-strategy-panel,
  .featured-final-cta,
  .credential-section-copy,
  .credential-packet-cta,
  .contact-info-copy,
  .media-final-cta
) > .eyebrow {
  color: var(--section-eyebrow-color) !important;
}

body .page-shell :is(
  .section-heading,
  .home-closeout-heading,
  .about-letter-heading,
  .system-detail-copy,
  .featured-pillar-copy,
  .featured-strategy-panel,
  .featured-final-cta,
  .credential-section-copy,
  .credential-packet-cta,
  .contact-info-copy,
  .media-final-cta
) > :is(h1, h2) {
  color: var(--section-title-color) !important;
}

@media (min-width: 1025px) {
  body .page-shell main#top > .section:not(.contact-section),
  body .page-shell main#top #featured-work > .innovation-section,
  body .page-shell main#top .document-card,
  body .page-shell main#top .contact-form-card {
    padding-top: var(--section-heading-top-gap-desktop) !important;
  }

  body .page-shell main :is(
    .section-heading,
    .home-closeout-heading,
    .about-letter-heading
  ) {
    container-type: normal !important;
    margin-top: 0 !important;
    margin-bottom: var(--section-title-to-content-gap) !important;
  }

  body .page-shell main :is(
    .section-heading:has(+ .section-intro),
    .section-heading:has(+ .portfolio-systems-intro)
  ) {
    margin-bottom: var(--section-title-to-intro-gap) !important;
  }

  body .page-shell main#top .home-closeout-heading,
  body .page-shell main#top #featured-work .innovation-card-copy .section-heading,
  body .page-shell main:not(#top) .featured-strategy-panel .section-heading {
    margin-bottom: 0 !important;
  }

  body .page-shell main :is(
    .section-heading,
    .home-closeout-heading,
    .about-letter-heading,
    .system-detail-copy,
    .featured-pillar-copy,
    .featured-strategy-panel,
    .featured-final-cta > div,
    .credential-section-copy,
    .credential-packet-cta,
    .contact-info-copy,
    .media-final-cta
  ) > .eyebrow,
  body .page-shell main#top #systems .section-heading > .eyebrow,
  body .page-shell main#top #playing-career .section-heading > .eyebrow,
  body .page-shell main#top #featured-work .innovation-section .section-heading > .eyebrow {
    margin: 0 0 var(--section-eyebrow-to-title-gap) !important;
    color: var(--section-eyebrow-color) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    font-size: var(--section-eyebrow-size-desktop) !important;
    font-weight: 700 !important;
    line-height: var(--section-eyebrow-line-desktop) !important;
    white-space: normal !important;
  }

  body .page-shell main :is(
    .section-heading,
    .home-closeout-heading,
    .about-letter-heading,
    .system-detail-copy,
    .featured-pillar-copy,
    .featured-strategy-panel,
    .featured-final-cta > div,
    .credential-section-copy,
    .credential-packet-cta,
    .contact-info-copy,
    .media-final-cta
  ) > :is(h1, h2),
  body .page-shell main#top #systems .section-heading > h2,
  body .page-shell main#top #playing-career .section-heading > h2,
  body .page-shell main#top #featured-work .innovation-section .section-heading > h2 {
    margin: 0 !important;
    color: var(--section-title-color) !important;
    font-family: Georgia, "Palatino Linotype", serif !important;
    font-size: var(--section-title-size-desktop) !important;
    font-weight: 700 !important;
    line-height: var(--section-title-line-desktop) !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
    white-space: normal !important;
  }

  body .page-shell main :is(
    .system-detail-copy,
    .featured-pillar-copy,
    .featured-strategy-panel,
    .featured-final-cta > div,
    .credential-section-copy,
    .credential-packet-cta,
    .contact-info-copy,
    .media-final-cta
  ) > :is(h1, h2) + p:not(.eyebrow) {
    margin-top: var(--section-title-to-intro-gap) !important;
  }

  body .page-shell main :is(
    .section-heading + .section-intro,
    .section-heading + .portfolio-systems-intro,
    .section-heading + .library-grid,
    .section-heading + .gallery-grid,
    .section-heading + .achievement-highlights,
    .section-heading + .featured-summary-grid,
    .section-heading + .credential-summary-grid,
    .section-heading + .credential-document-grid,
    .section-heading + .media-category-grid,
    .section-heading + .media-grid,
    .section-heading + .video-grid,
    .section-heading + .award-grid
  ) {
    margin-top: 0 !important;
  }

  body .page-shell main#top .document-card,
  body .page-shell main#top .contact-form-card,
  body .page-shell main#top #featured-work .innovation-card-copy {
    gap: var(--section-title-to-content-gap) !important;
  }
}

@media (min-width: 1025px) {
  body .page-shell main#top > :is(#systems, #featured-work, #media, #playing-career).section,
  body .page-shell main#top > #featured-work.section > .innovation-section,
  body .page-shell main#top .document-card,
  body .page-shell main#top .contact-form-card{
    padding-top: var(--section-heading-top-gap-desktop) !important;
  }
  body .page-shell main#top #featured-work .innovation-card-copy {
    align-self: start !important;
    justify-content: start !important;
    transform: none !important;
  }

  body .page-shell main#top :is(
    #systems .section-heading,
    #featured-work .innovation-section .section-heading,
    #media .section-heading,
    #playing-career .section-heading,
    .home-closeout-heading
  ),
  body .page-shell main:not(#top) :is(
    .section-heading,
    .about-letter-heading,
    .system-detail-copy,
    .featured-pillar-copy,
    .featured-strategy-panel > .section-heading,
    .featured-final-cta > div,
    .credential-section-copy,
    .credential-packet-cta,
    .contact-info-copy,
    .media-final-cta
  ) {
    container-type: normal !important;
  }

  body .page-shell main#top :is(
    #systems .section-heading,
    #featured-work .innovation-section .section-heading,
    #media .section-heading,
    #playing-career .section-heading,
    .home-closeout-heading
  ) > .eyebrow,
  body .page-shell main:not(#top) :is(
    .section-heading,
    .about-letter-heading,
    .system-detail-copy,
    .featured-pillar-copy,
    .featured-strategy-panel > .section-heading,
    .featured-final-cta > div,
    .credential-section-copy,
    .credential-packet-cta,
    .contact-info-copy,
    .media-final-cta
  ) > .eyebrow {
    margin: 0 0 var(--section-eyebrow-to-title-gap) !important;
    color: var(--section-eyebrow-color) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    font-size: var(--section-eyebrow-size-desktop) !important;
    font-weight: 700 !important;
    line-height: var(--section-eyebrow-line-desktop) !important;
  }

  body .page-shell main#top :is(
    #systems .section-heading,
    #featured-work .innovation-section .section-heading,
    #media .section-heading,
    #playing-career .section-heading,
    .home-closeout-heading
  ) > h2,
  body .page-shell main:not(#top) :is(
    .section-heading,
    .about-letter-heading,
    .system-detail-copy,
    .featured-pillar-copy,
    .featured-strategy-panel > .section-heading,
    .featured-final-cta > div,
    .credential-section-copy,
    .credential-packet-cta,
    .contact-info-copy,
    .media-final-cta
  ) > :is(h1, h2) {
    margin: 0 !important;
    color: var(--section-title-color) !important;
    font-family: Georgia, "Palatino Linotype", serif !important;
    font-size: var(--section-title-size-desktop) !important;
    font-weight: 700 !important;
    line-height: var(--section-title-line-desktop) !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
    white-space: normal !important;
  }

  body .page-shell main#top :is(
    #systems .section-heading,
    #media .section-heading,
    #playing-career .section-heading
  ) {
    margin-bottom: var(--section-title-to-content-gap) !important;
  }

  body .page-shell main#top .home-closeout-heading,
  body .page-shell main#top #featured-work .innovation-card-copy .section-heading {
    margin-bottom: 0 !important;
  }

  body .page-shell main.featured-page .featured-pillar-grid,
  body .page-shell main.featured-page .featured-pillar-grid-reverse,
  body .page-shell main.featured-page > .featured-final-cta,
  body .page-shell main.credentials-page .credential-section-grid {
    align-items: start !important;
  }
}

/* Phase 10 desktop body rhythm: match the approved Home hero feel on major site copy. */
@media (min-width: 1025px) {

  body .page-shell main:not(#top):not(.about-story-page):not(.about-cover-page):not(.contact-page) .section-heading > h2 + .section-intro {
    margin-top: 25.5px !important;
  }

  body .page-shell main.credentials-page .section-heading + .credential-section-intro {
    margin-top: 25.5px !important;
  }

  body .page-shell main:not(#top):not(.about-story-page):not(.about-cover-page):not(.contact-page) .section-heading:has(> .section-intro),
  body .page-shell main.credentials-page .section-heading:has(+ .credential-section-intro) {
    margin-bottom: 28px !important;
  }

  body .page-shell :is(
    main.featured-page .featured-strategy-panel > p + p,
    main:not(#top):not(.about-story-page):not(.about-cover-page):not(.contact-page) .case-study-copy > p + p
  ) {
    margin-top: 16px !important;
  }
}

/* Phase 10 wide-desktop body lock: explicit selectors win over older page-specific rules. */
@media (min-width: 2200px) {
  body .page-shell main.systems-detail-page .system-detail-copy > p:not(.eyebrow):not(#body-rhythm-wide-lock):not(#body-rhythm-wide-lock-2),
  body .page-shell main.featured-page .featured-pillar-copy > p:not(.eyebrow):not(#body-rhythm-wide-lock):not(#body-rhythm-wide-lock-2),
  body .page-shell main.featured-page .featured-strategy-panel > p:not(#body-rhythm-wide-lock):not(#body-rhythm-wide-lock-2),
  body .page-shell main.featured-page .featured-final-cta > div > p:not(.eyebrow):not(#body-rhythm-wide-lock):not(#body-rhythm-wide-lock-2),
  body .page-shell main:not(#top):not(.about-story-page):not(.about-cover-page):not(.contact-page) .section-heading > .section-intro:not(#body-rhythm-wide-lock):not(#body-rhythm-wide-lock-2),
  body .page-shell main:not(#top):not(.about-story-page):not(.about-cover-page):not(.contact-page) .case-study-copy > p:not(#body-rhythm-wide-lock):not(#body-rhythm-wide-lock-2),
  body .page-shell main.credentials-page .credential-section-copy > p:not(.eyebrow):not(#body-rhythm-wide-lock):not(#body-rhythm-wide-lock-2),
  body .page-shell main.credentials-page .credential-section-intro:not(#body-rhythm-wide-lock):not(#body-rhythm-wide-lock-2) {
    font-size: 22px !important;
    line-height: 46px !important;
  }
}

/* Final mobile gallery overlay: keep the selected media, caption, arrows and thumb strip inside one clean viewport. */
@media (max-width: 767px) {
  body .media-overlay.is-gallery-overlay,
  body .media-overlay.is-awards-overlay {
    --overlay-panel-padding: clamp(10px, 2.8vw, 14px);
    --overlay-content-gap: clamp(5px, 1vh, 8px);
    --overlay-thumb-width: clamp(72px, 22vw, 92px);
    --overlay-thumb-height: clamp(48px, 15vw, 62px);
    align-items: center !important;
    padding: 8px !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-panel,
  body .media-overlay.is-awards-overlay .media-overlay-panel {
    width: min(100%, calc(100vw - 16px)) !important;
    max-width: 460px !important;
    max-height: calc(100dvh - 16px) !important;
    overflow: hidden !important;
    padding: var(--overlay-panel-padding) !important;
    border-radius: 22px !important;
  }

  body .media-overlay.is-gallery-overlay:not(.is-overlay-portrait) .media-overlay-panel,
  body .media-overlay.is-awards-overlay:not(.is-award-portrait) .media-overlay-panel {
    height: auto !important;
  }

  body .media-overlay.is-gallery-overlay.is-overlay-portrait:not(.is-awards-overlay) .media-overlay-panel,
  body .media-overlay.is-awards-overlay.is-award-portrait .media-overlay-panel {
    height: calc(100dvh - 16px) !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-content,
  body .media-overlay.is-awards-overlay .media-overlay-content {
    grid-template-rows: auto auto auto auto minmax(1.2em, auto) minmax(calc(var(--overlay-thumb-height) + 14px), auto) !important;
    height: auto !important;
    max-height: calc(100dvh - 44px) !important;
    min-height: 0 !important;
    gap: var(--overlay-content-gap) !important;
  }

  body .media-overlay.is-gallery-overlay.is-overlay-portrait:not(.is-awards-overlay) .media-overlay-content,
  body .media-overlay.is-awards-overlay.is-award-portrait .media-overlay-content {
    grid-template-rows: auto auto auto minmax(0, 1fr) minmax(1.2em, auto) minmax(calc(var(--overlay-thumb-height) + 14px), auto) !important;
    height: 100% !important;
    max-height: none !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-content .eyebrow,
  body .media-overlay.is-gallery-overlay .media-overlay-content h2,
  body .media-overlay.is-gallery-overlay .media-overlay-counter,
  body .media-overlay.is-awards-overlay .media-overlay-content .eyebrow,
  body .media-overlay.is-awards-overlay .media-overlay-content h2,
  body .media-overlay.is-awards-overlay .media-overlay-counter {
    padding-right: 46px !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-content .eyebrow,
  body .media-overlay.is-awards-overlay .media-overlay-content .eyebrow {
    font-size: 0.66rem !important;
    line-height: 1 !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-content h2,
  body .media-overlay.is-awards-overlay .media-overlay-content h2 {
    font-size: clamp(1.12rem, 5.1vw, 1.42rem) !important;
    line-height: 1.04 !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-counter,
  body .media-overlay.is-awards-overlay .media-overlay-counter {
    margin-top: 0 !important;
    font-size: 0.76rem !important;
    line-height: 1.1 !important;
  }

  body .media-overlay.is-gallery-overlay:not(.is-overlay-portrait) .media-overlay-viewer,
  body .media-overlay.is-awards-overlay:not(.is-award-portrait) .media-overlay-viewer {
    width: 100% !important;
    min-height: 0 !important;
    height: min(44dvh, calc(75vw - 36px), 360px) !important;
    max-height: min(44dvh, calc(75vw - 36px), 360px) !important;
    border-radius: 14px !important;
  }

  body .media-overlay.is-gallery-overlay.is-overlay-portrait:not(.is-awards-overlay) .media-overlay-viewer,
  body .media-overlay.is-awards-overlay.is-award-portrait .media-overlay-viewer {
    width: 100% !important;
    min-height: 0 !important;
    height: 100% !important;
    max-height: 100% !important;
    border-radius: 14px !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-caption,
  body .media-overlay.is-awards-overlay .media-overlay-caption {
    max-height: 2.5em !important;
    overflow: auto !important;
    padding: 0 2px !important;
    font-size: clamp(0.78rem, 3.5vw, 0.9rem) !important;
    line-height: 1.25 !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-strip,
  body .media-overlay.is-awards-overlay .media-overlay-strip {
    min-height: calc(var(--overlay-thumb-height) + 14px) !important;
    padding: 2px 2px 8px !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-strip-shell,
  body .media-overlay.is-awards-overlay .media-overlay-strip-shell {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-strip-shell.is-single-item,
  body .media-overlay.is-awards-overlay .media-overlay-strip-shell.is-single-item {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-thumb-nav,
  body .media-overlay.is-awards-overlay .media-overlay-thumb-nav {
    display: none !important;
  }

  body .media-overlay.is-gallery-overlay .media-thumb,
  body .media-overlay.is-awards-overlay .media-thumb {
    flex-basis: var(--overlay-thumb-width) !important;
    width: var(--overlay-thumb-width) !important;
    height: var(--overlay-thumb-height) !important;
    border-radius: 10px !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-nav,
  body .media-overlay.is-awards-overlay .media-overlay-nav {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    top: auto !important;
    bottom: calc(var(--overlay-thumb-height) + 54px) !important;
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    font-size: 1.9rem !important;
    line-height: 1 !important;
    text-align: center !important;
    transform: none !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-prev,
  body .media-overlay.is-awards-overlay .media-overlay-prev {
    left: 14px !important;
  }

  body .media-overlay.is-gallery-overlay .media-overlay-next,
  body .media-overlay.is-awards-overlay .media-overlay-next {
    right: 14px !important;
  }
}

/* About shell cap note: the About cream wall owns its 2560px cap so ultra-wide screens match the footer/page-wall width instead of stretching to the full browser. */
.about-story-page.about-cover-page {
  --about-shell-width: min(100vw, 2560px);
  --about-shell-bg: #ffffff;
  --about-content-bg: #fff4e6;
  --about-image-gutter-bg: #ffffff;
  --about-heading-color: #1f1b16;
  --about-copy-color: #6a5f53;
  --about-eyebrow-color: #8f2d1e;
  --about-shell-gutter-left: 24px;
  --about-shell-gutter-right: 24px;
  box-sizing: border-box;
  display: block;
  width: 100vw;
  max-width: none;
  min-width: 0;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  overflow-x: clip;
  background: var(--about-shell-bg);
}

.about-cover-page .about-letter-section {
  display: grid;
  box-sizing: border-box;
  width: var(--about-shell-width);
  max-width: 2560px;
  min-width: 0;
  /* About header handoff: match homepage chrome so the first cream section starts directly under the sticky header. */
  margin: 0 auto;
  padding:
    var(--section-heading-top-gap-desktop, 34px)
    var(--about-shell-gutter-right)
    clamp(28px, 2.2vw, 44px) !important;
  padding-left: var(--about-shell-gutter-left) !important;
  overflow: visible;
  border: 0 !important;
  border-radius: 0 !important;
  /* About color lock: white outer shell, cream content surface, white image-grid gutters, and fixed text colors. */
  background: var(--about-content-bg);
  box-shadow: none !important;
}

.about-cover-page .about-letter-heading,
.about-cover-page .about-letter-body,
.about-cover-page .about-letter-copy,
.about-cover-page .about-letter-text,
.about-cover-page .about-letter-gallery {
  min-width: 0;
}

.about-cover-page .about-letter-heading {
  margin-bottom: var(--section-title-to-content-gap, 24px);
}

.about-cover-page .about-letter-heading .eyebrow {
  color: var(--about-eyebrow-color);
}

.about-cover-page .about-letter-heading h1 {
  margin: 0;
  color: var(--about-heading-color);
  overflow-wrap: normal;
  white-space: nowrap;
}

.about-cover-page .about-letter-body {
  display: grid;
  align-items: start;
}

.about-cover-page .about-letter-copy {
  display: grid;
  align-content: start;
  /* Signature spacing/scale lock: this gap is the only body-to-signature spacer; widths scale by desktop, compact desktop, tablet, and mobile ranges below. */
  gap: clamp(18px, 1.15vw, 22px);
  min-height: 0;
}

.about-cover-page .about-letter-text {
  display: block;
  max-width: none;
}

.about-cover-page .about-cover-copy p:not(.eyebrow) {
  max-width: none;
  margin: 0;
  color: var(--about-copy-color);
  text-wrap: pretty;
  overflow-wrap: break-word;
}

.about-cover-page .about-cover-copy p:not(.eyebrow) + p {
  margin-top: var(--about-paragraph-gap, 14px);
}

.about-cover-page .about-signature {
  display: block;
  width: clamp(235px, 13vw, 320px);
  max-width: min(100%, 320px);
  height: auto;
  margin: 0;
  overflow: visible;
}

.about-cover-page .about-letter-gallery {
  display: grid;
  width: 100%;
  min-height: 0;
  overflow: visible;
  background: var(--about-image-gutter-bg);
}

.about-cover-page .about-letter-gallery img {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 0;
  border: 0;
  background: #1f1b16;
  box-shadow: none;
  object-fit: cover;
  object-position: center center;
}

@media (min-width: 1025px) {
  .about-story-page.about-cover-page {
    /* About body gutter lock: desktop stays 50px/51px, tablet widens for reading comfort, and small mobile keeps copy off the viewport edge. */
    --about-shell-gutter-left: 50px;
    --about-shell-gutter-right: 51px;
  }

  .about-cover-page .about-letter-body {
    grid-template-columns: minmax(0, clamp(700px, 46vw, 860px)) minmax(420px, 1fr);
    gap: clamp(24px, 2.6vw, 48px);
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) {
    font-size: clamp(0.92rem, calc(0.74rem + 0.2vw), 1.05rem);
    line-height: 1.52;
  }

  .about-cover-page .about-letter-gallery {
    height: var(--about-letter-copy-height, auto);
    max-height: var(--about-letter-copy-height, none);
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: repeat(4, minmax(0, 1fr));
    grid-auto-rows: unset;
    gap: clamp(8px, 0.68vw, 12px);
  }

  .about-cover-page .about-letter-gallery img {
    height: 100%;
    aspect-ratio: auto;
    border-radius: 0;
  }
}

@media (min-width: 1025px) and (max-width: 1439px) {
  .about-cover-page .about-letter-section {
    padding-top: 24px !important;
    padding-bottom: 26px !important;
  }

  .about-cover-page .about-letter-body {
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(24px, 3vw, 32px);
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) {
    font-size: 0.88rem;
    line-height: 1.56;
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) + p {
    margin-top: 11px;
  }

  .about-cover-page .about-signature {
    width: clamp(200px, 18vw, 240px);
  }

  .about-cover-page .about-letter-gallery {
    height: auto;
    max-height: none;
    grid-template-rows: repeat(4, auto);
    grid-auto-rows: auto;
    gap: 8px;
  }

  .about-cover-page .about-letter-gallery img {
    height: auto;
    aspect-ratio: 4 / 3;
  }
}

@media (min-width: 1600px) and (max-width: 1899px) {
  .about-cover-page .about-letter-gallery img {
    /* Mid-wide desktop framing lock: match the large-desktop mosaic crop so photos breathe before the 1900px layout handoff. */
    object-fit: fill;
    object-position: center center;
  }
}

@media (min-width: 1900px) {
  .about-cover-page .about-letter-body {
    grid-template-columns: minmax(0, clamp(840px, 45vw, 1020px)) minmax(560px, 1fr);
    gap: clamp(34px, 2.8vw, 60px);
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) {
    font-size: clamp(1rem, 0.54vw, 1.18rem);
    line-height: 1.56;
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) + p {
    margin-top: 12px;
  }

  .about-cover-page .about-letter-gallery img {
    /* Large desktop image-fit lock: replaces the old crop rule so full photos stay visible inside the existing frames. */
    object-fit: fill;
    object-position: center center;
  }
}

@media (min-width: 2200px) {
  /* About 2560 note: the left body copy now carries the large-desktop height so the section fills naturally without forcing the gallery taller than the text rhythm. */
  .about-cover-page .about-letter-copy {
    gap: clamp(34px, 1.55vw, 42px);
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) {
    line-height: 2.37;
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) + p {
    margin-top: 28px;
  }

  .about-cover-page .about-letter-gallery img {
    /* Ultra-wide desktop framing lock: keep the existing mosaic size while showing the full photo inside each wide grid cell. */
    object-fit: fill;
  }
}

@media (max-width: 1024px) {
  .about-story-page.about-cover-page {
    --about-shell-gutter-left: clamp(24px, 3.6vw, 34px);
    --about-shell-gutter-right: clamp(24px, 3.6vw, 34px);
  }

  .about-cover-page .about-letter-section {
    padding-top: clamp(20px, 4vw, 34px) !important;
    padding-bottom: clamp(20px, 4vw, 34px) !important;
  }

  .about-cover-page .about-letter-body {
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(24px, 4.6vw, 38px);
  }

  .about-cover-page .about-letter-copy,
  .about-cover-page .about-cover-copy,
  .about-cover-page .about-letter-text {
    width: 100%;
    max-width: none;
  }

  .about-cover-page .about-letter-heading h1 {
    font-size: var(--mobile-fit-title-size, clamp(2rem, 6vw, 2.85rem)) !important;
    line-height: var(--mobile-fit-title-line, 1.02) !important;
    text-overflow: clip;
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) {
    font-size: clamp(0.92rem, 1.25vw, 1rem);
    line-height: 1.5;
  }

  .about-cover-page .about-signature {
    width: clamp(220px, 26vw, 280px);
    max-width: min(100%, 280px);
  }

  .about-cover-page .about-letter-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(9px, 1.6vw, 12px);
  }

  .about-cover-page .about-letter-gallery img {
    height: auto;
    aspect-ratio: 4 / 3;
  }
}

@media (max-width: 1279px) {
  .about-cover-page .about-letter-gallery {
    /* Replaces the older stacked About image grid gutter rule so mobile and tablet image grids remove the side gutters at 1279px and below. */
    width: calc(100% + var(--about-shell-gutter-left) + var(--about-shell-gutter-right));
    margin-left: calc(var(--about-shell-gutter-left) * -1);
  }
}

@media (max-width: 767px) {
  .about-story-page.about-cover-page {
    --about-shell-gutter-left: 24px;
    --about-shell-gutter-right: 24px;
  }
}

@media (max-width: 620px) {
  .about-story-page.about-cover-page {
    --about-shell-gutter-left: clamp(16px, 4.2vw, 20px);
    --about-shell-gutter-right: clamp(16px, 4.2vw, 20px);
  }

  .about-cover-page .about-letter-heading {
    margin-bottom: 18px;
  }

  .about-cover-page .about-letter-heading h1 {
    font-size: var(--mobile-fit-title-size, clamp(1.38rem, 6.1vw, 1.84rem)) !important;
    line-height: var(--mobile-fit-title-line, 1.06) !important;
  }

  .about-cover-page .about-letter-heading .eyebrow {
    font-size: clamp(0.6rem, 2.5vw, 0.72rem) !important;
    letter-spacing: 0.1em !important;
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) {
    font-size: clamp(0.82rem, 3.35vw, 0.92rem);
    line-height: 1.42;
  }

  .about-cover-page .about-cover-copy p:not(.eyebrow) + p {
    margin-top: 12px;
  }

  .about-cover-page .about-signature {
    width: clamp(215px, 62vw, 265px);
    max-width: min(100%, 265px);
  }

  .about-cover-page .about-letter-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }
}

/* Playing Career & Honors approved sizing lock: main photo rail is size-locked. */
#playing-career.playing-career-section {
  --playing-career-carousel-wall-width: 100vw;
  --playing-career-awards-wall-width: var(--playing-career-carousel-wall-width);
  --playing-career-composition-width: var(--playing-career-carousel-wall-width);
  --playing-career-composition-clip: max(0px, calc((100vw - var(--playing-career-composition-width)) / 2));
  --playing-career-slide-width: 70%;
  --playing-career-slide-half: 35%;
  --playing-career-gap: 13px;
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

@media (min-width: 1025px) {
  main#top > #playing-career.playing-career-section {
    --playing-career-carousel-wall-width: 100vw;
    --playing-career-awards-wall-width: var(--playing-career-carousel-wall-width);
    --playing-career-composition-width: min(var(--playing-career-carousel-wall-width), var(--home-section-wall-width, 2560px));
    --playing-career-slide-width: min(62%, 1240px);
    --playing-career-slide-half: min(31%, 620px);
    --playing-career-gap: 13px;
    padding-bottom: 0;
    border-color: transparent;
    background: transparent;
  }
}

#playing-career .playing-career-awards-strip {
  --playing-career-awards-gap: 13px;
  --playing-career-awards-shelf-pad: 13px;
  --playing-career-awards-shelf-bg: linear-gradient(180deg, #FFF8EC 0%, #F1DEB8 100%);
  --playing-career-awards-spacer-color: #ffffff;
  --playing-career-awards-item-width: clamp(180px, 50.8vw, 215px);
  --playing-career-awards-visible-slots: 5;
  --playing-career-awards-slot-overhang: clamp(0px, 4.8vw, 132px);
  --playing-career-awards-slot-width: max(
    var(--playing-career-awards-item-width),
    calc(
      (
        var(--playing-career-awards-wall-width)
        + (var(--playing-career-awards-slot-overhang) * 2)
        - (var(--playing-career-awards-gap) * (var(--playing-career-awards-visible-slots) - 1))
      ) * 0.2
    )
  );
  --playing-career-awards-track-width: calc((var(--playing-career-awards-slot-width) * var(--playing-career-awards-visible-slots)) + (var(--playing-career-awards-gap) * (var(--playing-career-awards-visible-slots) - 1)));
  --playing-career-awards-thumb-height: calc(var(--playing-career-awards-item-width) * 2 / 3);
  position: relative;
  box-sizing: border-box;
  width: var(--playing-career-awards-wall-width);
  max-width: none;
  margin: var(--playing-career-awards-shelf-pad) calc((100% - var(--playing-career-awards-wall-width)) / 2);
  padding: var(--playing-career-awards-shelf-pad) 0;
  background: var(--playing-career-awards-shelf-bg);
  clip-path: inset(0 var(--playing-career-composition-clip));
  overflow: clip;
}

#playing-career .playing-career-awards-track {
  position: relative;
  left: 50%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: var(--playing-career-awards-gap);
  width: var(--playing-career-awards-track-width);
  min-width: 0;
  max-width: none;
  margin-inline: 0;
  background: transparent;
  overflow: visible;
  padding: 0;
  scrollbar-width: none;
  touch-action: pan-y;
  transform: translateX(-50%);
  transition: opacity 160ms ease;
}

#playing-career .playing-career-awards-track::-webkit-scrollbar {
  display: none;
}

#playing-career .playing-career-award-thumb {
  appearance: none;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 var(--playing-career-awards-slot-width);
  width: var(--playing-career-awards-slot-width);
  height: var(--playing-career-awards-thumb-height);
  padding: 0;
  border: 0;
  border-radius: 0;
  background: var(--playing-career-awards-shelf-bg);
  box-shadow: none;
  cursor: pointer;
  overflow: visible;
  user-select: none;
}

#playing-career .playing-career-award-thumb:not(:last-child)::after {
  content: "";
  position: absolute;
  top: calc(-1 * var(--playing-career-awards-shelf-pad));
  right: calc(-1 * var(--playing-career-awards-gap));
  width: var(--playing-career-awards-gap);
  height: calc(100% + (var(--playing-career-awards-shelf-pad) * 2));
  background: var(--playing-career-awards-spacer-color);
  pointer-events: none;
}

#playing-career .playing-career-award-thumb:focus-visible {
  outline: 3px solid rgba(184, 135, 47, 0.32);
  outline-offset: 3px;
}

#playing-career .playing-career-award-thumb img {
  display: block;
  width: min(100%, var(--playing-career-awards-item-width));
  height: 100%;
  object-fit: contain;
  object-position: center center;
  color: inherit;
  background: transparent;
  pointer-events: none;
}

#playing-career .playing-career-award-thumb.is-peek-prev img {
  object-position: right center;
}

#playing-career .playing-career-award-thumb.is-peek-next img {
  object-position: left center;
}

#playing-career .playing-career-awards-arrow {
  --playing-career-awards-arrow-icon-size: 1.75rem;
  position: absolute;
  z-index: 3;
  top: calc(13px + (var(--playing-career-awards-thumb-height) / 2));
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 50px;
  border: 1px solid #d95a24;
  border-radius: 999px;
  color: #d95a24;
  -webkit-text-fill-color: #d95a24;
  background: rgba(255, 255, 255, 0.88);
  background-image: none;
  cursor: pointer;
  font-size: 0;
  line-height: 1;
  box-shadow: none;
  text-shadow: none;
  transform: translateY(-50%);
}

#playing-career .playing-career-awards-arrow::before {
  display: block;
  color: currentColor;
  -webkit-text-fill-color: currentColor;
  font-size: var(--playing-career-awards-arrow-icon-size);
  line-height: 1;
  text-shadow: none;
  transform: translateY(-2px);
}

#playing-career .playing-career-awards-arrow-prev {
  left: calc(var(--playing-career-composition-clip) + clamp(6px, 0.9vw, 14px));
}

#playing-career .playing-career-awards-arrow-prev::before {
  content: "\2039";
}

#playing-career .playing-career-awards-arrow-next {
  right: calc(var(--playing-career-composition-clip) + clamp(6px, 0.9vw, 14px));
}

#playing-career .playing-career-awards-arrow-next::before {
  content: "\203a";
}

#playing-career .playing-career-awards-arrow:hover,
#playing-career .playing-career-awards-arrow:focus-visible {
  border-color: #d95a24;
  color: #d95a24;
  -webkit-text-fill-color: #d95a24;
  background: rgba(255, 255, 255, 0.96);
  transform: translateY(calc(-50% - 2px));
}

#playing-career .playing-career-awards-arrow:focus-visible {
  outline: 3px solid rgba(184, 135, 47, 0.34);
  outline-offset: 3px;
}

#playing-career .playing-career-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 13px;
  margin: 0 0 13px;
}

#playing-career .playing-career-carousel {
  position: relative;
  display: block;
  width: var(--playing-career-carousel-wall-width);
  max-width: none;
  margin-inline: calc((100% - var(--playing-career-carousel-wall-width)) / 2);
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  clip-path: inset(0 var(--playing-career-composition-clip));
  box-shadow: none;
  overflow: hidden;
}

#playing-career .playing-career-track {
  position: relative;
  left: 50%;
  display: flex;
  gap: var(--playing-career-gap);
  width: var(--playing-career-composition-width);
  min-width: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  scrollbar-width: none;
  touch-action: pan-y;
  transform: translateX(calc(-1 * (var(--playing-career-slide-width) + var(--playing-career-gap) + var(--playing-career-slide-half))));
}

#playing-career .playing-career-track::-webkit-scrollbar {
  display: none;
}

#playing-career .playing-career-track .achievement-card {
  appearance: none;
  position: relative;
  flex: 0 0 var(--playing-career-slide-width);
  aspect-ratio: 3200 / 1737;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  font: inherit;
  overflow: hidden;
  opacity: 0.86;
  transition:
    opacity 180ms ease,
    filter 180ms ease;
}

#playing-career .playing-career-track .achievement-card.is-active {
  z-index: 1;
  opacity: 1;
  filter: none;
}

#playing-career .playing-career-track .achievement-card.is-active::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0);
  opacity: 0;
  pointer-events: none;
  transition: opacity 180ms ease, background-color 180ms ease;
}

#playing-career .playing-career-track .achievement-card.is-active:is(:hover, :focus-visible)::before {
  background: rgba(0, 0, 0, 0.16);
  opacity: 1;
}

#playing-career .playing-career-track .achievement-card:is(.is-prev, .is-next) {
  filter: saturate(0.94) brightness(0.98);
}

#playing-career .playing-career-track .achievement-card:hover,
#playing-career .playing-career-track .achievement-card:focus-visible {
  opacity: 1;
  filter: none;
}

#playing-career .playing-career-track .achievement-card:focus-visible {
  outline: 3px solid rgba(184, 135, 47, 0.36);
  outline-offset: 4px;
}

#playing-career .playing-career-track .achievement-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  background: #1f1b16;
  pointer-events: none;
}

#playing-career .playing-career-arrow {
  --playing-career-arrow-icon-size: 2rem;
  position: absolute;
  z-index: 3;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 54px;
  border: 1px solid #d95a24;
  border-radius: 999px;
  color: #d95a24;
  -webkit-text-fill-color: #d95a24;
  background: rgba(255, 255, 255, 0.88);
  background-image: none;
  cursor: pointer;
  font-size: 0;
  line-height: 1;
  box-shadow: none;
  text-shadow: none;
  transform: translateY(-50%);
}

#playing-career .playing-career-arrow::before {
  display: block;
  color: currentColor;
  -webkit-text-fill-color: currentColor;
  font-size: var(--playing-career-arrow-icon-size);
  line-height: 1;
  text-shadow: none;
  transform: translateY(-2px);
}

#playing-career .playing-career-arrow-prev::before {
  content: "\2039";
}

#playing-career .playing-career-arrow-next::before {
  content: "\203a";
}

#playing-career .playing-career-arrow-prev {
  left: calc(var(--playing-career-composition-clip) + clamp(8px, 1.4vw, 24px));
}

#playing-career .playing-career-arrow-next {
  right: calc(var(--playing-career-composition-clip) + clamp(8px, 1.4vw, 24px));
}

#playing-career .playing-career-arrow:hover,
#playing-career .playing-career-arrow:focus-visible {
  border-color: #d95a24;
  color: #d95a24;
  -webkit-text-fill-color: #d95a24;
  background: rgba(255, 255, 255, 0.96);
  transform: translateY(calc(-50% - 2px));
}

#playing-career .playing-career-arrow:focus-visible {
  outline: 3px solid rgba(184, 135, 47, 0.34);
  outline-offset: 3px;
}

@media (min-width: 1025px) {
  body .page-shell main#top #playing-career .section-heading {
    container-type: normal !important;
    margin-bottom: var(--section-title-to-content-gap) !important;
  }

  body .page-shell main#top #playing-career .section-heading > .eyebrow {
    margin: 0 0 var(--section-eyebrow-to-title-gap) !important;
    color: var(--section-eyebrow-color) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    font-size: var(--section-eyebrow-size-desktop) !important;
    font-weight: 700 !important;
    line-height: var(--section-eyebrow-line-desktop) !important;
    white-space: normal !important;
  }

  body .page-shell main#top #playing-career .section-heading > h2 {
    margin: 0 !important;
    color: var(--section-title-color) !important;
    font-family: Georgia, "Palatino Linotype", serif !important;
    font-size: var(--section-title-size-desktop) !important;
    font-weight: 700 !important;
    line-height: var(--section-title-line-desktop) !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
    white-space: normal !important;
  }

  #playing-career .playing-career-carousel {
    width: var(--playing-career-carousel-wall-width);
    margin-inline: calc((100% - var(--playing-career-carousel-wall-width)) / 2);
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  #playing-career .playing-career-track {
    padding: 0;
    background: transparent;
    scrollbar-width: none;
  }

  #playing-career .playing-career-track::-webkit-scrollbar {
    display: none;
  }

  #playing-career .playing-career-track .achievement-card {
    flex-basis: var(--playing-career-slide-width);
    aspect-ratio: 3200 / 1737;
    border-radius: 0;
    box-shadow: none;
  }

  #playing-career .playing-career-track .achievement-card:hover,
  #playing-career .playing-career-track .achievement-card:focus-visible {
    box-shadow: none;
  }

  #playing-career .playing-career-track .achievement-card img {
    border-radius: 0;
  }

  #playing-career .playing-career-arrow {
    position: absolute;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
  }

  #playing-career .playing-career-arrow-prev {
    left: calc(var(--playing-career-composition-clip) + clamp(6px, 0.9vw, 14px));
  }

  #playing-career .playing-career-arrow-next {
    right: calc(var(--playing-career-composition-clip) + clamp(6px, 0.9vw, 14px));
  }

  #playing-career .playing-career-arrow:hover,
  #playing-career .playing-career-arrow:focus-visible {
    transform: translateY(calc(-50% - 2px));
  }

  #playing-career .playing-career-awards-strip {
    --playing-career-awards-gap: 13px;
    --playing-career-awards-item-width: 300px;
    --playing-career-awards-thumb-height: calc(var(--playing-career-awards-item-width) * 2 / 3);
    margin-inline: calc((100% - var(--playing-career-awards-wall-width)) / 2);
  }

  #playing-career .playing-career-awards-track {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: var(--playing-career-awards-gap);
    overflow: visible;
    padding-bottom: 0;
    scrollbar-width: none;
  }

  #playing-career .playing-career-award-thumb {
    width: var(--playing-career-awards-slot-width);
    height: var(--playing-career-awards-thumb-height);
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  #playing-career.playing-career-section {
    --playing-career-carousel-wall-width: 100vw;
    --playing-career-awards-wall-width: var(--playing-career-carousel-wall-width);
    --playing-career-composition-width: var(--playing-career-carousel-wall-width);
    --playing-career-slide-width: 64%;
    --playing-career-slide-half: 32%;
    --playing-career-gap: 13px;
  }

  #playing-career .playing-career-awards-strip {
    --playing-career-awards-gap: 13px;
    --playing-career-awards-item-width: clamp(285px, calc(52.3px + 30.3vw), 305px);
    --playing-career-awards-thumb-height: calc(var(--playing-career-awards-item-width) * 2 / 3);
  }
}

@media (min-width: 1024px) and (max-width: 1024.98px) {
  #playing-career.playing-career-section {
    --playing-career-carousel-wall-width: 100vw;
    --playing-career-awards-wall-width: var(--playing-career-carousel-wall-width);
    --playing-career-composition-width: min(var(--playing-career-carousel-wall-width), var(--home-section-wall-width, 2560px));
    --playing-career-slide-width: 62%;
    --playing-career-slide-half: 31%;
    --playing-career-gap: 13px;
  }
}

@media (min-width: 600px) and (max-width: 767px) {
  #playing-career.playing-career-section {
    --playing-career-slide-width: 64%;
    --playing-career-slide-half: 32%;
  }

  #playing-career .playing-career-awards-strip {
    --playing-career-awards-item-width: clamp(255px, calc(117.6px + 20.6vw), 270px);
    --playing-career-awards-thumb-height: calc(var(--playing-career-awards-item-width) * 2 / 3);
  }
}

@media (min-width: 835px) and (max-width: 1279px) {
  #playing-career .playing-career-awards-strip {
    --playing-career-awards-item-width: clamp(285px, calc(139.8px + 17.2vw), 300px);
  }
}

@media (min-width: 1280px) {
  #playing-career .playing-career-awards-strip {
    --playing-career-awards-item-width: clamp(315px, calc(195px + 9.375vw), 360px);
  }
}

@media (max-width: 900px) {
  #playing-career .playing-career-actions {
    display: block;
    margin: 0 0 13px;
  }

  #playing-career .playing-career-carousel {
    margin-top: 0;
  }

  #playing-career .playing-career-arrow {
    --playing-career-arrow-icon-size: 1.55rem;
    width: 34px;
    height: 40px;
    background: rgba(255, 255, 255, 0.88);
  }

  #playing-career .playing-career-arrow-prev {
    left: 14px;
  }

  #playing-career .playing-career-arrow-next {
    right: 14px;
  }
}

@media (max-width: 767px) {
  #playing-career .playing-career-carousel {
    padding: 0;
  }

  #playing-career .playing-career-track {
    padding: 0;
  }

  #playing-career .playing-career-track .achievement-card {
    flex-basis: var(--playing-career-slide-width);
  }

  #playing-career .playing-career-arrow {
    position: absolute;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
  }
}

@media (max-width: 430px) {
  #playing-career .playing-career-actions {
    margin-bottom: 14px;
  }

  #playing-career .playing-career-carousel {
    overflow: hidden;
    padding: 0;
    border-radius: 0;
  }

  #playing-career .playing-career-track {
    padding: 0;
    scrollbar-width: none;
  }

  #playing-career .playing-career-track::-webkit-scrollbar {
    display: none;
  }

  #playing-career .playing-career-track .achievement-card {
    flex-basis: var(--playing-career-slide-width);
    border: 0;
    border-radius: 0;
    background: transparent;
  }
}

@media (max-width: 599.98px) {
  #playing-career .playing-career-track .achievement-card {
    aspect-ratio: 800 / 579;
  }
}

@media (max-width: 599.98px), (max-width: 932px) and (max-height: 430px) {
  /* Replaces the older oversized mobile carousel arrow sizing for Playing Career and Awards. */
  #playing-career .playing-career-arrow,
  #playing-career .playing-career-awards-arrow {
    --playing-career-arrow-icon-size: 1.25rem;
    --playing-career-awards-arrow-icon-size: 1.25rem;
    width: 30px;
    height: 36px;
    touch-action: manipulation;
  }

  #playing-career .playing-career-arrow::before,
  #playing-career .playing-career-awards-arrow::before {
    position: relative;
    z-index: 1;
  }

  #playing-career .playing-career-arrow::after,
  #playing-career .playing-career-awards-arrow::after {
    content: "";
    position: absolute;
    inset: -6px;
    border-radius: 999px;
  }

  #playing-career .playing-career-arrow-prev,
  #playing-career .playing-career-awards-arrow-prev {
    left: 10px;
  }

  #playing-career .playing-career-arrow-next,
  #playing-career .playing-career-awards-arrow-next {
    right: 10px;
  }
}

/* Home Portfolio Materials + Contact closeout lock. */
main#top > .contact-section {
  padding: 0 !important;
  border: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

body .page-shell main#top .contact-closeout-grid {
  --contact-closeout-gap: 13px;
  --contact-closeout-width: 100%;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: var(--contact-closeout-gap) !important;
  align-items: stretch !important;
  width: var(--contact-closeout-width) !important;
}

body .page-shell main#top .document-card,
body .page-shell main#top .contact-form-card {
  --contact-closeout-card-bg: var(--home-system-card-cream, #fff4e6);
  --contact-closeout-card-radius: clamp(24px, 2.4vw, 30px);
  --contact-closeout-card-shadow: 0 18px 42px rgba(52, 36, 24, 0.1);
  display: grid !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 34px clamp(36px, 2.4vw, 58px) !important;
  border: 1px solid rgba(31, 27, 22, 0.1) !important;
  border-radius: var(--contact-closeout-card-radius) !important;
  background: var(--contact-closeout-card-bg) !important;
  box-shadow: var(--contact-closeout-card-shadow) !important;
}

body .page-shell main#top .document-card {
  grid-template-rows: auto auto !important;
  gap: 20px !important;
  align-content: end !important;
}

body .page-shell main#top .document-card-title {
  margin: 0 !important;
  color: #1F1B16 !important;
  font-family: Georgia, "Palatino Linotype", serif !important;
  font-size: clamp(22px, 6vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: normal !important;
}

body .page-shell main#top .contact-card-title {
  margin: 0 !important;
  color: #1F1B16 !important;
  font-family: Georgia, "Palatino Linotype", serif !important;
  font-size: clamp(22px, 6vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: normal !important;
}

body .page-shell main#top .contact-form-card {
  align-items: start !important;
  gap: 20px !important;
}

body .page-shell main#top .home-closeout-heading {
  display: block !important;
  container-type: normal !important;
  margin: 0 !important;
}

body .page-shell main#top .document-card-copy {
  gap: 0 !important;
}

body .page-shell main#top .home-closeout-heading > .eyebrow {
  margin: 0 0 12px !important;
  color: var(--red) !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-size: 10.88px !important;
  font-weight: 700 !important;
  line-height: 13.056px !important;
  letter-spacing: clamp(0.08em, 0.16cqw, 0.14em) !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body .page-shell main#top .home-closeout-heading > h2 {
  margin: 0 !important;
  color: var(--text) !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: normal !important;
  letter-spacing: normal !important;
  white-space: normal !important;
}

body .page-shell main#top .document-actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(3, minmax(44px, auto)) auto !important;
  gap: 13px !important;
  min-height: 0 !important;
}

body .page-shell main#top .document-actions .button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 44px !important;
  justify-content: center !important;
  padding-inline: 12px !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  line-height: normal !important;
  text-align: center !important;
  white-space: normal !important;
}

body .page-shell main#top .document-actions .button-primary {
  grid-column: 1 / -1 !important;
}

body .page-shell main#top .contact-form-card .contact-form,
body .page-shell main#top .contact-form,
body .page-shell main#top .contact-name-row {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
  width: 100% !important;
}

body .page-shell main#top .contact-form-card .contact-form {
  order: initial !important;
  align-self: start !important;
}

body .page-shell main#top .contact-form label {
  display: grid !important;
  gap: 5px !important;
  color: var(--red) !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-size: 11.84px !important;
  font-weight: 700 !important;
  line-height: normal !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
}

body .page-shell main#top .contact-form .contact-field-label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

body .page-shell main#top .contact-form input,
body .page-shell main#top .contact-form select,
body .page-shell main#top .contact-form textarea {
  width: 100% !important;
  min-width: 0 !important;
  border: 1px solid rgba(158, 111, 53, 0.26) !important;
  border-radius: 17px !important;
  background-color: rgba(255, 255, 252, 0.9) !important;
  color: var(--text) !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 19.2px !important;
  letter-spacing: normal !important;
  padding: 10px 14px !important;
  outline: none !important;
}

body .page-shell main#top .contact-form input::placeholder,
body .page-shell main#top .contact-form textarea::placeholder {
  color: rgba(31, 27, 22, 0.42) !important;
  font-weight: 400 !important;
  opacity: 1 !important;
}

body .page-shell main#top .contact-form input,
body .page-shell main#top .contact-form select {
  min-height: 39px !important;
}

body .page-shell main#top .contact-form select {
  appearance: none !important;
  background-image: none !important;
  padding-right: 52px !important;
}

body .page-shell main#top .contact-form .select-field {
  position: relative !important;
}

body .page-shell main#top .contact-form .select-field::after {
  right: 18px !important;
  bottom: 15px !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 2px solid var(--red) !important;
  border-bottom: 2px solid var(--red) !important;
}

body .page-shell main#top .contact-form textarea {
  min-height: 132px !important;
  height: 132px !important;
  resize: vertical !important;
}

body .page-shell main#top .contact-form input:focus,
body .page-shell main#top .contact-form select:focus,
body .page-shell main#top .contact-form textarea:focus {
  border-color: rgba(170, 62, 35, 0.74) !important;
  background-color: #fffefa !important;
  box-shadow: 0 0 0 4px rgba(194, 138, 53, 0.14) !important;
}

body .page-shell main#top .contact-form .button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 44px !important;
  margin-top: 0 !important;
  border: 1px solid #d95a24 !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  background: #d95a24 !important;
  background-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

@media (max-width: 430px) {
  body .page-shell main#top .home-closeout-heading > .eyebrow {
    margin-bottom: 4px !important;
  }

  body .page-shell main#top .home-closeout-heading > h2 {
    font-size: 22.5px !important;
  }

  body .page-shell main#top .contact-form .button {
    padding-inline: 12px !important;
    font-size: 13.44px !important;
    line-height: 14.784px !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main#top .home-closeout-heading > .eyebrow {
    font-size: clamp(11.2px, calc(8.32px + 0.375vw), 12.16px) !important;
    line-height: 1.15 !important;
  }
}

@media (min-width: 821px) {
  body .page-shell main#top .contact-form-card .contact-form,
  body .page-shell main#top .contact-form {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px 16px !important;
  }

  body .page-shell main#top .contact-form-card .contact-name-row,
  body .page-shell main#top .contact-name-row {
    grid-column: 1 / -1 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }

  body .page-shell main#top .contact-form label:has(textarea),
  body .page-shell main#top .contact-form .button {
    grid-column: 1 / -1 !important;
  }
}

@media (min-width: 1025px) {
  body .page-shell main#top .contact-closeout-grid {
    --contact-closeout-gap: 13px;
    --contact-closeout-width: var(--home-section-wall-width);
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr) !important;
    margin-inline: calc((var(--page-shell-width) - var(--contact-closeout-width)) / 2);
  }

  body .page-shell main#top .document-card,
  body .page-shell main#top .contact-form-card {
    --contact-closeout-card-bg: var(--home-system-card-cream, #fff4e6);
    --contact-closeout-card-radius: 0;
    --contact-closeout-card-shadow: none;
  }

  body .page-shell main#top .document-card {
    grid-template-rows: auto auto !important;
  }

  body .page-shell main#top .document-card,
  body .page-shell main#top .contact-form-card {
    align-items: stretch !important;
    gap: 20px !important;
    padding-bottom: 6px !important;
  }

  body .page-shell main#top .document-actions {
    grid-template-columns: 1fr !important;
    grid-template-rows: repeat(6, minmax(44px, auto)) minmax(50px, auto) !important;
    align-content: space-between !important;
    align-self: stretch !important;
    height: auto !important;
    gap: 10px !important;
  }

  body .page-shell main#top .document-actions .button {
    min-width: auto !important;
    padding-inline: 16px !important;
    font-size: 14.5px !important;
  }

  body .page-shell main#top .document-actions .button-primary {
    grid-column: auto !important;
  }

  body .page-shell main#top .contact-form-card .contact-form,
  body .page-shell main#top .contact-form {
    align-content: space-between !important;
    align-self: stretch !important;
    height: 100% !important;
    gap: 10px 16px !important;
  }

  body .page-shell main#top .contact-form label {
    gap: 4px !important;
  }

  body .page-shell main#top .contact-form textarea {
    min-height: 156px !important;
    height: 156px !important;
  }

  body .page-shell main#top .document-actions .button-primary,
  body .page-shell main#top .contact-form .button {
    min-width: auto !important;
    min-height: 50px !important;
    height: 50px !important;
  }

  body .page-shell main#top .contact-form .button {
    font-size: 14px !important;
    line-height: normal !important;
  }
}

/* Contact page final lock: scoped to contact.html so the Home closeout stays untouched. */
body .page-shell main.contact-page {
  display: block !important;
  min-height: 0 !important;
  overflow-x: clip !important;
}

body .page-shell main.contact-page:not(#top):not(.about-cover-page) > .section.contact-section {
  margin-top: 22px !important;
  padding-top: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 22px !important;
  padding-left: 0 !important;
  border: 0 !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .page-shell main.contact-page .contact-page-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr) !important;
  gap: clamp(28px, 2.5vw, 40px) !important;
  align-items: stretch !important;
  width: 100% !important;
}

body .page-shell main.contact-page .contact-materials-card,
body .page-shell main.contact-page .contact-form-card {
  display: flex !important;
  min-width: 0 !important;
  height: 100% !important;
  align-self: stretch !important;
  flex-direction: column !important;
  gap: 22px !important;
  padding: clamp(30px, 2.35vw, 40px) !important;
  border: 1px solid rgba(31, 27, 22, 0.1) !important;
  border-radius: clamp(24px, 2.4vw, 30px) !important;
  background:
    linear-gradient(180deg, rgba(255, 253, 248, 0.9), rgba(252, 243, 230, 0.74)),
    rgba(255, 250, 243, 0.8) !important;
  box-shadow: 0 18px 42px rgba(52, 36, 24, 0.1) !important;
}

body .page-shell main.contact-page .contact-materials-card {
  display: grid !important;
  order: 2 !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  align-content: start !important;
  justify-content: stretch !important;
  gap: var(--section-title-to-content-gap, 24px) !important;
}

body .page-shell main.contact-page .contact-form-card {
  order: 1 !important;
}

body .page-shell main.contact-page .home-closeout-heading {
  display: block !important;
  margin: 0 !important;
  container-type: normal !important;
}

body .page-shell main.contact-page .home-closeout-heading > .eyebrow {
  margin: 0 0 10px !important;
  color: var(--red) !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 15px !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}

body .page-shell main.contact-page .home-closeout-heading > h2 {
  margin: 0 !important;
  color: var(--text) !important;
  font-family: Georgia, "Palatino Linotype", serif !important;
  font-size: clamp(28px, 2vw, 34px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}

body .page-shell main.contact-page .home-closeout-heading > p:not(.eyebrow) {
  max-width: 620px !important;
  margin: 14px 0 0 !important;
  color: var(--muted) !important;
  font-size: 16px !important;
  line-height: 1.62 !important;
}

body .page-shell main.contact-page .contact-document-actions {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: repeat(7, minmax(44px, 1fr)) !important;
  align-self: stretch !important;
  gap: 12px !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body .page-shell main.contact-page .contact-document-actions .button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 48px !important;
  justify-content: center !important;
  padding-inline: 13px !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

body .page-shell main.contact-page .contact-document-actions .button-primary {
  grid-column: auto !important;
}

body .page-shell main.contact-page .contact-form-card .contact-form {
  order: initial !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 13px !important;
  width: 100% !important;
  align-self: start !important;
  padding: 0 !important;
}

body .page-shell main.contact-page .contact-name-row,
body .page-shell main.contact-page .contact-method-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
}

body .page-shell main.contact-page .contact-form label {
  display: grid !important;
  gap: 8px !important;
  min-width: 0 !important;
  color: var(--red) !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body .page-shell main.contact-page .contact-form input,
body .page-shell main.contact-page .contact-form select,
body .page-shell main.contact-page .contact-form textarea {
  width: 100% !important;
  min-width: 0 !important;
  border: 1px solid rgba(158, 111, 53, 0.26) !important;
  border-radius: 17px !important;
  background-color: rgba(255, 255, 252, 0.9) !important;
  color: var(--text) !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  padding: 11px 14px !important;
  outline: none !important;
}

body .page-shell main.contact-page .contact-form input,
body .page-shell main.contact-page .contact-form select {
  min-height: 50px !important;
}

body .page-shell main.contact-page .contact-form select {
  appearance: none !important;
  background-image: none !important;
  padding-right: 52px !important;
}

body .page-shell main.contact-page .contact-form .select-field {
  position: relative !important;
}

body .page-shell main.contact-page .contact-form .select-field::after {
  right: 18px !important;
  bottom: 21px !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 2px solid var(--red) !important;
  border-bottom: 2px solid var(--red) !important;
}

body .page-shell main.contact-page .contact-form textarea {
  min-height: 118px !important;
  height: 118px !important;
  resize: vertical !important;
}

body .page-shell main.contact-page .contact-form input:focus,
body .page-shell main.contact-page .contact-form select:focus,
body .page-shell main.contact-page .contact-form textarea:focus {
  border-color: rgba(170, 62, 35, 0.74) !important;
  background-color: #fffefa !important;
  box-shadow: 0 0 0 4px rgba(194, 138, 53, 0.14) !important;
}

body .page-shell main.contact-page .contact-form .button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 52px !important;
  margin-top: 2px !important;
  border: 1px solid #d95a24 !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: Arial, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  background: #d95a24 !important;
  background-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

@media (min-width: 1025px) and (max-width: 1199px) {
  body .page-shell main.contact-page .contact-materials-card .home-closeout-heading > h2,
  body .page-shell main.contact-page .contact-form-card .home-closeout-heading > h2 {
    font-size: 27px !important;
  }
}

@media (min-width: 1920px) {
  body .page-shell main.contact-page .contact-form-card .contact-form {
    max-width: none !important;
    margin-inline: 0 !important;
  }
}

@media (max-width: 1024px) {
  body .page-shell main.contact-page:not(#top):not(.about-cover-page) > .section.contact-section {
    margin-top: 22px !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 22px !important;
    padding-left: 0 !important;
  }

  body .page-shell main.contact-page .contact-page-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  body .page-shell main.contact-page .contact-form-card {
    order: 1 !important;
  }

  body .page-shell main.contact-page .contact-materials-card {
    order: 2 !important;
  }

  body .page-shell main.contact-page .contact-materials-card,
  body .page-shell main.contact-page .contact-form-card {
    padding: clamp(28px, 4vw, 36px) !important;
  }

  body .page-shell main.contact-page .contact-form textarea {
    min-height: 124px !important;
    height: 124px !important;
  }
}

@media (max-width: 820px) {
  body .page-shell main.contact-page .contact-page-grid {
    gap: 24px !important;
  }

  body .page-shell main.contact-page .contact-name-row,
  body .page-shell main.contact-page .contact-method-row {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  body .page-shell main.contact-page .contact-form-card .contact-form {
    gap: 14px !important;
  }
}

@media (max-width: 430px) {
  body .page-shell main.contact-page:not(#top):not(.about-cover-page) > .section.contact-section {
    margin-top: 22px !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 22px !important;
    padding-left: 0 !important;
  }

  body .page-shell main.contact-page .contact-page-grid {
    gap: 22px !important;
  }

  body .page-shell main.contact-page .contact-materials-card,
  body .page-shell main.contact-page .contact-form-card {
    gap: 18px !important;
    padding: 24px 22px !important;
  }

  body .page-shell main.contact-page .home-closeout-heading > h2 {
    font-size: clamp(22px, 6vw, 25px) !important;
  }

  body .page-shell main.contact-page .home-closeout-heading > p:not(.eyebrow) {
    font-size: 15px !important;
    line-height: 1.58 !important;
  }

  body .page-shell main.contact-page .contact-document-actions {
    gap: 9px !important;
  }

  body .page-shell main.contact-page .contact-document-actions .button {
    min-height: 44px !important;
    padding-inline: 9px !important;
    font-size: 14.5px !important;
  }

  body .page-shell main.contact-page .contact-form input,
  body .page-shell main.contact-page .contact-form select {
    min-height: 48px !important;
  }

  body .page-shell main.contact-page .contact-form textarea {
    min-height: 116px !important;
    height: 116px !important;
  }

  body .page-shell main.contact-page .contact-form .button {
    min-height: 50px !important;
  }
}

@media (max-width: 359px) {
  body .page-shell main.contact-page .contact-document-actions {
    grid-template-columns: 1fr !important;
  }
}

/* Systems Page Final Lock
   The shared page-hero, card, section-heading, image and button tokens above
   remain the source of visual truth. These scoped rules only align the Systems
   page library, detail sections and document carousels to that approved system. */
body:has(main.systems-detail-page) .site-nav a[href="./systems"] {
  color: var(--red);
}

body:has(main.featured-page) .site-nav a[href="./featured"],
body:has(main.anaya-case-study-page) .site-nav a[href="./featured"],
body:has(main.archer-page) .site-nav a[href="./featured"],
body:has(main.media-library-page) .site-nav a[href="./gallery"],
body:has(main.about-cover-page) .site-nav a[href="./about"],
body:has(main.contact-page) .site-nav a[href="./contact"] {
  color: var(--red);
}

/* Systems section wall lock: detail sections keep the shared gutters and now use the hero/footer cream canvas. */
/* Systems full rhythm lock: intro text aligns to the first carousel card edge, body copy is capped wider than before, proof rails keep safe gutters, arrows sit inside wrapping rails, and first/last section spacing is normalized. */
body .page-shell main.systems-detail-page > .system-detail-section {
  --systems-section-wall-width: 100vw;
  --systems-section-inline-pad: max(18px, calc((var(--systems-section-wall-width) - var(--page-shell-width)) / 2 + 18px));
  --systems-carousel-safe-gutter: clamp(14px, 4.2vw, 18px);
  --systems-carousel-media-gutter: var(--systems-carousel-safe-gutter);
  --systems-intro-rail-gap: 12px;
  --systems-section-breathing-room: 24px;
  --systems-final-footer-gap: var(--systems-section-breathing-room);
  box-sizing: border-box;
  width: var(--systems-section-wall-width) !important;
  max-width: none !important;
  margin: 0 calc(50% - (var(--systems-section-wall-width) * 0.5)) !important;
  margin-top: var(--systems-intro-rail-gap) !important;
  padding-top: var(--systems-section-breathing-room) !important;
  padding-right: var(--systems-section-inline-pad) !important;
  padding-bottom: var(--systems-section-breathing-room) !important;
  padding-left: var(--systems-section-inline-pad) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff4e6 !important;
  box-shadow: none !important;
}

@media (max-width: 1024px) {
  /* Systems mobile/tablet page canvas lock: outer page stays homepage white while content bands keep their own color. */
  body .page-shell main.systems-detail-page {
    background: #ffffff !important;
  }
}

/* Systems detail intro rhythm lock: eyebrow/title/body spacing is standardized and carousel/card mechanics stay unchanged. */
body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy {
  --section-eyebrow-to-title-gap: 6px;
  --section-title-to-intro-gap: 10px;
  --mobile-fit-title-size: clamp(22px, 6vw, 28px);
  --mobile-fit-title-line: 1.06;
  width: 100%;
}

/* Systems intro rail alignment: detail intro text aligns to the first carousel card edge so copy and proof cards read as one unit. */
body .page-shell main.systems-detail-page > .system-detail-section > .system-detail-grid {
  margin-right: calc(var(--systems-carousel-safe-gutter, clamp(22px, 5.8vw, 25px)) - var(--systems-section-inline-pad));
  margin-left: calc(var(--systems-carousel-safe-gutter, clamp(22px, 5.8vw, 25px)) - var(--systems-section-inline-pad));
  width: auto;
}

/* These Systems-only !important values override the shared site heading rhythm locks above. */
body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy > .eyebrow {
  margin-bottom: 6px !important;
}

body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy > h2 {
  margin: 0 !important;
}

body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy > h2 + p:not(.eyebrow) {
  margin-top: 10px !important;
}

main.systems-detail-page .system-detail-copy > p:not(.eyebrow) {
  /* Systems intro body width lock: copy spans the full detail rail under each section title. */
  max-width: none !important;
  width: 100% !important;
  font-size: clamp(1rem, 0.24vw + 0.92rem, 1.12rem);
  line-height: 1.62;
}

/* Systems carousel safe rail: proof-card rows stay wide with safe side gutters so cards and arrows do not hit the hard viewport edge; card content/sizing rules are intentionally unchanged. */
body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel {
  margin-right: calc((var(--systems-section-inline-pad) - var(--systems-carousel-media-gutter, var(--systems-carousel-safe-gutter))) * -1) !important;
  margin-left: calc((var(--systems-section-inline-pad) - var(--systems-carousel-media-gutter, var(--systems-carousel-safe-gutter))) * -1) !important;
  margin-top: 20px;
  margin-bottom: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  line-height: 0;
}

/* Systems carousel arrow lock: arrows sit inside the safe proof rail, stay visually active, and pair with JS wrap behavior; JS only disables single-item rails. */
body .page-shell main.systems-detail-page > .system-detail-section .system-carousel-arrow {
  z-index: 5;
  border-color: rgba(207, 79, 31, 0.34);
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.98), rgba(255, 248, 239, 0.94)),
    var(--panel);
  color: var(--coach-orange);
  opacity: 1;
}

body .page-shell main.systems-detail-page > .system-detail-section .system-carousel-arrow:hover,
body .page-shell main.systems-detail-page > .system-detail-section .system-carousel-arrow:focus-visible {
  border-color: rgba(207, 79, 31, 0.34);
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.98), rgba(255, 248, 239, 0.94)),
    var(--panel);
  color: var(--coach-orange);
  transform: translateY(-50%);
}

body .page-shell main.systems-detail-page > .system-detail-section .system-carousel-arrow:disabled {
  cursor: default;
  opacity: 0.36;
  transform: translateY(-50%);
}

body .page-shell main.systems-detail-page > .system-detail-section .system-carousel-arrow-prev {
  left: clamp(6px, 1.4vw, 14px);
}

body .page-shell main.systems-detail-page > .system-detail-section .system-carousel-arrow-next {
  right: clamp(6px, 1.4vw, 14px);
}

body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-grid {
  align-items: flex-start !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  margin-bottom: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  scroll-padding-inline: 0 !important;
}

body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-card {
  display: block !important;
  min-height: 0;
  align-self: flex-start;
  margin-bottom: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

/* Systems media image-only lock: document previews carry their own titles, so the lower metadata block is hidden. */
body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-card {
  padding: 0 !important;
}

body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-preview {
  display: block !important;
  position: relative;
  min-height: 0;
  aspect-ratio: auto;
  width: 100%;
  height: auto;
  border: 0;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  line-height: 0;
}

body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-preview::before {
  content: none !important;
}

body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-copy {
  display: none !important;
}

/* Systems full-page thumbnail lock: every document preview shows the complete page instead of cropping. */
body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-preview {
  background: transparent !important;
}

body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-preview img,
body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-card-media .system-document-preview img,
body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-card-fit-contain .system-document-preview img,
body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .dpat-card-cover-top .system-document-preview img,
body .page-shell main.systems-detail-page > .system-detail-section#leadership .system-document-carousel .system-document-preview img {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  display: block !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  box-shadow: none !important;
  filter: none !important;
}

/* DPAT and Recruiting include mixed portrait/landscape exports; keep full pages visible without oversized rails. */
body .page-shell main.systems-detail-page > .system-detail-section:is(#defense, #recruiting) .system-document-carousel .system-document-preview {
  aspect-ratio: auto !important;
  height: auto !important;
  background: transparent !important;
}

body .page-shell main.systems-detail-page > .system-detail-section:is(#defense, #recruiting) .system-document-carousel .system-document-preview img {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: clamp(340px, 34vw, 620px) !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* Systems media hover lock: document cards stay still and use the homepage Playing Career/Awards dark image overlay. */
body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-card:is(:hover, :focus-visible) {
  border: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  transform: none !important;
}

body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-card:is(:hover, :focus-visible) .system-document-preview::before {
  content: none !important;
}

/* Systems section edge rhythm: all six main sections keep matching top and bottom breathing room. */
body .page-shell main.systems-detail-page > .system-detail-section:is(#defense, #development, #recruiting, #operations, #scouting, #leadership) {
  padding-top: var(--systems-section-breathing-room) !important;
  padding-bottom: var(--systems-final-footer-gap) !important;
}

main.systems-detail-page .system-document-copy strong {
  min-height: 2.28em;
}

/* Gallery section lock: sections keep Systems sizing but use the same cream canvas as the hero/footer. */
body .page-shell main.media-library-page > .media-library-section {
  --gallery-section-wall-width: 100vw;
  --gallery-section-inline-pad: max(18px, calc((var(--gallery-section-wall-width) - var(--page-shell-width)) / 2 + 18px));
  --gallery-section-rail-gutter: clamp(34px, 2.15vw, 44px);
  box-sizing: border-box;
  width: var(--gallery-section-wall-width) !important;
  max-width: none !important;
  margin: 0 calc(50% - (var(--gallery-section-wall-width) * 0.5)) !important;
  margin-top: clamp(26px, 2.4vw, 44px) !important;
  padding-right: var(--gallery-section-inline-pad) !important;
  padding-left: var(--gallery-section-inline-pad) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--home-system-card-cream, #fff4e6) !important;
  box-shadow: none !important;
}

body .page-shell main.media-library-page > .media-library-section + .media-library-section {
  margin-top: 0 !important;
  border-top: 0 !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section {
  background: #000000 !important;
}

/* Gallery content bands match the gold section canvas used by Featured and Systems pages. */
body .page-shell main.media-library-page > .media-library-section:is(
  #coaching-media,
  #video-galleries,
  #playing-career-media,
  #playing-awards-media,
  #archer-media,
  #anaya-media
) {
  background: linear-gradient(180deg, #ead8b8 0%, #f5e7cf 42%, #fff7e8 100%) !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section > .section-heading > .eyebrow {
  color: #d95a24 !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section > .section-heading > h2 {
  color: #fff8ec !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section .media-category-card {
  position: relative !important;
  display: block !important;
  aspect-ratio: 4 / 3 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #1f1b16 !important;
  box-shadow: none !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section .media-category-card::after {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 42%,
      rgba(0, 0, 0, 0.24) 70%,
      rgba(0, 0, 0, 0.62) 100%
    ) !important;
  content: "" !important;
  pointer-events: none !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section .media-category-frame {
  height: 100% !important;
  aspect-ratio: auto !important;
  border-radius: 0 !important;
  background: #1f1b16 !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section .media-category-frame img {
  filter: brightness(0.96) !important;
  transition:
    filter 180ms ease,
    transform 220ms ease !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section .media-category-card:is(:hover, :focus-visible) .media-category-frame img {
  filter: brightness(1.04) !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section .media-category-card > .library-type,
body .page-shell main.media-library-page > #featured-media.media-library-section .media-category-card > p,
body .page-shell main.media-library-page > #featured-media.media-library-section .media-category-card > .button {
  display: none !important;
}

body .page-shell main.media-library-page > #featured-media.media-library-section .media-category-card > h3 {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 2 !important;
  display: block !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 14px !important;
  overflow: hidden !important;
  color: #fff8ec !important;
  font-family: Georgia, "Palatino Linotype", serif !important;
  font-size: clamp(15px, 1.15vw, 22px) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-overflow: ellipsis !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.46) !important;
  white-space: nowrap !important;
  pointer-events: none !important;
}

body .page-shell main.media-library-page > #playing-awards-media.media-library-section .media-library-card {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .page-shell main.media-library-page > #playing-awards-media.media-library-section .media-library-frame {
  height: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body .page-shell main.media-library-page > #playing-awards-media.media-library-section .media-library-frame img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  filter: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}

body .page-shell main.media-library-page > #playing-awards-media.media-library-section .media-library-card.is-award-bg-blend,
body .page-shell main.media-library-page > #playing-awards-media.media-library-section .media-library-card.is-award-bg-blend .media-library-frame {
  background: linear-gradient(180deg, #ead8b8 0%, #f5e7cf 42%, #fff7e8 100%) !important;
}

body .page-shell main.media-library-page > #playing-awards-media.media-library-section .media-library-card.is-award-mvp-plaque .media-library-frame img {
  transform: scale(1.14) !important;
}

/* Awards overlay thumbnail lock:
   use cropped overlay-thumb image sources in app.js, then let the image cover
   the full button so no balanced-document mat shows inside the thumbnail. */
body .media-overlay.is-awards-overlay .media-thumb {
  overflow: hidden !important;
  padding: 0 !important;
  background: transparent !important;
}

body .media-overlay.is-awards-overlay .media-thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Gallery closing CTA:
   mirrors the Featured/Archer next-step band from mobile through ultra-wide:
   one open text column, three horizontal pills on desktop/tablet, stacked pills
   on mobile, and the same full-wall black shell before the footer. */
html body .page-shell main.media-library-page > section.featured-final-cta {
  --gallery-cta-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
  --gallery-cta-inline-pad: clamp(34px, 2.15vw, 44px);
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 24px !important;
  width: var(--gallery-cta-wall-width) !important;
  max-width: none !important;
  margin: 0 calc(50% - (var(--gallery-cta-wall-width) * 0.5)) !important;
  padding: clamp(34px, 3.5vw, 48px) var(--gallery-cta-inline-pad) !important;
  border: 0 !important;
  border-top: 0 !important;
  border-radius: 0 !important;
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #f7f4ef !important;
}

html body .page-shell main.media-library-page > section.featured-final-cta > div {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  background: transparent !important;
}

html body .page-shell main.media-library-page > section.featured-final-cta .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

html body .page-shell main.media-library-page > section.featured-final-cta h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  max-width: 100% !important;
  overflow: visible !important;
  text-wrap: normal !important;
  white-space: nowrap !important;
}

html body .page-shell main.media-library-page > section.featured-final-cta p:not(.eyebrow) {
  width: 100% !important;
  max-width: none !important;
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
  font-size: clamp(20px, 1.55vw, 28px) !important;
  line-height: 1.38 !important;
  text-wrap: wrap !important;
  white-space: normal !important;
}

html body .page-shell main.media-library-page > section.featured-final-cta .featured-actions {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

html body .page-shell main.media-library-page > section.featured-final-cta .featured-actions .button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 48px !important;
  height: 48px !important;
  padding-right: 16px !important;
  padding-left: 16px !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-size: clamp(14px, 1vw, 17px) !important;
  font-weight: 700 !important;
  justify-content: center !important;
  line-height: 1.08 !important;
  text-align: center !important;
  white-space: normal !important;
}

html body .page-shell main.media-library-page > section.featured-final-cta .featured-actions .button-primary {
  border-color: var(--coach-orange) !important;
  background: var(--coach-orange) !important;
  background-image: none !important;
}

html body .page-shell main.media-library-page > section.featured-final-cta .featured-actions .button-secondary {
  border-color: rgba(255, 255, 255, 0.28) !important;
  background: rgba(255, 255, 255, 0.08) !important;
  background-image: none !important;
}

html body .page-shell main.media-library-page > section.featured-final-cta .featured-actions .button:hover,
html body .page-shell main.media-library-page > section.featured-final-cta .featured-actions .button:focus-visible {
  border-color: var(--coach-orange-hover) !important;
  background: var(--coach-orange-hover) !important;
  background-image: none !important;
}

@media (min-width: 2200px) {
  html body .page-shell main.media-library-page > section.featured-final-cta {
    --gallery-cta-inline-pad: 44px;
    padding-top: 56px !important;
    padding-bottom: 56px !important;
  }

  html body .page-shell main.media-library-page > section.featured-final-cta .featured-actions .button {
    min-height: 52px !important;
    height: 52px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main.media-library-page > section.featured-final-cta {
    --gallery-cta-inline-pad: clamp(28px, 4vw, 34px);
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .page-shell main.media-library-page > section.featured-final-cta p:not(.eyebrow) {
    font-size: clamp(15px, 2.3vw, 17px) !important;
    line-height: 1.55 !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.media-library-page > section.featured-final-cta {
    --gallery-cta-inline-pad: clamp(22px, 6vw, 26px);
    gap: 24px !important;
  }

  html body .page-shell main.media-library-page > section.featured-final-cta h2 {
    font-size: clamp(24px, 8.4vw, 34px) !important;
    line-height: 1.05 !important;
    text-wrap: wrap !important;
    white-space: normal !important;
  }

  html body .page-shell main.media-library-page > section.featured-final-cta p:not(.eyebrow) {
    font-size: clamp(14px, 3.75vw, 15.5px) !important;
    line-height: 1.44 !important;
  }

  html body .page-shell main.media-library-page > section.featured-final-cta .featured-actions {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-rows: minmax(48px, auto) !important;
    gap: 10px !important;
  }

  html body .page-shell main.media-library-page > section.featured-final-cta .featured-actions .button {
    min-height: 48px !important;
    height: auto !important;
  }
}

/* Gallery/Anaya Systems shell lock: section headings, proof blocks and media rails use the same rail gutter math as Systems detail sections instead of the older page-shell inset. */
body .page-shell main.media-library-page > .media-library-section > :is(.section-heading, .media-album-stack, .media-section-grid),
body .page-shell main.anaya-case-study-page > .anaya-journey-section > :is(.section-heading, .case-study-section, .production-grid, .anaya-gallery-block) {
  margin-right: calc(var(--gallery-section-rail-gutter, var(--case-page-section-rail-gutter, clamp(22px, 5.8vw, 25px))) - var(--gallery-section-inline-pad, var(--case-page-section-inline-pad))) !important;
  margin-left: calc(var(--gallery-section-rail-gutter, var(--case-page-section-rail-gutter, clamp(22px, 5.8vw, 25px))) - var(--gallery-section-inline-pad, var(--case-page-section-inline-pad))) !important;
}

/* Gallery media edge lock:
   section headings keep the normal text inset, but image rails pull to the
   section edge so no cream gutter/border line appears beside the cards. */
body .page-shell main.media-library-page > .media-library-section > :is(.media-album-stack, .media-section-grid) {
  margin-right: calc(var(--gallery-section-inline-pad) * -1) !important;
  margin-left: calc(var(--gallery-section-inline-pad) * -1) !important;
}

body .page-shell main.media-library-page > .media-library-section .media-album-section {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .page-shell main.media-library-page > .media-library-section .media-album-stack {
  gap: 24px;
}

body .page-shell main.media-library-page > .media-library-section .media-section-grid,
body .page-shell main.media-library-page > .media-library-section .media-feature-grid,
body .page-shell main.media-library-page > .media-library-section .media-category-grid {
  gap: 16px;
}

/* Gallery carousel lock: album access stays in one no-wrap carousel row; old stacked/action-pill rules are retired. */
body .page-shell main.media-library-page > .media-library-section .media-preview-carousel {
  --gallery-carousel-visible-count: 3;
  --gallery-carousel-gap: 16px;
  position: relative;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
  align-items: center;
  padding-bottom: 0 !important;
}

body .page-shell main.media-library-page > .media-library-section .media-preview-carousel {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

body .page-shell main.media-library-page > .media-library-section .media-preview-carousel > .media-section-grid {
  display: flex !important;
  grid-template-columns: none !important;
  flex-wrap: nowrap !important;
  gap: var(--gallery-carousel-gap) !important;
  align-items: stretch;
  padding-right: 0 !important;
  padding-left: 0 !important;
}

body .page-shell main.media-library-page > .media-library-section .media-preview-carousel > .media-section-grid > :is(.media-category-card, .media-library-card) {
  width: auto !important;
  flex: 0 0 calc((100% - ((var(--gallery-carousel-visible-count) - 1) * var(--gallery-carousel-gap))) / var(--gallery-carousel-visible-count)) !important;
}

body .page-shell main.media-library-page > .media-library-section .media-carousel-arrow {
  position: absolute !important;
  top: 50%;
  z-index: 5;
  transform: translateY(-50%);
}

body .page-shell main.media-library-page > .media-library-section .media-carousel-arrow-prev {
  left: clamp(6px, 1.4vw, 14px);
}

body .page-shell main.media-library-page > .media-library-section .media-carousel-arrow-next {
  right: clamp(6px, 1.4vw, 14px);
}

body .page-shell main.media-library-page > .media-library-section .media-carousel-arrow:is(:hover, :focus-visible) {
  transform: translateY(-50%);
}

body .page-shell main.media-library-page > .media-library-section .media-category-card,
body .page-shell main.media-library-page > .media-library-section .media-library-card {
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body .page-shell main.media-library-page > .media-library-section .media-category-frame,
body .page-shell main.media-library-page > .media-library-section .media-library-frame {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body .page-shell main.media-library-page > .media-library-section .media-category-card h3,
body .page-shell main.media-library-page > .media-library-section .media-category-card p,
body .page-shell main.media-library-page > .media-library-section .media-category-card .button,
body .page-shell main.media-library-page > .media-library-section .media-library-meta {
  margin-right: 16px;
  margin-left: 16px;
}

body .page-shell main.media-library-page > .media-library-section .media-category-card .button {
  width: auto;
}

body .page-shell main.media-library-page > .media-library-section .media-category-card h3,
body .page-shell main.media-library-page > .media-library-section .media-library-meta {
  margin-top: 12px;
}

/* Gallery/Anaya heading alignment lock: section eyebrows and titles intentionally mirror the Systems detail intro rhythm; old Gallery-only heading caps are retired. */
body .page-shell :is(main.media-library-page > .media-library-section, main.anaya-case-study-page > .anaya-journey-section) > .section-heading {
  --section-eyebrow-to-title-gap: 6px;
  --mobile-fit-title-size: clamp(22px, 6vw, 28px);
  --mobile-fit-title-line: 1.06;
}

body .page-shell :is(main.media-library-page > .media-library-section, main.anaya-case-study-page > .anaya-journey-section) > .section-heading > .eyebrow {
  margin-bottom: 6px !important;
}

body .page-shell :is(main.media-library-page > .media-library-section, main.anaya-case-study-page > .anaya-journey-section) > .section-heading > h2 {
  margin: 0 !important;
}

@media (min-width: 1025px) {
  body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-card {
    flex-basis: calc((100% - 48px) / 4);
  }

  body .page-shell main.systems-detail-page > .system-detail-section {
    --systems-section-wall-width: min(var(--home-section-wall-width, 2560px), calc(100vw - 16px));
    --systems-section-inline-pad: calc(((var(--systems-section-wall-width) - var(--page-shell-width)) / 2) + var(--home-hero-side-inset, 34px));
    --systems-carousel-safe-gutter: clamp(24px, 1.8vw, 31px);
    --systems-intro-rail-gap: 12px;
    --systems-section-breathing-room: 24px;
    --systems-final-footer-gap: var(--systems-section-breathing-room);
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy {
    --section-eyebrow-to-title-gap: 8px;
    --section-title-to-intro-gap: 14px;
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy > .eyebrow {
    margin-bottom: 8px !important;
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy > h2 + p:not(.eyebrow) {
    margin-top: 14px !important;
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy > p:not(.eyebrow) {
    max-width: none !important;
    width: 100% !important;
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel {
    margin-top: 28px;
  }

  body .page-shell main.media-library-page > .media-library-section {
    --gallery-section-wall-width: min(var(--home-section-wall-width, 2560px), calc(100vw - 16px));
    --gallery-section-inline-pad: calc(((var(--gallery-section-wall-width) - var(--page-shell-width)) / 2) + var(--home-hero-side-inset, 34px));
    --gallery-section-rail-gutter: clamp(24px, 1.8vw, 31.5px);
  }

  body .page-shell :is(main.media-library-page > .media-library-section, main.anaya-case-study-page > .anaya-journey-section) > .section-heading {
    --section-eyebrow-to-title-gap: 8px;
  }

  body .page-shell :is(main.media-library-page > .media-library-section, main.anaya-case-study-page > .anaya-journey-section) > .section-heading > .eyebrow {
    margin-bottom: 8px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy {
    --section-eyebrow-to-title-gap: 6px;
    --section-title-to-intro-gap: 12px;
    --mobile-fit-title-size: clamp(28px, 3.6vw, 34px);
    --mobile-fit-title-line: 1.05;
  }

  body .page-shell main.systems-detail-page > .system-detail-section {
    --systems-carousel-safe-gutter: clamp(18px, 2.8vw, 24px);
    --systems-carousel-media-gutter: 17px;
    --systems-intro-rail-gap: 12px;
    --systems-section-breathing-room: 24px;
    --systems-final-footer-gap: var(--systems-section-breathing-room);
  }

  body .page-shell main:not(#top).systems-detail-page > .system-detail-section .system-detail-copy > h2 {
    font-size: clamp(28px, 3.6vw, 34px) !important;
    line-height: 1.05 !important;
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy > h2 + p:not(.eyebrow) {
    margin-top: 12px !important;
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel .system-document-card {
    flex-basis: calc((100% - 16px) / 2);
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel {
    margin-top: 24px;
  }

  body .page-shell :is(main.media-library-page > .media-library-section, main.anaya-case-study-page > .anaya-journey-section) > .section-heading {
    --mobile-fit-title-size: clamp(28px, 3.6vw, 34px);
    --mobile-fit-title-line: 1.05;
  }

  body .page-shell :is(main.media-library-page > .media-library-section, main.anaya-case-study-page > .anaya-journey-section) > .section-heading > h2 {
    font-size: clamp(28px, 3.6vw, 34px) !important;
    line-height: 1.05 !important;
  }

  body .page-shell main.media-library-page > .media-library-section .media-preview-carousel {
    --gallery-carousel-visible-count: 2;
  }
}

@media (min-width: 1000px) and (max-width: 1024px) {
  body .page-shell main.systems-detail-page > .system-detail-section {
    --systems-carousel-safe-gutter: 25px;
  }
}

@media (max-width: 932px) and (max-height: 430px) {
  body .page-shell main.systems-detail-page > .system-detail-section {
    --systems-carousel-safe-gutter: clamp(14px, 4.2vw, 18px);
    --systems-carousel-media-gutter: 0px;
    --systems-intro-rail-gap: 12px;
    --systems-section-breathing-room: 24px;
    --systems-final-footer-gap: var(--systems-section-breathing-room);
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy {
    --section-title-to-intro-gap: 10px;
    --mobile-fit-title-size: clamp(22px, 6vw, 28px);
    --mobile-fit-title-line: 1.06;
  }

  body .page-shell main:not(#top).systems-detail-page > .system-detail-section .system-detail-copy > h2 {
    font-size: clamp(22px, 6vw, 28px) !important;
    line-height: 1.06 !important;
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-detail-copy > h2 + p:not(.eyebrow) {
    margin-top: 10px !important;
  }

  body .page-shell main.systems-detail-page > .system-detail-section .system-document-carousel {
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  body .page-shell main.systems-detail-page > .system-detail-section {
    --systems-carousel-media-gutter: 0px;
  }
}

@media (max-width: 767px) {
  body .page-shell main.systems-detail-page > .system-detail-section {
    width: 100%;
  }

  body .page-shell main:not(#top).systems-detail-page > .system-detail-section .system-detail-copy > h2 {
    font-size: clamp(22px, 6vw, 28px) !important;
    line-height: 1.06 !important;
  }

  body .page-shell :is(main.media-library-page > .media-library-section, main.anaya-case-study-page > .anaya-journey-section) > .section-heading > h2 {
    font-size: clamp(22px, 6vw, 28px) !important;
    line-height: 1.06 !important;
  }

  body .page-shell main.media-library-page > .media-library-section {
    width: 100%;
  }

  body .page-shell main.media-library-page > .media-library-section .media-preview-carousel {
    --gallery-carousel-visible-count: 2;
    --gallery-carousel-gap: 10px;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
  }

  body .page-shell main.media-library-page > .media-library-section .media-preview-carousel > .media-section-grid {
    width: 100%;
    min-width: 0;
  }

  body .page-shell main.media-library-page > .media-library-section .media-carousel-arrow {
    width: 38px;
    height: 38px;
    font-size: 1.7rem;
  }

  main.systems-detail-page .system-detail-copy > p:not(.eyebrow) {
    font-size: 0.98rem;
    line-height: 1.55;
  }
}

/* Archer Page Final Lock
   The page keeps the shared .page-hero-system, button, card, section, overlay and
   color systems. These scoped rules only organize the Archer case-study sections,
   product visuals and media cards. */
main.archer-page > .section {
  width: min(var(--page-shell-width), 100%);
  margin-right: auto;
  margin-left: auto;
}

main.archer-page .archer-split {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, 0.95fr);
  gap: clamp(24px, 2.6vw, 42px);
  align-items: center;
}

main.archer-page .archer-split-reverse {
  grid-template-columns: minmax(340px, 0.95fr) minmax(0, 1.05fr);
}

main.archer-page .archer-split-reverse .archer-feature-visual {
  order: 1;
}

main.archer-page .archer-split-reverse .archer-section-copy {
  order: 2;
}

main.archer-page .archer-section-copy {
  min-width: 0;
}

main.archer-page .archer-section-copy h2,
main.archer-page .archer-final-cta h2 {
  margin: 0;
  color: var(--text);
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: var(--section-title-size-desktop, clamp(36px, 2.1vw, 42px));
  line-height: var(--section-title-line-desktop, 1.05);
}

main.archer-page .archer-section-copy > p,
main.archer-page .archer-final-cta p {
  max-width: 920px;
  margin: 18px 0 0;
  color: var(--muted);
  font-size: clamp(1rem, 0.24vw + 0.92rem, 1.12rem);
  line-height: 1.62;
}

main.archer-page .archer-feature-visual,
main.archer-page .archer-media-grid figure {
  margin: 0;
  min-width: 0;
}

main.archer-page .archer-feature-visual img,
main.archer-page .archer-media-grid img,
main.archer-page .archer-media-grid video {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 20px;
  background: #1f1b16;
  object-fit: cover;
  object-position: center;
}

main.archer-page .archer-logo-visual img {
  object-fit: contain;
  background:
    linear-gradient(135deg, rgba(255, 253, 248, 0.94), rgba(246, 236, 219, 0.82)),
    #fff9f0;
}

main.archer-page .archer-feature-visual figcaption,
main.archer-page .archer-media-grid figcaption {
  margin-top: 12px;
  color: var(--muted);
  font-weight: 700;
  line-height: 1.35;
}

main.archer-page .archer-card-grid,
main.archer-page .archer-proof-grid,
main.archer-page .archer-media-grid {
  display: grid;
  gap: clamp(14px, 1.25vw, 22px);
}

main.archer-page .archer-card-grid-four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

main.archer-page .archer-feature-card,
main.archer-page .archer-mini-card,
main.archer-page .archer-proof-grid article,
main.archer-page .archer-media-grid figure {
  border: 1px solid rgba(31, 27, 22, 0.1);
  background:
    linear-gradient(180deg, rgba(255, 253, 249, 0.9), rgba(255, 248, 239, 0.78)),
    var(--panel);
  box-shadow: 0 16px 38px rgba(52, 36, 24, 0.1);
}

main.archer-page .archer-feature-card,
main.archer-page .archer-proof-grid article {
  min-height: 100%;
  padding: clamp(18px, 1.4vw, 22px);
  border-radius: 22px;
}

main.archer-page .archer-feature-card > span,
main.archer-page .archer-proof-grid article > span {
  color: var(--red);
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: clamp(1.45rem, 1.6vw, 1.85rem);
  font-weight: 700;
  line-height: 1;
}

main.archer-page .archer-feature-card h3,
main.archer-page .archer-mini-card h3,
main.archer-page .archer-proof-grid h3 {
  margin: 12px 0 8px;
  color: var(--text);
  font-family: Georgia, "Palatino Linotype", serif;
  font-size: clamp(1.18rem, 1.25vw, 1.45rem);
  line-height: 1.12;
}

main.archer-page .archer-feature-card p,
main.archer-page .archer-proof-grid p {
  margin: 0;
  color: var(--muted);
  line-height: 1.52;
}

main.archer-page .archer-mini-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 22px;
}

main.archer-page .archer-mini-card {
  display: grid;
  min-height: 86px;
  place-items: center;
  padding: 16px;
  border-radius: 18px;
  text-align: center;
}

main.archer-page .archer-mini-card h3 {
  margin: 0;
  font-size: clamp(1rem, 1vw, 1.16rem);
}

main.archer-page .archer-media-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

main.archer-page .archer-media-grid figure {
  overflow: hidden;
  padding: 0;
  border-radius: 20px;
}

main.archer-page .archer-media-grid img,
main.archer-page .archer-media-grid video {
  height: auto;
  border-radius: 20px 20px 0 0;
}

main.archer-page .archer-media-grid figcaption {
  min-height: 58px;
  margin: 0;
  padding: 14px 16px 16px;
  color: var(--text);
}

main.archer-page .archer-proof-grid {
  grid-template-columns: minmax(0, 1fr);
}

main.archer-page .archer-final-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, auto);
  gap: 24px;
  align-items: center;
  background:
    linear-gradient(135deg, rgba(255, 252, 247, 0.88), rgba(215, 179, 119, 0.18)),
    rgba(255, 248, 240, 0.7);
}

main.archer-page .archer-final-cta .featured-actions {
  display: grid;
  min-width: 240px;
  margin-top: 0;
}

main.archer-page .archer-final-cta .button {
  width: 100%;
}

@media (min-width: 1025px) {
  main.archer-page .archer-card-grid-four {
    grid-auto-rows: 1fr;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  main.archer-page .archer-split,
  main.archer-page .archer-split-reverse,
  main.archer-page .archer-final-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  main.archer-page .archer-split-reverse .archer-feature-visual,
  main.archer-page .archer-split-reverse .archer-section-copy {
    order: initial;
  }

  main.archer-page .archer-card-grid-four,
  main.archer-page .archer-mini-grid,
  main.archer-page .archer-media-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

main.archer-page .archer-final-cta .featured-actions {
    min-width: 0;
  }
}


@media (max-width: 767px) {
  main.archer-page > .section {
    width: 100%;
  }

  main.archer-page .archer-split,
  main.archer-page .archer-split-reverse,
  main.archer-page .archer-card-grid-four,
  main.archer-page .archer-mini-grid,
  main.archer-page .archer-media-grid,
  main.archer-page .archer-final-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  main.archer-page .archer-split-reverse .archer-feature-visual,
  main.archer-page .archer-split-reverse .archer-section-copy {
    order: initial;
  }

  main.archer-page .archer-section-copy h2,
  main.archer-page .archer-final-cta h2 {
    font-size: var(--type-section-title-size, 1.55rem);
    line-height: var(--type-section-title-line, 1.08);
  }

  main.archer-page .archer-section-copy > p,
  main.archer-page .archer-final-cta p {
    font-size: 0.98rem;
    line-height: 1.55;
  }

  main.archer-page .archer-feature-card,
  main.archer-page .archer-proof-grid article {
    padding: 16px;
  }

  main.archer-page .archer-final-cta .featured-actions {
    min-width: 0;
  }
}

/* Canonical Home/page hero system.
   Source of truth for every active hero except About and Contact.
   The target interior page heroes intentionally follow the homepage hero specs. */
.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
  --home-hero-left-system-max: 100%;
  --home-hero-pill-min-height: clamp(54px, 8.5vw, 76px);
  --home-hero-pill-pad-y: clamp(4px, 1.1vw, 10px);
  --home-hero-pill-pad-x: clamp(5px, 1.7vw, 16px);
  --home-hero-pill-main-size: clamp(0.76rem, 3.35cqw, 1.25rem);
  --home-hero-pill-sub-size: clamp(0.52rem, 2.55cqw, 0.78rem);
  --hero-overlay-left: clamp(10px, 2.75vw, 24px);
  --hero-overlay-right: clamp(10px, 2.75vw, 24px);
  --hero-overlay-bottom: clamp(10px, 2.75vw, 24px);
  --hero-overlay-width: auto;
  --hero-overlay-max-width: none;
  --hero-overlay-gap: clamp(4px, 0.95cqw, 8px);
  --hero-overlay-padding-block-start: clamp(7px, 1.45cqw, 14px);
  --hero-overlay-padding-inline: clamp(10px, 2.15cqw, 22px);
  --hero-overlay-padding-block-end: clamp(8px, 1.55cqw, 15px);
  --hero-overlay-radius: 0px;
  --hero-overlay-title-size: clamp(0.66rem, 2.2cqw, 1rem);
  --hero-overlay-title-line: 1;
  --hero-overlay-link-size: clamp(0.64rem, 3.25cqw, 1rem);
  --hero-overlay-link-line: 1.15;
  --hero-overlay-link-gap-row: 2px;
  --hero-overlay-link-gap-column: clamp(4px, 1.8cqw, 12px);
  --hero-overlay-justify: center;
  --hero-overlay-wrap: wrap;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-areas:
    "copy"
    "portrait"
    "stats" !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 22px auto 28px !important;
  padding: 28px !important;
  gap: 16px !important;
  overflow: hidden !important;
  border: 1px solid var(--line) !important;
  border-radius: 0 !important;
  background: linear-gradient(135deg, rgba(255, 248, 237, 0.94), rgba(246, 236, 219, 0.78)) !important;
  box-shadow: var(--shadow) !important;
}

.page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system {
  background: var(--home-system-card-cream, #fff4e6) !important;
}

@media (min-width: 1025px) {
  .page-shell :is(main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) {
    --home-section-wall-width: min(100vw, 2560px);
    --home-section-wall-border: transparent;
    --home-section-wall-bg: #ffffff;
  }

  /* Gallery desktop wall note: keep the outer canvas white like the homepage. */
  .page-shell main.media-library-page {
    --home-section-wall-bg: #ffffff;
  }
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-left-system {
  grid-area: copy !important;
  display: block !important;
  width: min(100%, var(--home-hero-left-system-max)) !important;
  max-width: min(100%, var(--home-hero-left-system-max)) !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: start !important;
  justify-self: start !important;
  transform: none !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-left-system > :is(.eyebrow, h1, .hero-text) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .eyebrow {
  margin: 0 0 12px !important;
  color: var(--red) !important;
  font-size: clamp(10.24px, 2.25vw, 12.16px) !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system h1 {
  margin: 0 !important;
  color: var(--text) !important;
  font-family: Georgia, "Palatino Linotype", serif !important;
  font-size: clamp(32px, 6.7vw, 48px) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
  margin: 14px 0 0 !important;
  color: var(--muted) !important;
  font-size: 14.72px !important;
  font-weight: 500 !important;
  line-height: 1.46 !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-right-system {
  grid-area: portrait !important;
  display: grid !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: stretch !important;
  justify-self: stretch !important;
  align-content: stretch !important;
  transform: none !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-card {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  aspect-ratio: 1.13 / 1 !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  border-radius: 0 !important;
  background: #d8c3a6 !important;
  box-shadow: var(--shadow) !important;
  transform: none !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-picture,
.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-picture {
  position: absolute !important;
  inset: 0 !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-image {
  object-fit: cover !important;
  object-position: 50% 0% !important;
}

body .page-shell main.featured-page > #featured-work-hero.page-hero-system .hero-portrait-image {
  object-position: 28% 0% !important;
}

html body .page-shell main.archer-page.archer-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-picture {
  background: #fff !important;
}

html body .page-shell main.archer-page.archer-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-picture > img.hero-portrait-image {
  object-fit: contain !important;
  object-position: center center !important;
  background: #fff !important;
  transform: translateY(-5%) scale(1.12) !important;
  transform-origin: center center !important;
}

@media (max-width: 767px) {
  html body .page-shell main.archer-page.archer-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-picture > img.hero-portrait-image {
    transform: translateY(-5%) scale(1.04) !important;
  }
}

@media (min-width: 1600px) and (max-width: 2199px) {
  html body .page-shell main.archer-page.archer-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-picture > img.hero-portrait-image {
    transform: translateY(-8%) scale(1.04) !important;
  }
}

@media (min-width: 2200px) {
  html body .page-shell main.archer-page.archer-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-picture > img.hero-portrait-image {
    transform: translateY(-9%) scale(1) !important;
  }
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-overlay {
  position: absolute !important;
  right: var(--hero-overlay-right) !important;
  bottom: var(--hero-overlay-bottom) !important;
  left: var(--hero-overlay-left) !important;
  z-index: 2 !important;
  display: grid !important;
  gap: var(--hero-overlay-gap) !important;
  width: var(--hero-overlay-width) !important;
  min-width: 0 !important;
  max-width: var(--hero-overlay-max-width) !important;
  margin: 0 !important;
  padding:
    var(--hero-overlay-padding-block-start)
    var(--hero-overlay-padding-inline)
    var(--hero-overlay-padding-block-end) !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: var(--hero-overlay-radius) !important;
  background: rgba(32, 28, 24, 0.74) !important;
  box-shadow:
    0 14px 30px rgba(18, 14, 10, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(12px);
  transform: none !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-overlay-title {
  margin: 0 !important;
  color: var(--gold) !important;
  font-size: var(--hero-overlay-title-size) !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  line-height: var(--hero-overlay-title-line) !important;
  text-transform: uppercase !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-overlay-text {
  display: flex !important;
  flex-wrap: var(--hero-overlay-wrap) !important;
  justify-content: var(--hero-overlay-justify) !important;
  gap: var(--hero-overlay-link-gap-row) var(--hero-overlay-link-gap-column) !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  overflow: visible !important;
  color: rgba(255, 246, 230, 0.44) !important;
  font-size: var(--hero-overlay-link-size) !important;
  font-weight: 800 !important;
  line-height: var(--hero-overlay-link-line) !important;
  white-space: normal !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-overlay-text a {
  flex: 0 0 auto !important;
  min-width: max-content !important;
  color: #8bb8e8 !important;
  text-align: center !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-overlay-text span {
  flex: 0 0 auto !important;
  color: rgba(255, 246, 230, 0.56) !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system {
  container-type: inline-size !important;
  grid-area: stats !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  width: min(100%, var(--home-hero-left-system-max)) !important;
  max-width: min(100%, var(--home-hero-left-system-max)) !important;
  min-width: 0 !important;
  gap: clamp(5px, 1.6vw, 14px) !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  align-self: end !important;
  justify-self: start !important;
  transform: none !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill {
  box-sizing: border-box !important;
  display: grid !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: var(--home-hero-pill-min-height) !important;
  place-items: center !important;
  gap: 5px !important;
  padding: var(--home-hero-pill-pad-y) var(--home-hero-pill-pad-x) !important;
  border: var(--home-proof-pill-border-width, 1.5px) solid var(--home-proof-pill-border, rgba(184, 135, 47, 0.58)) !important;
  border-radius: 999px !important;
  background: var(
    --home-proof-pill-bg,
    linear-gradient(180deg, rgba(255, 252, 247, 0.94), rgba(250, 237, 218, 0.78)),
    rgba(255, 250, 243, 0.86)
  ) !important;
  color: var(--home-proof-pill-main, var(--text)) !important;
  font-size: inherit !important;
  line-height: normal !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.75),
    0 0 0 1px rgba(255, 246, 229, 0.72),
    0 14px 34px rgba(52, 36, 24, 0.1) !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-main,
.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-sub {
  display: block !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  text-decoration: none !important;
  white-space: normal !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-main {
  color: var(--home-proof-pill-main, var(--ink)) !important;
  font-size: var(--home-hero-pill-main-size) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

.page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-sub {
  color: var(--home-proof-pill-label, var(--muted)) !important;
  font-size: var(--home-hero-pill-sub-size) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
}

.hero-pill-sub-mobile {
  display: none !important;
}

body .page-shell main.archer-page.archer-page .archer-pill-label-mobile {
  display: none !important;
}

body .page-shell main.archer-page.archer-page .archer-pill-label-full {
  display: inline !important;
}

body .page-shell main.archer-page.archer-page .hero-pill :is(.archer-pill-label-full, .archer-pill-label-mobile) {
  max-width: 100% !important;
  overflow: hidden !important;
  text-align: center !important;
  white-space: nowrap !important;
}

@media (max-width: 767px), (max-width: 932px) and (max-height: 430px) {
  body .page-shell main.archer-page.archer-page .archer-pill-label-full {
    display: none !important;
  }

  body .page-shell main.archer-page.archer-page .archer-pill-label-mobile {
    display: inline !important;
  }
}

@media (min-width: 1025px) and (max-width: 1179px) {
  body .page-shell main.archer-page.archer-page .archer-pill-label-full {
    display: none !important;
  }

  body .page-shell main.archer-page.archer-page .archer-pill-label-mobile {
    display: inline !important;
  }
}

@media (max-width: 430px) and (orientation: portrait) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system {
    gap: clamp(8px, 2.2vw, 12px) !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill {
    grid-template-rows: max-content max-content !important;
    align-content: center !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-main {
    line-height: 0.96 !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-sub {
    font-size: clamp(9.5px, 2.45vw, 10.75px) !important;
    line-height: 1 !important;
    overflow-wrap: normal !important;
    white-space: nowrap !important;
  }

}

/* Homepage mobile hero pills: 431-543px uses the same compact labels as the narrower phone range. */
@media (max-width: 543px) {
  .hero-pill-sub-full {
    display: none !important;
  }

  .hero-pill-sub-mobile {
    display: inline !important;
  }
}

@media (max-width: 767px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page):not(.featured-page):not(.archer-page)) > .page-hero-system.page-hero-system {
    margin-bottom: 18px !important;
    padding: 14px 20px 12px !important;
    border-radius: 0 !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    line-height: 1.52 !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system {
    box-sizing: border-box !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-right: calc((100% - 100vw) / 2) !important;
    margin-left: calc((100% - 100vw) / 2) !important;
    border-radius: 0 !important;
  }
}

@media (max-width: 430px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    padding: 16px !important;
    --hero-overlay-padding-inline: clamp(7px, 2.2cqw, 10px);
    --hero-overlay-link-size: clamp(0.56rem, 2.55cqw, 0.68rem);
  }
}

@media (min-width: 431px) and (max-width: 1024px) {
  .page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system {
    --hero-overlay-link-size: clamp(11px, calc(2.1vw + 2px), 15px);
  }
}

@media (min-width: 560px) and (max-width: 767px) {
  .page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system {
    --hero-overlay-link-size: clamp(13.5px, calc(0.65vw + 10px), 14.8px);
  }
}

@media (min-width: 768px) and (max-width: 1024px) and (min-height: 768px) {
  .page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system {
    --hero-overlay-link-size: clamp(14.6px, calc(0.2vw + 12.8px), 15px);
    --hero-overlay-padding-inline: clamp(28px, 4.1vw, 42px);
  }
}

@media (max-width: 360px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --home-hero-pill-main-size: clamp(0.72rem, 3.3cqw, 1rem);
  }
}

@media (max-width: 430px) and (orientation: portrait) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --home-hero-pill-min-height: clamp(54px, 8.8vw, 68px);
    --home-hero-pill-pad-y: clamp(5px, 1.35vw, 9px);
    --home-hero-pill-pad-x: clamp(4px, 1.35vw, 12px);
    --home-hero-pill-main-size: clamp(0.74rem, 3.2cqw, 1.08rem);
    --home-hero-pill-sub-size: clamp(9.5px, 2.45vw, 10.75px);
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system h1 {
    font-size: clamp(48px, 6.95vw, 71.2px) !important;
    line-height: 0.95 !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    font-size: 16px !important;
    line-height: 26.4px !important;
  }
}

@media (min-width: 1025px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --hero-portrait-width: var(--hero-media-portrait-width);
    --home-hero-top-inset: 28.2px;
    --home-hero-side-inset: 36px;
    --home-hero-bottom-inset: 23px;
    --home-hero-column-gap: 33.28px;
    --home-hero-image-height: 380.5px;
    --home-hero-left-system-max: var(--hero-copy-max, 980px);
    --home-hero-pill-min-height: clamp(58px, 4vw, 76px);
    --home-hero-pill-pad-y: clamp(7px, 0.72vw, 12px);
    --home-hero-pill-pad-x: clamp(10px, 1vw, 18px);
    --home-hero-pill-main-size: var(--type-stat-value-size);
    --home-hero-pill-sub-size: var(--type-stat-label-size);
    --hero-overlay-left: clamp(10px, 0.85vw, 14px);
    --hero-overlay-right: clamp(10px, 0.85vw, 14px);
    --hero-overlay-bottom: clamp(10px, 0.9vw, 18px);
    --hero-overlay-gap: 7px;
    --hero-overlay-padding-block-start: 10px;
    --hero-overlay-padding-inline: 12px;
    --hero-overlay-padding-block-end: 10px;
    --hero-overlay-title-size: 11.8px;
    --hero-overlay-link-size: 13.2px;
    --hero-overlay-link-gap-row: 0;
    grid-template-columns: minmax(0, 1fr) var(--hero-portrait-width) !important;
    grid-template-areas:
      "copy portrait"
      "stats portrait" !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
    width: min(var(--page-shell-width), 100%) !important;
    max-width: min(var(--page-shell-width), 100%) !important;
    min-height: 0 !important;
    margin: 22px auto 28px !important;
    padding:
      var(--home-hero-top-inset)
      var(--home-hero-side-inset)
      var(--home-hero-bottom-inset) !important;
    column-gap: var(--home-hero-column-gap) !important;
    row-gap: 20px !important;
    align-items: stretch !important;
    align-content: stretch !important;
    overflow: visible !important;
    border-radius: 32px !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .eyebrow {
    font-size: var(--hero-eyebrow-size) !important;
    line-height: var(--hero-eyebrow-line) !important;
    letter-spacing: 0.15em !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system h1 {
    font-size: var(--hero-title-size) !important;
    line-height: var(--hero-title-line) !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    margin-top: 25.5px !important;
    font-size: var(--hero-body-size) !important;
    line-height: var(--hero-body-line) !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-card {
    height: var(--home-hero-image-height) !important;
    aspect-ratio: auto !important;
    align-self: end !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-overlay-text {
    white-space: nowrap !important;
  }
}

@media (min-width: 1025px) and (max-width: 1104px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system h1 {
    font-size: clamp(49px, calc(11.2vw - 65.8px), 59.2px) !important;
  }
}

@media (min-width: 1025px) and (max-width: 1599px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --hero-overlay-link-size: 12px;
    --hero-overlay-padding-inline: 18px;
  }
}

@media (min-width: 1025px) and (max-width: 1240px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --home-hero-pill-min-height: clamp(48px, 4.4vw, 58px);
    --home-hero-pill-pad-y: 5px;
    --home-hero-pill-pad-x: 8px;
    --home-hero-pill-main-size: clamp(16px, calc(1.29vw + 2.78px), 18px);
    --home-hero-pill-sub-size: clamp(9.8px, calc(0.65vw + 3.14px), 10.8px);
    --hero-overlay-padding-inline: 12px;
    --hero-overlay-link-columns: minmax(0, 25fr) minmax(0, 12fr) minmax(0, 14fr) minmax(0, 25fr) minmax(0, 24fr);
    --hero-overlay-divider-1: 25%;
    --hero-overlay-divider-2: 37%;
    --hero-overlay-divider-3: 51%;
    --hero-overlay-divider-4: 76%;
  }
}

@media (min-width: 1200px) and (max-width: 1349px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    font-size: 17.5px !important;
    line-height: 32px !important;
  }
}

@media (min-width: 1350px) and (max-width: 1419px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --home-hero-top-inset: 31.7px;
    --home-hero-side-inset: 36px;
    --home-hero-bottom-inset: 25.9px;
    --home-hero-column-gap: 37.44px;
    --home-hero-image-height: 389.5px;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    font-size: 17.25px !important;
    line-height: 29px !important;
  }
}

@media (min-width: 1420px) and (max-width: 1499px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --home-hero-top-inset: 31.7px;
    --home-hero-side-inset: 36px;
    --home-hero-bottom-inset: 25.9px;
    --home-hero-column-gap: 37.44px;
    --home-hero-image-height: 384.6px;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    font-size: 17.25px !important;
    line-height: 28px !important;
  }
}

@media (min-width: 1500px) and (max-width: 1719px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --home-hero-top-inset: 31.7px;
    --home-hero-side-inset: 36px;
    --home-hero-bottom-inset: 25.9px;
    --home-hero-column-gap: 37.44px;
    --home-hero-image-height: 370px;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    font-size: 17.25px !important;
    line-height: 28px !important;
  }
}

@media (min-width: 1600px) and (max-width: 1919px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    font-size: 17.5px !important;
    line-height: 30px !important;
  }
}

@media (min-width: 1720px) and (max-width: 2199px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --home-hero-top-inset: 36px;
    --home-hero-side-inset: 46.1px;
    --home-hero-bottom-inset: 30px;
    --home-hero-column-gap: 38.4px;
    --home-hero-image-height: 380.6px;
  }
}

@media (min-width: 1920px) and (max-width: 2199px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --home-hero-left-system-max: 100%;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    font-size: 17.5px !important;
    line-height: 27.5px !important;
  }
}

@media (min-width: 2200px) {
  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system {
    --hero-portrait-width: var(--hero-wide-portrait-width);
    --home-hero-top-inset: 36px;
    --home-hero-side-inset: 58px;
    --home-hero-bottom-inset: 30px;
    --home-hero-column-gap: 0px;
    --home-hero-image-height: clamp(500px, calc(644px - 6vw), 512px);
    --home-hero-left-system-max: 100%;
    --home-hero-pill-min-height: 82px;
    --home-hero-pill-pad-y: 10px;
    --home-hero-pill-pad-x: 16px;
    --home-hero-pill-main-size: 26px;
    --home-hero-pill-sub-size: 13.5px;
    --home-hero-right-visual-gap: clamp(32px, 2vw, 56px);
    --hero-overlay-left: 50%;
    --hero-overlay-right: auto;
    --hero-overlay-gap: 8px;
    --hero-overlay-width: min(calc(100% - 26px), 560px);
    --hero-overlay-max-width: min(calc(100% - 26px), 560px);
    --hero-overlay-padding-block-start: 13px;
    --hero-overlay-padding-inline: 16px;
    --hero-overlay-padding-block-end: 13px;
    --hero-overlay-title-size: 15px;
    --hero-overlay-link-size: 17px;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system > .hero-right-system {
    transform: translateX(var(--home-hero-right-visual-gap)) !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system h1 {
    font-size: var(--hero-wide-title-size) !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-text {
    margin-top: clamp(28px, calc(-166px + 8.8vw), 48px) !important;
    font-size: 22px !important;
    line-height: 46px !important;
  }

  .page-shell :is(main:not(.about-story-page):not(.about-cover-page):not(.contact-page)) > .page-hero-system.page-hero-system .hero-portrait-overlay {
    transform: translateX(-50%) !important;
  }
}

/* Homepage-spec hero overlay: dividers use consistent weighted lanes so longer links stay balanced. */
.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text {
  position: relative !important;
  display: grid !important;
  grid-template-columns: var(
    --hero-overlay-link-columns,
    minmax(0, 0.9fr) minmax(0, 1.05fr) minmax(0, 0.95fr) minmax(0, 1.36fr) minmax(0, 0.95fr)
  ) !important;
  justify-content: stretch !important;
  justify-items: center !important;
  align-items: center !important;
  gap: var(--hero-overlay-link-gap-row) 0 !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text a {
  width: auto !important;
  min-width: max-content !important;
  padding-inline: 0 !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(1) {
  grid-column: 1 !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(2) {
  grid-column: 2 !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(3) {
  grid-column: 3 !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(4) {
  grid-column: 4 !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(5) {
  grid-column: 5 !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text span {
  position: absolute !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text span:nth-of-type(1) {
  left: var(--hero-overlay-divider-1, 17.3%) !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text span:nth-of-type(2) {
  left: var(--hero-overlay-divider-2, 37.4%) !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text span:nth-of-type(3) {
  left: var(--hero-overlay-divider-3, 55.7%) !important;
}

.page-shell :is(main#top, main.featured-page, main.media-library-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text span:nth-of-type(4) {
  left: var(--hero-overlay-divider-4, 81.8%) !important;
}

/* Featured 1025-1600 highlight-note: replaces the old edge-link transform nudges with real padded lanes, so Summary and The Archer breathe between the overlay walls and divider bars. */
@media (min-width: 1025px) and (max-width: 1600px) {
  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system {
    --hero-overlay-padding-inline: clamp(18px, 1.55vw, 24px);
    --hero-overlay-link-size: clamp(11px, 0.78vw, 12.4px);
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text {
    display: grid !important;
    grid-template-columns:
      minmax(0, 25fr)
      max-content
      minmax(0, 12fr)
      max-content
      minmax(0, 14fr)
      max-content
      minmax(0, 25fr)
      max-content
      minmax(0, 24fr) !important;
    justify-items: center !important;
    gap: 0 !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(1) {
    grid-column: 1 !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(2) {
    grid-column: 3 !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(3) {
    grid-column: 5 !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(4) {
    grid-column: 7 !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(5) {
    grid-column: 9 !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text span {
    position: static !important;
    transform: none !important;
    justify-self: center !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text span:nth-of-type(1) {
    grid-column: 2 !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text span:nth-of-type(2) {
    grid-column: 4 !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text span:nth-of-type(3) {
    grid-column: 6 !important;
  }

  body .page-shell :is(main#top, main.featured-page).featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text span:nth-of-type(4) {
    grid-column: 8 !important;
  }
}

/* Systems page highlight lock: six links intentionally use homepage-style equal lanes on one row. */
body .page-shell main.systems-detail-page > .page-hero-system.page-hero-system {
  --systems-highlight-divider-1: 16.666%;
  --systems-highlight-divider-2: 33.333%;
  --systems-highlight-divider-3: 50%;
  --systems-highlight-divider-4: 66.666%;
  --systems-highlight-divider-5: 83.333%;
}

html body .page-shell.page-shell main.systems-detail-page.systems-detail-page.systems-detail-page > section.hero.page-hero-system.page-hero-system.page-hero-system {
  margin-bottom: 12px !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  justify-content: stretch !important;
  justify-items: center !important;
  align-items: center !important;
  gap: 0 !important;
  white-space: nowrap !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a {
  width: auto !important;
  min-width: max-content !important;
  padding-inline: 0 !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(1) {
  grid-column: 1 !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(2) {
  grid-column: 2 !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(3) {
  grid-column: 3 !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(4) {
  grid-column: 4 !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(5) {
  grid-column: 5 !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(6) {
  grid-column: 6 !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span {
  position: absolute !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(1) {
  left: var(--systems-highlight-divider-1) !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(2) {
  left: var(--systems-highlight-divider-2) !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(3) {
  left: var(--systems-highlight-divider-3) !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(4) {
  left: var(--systems-highlight-divider-4) !important;
}

body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(5) {
  left: var(--systems-highlight-divider-5) !important;
}

/* Anaya portfolio highlight lock: six hero links intentionally use Systems-style equal lanes on one row so labels never stack. */
body .page-shell main.anaya-case-study-page > .page-hero-system.page-hero-system {
  --anaya-highlight-divider-1: 16.666%;
  --anaya-highlight-divider-2: 33.333%;
  --anaya-highlight-divider-3: 50%;
  --anaya-highlight-divider-4: 66.666%;
  --anaya-highlight-divider-5: 83.333%;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(max-content, 1fr)) !important;
  justify-content: stretch !important;
  justify-items: center !important;
  align-items: center !important;
  gap: 0 !important;
  white-space: nowrap !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a {
  width: auto !important;
  min-width: max-content !important;
  padding-inline: 0 !important;
  white-space: nowrap !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(1) {
  grid-column: 1 !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(2) {
  grid-column: 2 !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(3) {
  grid-column: 3 !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(4) {
  grid-column: 4 !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(5) {
  grid-column: 5 !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text a:nth-of-type(6) {
  grid-column: 6 !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span {
  position: absolute !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(1) {
  left: var(--anaya-highlight-divider-1) !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(2) {
  left: var(--anaya-highlight-divider-2) !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(3) {
  left: var(--anaya-highlight-divider-3) !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(4) {
  left: var(--anaya-highlight-divider-4) !important;
}

body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system .hero-portrait-card .hero-portrait-overlay .hero-portrait-overlay-text span:nth-of-type(5) {
  left: var(--anaya-highlight-divider-5) !important;
}

@media (min-width: 1025px) {
  .page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system {
    --home-hero-wall-width: min(var(--home-section-wall-width), calc(100vw - 16px));
    width: var(--home-hero-wall-width) !important;
    max-width: none !important;
    margin-top: 0 !important;
    margin-inline: calc((var(--page-shell-width) - var(--home-hero-wall-width)) / 2) !important;
    margin-bottom: 0 !important;
    padding-inline: calc(((var(--home-hero-wall-width) - var(--page-shell-width)) / 2) + var(--home-hero-side-inset)) !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    background: var(--home-system-card-cream, #fff4e6) !important;
    box-shadow: none !important;
  }

  .page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system::before {
    content: none !important;
  }

  body .page-shell main#top > :is(#systems, #playing-career).section {
    margin-top: 0 !important;
    border-top-width: 0 !important;
    padding-top: 18px !important;
  }

  body .page-shell main#top > :is(#systems, #playing-career).section .section-heading,
  body .page-shell main#top > #featured-work > .featured-work-section-heading {
    position: relative;
    z-index: 0;
    margin-bottom: 22px !important;
  }

  body .page-shell main#top > :is(#systems, #playing-career).section .section-heading::before,
  body .page-shell main#top > #featured-work > .featured-work-section-heading::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -18px;
    bottom: -22px;
    left: 50%;
    width: var(--systems-wall-width, var(--home-section-wall-width));
    max-width: 2560px;
    background: #ffffff;
    pointer-events: none;
    transform: translateX(-50%);
  }

  body .page-shell main#top > :is(#systems, #playing-career).section .section-heading > .eyebrow,
  body .page-shell main#top > #featured-work > .featured-work-section-heading > .eyebrow {
    margin-bottom: 6px !important;
    line-height: 15px !important;
  }

  body .page-shell main#top > :is(#systems, #playing-career).section .section-heading > h2,
  body .page-shell main#top > #featured-work > .featured-work-section-heading > h2 {
    line-height: 38px !important;
  }

  body .page-shell main#top > :is(#systems, #playing-career).section::before {
    border-top-width: 0 !important;
    background: #ffffff !important;
  }

  body .page-shell main#top > #featured-work {
    margin-top: 16px !important;
  }

  body .page-shell main#top > #media {
    margin-top: 10px !important;
  }

  body:has(main#top) .site-footer.site-chrome {
    margin-top: 0;
  }
}

/* Homepage Featured: Apple-style vertical feature panels. */
main#top #featured-work {
  --featured-copy-max: 920px;
  --featured-body-max: 760px;
  --featured-cta-width: clamp(220px, 15vw, 290px);
  --featured-media-max: min(100%, 720px);
  --featured-text-gap: clamp(8px, 0.8vw, 12px);
  --featured-action-gap: clamp(12px, 0.95vw, 16px);
  --featured-media-gap: clamp(16px, 1.45vw, 24px);
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 12px;
  min-width: 0;
  background: #ffffff;
  text-align: center;
}

main#top #featured-work .featured-card {
  position: relative;
  container-type: inline-size;
  display: grid;
  width: 100%;
  min-width: 0;
  min-height: min(720px, 86svh);
  place-items: center;
}

main#top #featured-work .innovation-panel {
  display: flex !important;
  box-sizing: border-box;
  width: 100%;
  max-width: min(100%, 1180px);
  min-width: 0;
  min-height: 0;
  margin-inline: auto;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--featured-media-gap);
  overflow: visible;
  text-align: center;
}

main#top #featured-work .innovation-card-copy {
  order: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: min(100%, var(--featured-copy-max));
  max-width: min(100%, var(--featured-copy-max));
  margin-inline: auto;
  gap: var(--featured-text-gap);
  min-width: 0;
  text-align: center;
}

main#top #featured-work .featured-card .section-heading,
main#top #featured-work .innovation-card-copy > p {
  max-width: min(100%, var(--featured-body-max));
  margin-inline: auto;
  text-align: center;
}

main#top #featured-work .innovation-proof-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  width: min(100%, var(--featured-body-max));
  justify-content: center;
}

main#top #featured-work .innovation-proof-chips :is(span, a) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 6px 12px;
  border: 1px solid var(--home-proof-pill-border);
  border-radius: 999px;
  background: var(--home-proof-pill-bg);
  color: var(--home-proof-pill-main);
  font-size: clamp(0.74rem, 2.1cqw, 0.86rem);
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

main#top #featured-work .innovation-panel .button {
  width: min(100%, var(--featured-cta-width)) !important;
  max-width: var(--featured-cta-width) !important;
  margin-inline: auto;
  margin-top: 0;
  justify-self: center;
  align-self: center;
}

main#top #featured-work .innovation-thumbnail {
  order: 2;
  display: grid;
  position: relative;
  width: min(100%, var(--featured-media-max));
  max-width: var(--featured-media-max);
  min-width: 0;
  min-height: 0;
  margin-inline: auto;
  place-items: center;
  aspect-ratio: 4 / 3;
  justify-self: center;
  background: #ffffff;
  overflow: hidden;
  transform: none;
}

main#top #featured-work .innovation-thumbnail img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: center center !important;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) {
  --featured-body-max: 760px;
  --featured-cta-width: clamp(220px, 15vw, 290px);
  --featured-media-max: min(100%, 620px);
  --featured-panel-bg: linear-gradient(180deg, #ead8b8 0%, #f5e7cf 42%, #fff7e8 100%);
  --featured-eyebrow-size: 14px;
  --featured-title-size: 24px;
  --featured-body-size: 17px;
  --featured-body-line: 1.35;
  min-height: auto;
  padding:
    clamp(24px, 4vw, 34px)
    clamp(20px, 5vw, 48px)
    clamp(16px, 3.2vw, 24px);
  border: 0;
  border-radius: 0;
  background: var(--featured-panel-bg);
  box-shadow: none !important;
  overflow: hidden;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer)::before {
  content: none;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) > * {
  position: relative;
  z-index: 1;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) > .featured-card-link {
  position: absolute;
  z-index: 2;
  inset: 0;
}

main#top #featured-work .featured-card .featured-pill-row {
  position: relative;
  z-index: 3;
}

main#top #featured-work .featured-card.featured-card--archer {
  --featured-panel-bg: linear-gradient(180deg, #dfc79c 0%, #ecdab8 44%, #f8eddc 100%);
  --featured-media-max: clamp(365px, 96vw, 375px);
  --featured-logo-frame-height: clamp(318px, 88vw, 345px);
  --featured-archer-logo-art-scale: 1.34;
  --featured-archer-logo-art-shift: 18px;
  --featured-archer-logo-bleed: 24px;
  --featured-archer-stack-top-offset: clamp(-16px, calc(25px - 10vw), -11px);
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-thumbnail {
  border-radius: 0;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-panel {
  position: relative;
  z-index: 3;
  gap: var(--featured-media-gap);
}

main#top #featured-work .featured-card--archer .innovation-panel {
  align-self: start;
  transform: translateY(var(--featured-archer-stack-top-offset));
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-card-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--featured-text-gap);
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .section-heading,
main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-card-copy > p {
  flex: 0 1 auto;
  width: min(100%, var(--featured-body-max));
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .section-heading {
  margin-bottom: 0 !important;
}

main#top #featured-work .featured-card--archer .featured-archer-title {
  display: grid;
  place-items: center;
  width: min(calc(100% + var(--featured-archer-logo-bleed)), var(--featured-media-max)) !important;
  max-width: var(--featured-media-max) !important;
  margin-bottom: 0 !important;
}

main#top #featured-work .featured-card--archer .featured-archer-title-logo {
  display: block;
  width: 100%;
  max-width: 100%;
  height: var(--featured-logo-frame-height);
  object-fit: contain;
  object-position: center center;
  filter: drop-shadow(0 16px 24px rgba(52, 36, 24, 0.14));
  transform: translateY(var(--featured-archer-logo-art-shift)) scale(var(--featured-archer-logo-art-scale));
  transform-origin: center center;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .section-heading > .eyebrow {
  display: block;
  font-size: var(--featured-eyebrow-size) !important;
  line-height: 1.15 !important;
  margin-bottom: clamp(5px, 0.55vw, 7px) !important;
  margin-inline: auto;
  max-width: 100%;
  overflow-wrap: normal;
  text-align: center;
  text-wrap: balance;
  white-space: normal !important;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .section-heading h2 {
  font-size: var(--featured-title-size) !important;
  line-height: 0.96 !important;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-card-copy > p {
  margin: 0;
  color: rgba(73, 62, 50, 0.88);
  font-size: var(--featured-body-size) !important;
  font-weight: 600;
  line-height: var(--featured-body-line) !important;
  text-wrap: balance;
}

main#top #featured-work .featured-card--anaya .innovation-card-copy {
  transform: translateY(calc(-1 * var(--featured-anaya-copy-shift, 16px)));
}

main#top #featured-work .featured-card.featured-card--archer .innovation-card-copy > p {
  --archer-body-line-max: 620px;
  box-sizing: border-box;
  max-width: min(100%, var(--featured-body-max));
  padding-inline: max(0px, calc((100% - var(--archer-body-line-max)) / 2));
  text-wrap: pretty;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .featured-pill-row {
  order: 3;
  display: flex;
  flex: 0 1 auto;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
  width: min(100%, var(--featured-body-max));
  gap: 8px clamp(10px, 0.9vw, 14px);
  max-width: min(100%, var(--featured-body-max));
  margin-top: 0;
  margin-inline: auto;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-proof-chips {
  order: 4;
  width: auto;
  max-width: min(100%, var(--featured-body-max));
  margin-inline: 0 !important;
  justify-content: center;
  flex: 0 1 auto;
  align-self: center;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-proof-chips :is(span, a) {
  min-height: 27px;
  border-color: #d95a24 !important;
  background: transparent !important;
  background-image: none !important;
  color: #d95a24 !important;
  cursor: pointer;
  -webkit-text-fill-color: #d95a24 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  transition:
    border-color 180ms ease,
    background-color 180ms ease,
    color 180ms ease;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-proof-chips :is(span, a):is(:hover, :focus-visible) {
  border-color: #b8441b !important;
  background: rgba(255, 255, 255, 0.62) !important;
  color: #b8441b !important;
  -webkit-text-fill-color: #b8441b !important;
  box-shadow: none !important;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .button-primary {
  order: 3;
  flex: 0 0 auto;
  width: auto !important;
  max-width: none !important;
  min-width: 0;
  min-height: 34px;
  margin-inline: 0 !important;
  align-self: center;
  padding: 8px clamp(16px, 1.3vw, 22px);
  border: 1px solid #d95a24 !important;
  background: #d95a24 !important;
  background-image: none !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  line-height: 1;
  white-space: nowrap;
}

main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .button-primary:hover,
main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .button-primary:focus-visible {
  border-color: #d95a24 !important;
  background: #d95a24 !important;
  background-image: none !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

main#top #featured-work .featured-card--anaya .innovation-thumbnail {
  aspect-ratio: 16 / 9;
}

@media (min-width: 768px) and (max-width: 1024px) {
  main#top #featured-work {
    --featured-media-max: min(100%, 760px);
  }

  main#top #featured-work .featured-card {
    min-height: min(760px, 82svh);
    padding:
      clamp(34px, 5vw, 54px)
      clamp(28px, 5vw, 52px);
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) {
    --featured-anaya-copy-shift: 20px;
    --featured-eyebrow-size: 15px;
    --featured-title-size: 31px;
    --featured-body-size: 18px;
    min-height: clamp(583px, 77.1vw, 658px);
    padding:
      clamp(26px, 4.2vw, 36px)
      clamp(24px, 4.5vw, 42px)
      clamp(18px, 3.5vw, 28px);
  }

  main#top #featured-work .featured-card.featured-card--anaya {
    --featured-anaya-copy-shift: 24px;
    --featured-media-max: clamp(540px, 72vw, 680px);
  }

  main#top #featured-work .featured-card.featured-card--archer {
    --featured-media-max: clamp(660px, 88vw, 690px);
    --featured-logo-frame-height: clamp(430px, 59vw, 470px);
    --featured-archer-logo-art-scale: 1.36;
    --featured-archer-logo-art-shift: 22px;
    --featured-archer-logo-bleed: 120px;
    --featured-archer-stack-top-offset: clamp(-28px, calc(-7.64px - 2vw), -23px);
  }
}

@media (min-width: 521px) and (max-width: 767px) {
  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) {
    min-height: clamp(523px, calc(369px + 24.7vw), 552px);
  }
}

@media (min-width: 1025px) {
  main#top #featured-work {
    --featured-cta-width: clamp(220px, 17vw, 320px);
    --featured-media-max: clamp(560px, 48vw, 920px);
    margin: 12px 0 0 !important;
    gap: 12px !important;
    justify-items: stretch;
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) {
    overflow: visible;
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer)::after {
    content: none;
  }

  body .page-shell main#top #featured-work > .featured-card {
    min-height: clamp(720px, 82vh, 980px);
    padding:
      clamp(48px, 5vw, 84px)
      clamp(42px, 6vw, 96px);
    padding-top: clamp(48px, 5vw, 84px) !important;
    padding-left: clamp(42px, 6vw, 96px);
  }

  main#top #featured-work .innovation-panel {
    gap: var(--featured-media-gap);
  }

  body .page-shell main#top #featured-work .innovation-card-copy {
    display: flex;
    flex-direction: column;
    align-self: center !important;
    justify-content: center !important;
    align-items: center;
    gap: var(--featured-text-gap) !important;
    transform: none !important;
  }

  main#top #featured-work .featured-card .section-heading,
  main#top #featured-work .innovation-card-copy > p {
    flex: 0 1 auto;
    width: min(100%, var(--featured-body-max));
  }

  main#top #featured-work .innovation-proof-chips {
    width: auto;
    flex: 0 1 auto;
    justify-self: center;
    justify-content: center;
    flex-wrap: wrap;
  }

  main#top #featured-work .innovation-panel .button {
    flex: 0 1 var(--featured-cta-width);
    margin-inline: 0;
    justify-self: center;
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) {
    --featured-anaya-copy-shift: 18px;
    --featured-eyebrow-size: 16px;
    --featured-title-size: 38px;
    --featured-body-size: 19px;
    --featured-cta-width: clamp(220px, 14vw, 290px);
    --featured-media-max: clamp(540px, 38vw, 760px);
    --featured-media-gap: clamp(16px, 1.35vw, 22px);
  }

  main#top #featured-work .featured-card.featured-card--anaya {
    --featured-anaya-copy-shift: 6px;
    --featured-anaya-desktop-height-lift: clamp(20px, calc(14.0625vw - 160px), 65px);
    --featured-media-max: clamp(680px, 50vw, 900px);
  }

  body .page-shell main#top #featured-work > .featured-card:is(.featured-card--anaya, .featured-card--archer) {
    min-height: clamp(577px, calc(455px + 11.9vw), 692px);
    padding:
      clamp(26px, 2.3vw, 38px)
      clamp(42px, 5vw, 76px)
      clamp(16px, 1.8vw, 28px);
    /* Overrides the earlier desktop Featured-card padding-top lock in this same Apple-style block. */
    padding-top: clamp(26px, 2.3vw, 38px) !important;
    padding-left: clamp(42px, 5vw, 76px);
  }

  body .page-shell main#top #featured-work > .featured-card.featured-card--anaya {
    min-height: calc(clamp(577px, calc(455px + 11.9vw), 692px) + var(--featured-anaya-desktop-height-lift));
    place-items: start center;
  }

  main#top #featured-work .featured-card.featured-card--archer {
    --featured-cta-width: clamp(188px, 11vw, 224px);
    --featured-media-max: clamp(860px, 58vw, 920px);
    --featured-logo-frame-height: clamp(470px, 32vw, 520px);
    --featured-archer-logo-art-scale: 1.38;
    --featured-archer-logo-art-shift: 26px;
    --featured-archer-logo-bleed: 220px;
    --featured-archer-stack-top-offset: clamp(-34px, calc(-18.825px - 0.7vw), -26px);
  }

  main#top #featured-work .featured-card.featured-card--archer .innovation-card-copy > p {
    --archer-body-line-max: 760px;
    padding-inline: 0;
    white-space: nowrap;
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-panel {
    gap: var(--featured-media-gap);
  }

  body .page-shell main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-card-copy {
    gap: var(--featured-text-gap) !important;
  }

  body .page-shell main#top #featured-work .featured-card--anaya .innovation-card-copy {
    transform: translateY(calc(-1 * var(--featured-anaya-copy-shift))) !important;
  }

  body .page-shell main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-card-copy .section-heading {
    margin-bottom: 0 !important;
  }

  body .page-shell main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .section-heading > .eyebrow {
    /* Overrides the sitewide desktop heading lock so the Featured cards use the tighter Apple-style eyebrow gap and scale. */
    font-size: var(--featured-eyebrow-size) !important;
    line-height: 1.15 !important;
    margin-bottom: clamp(5px, 0.55vw, 7px) !important;
  }

  body .page-shell main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .section-heading > h2 {
    font-size: var(--featured-title-size) !important;
    line-height: 0.96 !important;
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-card-copy > p {
    margin: 0;
  }
}

@media (min-width: 2200px) {
  main#top #featured-work {
    --featured-media-max: 980px;
  }

  main#top #featured-work .featured-card.featured-card--anaya {
    --featured-media-max: 900px;
  }

  main#top #featured-work .featured-card.featured-card--archer {
    --featured-media-max: 920px;
    --featured-logo-frame-height: 520px;
    --featured-archer-logo-art-scale: 1.38;
    --featured-archer-logo-art-shift: 26px;
    --featured-archer-stack-top-offset: -34px;
  }
}

@media (max-width: 520px) {
  main#top #featured-work {
    --featured-media-max: 100%;
    --featured-cta-width: 100%;
  }

  main#top #featured-work .featured-card {
    min-height: min(700px, 86svh);
  }

  main#top #featured-work .innovation-proof-chips {
    gap: 7px;
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) {
    --featured-anaya-copy-shift: 16px;
    --featured-eyebrow-size: 14px;
    --featured-title-size: 24px;
    --featured-body-size: 17px;
    min-height: clamp(523px, calc(218px + 78.25vw), 625px);
    padding:
      clamp(21.8px, 5.75vw, 29.7px)
      clamp(18px, 5vw, 24px)
      clamp(15.8px, 4.35vw, 23.8px);
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .section-heading {
    margin-bottom: 0;
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-card-copy > p {
    margin: 0;
  }

  main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-panel {
    gap: var(--featured-media-gap);
  }

  main#top #featured-work .featured-card--anaya .innovation-thumbnail {
    aspect-ratio: 4 / 3;
    width: min(100%, var(--featured-media-max));
  }

  main#top #featured-work .featured-card.featured-card--anaya {
    --featured-anaya-copy-shift: 26px;
  }

  main#top #featured-work .featured-card.featured-card--archer {
    --featured-cta-width: 230px;
    --featured-media-max: clamp(365px, 96vw, 375px);
    --featured-logo-frame-height: clamp(318px, 88vw, 345px);
    --featured-archer-logo-art-scale: 1.34;
    --featured-archer-logo-art-shift: 18px;
    --featured-archer-logo-bleed: 24px;
    --featured-archer-stack-top-offset: clamp(-16px, calc(25px - 10vw), -11px);
    min-height: auto;
    padding-bottom: clamp(28px, 7vw, 32px);
  }

  main#top #featured-work .featured-card--archer .innovation-panel .button {
    width: auto !important;
    max-width: none !important;
  }
}

@media (max-width: 374px) {
  main#top #featured-work .featured-card--anaya .featured-pill-row {
    gap: 5px !important;
  }

  main#top #featured-work .featured-card--anaya .innovation-proof-chips {
    gap: 5px !important;
  }

  main#top #featured-work .featured-card--anaya .button-primary {
    padding-inline: 12px !important;
  }
}

@media (min-width: 1025px) {
  body .page-shell main#top {
    --home-section-header-top: 13px;
    --home-eyebrow-title-gap: 6px;
    --home-section-title-line: 38px;
    --home-title-content-gap: 13px;
    --home-grid-gap: 12px;
    --home-section-gap: 13px;
    --home-paired-section-gap: 13px;
  }

  body .page-shell main#top > :is(#systems, #media, #playing-career).section {
    border: 0 !important;
    padding-top: var(--home-section-header-top) !important;
  }

  body .page-shell main#top > :is(#systems, #media, #playing-career).section::before {
    border: 0 !important;
  }

  body .page-shell main#top :is(.document-card, .contact-form-card) {
    border: 0 !important;
  }

  body .page-shell main#top > :is(#media, #playing-career, #contact).section {
    margin-top: 0 !important;
  }

  body .page-shell main#top > #featured-work {
    margin-top: calc(var(--home-section-gap) - 1px) !important;
    gap: var(--home-paired-section-gap) !important;
  }

  body .page-shell main#top > #media {
    --gallery-heading-gap: var(--home-title-content-gap);
    --gallery-grid-gap: var(--home-grid-gap);
  }

  body .page-shell main#top :is(.document-card, .contact-form-card) {
    padding-top: var(--home-section-header-top) !important;
  }

  body .page-shell main#top > :is(#systems, #media, #playing-career).section .section-heading,
  body .page-shell main#top > #featured-work > .featured-work-section-heading {
    position: relative;
    z-index: 0;
    isolation: isolate;
    margin-bottom: var(--home-title-content-gap) !important;
  }

  body .page-shell main#top > :is(#media, #playing-career).section .section-heading::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: calc(-1 * var(--home-section-header-top));
    bottom: calc(-1 * var(--home-title-content-gap));
    left: 50%;
    width: var(--home-section-wall-width);
    max-width: 2560px;
    background: #ffffff;
    pointer-events: none;
    transform: translateX(-50%);
  }

  body .page-shell main#top > :is(#systems, #media, #playing-career).section .section-heading > .eyebrow,
  body .page-shell main#top > #featured-work > .featured-work-section-heading > .eyebrow {
    display: none;
  }

  body .page-shell main#top > :is(#systems, #media, #playing-career).section .section-heading > h2,
  body .page-shell main#top > #featured-work > .featured-work-section-heading > h2 {
    color: #1F1B16 !important;
    font-family: Georgia, "Palatino Linotype", serif !important;
    font-size: clamp(32px, 2.1vw, 42px) !important;
    font-weight: 700 !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
  }

  body .page-shell main#top #systems .section-heading::before {
    top: calc(-1 * var(--home-section-header-top));
    bottom: calc(-1 * var(--home-title-content-gap));
  }

  body .page-shell main#top :is(#systems .library-grid, #media .gallery-grid) {
    gap: var(--home-grid-gap) !important;
    column-gap: var(--home-grid-gap) !important;
    row-gap: var(--home-grid-gap) !important;
  }

  body .page-shell main#top #systems .library-grid {
    box-sizing: border-box;
    padding-left: var(--home-grid-edge-left) !important;
    padding-right: var(--home-grid-edge-right) !important;
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) {
    min-height: clamp(424px, 29.4vw, 555px) !important;
    padding:
      clamp(24px, 2.15vw, 36px)
      clamp(24px, 2.4vw, 46px)
      calc(
        clamp(18px, 1.45vw, 28px)
        + clamp(0px, calc(13.125vw - 168px), 21px)
        + clamp(0px, calc(1.875vw - 27px), 3px)
        - clamp(0px, calc(7.5vw - 120px), 24px)
      ) !important;
  }

  body .page-shell main#top #systems .library-card-media {
    --systems-media-balance-y: clamp(16.6px, calc(1.1vw + 5.3px), 19.4px);
    width: min(100%, clamp(320px, 27.75vw, 488px)) !important;
    margin-top: clamp(13px, 1vw, 20px) !important;
    transform: translateY(calc(-1 * var(--systems-media-balance-y))) scale(1.05);
    transform-origin: top center;
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) > h3 {
    color: var(--text, #1f1b16) !important;
    margin-bottom: clamp(2px, 0.2vw, 4px) !important;
    font-size: 2rem !important;
    font-weight: 800 !important;
    line-height: 1.03 !important;
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card):is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) > h3 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) > p {
    color: #51483f !important;
    margin-bottom: clamp(4px, 0.4vw, 8px) !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    line-height: 1.26 !important;
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card):is([data-system-type="dpat"], [data-system-type="recruiting"], [data-system-type="scouting"]) > p {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }

  body .page-shell main#top #systems .system-card .library-actions {
    display: grid !important;
    grid-template-columns: repeat(4, max-content);
    align-items: center;
    justify-content: center;
    width: max-content;
    max-width: 100%;
    min-height: clamp(52px, calc(97px - 3vw), 57px);
    gap: 0 clamp(3px, 0.32vw, 8px) !important;
    margin-top: clamp(2px, 0.25vw, 5px) !important;
    margin-bottom: 0 !important;
  }

  body .page-shell main#top #systems .system-card .library-actions .button,
  body .page-shell main#top #systems .system-card .button-small {
    flex: 0 0 auto;
    justify-self: center;
    width: auto !important;
    max-width: max-content !important;
    min-width: 0 !important;
    min-height: clamp(27px, 1.75vw, 31px) !important;
    padding-right: clamp(8px, 0.48vw, 11px) !important;
    padding-left: clamp(8px, 0.48vw, 11px) !important;
    border: 1px solid #d95a24 !important;
    border-radius: 999px !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #d95a24 !important;
    -webkit-text-fill-color: #d95a24 !important;
    font-size: clamp(13.5px, calc(12.5px + 0.1vw), 14px) !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
  }

  body .page-shell main#top #systems .system-card .library-actions .button:first-child,
  body .page-shell main#top #systems .system-card .button-small:first-child {
    border-color: #d95a24 !important;
    background: #d95a24 !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #ffffff !important;
    font-weight: 900 !important;
    -webkit-text-fill-color: #ffffff !important;
    filter: none !important;
    opacity: 1 !important;
    text-shadow: none !important;
    mix-blend-mode: normal !important;
  }

  body .page-shell main#top #systems .system-card:not([data-system-type="dpat"]) .library-actions .button:not(:first-child),
  body .page-shell main#top #systems .system-card:not([data-system-type="dpat"]) .button-small:not(:first-child) {
    border-color: #d95a24 !important;
    background: transparent !important;
    background-image: none !important;
    color: #d95a24 !important;
    -webkit-text-fill-color: #d95a24 !important;
  }

  body .page-shell main#top #systems .system-card .library-actions .button:hover,
  body .page-shell main#top #systems .system-card .library-actions .button:focus-visible,
  body .page-shell main#top #systems .system-card .button-small:hover,
  body .page-shell main#top #systems .system-card .button-small:focus-visible {
    border-color: #d95a24 !important;
    background: rgba(217, 90, 36, 0.08) !important;
    background-image: none !important;
    color: #d95a24 !important;
    -webkit-text-fill-color: #d95a24 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
  }

  body .page-shell main#top #systems .system-card .library-actions .button:first-child:hover,
  body .page-shell main#top #systems .system-card .library-actions .button:first-child:focus-visible,
  body .page-shell main#top #systems .system-card .button-small:first-child:hover,
  body .page-shell main#top #systems .system-card .button-small:first-child:focus-visible {
    border-color: #d95a24 !important;
    background: #d95a24 !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    filter: none !important;
    opacity: 1 !important;
    text-shadow: none !important;
    mix-blend-mode: normal !important;
  }
}

@media (min-width: 1280px) {
  body .page-shell main#top #systems .library-card-media {
    --systems-media-balance-y: clamp(7.1px, calc(117.8px - 7.69vw), 19.4px);
  }
}

@media (min-width: 1440px) {
  body .page-shell main#top #systems .library-card-media {
    --systems-media-balance-y: clamp(4.7px, calc(28.7px - 1.5vw), 7.1px);
  }
}

@media (min-width: 1600px) {
  body .page-shell main#top #systems .library-card-media {
    --systems-media-balance-y: clamp(4.7px, calc(3.3125vw - 48.3px), 15.3px);
  }
}

@media (min-width: 1920px) {
  body .page-shell main#top #systems .library-card-media {
    --systems-media-balance-y: clamp(18px, 1.35vw, 24px);
  }
}

@media (min-width: 1280px) {
  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) {
    padding-top: 34px !important;
    padding-bottom: clamp(47.3px, calc(34px + 1.040625vw), 52.3px) !important;
  }

  /* Desktop Systems rhythm: remove the older action min-height spacer so the visible pills-to-image gap can be set directly. */
  body .page-shell main#top #systems .system-card .library-actions {
    min-height: 0 !important;
  }

  body .page-shell main#top #systems .library-card-media {
    --systems-media-balance-y: 0px;
    margin-top: 12px !important;
  }
}

@media (min-width: 1025px) and (max-width: 1279px) {
  body .page-shell main#top #systems {
    --systems-card-media-breathing-space: 15px;
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) {
    min-height: 0 !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }

  /* Small-desktop Systems rhythm: bridge the 1025px breakpoint so it does not inherit the older action spacer. */
  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) > p {
    margin-bottom: 6px !important;
  }

  body .page-shell main#top #systems .system-card .library-actions {
    min-height: 0 !important;
    margin-top: 0 !important;
  }

  body .page-shell main#top #systems .library-card-media {
    --systems-media-balance-y: 0px;
    margin-top: 12px !important;
    transform: none !important;
  }
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-header .brand-mark {
  border: 1px solid rgba(214, 162, 75, 0.8) !important;
  background: linear-gradient(135deg, #b43f1f 0%, #d95a24 100%) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Shared mobile header: target pages intentionally follow the homepage header specs. */
@media (max-width: 767px) {
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-header.site-chrome {
    grid-template-columns: 40px minmax(0, 1fr) auto !important;
    align-items: center !important;
    min-height: 44px !important;
    padding-block: 4px !important;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .mobile-nav-toggle,
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-header .brand,
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .mobile-contact-link {
    align-self: center !important;
    transform: none !important;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .mobile-nav-toggle,
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-header .brand,
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-header .brand-mark {
    width: 36px !important;
    height: 36px !important;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-header .brand {
    display: grid !important;
    place-items: center !important;
    justify-self: center !important;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .mobile-contact-link {
    min-height: 36px !important;
    line-height: 1 !important;
  }

  .page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system {
    margin-top: 0 !important;
  }
}

/* Tablet home header: remove the hero's top margin so the header-to-hero band matches the mobile no-gap chrome. */
@media (min-width: 768px) and (max-width: 1024px) {
  .page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system {
    margin-top: 0 !important;
  }
}

body .page-shell main#top .eyebrow,
body .page-shell main#top :is(.section-heading, .home-closeout-heading) > .eyebrow {
  color: var(--coach-red, #8f2d1e) !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}

body .page-shell :is(main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system .eyebrow {
  color: var(--coach-red, #8f2d1e) !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}

body .page-shell main#top {
  --home-title-content-gap: 13px;
}

body .page-shell main#top > :is(#systems, #media, #playing-career).section > .section-heading > .eyebrow,
body .page-shell main#top > #featured-work > .featured-work-section-heading > .eyebrow,
body .page-shell main#top > #contact.contact-section .contact-closeout-grid > .home-closeout-heading > .eyebrow {
  /* Normalizes hidden homepage eyebrows over older section-specific !important locks. */
  display: none !important;
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
}

body .page-shell main#top > :is(#systems, #media, #playing-career).section > .section-heading,
body .page-shell main#top > #featured-work > .featured-work-section-heading {
  margin-bottom: var(--home-title-content-gap, 13px) !important;
}

body .page-shell main#top > :is(#systems, #media, #playing-career).section > .section-heading > h2,
body .page-shell main#top > #featured-work > .featured-work-section-heading > h2,
body .page-shell main#top #contact .home-closeout-heading > h2 {
  margin: 0 !important;
  color: #1F1B16 !important;
  font-family: Georgia, "Palatino Linotype", serif !important;
  font-size: clamp(22px, 6vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  white-space: normal !important;
}

@media (min-width: 1025px) {
  body .page-shell main#top {
    --home-title-content-gap: 13px;
  }

  body .page-shell main#top > :is(#systems, #media, #playing-career).section > .section-heading > h2,
  body .page-shell main#top > #featured-work > .featured-work-section-heading > h2,
  body .page-shell main#top #contact .home-closeout-heading > h2 {
    font-size: clamp(32px, 2.1vw, 42px) !important;
    line-height: 1.02 !important;
  }
}

/* Homepage-spec hero pill color overrides shared page-hero pill defaults above. */
.page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill {
  border: 1.25px solid rgba(201, 149, 62, 0.72) !important;
  background: linear-gradient(180deg, #FFF8EC 0%, #F7E9D2 100%) !important;
  color: #1F1B16 !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    0 10px 24px rgba(143, 45, 30, 0.08) !important;
}

.page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-main {
  color: #1F1B16 !important;
  font-weight: 800 !important;
}

.page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-sub {
  color: #6A4E2E !important;
  font-weight: 700 !important;
}

/* Homepage-spec overlay color overrides shared hero overlay defaults above. */
.page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system .hero-portrait-overlay {
  border-color: rgba(216, 178, 112, 0.28) !important;
  background: rgba(20, 22, 24, 0.86) !important;
}

.page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-title {
  color: #D08A3A !important;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}

.page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text a {
  color: #9EC3EA !important;
}

.page-shell :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page) > .page-hero-system.page-hero-system .hero-portrait-overlay-text span {
  color: rgba(255, 244, 226, 0.45) !important;
}

body .page-shell main#top .contact-closeout-grid {
  grid-template-areas:
    "documents-card"
    "contact-card";
  row-gap: var(--home-title-content-gap, 13px) !important;
  background: #ffffff;
}

body .page-shell main#top :is(.document-card, .contact-form-card) {
  border: 0 !important;
}

body .page-shell main#top .contact-closeout-heading--documents {
  grid-area: documents-heading;
}

body .page-shell main#top .contact-closeout-heading--contact {
  grid-area: contact-heading;
}

body .page-shell main#top .contact-closeout-heading--documents,
body .page-shell main#top .contact-closeout-heading--contact {
  display: none !important;
}

body .page-shell main#top .contact-closeout-heading--documents > h2,
body .page-shell main#top .contact-closeout-heading--contact > h2 {
  display: none !important;
}

body .page-shell main#top .document-card {
  grid-area: documents-card;
}

body .page-shell main#top .contact-form-card {
  grid-area: contact-card;
}

body .page-shell main#top #contact .home-closeout-heading {
  margin-bottom: 0 !important;
  background: #ffffff;
}

body .page-shell main#top #contact .home-closeout-heading::before {
  content: none !important;
}

body .page-shell main#top .contact-closeout-grid > .home-closeout-heading {
  align-self: end;
}

body .page-shell main#top .contact-closeout-grid > :is(.document-card, .contact-form-card) {
  height: 100% !important;
  align-self: stretch;
}

body .page-shell main#top .contact-closeout-grid > :is(.document-card, .contact-form-card) > :first-child {
  margin-top: 0 !important;
}

body .page-shell main#top .contact-closeout-grid > :is(.document-card, .contact-form-card) > :last-child {
  margin-bottom: 0 !important;
}

@media (min-width: 1025px) {
  body .page-shell main#top > #contact.contact-section {
    --section-eyebrow-to-title-gap: var(--home-eyebrow-title-gap, 6px);
    --section-title-line-desktop: var(--home-section-title-line, 38px);
    padding-top: var(--home-section-header-top, 18px) !important;
  }

  body .page-shell main#top .contact-closeout-grid {
    grid-template-areas:
      "documents-card contact-card";
    row-gap: var(--home-title-content-gap, 13px) !important;
    column-gap: 13px !important;
  }

  body .page-shell main#top #contact .home-closeout-heading > .eyebrow {
    display: none;
  }

  body .page-shell main#top #contact .home-closeout-heading > h2 {
    color: #1F1B16 !important;
    font-family: Georgia, "Palatino Linotype", serif !important;
    font-size: clamp(32px, 2.1vw, 42px) !important;
    font-weight: 700 !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
  }

  body .page-shell main#top .document-card-title {
    font-size: clamp(32px, 2.1vw, 42px) !important;
    line-height: 1.02 !important;
  }

  body .page-shell main#top .contact-card-title {
    font-size: clamp(32px, 2.1vw, 42px) !important;
    line-height: 1.02 !important;
  }
}

@media (min-width: 1025px) {
  body .page-shell main#top {
    --home-section-header-inset: clamp(36px, 2.4vw, 58px);
  }

  body .page-shell main#top
    :is(#systems, #media, #playing-career) > .section-heading,
  body .page-shell main#top > #featured-work > .featured-work-section-heading,
  body .page-shell main#top #contact .home-closeout-heading {
    text-align: left !important;
  }

  body .page-shell main#top
    :is(#systems, #media, #playing-career) > .section-heading > :is(.eyebrow, h2),
  body .page-shell main#top > #featured-work > .featured-work-section-heading > :is(.eyebrow, h2),
  body .page-shell main#top #contact .home-closeout-heading > :is(.eyebrow, h2) {
    padding-inline: 0 !important;
    text-indent: 0 !important;
  }

  body .page-shell main#top > #media.section > .section-heading > :is(.eyebrow, h2) {
    position: relative;
    left: calc(var(--home-section-header-inset) - var(--gallery-section-pad));
  }

  body .page-shell main#top #contact .home-closeout-heading {
    padding-inline: var(--home-section-header-inset) !important;
  }

  /* Overrides older homepage closeout heading locks so these follow the one-line section header scale. */
  body .page-shell main#top > #contact.contact-section .home-closeout-heading > h2 {
    font-size: clamp(32px, 2.1vw, 42px) !important;
    line-height: 1.02 !important;
  }
}

body .page-shell main#top > #featured-work > .featured-work-section-heading {
  container-type: inline-size;
  width: 100%;
  max-width: none;
  padding:
    34px
    34px
    0;
  background: #ffffff;
}

@media (max-width: 1024px) {
  body .page-shell main#top > #featured-work > .featured-work-section-heading {
    --featured-section-header-inline-offset: 0px;
    position: relative;
    z-index: 0;
    text-align: start !important;
  }

  body .page-shell main#top > #featured-work > .featured-work-section-heading::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 50%;
    width: calc(100% + var(--featured-section-header-inline-offset) + var(--featured-section-header-inline-offset));
    background: #ffffff;
    pointer-events: none;
    transform: translateX(-50%);
  }
}

body .page-shell main#top > #featured-work {
  gap: 0 !important;
}

body .page-shell main#top > #featured-work > .featured-card + .featured-card {
  margin-top: 11px;
}

/* Canonical homepage wide-wall contract: Featured uses the same centered section width as the surrounding media walls, replacing older edge-bleed gutter hacks. */
body .page-shell main#top > #featured-work {
  --featured-wall-width: min(var(--home-section-wall-width, 2560px), calc(100vw - 16px));
  width: var(--featured-wall-width) !important;
  max-width: 2560px !important;
  margin-left: calc((100% - var(--featured-wall-width)) / 2) !important;
  margin-right: calc((100% - var(--featured-wall-width)) / 2) !important;
}

@media (max-width: 767px) {
  body .page-shell main#top > #featured-work > .featured-work-section-heading {
    --featured-section-header-inline-offset: calc(var(--mobile-card-padding, 16px) + 1px);
    width: auto;
    margin-inline: var(--featured-section-header-inline-offset);
    padding: 0;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main#top > #featured-work > .featured-work-section-heading {
    --featured-section-header-inline-offset: calc(var(--mobile-page-gutter, 24px) + var(--mobile-section-pad, 24px) - 11px);
    width: auto;
    margin-inline: var(--featured-section-header-inline-offset);
    padding: 0;
  }
}

@media (min-width: 1025px) {
  body .page-shell main#top > #featured-work > .featured-work-section-heading {
    width: 100%;
    margin-inline: 0;
    padding:
      0
      calc(
        ((var(--featured-wall-width, 100%) - var(--page-shell-width)) / 2)
        + var(--home-section-header-inset, clamp(36px, 2.4vw, 58px))
      )
      0;
  }

  body .page-shell main#top > #featured-work {
    padding-top: var(--home-section-header-top, 18px);
  }
}

@media (min-width: 1025px) {
  body .page-shell main#top > #systems.section {
    --home-section-header-top: 13px;
  }

  /* Overrides earlier homepage section margin locks so only the header approach rhythm changes. */
  body .page-shell main#top > #featured-work {
    margin-top: 7px !important;
    padding-top: 7px !important;
  }

  body .page-shell main#top > :is(#media, #playing-career, #contact).section {
    margin-top: 7px !important;
    padding-top: 7px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  /* Overrides earlier tablet section padding locks so header approach gaps stay consistent. */
  body .page-shell main#top > #systems.section {
    margin-top: -38px !important;
    padding-top: 23px !important;
    padding-bottom: 0 !important;
  }

  body .page-shell main#top > #featured-work {
    margin-top: 7px !important;
    padding-top: 6px !important;
  }

  body .page-shell main#top > #media.section {
    margin-top: 7px !important;
    padding-top: 6px !important;
  }

  body .page-shell main#top > #playing-career.section {
    margin-top: 6px !important;
    padding-top: 6px !important;
    padding-bottom: 0 !important;
  }

  body .page-shell main#top > #contact.contact-section {
    margin-top: 13px !important;
  }
}

@media (max-width: 767px) {
  /* Overrides earlier mobile section padding locks so header approach gaps stay consistent. */
  body .page-shell main#top > #systems.section {
    margin-top: -16px !important;
    padding-top: 11px !important;
    padding-bottom: 0 !important;
  }

  body .page-shell main#top > #featured-work {
    margin-top: 7px !important;
    padding-top: 6px !important;
  }

  body .page-shell main#top > #media.section {
    margin-top: 7px !important;
    padding-top: 6px !important;
  }

  body .page-shell main#top > #playing-career.section {
    margin-top: 6px !important;
    padding-top: 6px !important;
    padding-bottom: 0 !important;
  }

  body .page-shell main#top > #contact.contact-section {
    margin-top: 13px !important;
  }
}

body .page-shell main#top :is(#systems .library-grid, #media .gallery-grid) {
  gap: var(--home-grid-gap) !important;
  row-gap: var(--home-grid-gap) !important;
  column-gap: var(--home-grid-gap) !important;
}

body .page-shell main#top .contact-closeout-grid {
  row-gap: 13px !important;
  column-gap: 13px !important;
}

@media (min-width: 1025px) {
  body .page-shell main#top .contact-closeout-grid {
    row-gap: 13px !important;
    column-gap: 13px !important;
  }
}

/* Overrides older left-alignment locks so the main homepage headers share one centered system. */
body .page-shell main#top > :is(#systems, #media, #playing-career).section > .section-heading,
body .page-shell main#top > #featured-work > .featured-work-section-heading {
  text-align: center !important;
}

body .page-shell main#top > :is(#systems, #media, #playing-career).section > .section-heading > h2,
body .page-shell main#top > #featured-work > .featured-work-section-heading > h2 {
  text-align: center !important;
}

body .page-shell main#top > #media.section > .section-heading > :is(.eyebrow, h2) {
  left: auto;
}

/* Hides standalone homepage section title bars while preserving section trim spacing. */
body .page-shell main#top > :is(#systems, #media, #playing-career).section > .section-heading,
body .page-shell main#top > #featured-work > .featured-work-section-heading {
  display: none !important;
  margin: 0 !important;
}

body .page-shell main#top > :is(#systems, #media, #playing-career).section > .section-heading::before,
body .page-shell main#top > #featured-work > .featured-work-section-heading::before {
  content: none !important;
}

body .page-shell main#top > #playing-career.section > .section-heading {
  display: block !important;
  margin: 0 0 var(--section-title-to-content-gap, 18px) !important;
}

body .page-shell main#top > #playing-career.section > .section-heading::before {
  content: none !important;
}

/* Keeps the Featured-to-Program Media join on the 13px neutral homepage rhythm. */
body .page-shell main#top > #featured-work + #media.section {
  margin-top: 13px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

body .page-shell main#top > section#contact.contact-section :is(.document-card.document-card, .contact-form-card.contact-form-card) {
  gap: 28px !important;
}

/* Homepage spacing lock, leaving the hero vertical rhythm untouched. */
body .page-shell main#top {
  --home-title-content-gap: 13px;
  --home-grid-gap: 12px;
  --home-grid-edge-left: 11px;
  --home-grid-edge-right: 12px;
  --home-section-gap: 13px;
  --home-paired-section-gap: 13px;
}

@media (min-width: 1025px) {
  body .page-shell main#top {
    --home-section-header-top: 13px;
    --home-media-rail-grid-gap: 12px;
    --home-media-frame-grid-gap: 12px;
  }
}

body .page-shell main#top :is(
  #media .gallery-card > span.gallery-card-caption,
  .contact-closeout-grid,
  .document-card,
  .contact-form-card,
  .document-actions,
  .contact-form,
  .contact-name-row
) {
  gap: 13px !important;
  row-gap: 13px !important;
  column-gap: 13px !important;
}

body .page-shell main#top > section#contact.contact-section :is(.document-card.document-card, .contact-form-card.contact-form-card) {
  gap: 28px !important;
  row-gap: 28px !important;
  column-gap: 28px !important;
  align-content: start !important;
  padding-top: var(--contact-card-title-top-space, 36px) !important;
  padding-bottom: var(--contact-card-bottom-space, 28px) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body .page-shell main#top > section#contact.contact-section,
body .page-shell main#top > section#contact.contact-section > .contact-closeout-grid {
  background: #ffffff !important;
  background-image: none !important;
}

body .page-shell main#top > section#contact.contact-section .contact-form :is(input, select) {
  min-height: 44px !important;
  height: 44px !important;
}

body .page-shell main#top > section#contact.contact-section .contact-form textarea {
  min-height: 158px !important;
  height: 158px !important;
}

body .page-shell main#top :is(
  #featured-work > .featured-card + .featured-card,
  #featured-work + #media.section
) {
  margin-top: 11px !important;
}

body .page-shell main#top :is(#systems .library-grid, #media .gallery-grid) {
  box-sizing: border-box;
  padding-left: var(--home-grid-edge-left) !important;
  padding-right: var(--home-grid-edge-right) !important;
  background: #ffffff;
}

/* Homepage Systems square tile lock: replaces older rounded card/media rules for the Apple-style tile edge. */
body .page-shell main#top #systems :is(.system-card, .library-card.system-card),
body .page-shell main#top #systems .library-card-media,
body .page-shell main#top #systems .library-card-media img {
  border-radius: 0 !important;
}

/* Homepage Systems wall lock: overrides older homepage grid padding/2-column locks that caused nested side strips. */
@media (max-width: 1024px) {
  body .page-shell main#top > #systems.section {
    --systems-responsive-wall-width: calc(100vw - 14px);
    --systems-grid-gap: 11px;
    box-sizing: border-box !important;
    width: var(--systems-responsive-wall-width) !important;
    max-width: var(--systems-responsive-wall-width) !important;
    margin-right: calc((100% - var(--systems-responsive-wall-width)) / 2) !important;
    margin-left: calc((100% - var(--systems-responsive-wall-width)) / 2) !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  body .page-shell main#top > #systems.section::before {
    content: none !important;
  }

  body .page-shell main#top #systems .library-grid {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    gap: var(--systems-grid-gap) !important;
    row-gap: var(--systems-grid-gap) !important;
    column-gap: var(--systems-grid-gap) !important;
    background: #ffffff;
  }

  body .page-shell main#top #systems {
    --systems-card-media-breathing-space: clamp(16px, 4vw, 22px);
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) {
    padding-bottom: var(--systems-card-media-breathing-space) !important;
  }

  body .page-shell main#top #systems .library-card-media {
    margin-top: clamp(4px, 0.7vw, 8px);
  }

  body .page-shell main#top #systems .system-card .library-actions {
    margin-top: clamp(6px, 1vw, 10px);
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main#top > #systems.section {
    --systems-responsive-wall-width: calc(100vw - 34px);
    --systems-grid-gap: 11px;
  }

  body .page-shell main#top #systems {
    --systems-card-media-breathing-space: 15px;
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) {
    padding-top: 15px !important;
  }

  /* Tablet Systems rhythm: override the older body/action margins and action min-height that held the pills away from the image. */
  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) > p {
    margin-bottom: 6px !important;
  }

  body .page-shell main#top #systems .system-card .library-actions {
    min-height: 0 !important;
    margin-top: 0 !important;
  }

  body .page-shell main#top #systems .library-card-media {
    margin-top: 12px !important;
  }
}

@media (max-width: 767px) {
  /* Mobile Systems rhythm: match the tablet fix by removing the older action min-height spacer between pills and image. */
  body .page-shell main#top #systems {
    --systems-card-media-breathing-space: 15px;
  }

  body .page-shell main#top #systems .system-card[data-system-type="dpat"] {
    order: 2;
  }

  body .page-shell main#top #systems .system-card[data-system-type="development"] {
    order: 1;
  }

  body .page-shell main#top #systems .system-card[data-system-type="recruiting"] {
    order: 4;
  }

  body .page-shell main#top #systems .system-card[data-system-type="operations"] {
    order: 3;
  }

  body .page-shell main#top #systems .system-card[data-system-type="scouting"] {
    order: 6;
  }

  body .page-shell main#top #systems .system-card[data-system-type="leadership"] {
    order: 5;
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) {
    padding-top: 13px !important;
    padding-bottom: 13px !important;
  }

  body .page-shell main#top #systems :is(.system-card, .library-card.system-card) > p {
    margin-bottom: 6px !important;
  }

  body .page-shell main#top #systems .system-card .library-actions {
    min-height: 0 !important;
    margin-top: 0 !important;
  }

  body .page-shell main#top #systems .library-card-media {
    width: min(100%, 340px) !important;
    margin-top: 10px !important;
  }
}

/* Homepage Systems pill lock: mobile/tablet use desktop-style intrinsic pills instead of stretched full-width buttons. */
@media (max-width: 1024px) {
  body .page-shell main#top #systems .system-card .library-actions {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    width: max-content !important;
    max-width: calc(100% - 28px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    gap: 8px !important;
  }

  body .page-shell main#top #systems .system-card .library-actions .button,
  body .page-shell main#top #systems .system-card .button-small {
    width: auto !important;
    max-width: max-content !important;
    min-width: 0 !important;
    min-height: 36px !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
    font-size: 12.75px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main#top #systems .system-card .library-actions {
    max-width: calc(100% - 20px) !important;
    gap: 7px !important;
  }

  body .page-shell main#top #systems .system-card .library-actions .button,
  body .page-shell main#top #systems .system-card .button-small {
    min-height: 34px !important;
    padding-right: 14px !important;
    padding-left: 14px !important;
    font-size: 12.5px !important;
  }
}

/* Homepage Program Media wall lock: overrides older shared media padding/grid locks that caused nested side bands on tablet/mobile. */
@media (max-width: 1024px) {
  body .page-shell main#top > #media.section {
    --program-media-responsive-wall-width: calc(100vw - 14px);
    --gallery-grid-gap: 11px;
    box-sizing: border-box !important;
    width: var(--program-media-responsive-wall-width) !important;
    max-width: var(--program-media-responsive-wall-width) !important;
    margin-right: calc((100% - var(--program-media-responsive-wall-width)) / 2) !important;
    margin-left: calc((100% - var(--program-media-responsive-wall-width)) / 2) !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  body .page-shell main#top > #media.section::before {
    content: none !important;
  }

  body .page-shell main#top #media .gallery-grid {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    gap: var(--gallery-grid-gap) !important;
    row-gap: var(--gallery-grid-gap) !important;
    column-gap: var(--gallery-grid-gap) !important;
    background: #ffffff;
  }

  body .page-shell main#top #media :is(.gallery-card, .gallery-media, .gallery-card img) {
    border-radius: 0 !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main#top > #media.section {
    --program-media-responsive-wall-width: calc(100vw - 34px);
    --gallery-grid-gap: 11px;
  }

  body .page-shell main#top #media .gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main#top #media .gallery-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

body .page-shell main#top > #featured-work + #media.section {
  margin-top: 11px !important;
}

@media (min-width: 1025px) {
  body .page-shell main#top #media .gallery-grid {
    padding-left: 11px !important;
    padding-right: 11px !important;
    gap: 11px !important;
    row-gap: 11px !important;
    column-gap: 11px !important;
  }
}

@media (min-width: 1025px) {
  /* Keeps approved desktop 2x3 layout above older late homepage grid locks. */
  body .page-shell main#top #systems .library-grid {
    padding-left: 11px !important;
    padding-right: 11px !important;
    gap: 11px !important;
    row-gap: 11px !important;
    column-gap: 11px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

body .page-shell main#top > #playing-career.section > .section-heading {
  margin-bottom: 13px !important;
}

body .page-shell main#top #playing-career.playing-career-section {
  --playing-career-gap: 13px;
}

body .page-shell main#top > #playing-career.section {
  background: #ffffff;
}

body .page-shell main#top > #playing-career.section::before {
  content: none;
}

body .page-shell main#top > #playing-career.section > .playing-career-carousel {
  margin-bottom: 0;
}

body .page-shell main#top > #playing-career.section .playing-career-label {
  position: absolute;
  top: clamp(10px, 1.2vw, 18px);
  left: calc(
    var(--playing-career-composition-clip)
    + ((var(--playing-career-composition-width) - var(--playing-career-slide-width)) / 2)
    + clamp(10px, 1.2vw, 18px)
  );
  z-index: 3;
  margin: 0;
  padding: clamp(8px, 0.8vw, 11px) clamp(12px, 1.2vw, 18px);
  border: 1px solid rgba(216, 178, 112, 0.28);
  border-radius: var(--hero-overlay-radius, 8px);
  background: rgba(20, 22, 24, 0.86);
  box-shadow:
    0 14px 30px rgba(18, 14, 10, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
  color: #fff4e2;
  font-family: "Trebuchet MS", "Gill Sans", sans-serif;
  font-size: clamp(12px, 1vw, 15px);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  pointer-events: none;
}

/* Aligns non-hero homepage section handoffs to a visible 13px rhythm. */
@media (min-width: 1025px) {
  body .page-shell main#top > #featured-work {
    margin-top: 7px !important;
    padding-top: 6px !important;
  }

  body .page-shell main#top > :is(#playing-career, #contact).section {
    margin-top: 7px !important;
    padding-top: 6px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main#top > #featured-work {
    margin-top: 6px !important;
    padding-top: 6px !important;
  }

  body .page-shell main#top > #playing-career.section {
    margin-top: 6px !important;
    padding-top: 5px !important;
  }

  body .page-shell main#top > #contact.contact-section {
    margin-top: 12px !important;
    padding-top: 0 !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main#top > #featured-work {
    margin-top: 6px !important;
    padding-top: 6px !important;
  }

  body .page-shell main#top > #playing-career.section {
    margin-top: 6px !important;
    padding-top: 5px !important;
  }

  body .page-shell main#top > #contact.contact-section {
    margin-top: 12px !important;
    padding-top: 0 !important;
  }

  /* Overrides older mobile page-shell/wall-width locks so affected homepage sections do not show phone-edge white rails. */
  body .page-shell main#top > :is(.page-hero-system, #systems.section, #featured-work, #media.section, #contact.contact-section) {
    box-sizing: border-box !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-right: calc((100% - 100vw) / 2) !important;
    margin-left: calc((100% - 100vw) / 2) !important;
  }

  body .page-shell main.systems-detail-page.systems-detail-page > .hero.page-hero-system.page-hero-system,
  body .page-shell main.featured-page.featured-page > .hero.page-hero-system.page-hero-system,
  body .page-shell main.media-library-page.media-library-page > .hero.page-hero-system.page-hero-system,
  body .page-shell main.anaya-case-study-page.anaya-case-study-page > .hero.page-hero-system.page-hero-system,
  body .page-shell main.archer-page.archer-page > .hero.page-hero-system.page-hero-system {
    box-sizing: border-box !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-right: calc((100% - 100vw) / 2) !important;
    margin-left: calc((100% - 100vw) / 2) !important;
  }

  body .page-shell main#top > #systems.section {
    --systems-responsive-wall-width: 100vw;
  }

  body .page-shell main#top > #media.section {
    --program-media-responsive-wall-width: 100vw;
  }
}

/* Homepage Playing Career/Awards spacing lock: match Systems' internal rhythm while preserving full-bleed carousel peeks. */
body .page-shell main#top #playing-career.playing-career-section {
  --playing-career-gap: 11px;
}

body .page-shell main#top #playing-career .playing-career-carousel {
  background: #ffffff;
}

body .page-shell main#top #playing-career .playing-career-awards-strip {
  --playing-career-awards-gap: 11px;
  --playing-career-awards-shelf-pad: 0px;
  --playing-career-awards-slot-overhang: 0px;
}

body .page-shell main#top #playing-career .playing-career-awards-arrow {
  top: calc(var(--playing-career-awards-shelf-pad) + (var(--playing-career-awards-thumb-height) / 2));
}

/*
  Homepage hover movement lock.
  Older shared hover rules above still add translate/scale/lift effects to generic
  cards, buttons, and carousel arrows. Keep this override after those rules so the
  targeted homepage areas can keep color/filter/shadow feedback without moving.
*/
body .page-shell main#top #systems :is(.system-card, .library-card.system-card):is(:hover, :focus-within),
body .page-shell main#top #featured-work .featured-card:is(:hover, :focus-within),
body .page-shell main#top #media .gallery-card:is(:hover, :focus-visible),
body .page-shell main#top #playing-career .playing-career-track .achievement-card:is(:hover, :focus-visible),
body .page-shell main#top #playing-career .playing-career-award-thumb:is(:hover, :focus-visible) {
  transform: none !important;
}

body .page-shell main#top #systems .system-card:is(:hover, :focus-within) .library-card-media img {
  transform: none !important;
}

body .page-shell main#top :is(#systems, #featured-work, #contact) .button:is(:hover, :focus-visible),
body .page-shell main#top #featured-work .innovation-proof-chips :is(span, a):is(:hover, :focus-visible),
body .page-shell main#top .credentials-card .credential-link-grid .button:is(:hover, :focus-visible) {
  transform: none !important;
}

body .page-shell main#top :is(#featured-work, #contact) .button-primary:is(:hover, :focus-visible),
body .page-shell main#top .credentials-card .credential-link-grid .credential-priority-link:is(:hover, :focus-visible) {
  border-color: #b8441b !important;
  background: #c94d1f !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
}

body .page-shell main#top :is(#featured-work, #contact) .button-secondary:is(:hover, :focus-visible),
body .page-shell main#top .credentials-card .credential-link-grid .button:not(.credential-priority-link):is(:hover, :focus-visible) {
  border-color: #b8441b !important;
  background: rgba(255, 255, 255, 0.62) !important;
  color: #b8441b !important;
  -webkit-text-fill-color: #b8441b !important;
  box-shadow: none !important;
}

body .page-shell main#top #systems .system-card .library-actions .button:nth-child(2),
body .page-shell main#top #systems .system-card:not([data-system-type="dpat"]) .library-actions .button:nth-child(2):not(:first-child) {
  background: #ffffff !important;
}

body .page-shell main#top #systems .system-card .library-actions .button:first-child:is(:hover, :focus-visible),
body .page-shell main#top #systems .system-card .button-small:first-child:is(:hover, :focus-visible) {
  border-color: #b8441b !important;
  background: #c94d1f !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
}

body .page-shell main#top #systems .system-card .library-actions .button:not(:first-child):is(:hover, :focus-visible),
body .page-shell main#top #systems .system-card .button-small:not(:first-child):is(:hover, :focus-visible) {
  border-color: #b8441b !important;
  background: rgba(255, 255, 255, 0.62) !important;
  color: #b8441b !important;
  -webkit-text-fill-color: #b8441b !important;
  box-shadow: none !important;
}

body .page-shell main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .button-primary:is(:hover, :focus-visible) {
  border-color: #b8441b !important;
  background: #c94d1f !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
  transform: none !important;
}

body .page-shell main#top #featured-work .featured-card:is(.featured-card--anaya, .featured-card--archer) .innovation-proof-chips :is(span, a):is(:hover, :focus-visible) {
  border-color: #b8441b !important;
  background: rgba(255, 255, 255, 0.7) !important;
  color: #b8441b !important;
  -webkit-text-fill-color: #b8441b !important;
  box-shadow: none !important;
  transform: none !important;
}

body .page-shell main#top #playing-career .playing-career-arrow:is(:hover, :focus-visible),
body .page-shell main#top #playing-career .playing-career-awards-arrow:is(:hover, :focus-visible) {
  transform: translateY(-50%) !important;
}

body .page-shell main#top #playing-career .playing-career-award-thumb::before {
  content: "";
  position: absolute;
  top: calc(-1 * var(--playing-career-awards-shelf-pad, 0px));
  right: 0;
  bottom: calc(-1 * var(--playing-career-awards-shelf-pad, 0px));
  left: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0);
  opacity: 0;
  pointer-events: none;
  transition: opacity 180ms ease, background-color 180ms ease;
}

body .page-shell main#top #playing-career .playing-career-award-thumb:is(:hover, :focus-visible)::before {
  background: rgba(0, 0, 0, 0.16);
  opacity: 1;
}

/* Shared square-card lock: target pages follow the homepage box/media corner treatment; pills stay rounded in their own rules. */
body .page-shell :is(
  main#top,
  main.systems-detail-page,
  main.featured-page,
  main.media-library-page,
  main.anaya-case-study-page,
  main.archer-page,
  main.contact-page
) :is(
  .section,
  .page-hero-system,
  .hero-portrait-card,
  .hero-portrait-picture,
  .hero-portrait-image,
  .hero-portrait-overlay,
  .system-card,
  .library-card,
  .library-card-media,
  .library-card-media img,
  .system-document-card,
  .system-document-preview,
  .featured-card,
  .featured-pillar,
  .featured-strategy-panel,
  .featured-final-cta,
  .featured-pillar-visual,
  .featured-pillar-visual img,
  .innovation-panel,
  .innovation-thumbnail,
  .innovation-thumbnail img,
  .gallery-card,
  .gallery-media,
  .gallery-card img,
  .media-category-card,
  .media-library-card,
  .media-category-frame,
  .media-library-frame,
  .media-category-frame img,
  .media-library-frame img,
  .case-study-section,
  .case-study-copy,
  .case-study-media,
  .anaya-media-card,
  .anaya-media-frame,
  .anaya-media-frame img,
  .anaya-media-frame video,
  .anaya-media-empty,
  .archer-feature-visual,
  .archer-feature-visual img,
  .archer-feature-card,
  .archer-mini-card,
  .archer-proof-grid article,
  .archer-media-grid figure,
  .archer-media-grid img,
  .archer-media-grid video,
  .archer-final-cta,
  .about-letter-gallery,
  .about-letter-gallery img,
  .contact-materials-card,
  .contact-form-card,
  .document-card,
  .contact-form-card .contact-form,
  .contact-page-grid
) {
  border-radius: 0 !important;
}

/* Shared spacing-line lock: remaining target page grid seams use homepage white; cream pages get their hero/footer canvas below. */
body .page-shell :is(
  main#top,
  main.featured-page,
  main.contact-page
) :is(
  .section:not(.featured-card),
  .library-grid,
  .system-document-grid,
  .featured-page > .featured-strategy-panel,
  .featured-page > .featured-final-cta,
  .media-library-section,
  .media-section-grid,
  .media-preview-carousel,
  .gallery-grid,
  .anaya-gallery-preview,
  .timeline-grid,
  .archer-card-grid,
  .archer-proof-grid,
  .archer-media-grid,
  .about-letter-gallery,
  .contact-page-grid,
  .contact-closeout-grid
) {
  background: #ffffff !important;
  background-image: none !important;
}

/* Cream content-band lock: Systems, Gallery, and Anaya keep cream bands only.
   Systems, Gallery, Anaya, and Archer outer webpage canvases intentionally match the homepage white. */
body .page-shell :is(main.media-library-page > .media-library-section, main.systems-detail-page > .system-detail-section, main.anaya-case-study-page > .section),
body .page-shell main.media-library-page > .media-library-section > :is(.media-section-grid, .media-preview-carousel),
body .page-shell main.systems-detail-page > .system-detail-section > .system-detail-grid {
  background: #fff4e6 !important;
  background-image: none !important;
}

/* Anaya case page wall lock: section bands keep the shell-wall gutter math and now use the shared cream canvas. */
body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.anaya-case-study-page > .section.section {
  --case-page-section-wall-width: 100vw;
  --case-page-section-inline-pad: max(18px, calc((var(--case-page-section-wall-width) - var(--page-shell-width)) / 2 + 18px));
  --case-page-section-rail-gutter: clamp(22px, 5.8vw, 25px);
  --case-page-section-breathing-room: var(--featured-section-padding, 42px);
  box-sizing: border-box;
  width: var(--case-page-section-wall-width) !important;
  max-width: none !important;
  margin-right: calc(50% - (var(--case-page-section-wall-width) * 0.5)) !important;
  margin-left: calc(50% - (var(--case-page-section-wall-width) * 0.5)) !important;
  padding-top: var(--case-page-section-breathing-room) !important;
  padding-right: var(--case-page-section-inline-pad) !important;
  padding-bottom: var(--case-page-section-breathing-room) !important;
  padding-left: var(--case-page-section-inline-pad) !important;
  border: 0 !important;
  background: #fff4e6 !important;
  box-shadow: none !important;
}

/* Anaya journey band rhythm: match Featured proof-section white separators and tan band padding. */
body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.anaya-case-study-page > .anaya-journey-section.section {
  margin-top: var(--featured-section-gap, 12px) !important;
  padding-top: var(--case-page-section-breathing-room) !important;
  padding-bottom: var(--case-page-section-breathing-room) !important;
  background: linear-gradient(180deg, #ead8b8 0%, #f5e7cf 42%, #fff7e8 100%) !important;
  background-color: #f5e7cf !important;
  background-image: linear-gradient(180deg, #ead8b8 0%, #f5e7cf 42%, #fff7e8 100%) !important;
}

@media (min-width: 1025px) {
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.anaya-case-study-page > .section.section {
    /* Match the Archer page wall math: the section band owns the full wall, not a scrollbar-trimmed inset that can expose side hairlines. */
    --case-page-section-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
    --case-page-section-inline-pad: calc(((var(--case-page-section-wall-width) - var(--page-shell-width)) / 2) + var(--home-hero-side-inset, 34px));
    --case-page-section-rail-gutter: clamp(24px, 1.8vw, 31.5px);
  }
}

/* Homepage hero-to-Systems handoff: match the 11px Systems rhythm. */
@media (min-width: 1025px) {
  body .page-shell main#top > #systems.section {
    padding-top: 11px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main#top > #systems.section {
    margin-top: -28px !important;
    padding-top: 11px !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main#top > #systems.section {
    padding-top: 9px !important;
  }
}

/* Shared footer closeout spacing: target pages intentionally follow the homepage footer specs. */
body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome {
  --home-footer-rule-width: 100%;
  margin-top: 0 !important;
  padding-top: 18px !important;
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome .footer-grid {
  position: relative;
  border-top-color: rgba(158, 111, 53, 0.18);
}

/* Systems mobile/tablet footer seam lock: removes the shared 18px cream lead-in so the footer divider starts right after the final media rail. */
@media (max-width: 1024px) {
  /* Anaya mobile/tablet page canvas lock: outer page stays homepage white while content bands keep their own color. */
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.anaya-case-study-page {
    background: #ffffff !important;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main:is(.anaya-case-study-page, .archer-page) > .hero.page-hero-system.page-hero-system {
    border-bottom: 0 !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }

  body .page-shell main.archer-page.archer-page > .hero.page-hero-system.page-hero-system {
    margin-bottom: 0 !important;
  }

  /* Anaya/Archer mobile/tablet footer seam lock: removes the shared cream lead-in so the footer divider starts at the case page wall. */
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main:is(.anaya-case-study-page, .archer-page) > .site-footer.site-chrome {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system {
    border-bottom: 0 !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.systems-detail-page > .site-footer.site-chrome {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

body .page-shell main#top > section#contact.contact-section,
body .page-shell main#top > section#contact.contact-section > .contact-closeout-grid {
  background-color: #ffffff !important;
  background-image: none !important;
}

body .page-shell main#top > section#contact.contact-section {
  --contact-card-title-top-space: 36px;
  --contact-card-bottom-space: var(--contact-card-title-top-space);
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body .page-shell main#top > section#contact.contact-section > .contact-closeout-grid {
  gap: 11px !important;
  row-gap: 11px !important;
  column-gap: 11px !important;
}

/* Home closeout final rhythm: Contact form pills mirror the Credentials title and pill spacing. */
@media (max-width: 430px), (max-height: 430px), (min-width: 768px) and (max-width: 820px) and (max-height: 1180px) {
  body .page-shell main#top > section#contact.contact-section .document-actions {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 1024px) {
  body .page-shell main#top > section#contact.contact-section .contact-form-card .contact-form,
  body .page-shell main#top > section#contact.contact-section .contact-form {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 13px !important;
  }

  body .page-shell main#top > section#contact.contact-section .contact-form-card .contact-name-row,
  body .page-shell main#top > section#contact.contact-section .contact-name-row {
    grid-column: 1 / -1 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 13px !important;
  }

  body .page-shell main#top > section#contact.contact-section .contact-form label:has(textarea),
  body .page-shell main#top > section#contact.contact-section .contact-form .button {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 430px) {
  body .page-shell main#top > section#contact.contact-section .contact-form input,
  body .page-shell main#top > section#contact.contact-section .contact-form select,
  body .page-shell main#top > section#contact.contact-section .contact-form textarea {
    font-size: clamp(10px, 2.9vw, 12px) !important;
    line-height: 1.2 !important;
    padding-inline: 8px !important;
  }

  body .page-shell main#top > section#contact.contact-section .contact-form select {
    padding-right: 22px !important;
  }

  body .page-shell main#top > section#contact.contact-section .contact-form .select-field::after {
    right: 9px !important;
  }
}

@media (min-width: 431px) and (max-width: 549px) {
  body .page-shell main#top > section#contact.contact-section .contact-form input,
  body .page-shell main#top > section#contact.contact-section .contact-form select,
  body .page-shell main#top > section#contact.contact-section .contact-form textarea {
    font-size: clamp(11.5px, 2.6vw, 13.5px) !important;
    line-height: 1.2 !important;
    padding-inline: 10px !important;
  }

  body .page-shell main#top > section#contact.contact-section .contact-form select {
    padding-right: 24px !important;
  }

  body .page-shell main#top > section#contact.contact-section .contact-form .select-field::after {
    right: 10px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main#top > section#contact.contact-section {
    --contact-card-title-top-space: 42px;
    --contact-card-bottom-space: var(--contact-card-title-top-space);
    box-sizing: border-box !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-right: calc((100% - 100vw) / 2) !important;
    margin-left: calc((100% - 100vw) / 2) !important;
  }
}

@media (min-width: 1025px) {
  body .page-shell main#top > section#contact.contact-section {
    --contact-card-title-top-space: 50px;
    --contact-card-bottom-space: var(--contact-card-title-top-space);
  }

  body .page-shell main#top > section#contact.contact-section > .contact-closeout-grid {
    position: relative !important;
  }

  body .page-shell main#top > section#contact.contact-section > .contact-closeout-grid::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    left: calc((100% - 11px) * 0.4) !important;
    width: 11px !important;
    background: #ffffff !important;
    pointer-events: none !important;
  }
}

@media (min-width: 1025px) {
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome {
    --home-footer-rule-width: min(var(--home-section-wall-width, 2560px), calc(100vw - 16px));
    --home-footer-inner-gutter: clamp(68px, 6vw, 132px);
    position: relative;
    background: transparent;
    padding-top: 0 !important;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome::before {
    content: "";
    position: absolute;
    inset-block: 0;
    left: 50%;
    width: var(--home-footer-rule-width);
    background: #fff4e6;
    pointer-events: none;
    transform: translateX(-50%);
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome .footer-grid,
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome .footer-bottom {
    box-sizing: border-box;
    position: relative;
    width: var(--home-footer-rule-width) !important;
    max-width: 2560px;
    padding-right: var(--home-footer-inner-gutter);
    padding-left: var(--home-footer-inner-gutter);
    z-index: 1;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome .footer-grid {
    grid-template-columns: repeat(4, max-content);
    justify-content: space-between;
    column-gap: clamp(48px, 6vw, 128px);
    align-items: start;
    padding-top: 24px;
    border-top: 1px solid rgba(31, 27, 22, 0.08);
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome .footer-links {
    align-self: start;
    min-width: 0;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome .footer-accordion-toggle {
    margin-top: 0;
    color: #8f2d1e;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome .footer-link-list a {
    color: #1f1b16;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome .footer-bottom {
    margin-top: 20px;
    padding-top: 0;
    border-top: 0;
    border-bottom: 0;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .site-footer.site-chrome .footer-copyright {
    color: #6a5f53;
  }
}

/* About footer line lock: removes the shared top cream lead-in so the footer rule starts at the About wall handoff. */
body:has(:is(main#top, main.about-cover-page)) main.about-cover-page .site-footer.site-chrome {
  padding-top: 0 !important;
}

/* Contact shell cap note: the Contact wall owns its 2560px cap so ultra-wide screens match the footer/page-wall width instead of stretching to the full browser. */
body .page-shell main.contact-page {
  --contact-shell-width: min(100vw, 2560px);
  --contact-content-bg: #fff4e6;
  --contact-shell-gutter-top: 0px;
  --contact-shell-gutter-right: 12px;
  --contact-shell-gutter-bottom: 11px;
  --contact-shell-gutter-left: 11px;
  --contact-panel-gap: 11px;
  --contact-row-gap: 12px;
  --contact-action-row-height: 48px;
  --contact-message-row-height: calc((var(--contact-action-row-height) * 3) + (var(--contact-row-gap) * 2));
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  min-width: 0;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  overflow-x: clip;
  background: #ffffff;
}

/* Contact header handoff: matches the homepage/About header by removing the old white top gutter under sticky chrome. */
body .page-shell main.contact-page:not(#top):not(.about-cover-page) > .section.contact-section {
  box-sizing: border-box;
  width: var(--contact-shell-width);
  max-width: 2560px;
  min-width: 0;
  margin: 0 auto !important;
  padding:
    var(--contact-shell-gutter-top)
    var(--contact-shell-gutter-right)
    var(--contact-shell-gutter-bottom) !important;
  padding-left: var(--contact-shell-gutter-left) !important;
  overflow: visible;
  border: 0 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .page-shell main.contact-page .contact-page-grid {
  gap: var(--contact-panel-gap) !important;
  background: #ffffff !important;
  background-image: none !important;
}

body .page-shell main.contact-page .contact-materials-card,
body .page-shell main.contact-page .contact-form-card {
  border: 0 !important;
  border-color: transparent !important;
  background: var(--contact-content-bg) !important;
  background-image: none !important;
  box-shadow: none !important;
}

/* Contact page form card mirrors the homepage Contact Coach Fogarty layout. */
body .page-shell main.contact-page .contact-form-card {
  align-items: stretch !important;
  gap: 20px !important;
}

body .page-shell main.contact-page .contact-form-card .contact-form,
body .page-shell main.contact-page .contact-form,
body .page-shell main.contact-page .contact-name-row,
body .page-shell main.contact-page .contact-method-row {
  display: grid !important;
  width: 100% !important;
}

body .page-shell main.contact-page .contact-form-card .contact-form,
body .page-shell main.contact-page .contact-form {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows:
    var(--contact-action-row-height)
    var(--contact-action-row-height)
    var(--contact-action-row-height)
    var(--contact-message-row-height)
    var(--contact-action-row-height) !important;
  gap: var(--contact-row-gap) 16px !important;
  align-content: start !important;
  margin-top: 4px !important;
}

body .page-shell main.contact-page .contact-name-row,
body .page-shell main.contact-page .contact-method-row {
  grid-column: 1 / -1 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

body .page-shell main.contact-page .contact-form label:has(textarea),
body .page-shell main.contact-page .contact-form .button {
  grid-column: 1 / -1 !important;
}

body .page-shell main.contact-page .contact-form .contact-field-label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

body .page-shell main.contact-page .contact-form input::placeholder,
body .page-shell main.contact-page .contact-form textarea::placeholder {
  color: rgba(31, 27, 22, 0.42) !important;
  font-weight: 400 !important;
  opacity: 1 !important;
}

body .page-shell main.contact-page .contact-form input,
body .page-shell main.contact-page .contact-form select {
  min-height: var(--contact-action-row-height) !important;
  height: var(--contact-action-row-height) !important;
}

body .page-shell main.contact-page .contact-form textarea {
  min-height: var(--contact-message-row-height) !important;
  height: var(--contact-message-row-height) !important;
}

body .page-shell main.contact-page .contact-form .button {
  min-height: var(--contact-action-row-height) !important;
  height: var(--contact-action-row-height) !important;
  margin-top: 0 !important;
}

body .page-shell main.contact-page .contact-document-actions {
  grid-template-rows: repeat(7, var(--contact-action-row-height)) !important;
  gap: var(--contact-row-gap) !important;
  align-content: start !important;
  height: auto !important;
}

body .page-shell main.contact-page .contact-document-actions .button {
  min-height: var(--contact-action-row-height) !important;
  height: var(--contact-action-row-height) !important;
}

/* Contact pill hover lock: mirrors homepage Systems/Featured overlay feedback without movement. */
body .page-shell main.contact-page :is(.contact-document-actions .button, .contact-form .button):is(:hover, :focus-visible) {
  transform: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

body .page-shell main.contact-page :is(.contact-materials-card, .contact-form-card):is(:hover, :focus-within) {
  transform: none !important;
  box-shadow: none !important;
}

body .page-shell main.contact-page :is(.contact-form .button-primary, .contact-document-actions .button-primary):is(:hover, :focus-visible) {
  border-color: #b8441b !important;
  background: #c94d1f !important;
  background-image: none !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body .page-shell main.contact-page .contact-document-actions .button-secondary:is(:hover, :focus-visible) {
  border-color: #b8441b !important;
  background: rgba(255, 255, 255, 0.62) !important;
  background-image: none !important;
  color: #b8441b !important;
  -webkit-text-fill-color: #b8441b !important;
}

/* Contact footer handoff note: mobile/tablet removes the old cream lead-in so the footer break line starts at the shell edge and runs full width. */
body:has(main.contact-page) main.contact-page .site-footer.site-chrome {
  padding-top: 0 !important;
}

@media (min-width: 1025px) {
  body .page-shell main.contact-page {
    --contact-shell-gutter-top: 0px;
    --contact-shell-gutter-right: 12px;
    --contact-shell-gutter-bottom: 11px;
    --contact-shell-gutter-left: 11px;
    --contact-panel-gap: 11px;
  }
}

@media (min-width: 1440px) and (min-height: 860px) {
  body .page-shell main.contact-page {
    /* Contact vertical fill: replaces the old fixed 825px card lock with Systems-style rows that expand only when the viewport has extra height. */
    --contact-action-row-height: clamp(48px, calc((100svh - 540px) / 7), 136px);
    --contact-message-row-height: calc((var(--contact-action-row-height) * 3) + (var(--contact-row-gap) * 2));
  }
}

@media (max-width: 1024px) {
  body .page-shell main.contact-page {
    --contact-shell-gutter-top: 0px;
    --contact-shell-gutter-right: 12px;
    --contact-shell-gutter-bottom: 11px;
    --contact-shell-gutter-left: 11px;
    --contact-panel-gap: 11px;
  }

  body .page-shell main.contact-page:not(#top):not(.about-cover-page) > .section.contact-section {
    padding-top: var(--contact-shell-gutter-top) !important;
    padding-right: var(--contact-shell-gutter-right) !important;
    padding-bottom: var(--contact-shell-gutter-bottom) !important;
    padding-left: var(--contact-shell-gutter-left) !important;
  }

  body .page-shell main.contact-page .contact-page-grid {
    gap: var(--contact-panel-gap) !important;
  }

  body:has(main.contact-page) .page-shell main.contact-page .site-footer.site-chrome {
    padding: 0 0 12px !important;
    padding-top: 0 !important;
  }

  body:has(main.contact-page) .page-shell main.contact-page .site-footer.site-chrome .footer-grid {
    margin-top: -18px !important;
    padding-top: 0 !important;
    border-top: 1px solid rgba(31, 27, 22, 0.14) !important;
  }

  body:has(main.contact-page) .page-shell main.contact-page .site-footer.site-chrome :is(.footer-links, .footer-links-wide),
  body:has(main.contact-page) .page-shell main.contact-page .site-footer.site-chrome .footer-bottom {
    padding-right: 24px;
    padding-left: 24px;
  }
}

@media (max-width: 820px) {
  /* Contact mobile/tablet paired fields note: keep the three short form rows as two-column pairs instead of reverting to the old stacked 1-column mobile layout. */
  body .page-shell main.contact-page .contact-form-card .contact-form,
  body .page-shell main.contact-page .contact-form {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: none !important;
    column-gap: 8px !important;
  }

  body .page-shell main.contact-page .contact-name-row,
  body .page-shell main.contact-page .contact-method-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body .page-shell main.contact-page .contact-form input,
  body .page-shell main.contact-page .contact-form select,
  body .page-shell main.contact-page .contact-form textarea,
  body .page-shell main.contact-page .contact-form .button {
    min-width: 0 !important;
  }
}

@media (max-width: 767px) {
  /* Contact mobile edge-to-edge note: remove the old white shell gutters and tighten field padding so two-up pills stay wide enough for their labels. */
  body .page-shell main.contact-page {
    --contact-shell-gutter-top: 0px;
    --contact-shell-gutter-right: 0px;
    --contact-shell-gutter-bottom: 11px;
    --contact-shell-gutter-left: 0px;
    --contact-panel-gap: 11px;
  }

  body .page-shell main.contact-page .contact-materials-card,
  body .page-shell main.contact-page .contact-form-card {
    padding: 24px 14px !important;
  }

  body .page-shell main.contact-page .contact-form-card .contact-form,
  body .page-shell main.contact-page .contact-form,
  body .page-shell main.contact-page .contact-name-row,
  body .page-shell main.contact-page .contact-method-row {
    column-gap: 6px !important;
  }

  body .page-shell main.contact-page .contact-form input,
  body .page-shell main.contact-page .contact-form select,
  body .page-shell main.contact-page .contact-form textarea {
    padding-right: 12px !important;
    padding-left: 12px !important;
    font-size: 14px !important;
  }

  body .page-shell main.contact-page .contact-form select {
    padding-right: 34px !important;
  }

  body .page-shell main.contact-page .contact-form .select-field::after {
    right: 14px !important;
  }
}

@media (max-width: 620px) {
  body .page-shell main.contact-page {
    --contact-shell-gutter-top: 0px;
    --contact-shell-gutter-right: 0px;
    --contact-shell-gutter-bottom: 11px;
    --contact-shell-gutter-left: 0px;
    --contact-panel-gap: 11px;
  }
}

/* Gallery/Anaya final heading cascade lock: this late scoped rule keeps their eyebrow/title sizing aligned with the Systems detail sections after shared mobile heading overrides. */
body .page-shell main.media-library-page > .media-library-section > .section-heading,
body .page-shell main.anaya-case-study-page > .anaya-journey-section > .section-heading {
  text-align: left !important;
}

body .page-shell main.media-library-page > .media-library-section > .section-heading > .eyebrow,
body .page-shell main.anaya-case-study-page > .anaya-journey-section > .section-heading > .eyebrow {
  margin: 0 0 6px !important;
}

body .page-shell main.media-library-page > .media-library-section > .section-heading > h2,
body .page-shell main.anaya-case-study-page > .anaya-journey-section > .section-heading > h2 {
  margin: 0 !important;
  font-size: var(--section-title-size-desktop, clamp(36px, 2.1vw, 42px)) !important;
  line-height: var(--section-title-line-desktop, 1.05) !important;
}

body .page-shell main.media-library-page > .media-library-section {
  padding-bottom: 12px !important;
}

@media (min-width: 1025px) {
  body .page-shell main.media-library-page > .media-library-section > .section-heading > .eyebrow,
  body .page-shell main.anaya-case-study-page > .anaya-journey-section > .section-heading > .eyebrow {
    margin-bottom: 8px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main.media-library-page > .media-library-section > .section-heading > h2,
  body .page-shell main.anaya-case-study-page > .anaya-journey-section > .section-heading > h2 {
    --mobile-fit-title-size: clamp(28px, 3.6vw, 34px) !important;
    --mobile-fit-title-line: 1.05 !important;
    font-size: clamp(28px, 3.6vw, 34px) !important;
    line-height: 1.05 !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main.media-library-page > .media-library-section > .section-heading > h2,
  body .page-shell main.anaya-case-study-page > .anaya-journey-section > .section-heading > h2 {
    --mobile-fit-title-size: clamp(22px, 6vw, 28px) !important;
    --mobile-fit-title-line: 1.06 !important;
    font-size: clamp(22px, 6vw, 28px) !important;
    line-height: 1.06 !important;
  }
}

/* Featured final heading cascade lock: keep Featured body rhythm after the late Gallery/Anaya heading locks. */
body .page-shell main.featured-page :is(
  .featured-summary-section .section-heading > .eyebrow,
  .featured-pillar-copy > .eyebrow,
  .featured-strategy-panel .section-heading > .eyebrow,
  .featured-final-cta > div > .eyebrow
) {
  margin: 0 0 var(--featured-eyebrow-gap) !important;
}

body .page-shell main.featured-page.featured-page .featured-summary-section .section-heading > .eyebrow,
body .page-shell main.featured-page.featured-page .featured-pillar-copy > .eyebrow,
body .page-shell main.featured-page.featured-page .featured-strategy-panel .section-heading > .eyebrow,
body .page-shell main.featured-page.featured-page .featured-final-cta > div > .eyebrow {
  margin-bottom: var(--featured-eyebrow-gap) !important;
}

@media (min-width: 1025px) {
  html body .page-shell > main.featured-page:not(#top).featured-page .featured-summary-section > .section-heading > p.eyebrow,
  html body .page-shell > main.featured-page:not(#top).featured-page .featured-pillar .featured-pillar-copy > p.eyebrow,
  html body .page-shell > main.featured-page:not(#top).featured-page .featured-strategy-panel > .section-heading > p.eyebrow,
  html body .page-shell > main.featured-page:not(#top).featured-page .featured-final-cta > div > p.eyebrow {
    margin: 0 0 8px !important;
  }
}

body .page-shell main.featured-page :is(
  .featured-final-cta > div > p:not(.eyebrow)
) {
  max-width: min(100%, var(--featured-body-copy-max)) !important;
  margin-top: var(--featured-title-to-body-gap) !important;
}

/* Featured pillar body width reset: removes the old body-copy cap so split-section paragraphs can match the proof-card row width. */
body .page-shell main.featured-page .featured-pillar-copy > p:not(.eyebrow) {
  width: 100% !important;
  max-width: none !important;
  margin-top: var(--featured-title-to-body-gap) !important;
  text-wrap: normal !important;
}

body .page-shell main.featured-page :is(
  .featured-stat-grid,
  .featured-actions,
  .featured-value-grid
) {
  margin-top: var(--featured-body-to-proof-gap) !important;
}

body .page-shell main.featured-page :is(
  .featured-summary-section > .section-heading,
  .featured-strategy-panel > .section-heading
) {
  margin-bottom: var(--featured-body-to-proof-gap) !important;
}

body .page-shell main.featured-page :is(.featured-stat-grid, .featured-value-grid) {
  gap: var(--featured-proof-card-gap) !important;
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}

body .page-shell main.featured-page :is(.featured-stat-card, .featured-value-grid article) {
  height: 100% !important;
}

body .page-shell main.featured-page .featured-stat-card {
  /* Featured proof cards center both label lines so Pacific, Santa Ana, Anaya and Archer share one rectangle-pill treatment. */
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 88px !important; /* Overrides older Featured card min-height rules so narrow desktop proof cards do not become tall tiles. */
  text-align: center !important;
}

body .page-shell main.featured-page .featured-stat-grid + .featured-actions {
  margin-top: var(--featured-proof-to-button-gap) !important;
}

/* Featured proof simplification: cream chip rows and Anaya mini proof cards were removed, so remaining action rows sit directly under body copy or stat cards. */
body .page-shell main.featured-page .featured-actions {
  width: 100%;
}

/* Featured Archer proof parity: Archer now follows the same body -> 2x2 stat cards -> compact action-row rhythm as the other proof sections. */
body .page-shell main.featured-page #the-archer-feature .featured-stat-grid + .featured-actions {
  margin-top: var(--featured-proof-to-button-gap) !important;
}

body .page-shell main.featured-page .featured-pillar-copy > p:not(.eyebrow) + .featured-actions,
body .page-shell main.featured-page .featured-final-cta > div + .featured-actions {
  margin-top: var(--featured-body-to-button-gap) !important;
}

@media (max-width: 767px) {
  body .page-shell main.featured-page :is(
    .featured-summary-section .section-heading > h2,
    .featured-pillar-copy > h2,
    .featured-strategy-panel .section-heading > h2,
    .featured-final-cta h2
  ) {
    --mobile-fit-title-size: clamp(22px, 6vw, 28px) !important;
    --mobile-fit-title-line: 1.06 !important;
    font-size: clamp(22px, 6vw, 28px) !important;
    line-height: 1.06 !important;
  }
}

/* Featured white canvas lock: remove the old gray/warm section spacing so the page matches the other white-wall pages. */
body:has(main.featured-page),
body:has(main.featured-page) .page-shell,
body .page-shell main.featured-page {
  background: #ffffff !important;
}

/* Featured section shell wall: bands touch by default so black/tan transitions do not expose a white spacer line. */
body .page-shell main.featured-page > :is(.featured-summary-section, .featured-pillar, .featured-strategy-panel, .featured-final-cta) {
  --featured-section-wall-width: min(var(--home-section-wall-width, 2560px), calc(100vw - 16px));
  --featured-section-inline-pad: var(--featured-section-padding);
  --featured-section-rail-gutter: var(--featured-section-padding);
  box-sizing: border-box;
  width: var(--featured-section-wall-width) !important;
  max-width: none !important;
  margin: 0 calc(50% - (var(--featured-section-wall-width) * 0.5)) !important;
  margin-top: 0 !important;
  padding-top: var(--featured-section-padding) !important;
  padding-right: var(--featured-section-inline-pad) !important;
  padding-bottom: var(--featured-section-padding) !important;
  padding-left: var(--featured-section-inline-pad) !important;
  border: 0 !important;
  border-radius: 0 !important;
}

/* Featured band joins: no spacer is allowed between Hero/Impact, Impact/Pacific, or Archer/Explore. */
body .page-shell main.featured-page > #featured-work-hero.page-hero-system {
  margin-bottom: 0 !important;
  border-bottom: 0 !important;
}

body .page-shell main.featured-page > #featured-work-hero.page-hero-system + .featured-summary-section {
  margin-top: 0 !important;
}

/* Featured intentional section gaps: only the middle tan proof sections separate. */
body .page-shell main.featured-page > :is(#collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar {
  margin-top: var(--featured-section-gap) !important;
}

body .page-shell main.featured-page > :is(.featured-strategy-panel, .featured-pillar) {
  box-shadow: none !important;
  clip-path: none !important;
}

body .page-shell main.featured-page > :is(.featured-summary-section, .featured-pillar, .featured-strategy-panel, .featured-final-cta) > :is(
  .section-heading,
  .featured-summary-grid,
  .featured-pillar-grid,
  .featured-pillar-grid-reverse,
  .featured-actions,
  .featured-value-grid,
  div,
  p
) {
  margin-right: calc(var(--featured-section-rail-gutter) - var(--featured-section-inline-pad)) !important;
  margin-left: calc(var(--featured-section-rail-gutter) - var(--featured-section-inline-pad)) !important;
}

/* Featured split height lock: media grids stretch with the copy stack so action pills never drop below the bottom image line. */
body .page-shell main.featured-page > .featured-pillar > :is(.featured-pillar-grid, .featured-pillar-grid-reverse) {
  align-items: stretch !important;
}

body .page-shell main.featured-page .featured-pillar-copy {
  display: flex;
  flex-direction: column;
  max-width: min(100%, var(--featured-body-copy-max)) !important;
}

/* Featured pillar template: Pacific defines the shared body/proof/action rhythm; the same rules carry to Santa Ana, Anaya and Archer. */
body .page-shell main.featured-page > .featured-pillar {
  --featured-pillar-content-max: clamp(900px, 50vw, 1180px);
  --featured-pillar-bottom-breathing: 30px;
}

body .page-shell main.featured-page .featured-pillar-copy > p:not(.eyebrow),
body .page-shell main.featured-page .featured-pillar-copy > .featured-stat-grid,
body .page-shell main.featured-page .featured-pillar-copy > .featured-actions {
  width: min(100%, var(--featured-pillar-content-max)) !important;
  max-width: var(--featured-pillar-content-max) !important;
}

/* Featured body/proof width lock: body paragraphs stretch to the same measure as the rectangle proof cards below them. */
body .page-shell main.featured-page .featured-pillar-copy > p:not(.eyebrow) {
  max-width: var(--featured-pillar-content-max) !important;
  text-wrap: normal !important;
}

/* Featured action-pill row: replaces the old content-sized flex pills with equal-width premium pills that span the same row width as the proof cards. */
body .page-shell main.featured-page .featured-pillar-copy > .featured-actions {
  gap: 14px !important;
}

body .page-shell main.featured-page .featured-pillar-copy > .featured-actions .button,
body .page-shell main.featured-page > .featured-final-cta .featured-actions .button-secondary {
  min-height: 50px;
  padding-right: 26px;
  padding-left: 26px;
  border-radius: 999px;
  font-size: 0.95rem;
  font-weight: 700;
  justify-content: center;
  text-align: center;
  white-space: nowrap;
}

body .page-shell main.featured-page > .featured-summary-section > .featured-summary-grid,
body .page-shell main.featured-page > .featured-strategy-panel > .featured-value-grid {
  width: auto !important;
  max-width: none !important;
}

body .page-shell main.featured-page > .featured-pillar > .featured-pillar-grid {
  background: transparent !important;
  background-image: none !important;
}

/* Featured impact summary black band: replaces the old white section rule while leaving the four summary cards and their label pills on their existing colors. */
body .page-shell main.featured-page > .featured-summary-section {
  padding-top: calc(var(--featured-section-padding) * 0.5) !important;
  padding-bottom: calc(var(--featured-section-padding) * 0.5) !important;
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  box-shadow: none !important;
  clip-path: none !important;
  color: #f7f4ef !important;
}

body .page-shell main.featured-page > .featured-final-cta {
  align-items: center !important;
}

/* Featured Coaching Profile uses the full section wall so its title/body align with the value-card row below, instead of inheriting the general body-copy cap. */
body .page-shell main.featured-page > .featured-strategy-panel > .section-heading,
body .page-shell main.featured-page > .featured-strategy-panel > p,
body .page-shell main.featured-page > .featured-final-cta > div,
body .page-shell main.featured-page > .featured-final-cta > div > p {
  width: 100% !important;
  max-width: none !important;
}

body .page-shell main.featured-page > .featured-strategy-panel > .section-heading + p,
body .page-shell main.featured-page > .featured-final-cta > div > h2 + p {
  margin-top: var(--featured-title-to-body-gap) !important;
}

/* Featured summary intro: the moved coaching-profile paragraph sits directly under Four-Part Impact and uses the same body-copy rhythm as the split sections. */
body .page-shell main.featured-page > .featured-summary-section > .section-heading {
  width: 100% !important;
  max-width: none !important;
}

body .page-shell main.featured-page > .featured-summary-section > .section-heading > .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

body .page-shell main.featured-page > .featured-summary-section > .section-heading > h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body .page-shell main.featured-page > .featured-summary-section > .section-heading > h2 + p {
  width: 100% !important;
  max-width: none !important;
  margin-top: calc(var(--featured-title-to-body-gap) * 0.5) !important;
  margin-bottom: 0 !important;
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
  font-size: 16px !important;
  line-height: 1.52 !important;
  text-align: left !important;
}

body .page-shell main.featured-page > .featured-summary-section > .section-heading > h2 + p {
  white-space: nowrap !important;
}

body .page-shell main.featured-page > .featured-summary-section .featured-summary-card {
  min-height: 0 !important;
  padding: 18px 20px 16px !important;
}

body .page-shell main.featured-page > .featured-summary-section .featured-summary-card h3 {
  margin-top: 12px !important;
  margin-bottom: 6px !important;
}

body .page-shell main.featured-page > .featured-summary-section .featured-summary-card > p {
  margin-top: 10px !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  overflow-wrap: normal !important;
  text-wrap: pretty !important;
  white-space: normal !important;
}

html body .page-shell main.featured-page #featured-summary-title,
html body .page-shell main.featured-page > section[id] {
  scroll-margin-top: 120px;
}

@media (min-width: 1025px) and (max-width: 1199px) {
  body .page-shell main.featured-page > .featured-summary-section > .featured-summary-grid {
    gap: 12px !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card {
    min-height: 170px !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card h3 {
    font-size: 21px !important;
    white-space: nowrap !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card > p {
    font-size: 14px !important;
  }
}

@media (min-width: 1501px) and (max-width: 2199px) {
  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card > p {
    font-size: 15px !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main.featured-page > .featured-summary-section > .section-heading > h2 + p {
    font-size: 7px !important;
    line-height: 1.35 !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card > p {
    font-size: 14px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main.featured-page > .featured-summary-section > .section-heading > h2 + p {
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card > p {
    font-size: 16px !important;
  }
}

/* Featured impact summary cards: keep the titles inside the cream rectangle boxes on the original dark heading color, despite the black section band. */
body .page-shell main.featured-page > .featured-summary-section .featured-summary-card h3 {
  color: var(--ink) !important;
  -webkit-text-fill-color: var(--ink) !important;
}

/* Featured black bands: keep black backgrounds inside the shared hero/footer shell wall. */
body .page-shell main.featured-page > :is(.featured-summary-section, .featured-final-cta) {
  margin-top: 0 !important;
  border: 0 !important;
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  box-shadow: none !important;
  clip-path: none !important;
}

body .page-shell main.featured-page > #the-archer-feature.featured-pillar + .featured-final-cta {
  margin-top: 0 !important;
}

@media (min-width: 1025px) {
  body .page-shell main.featured-page > .featured-strategy-panel {
    /* Featured body uses the approved shared page wall width; media balance is controlled inside the split grid, not by narrowing the wall. */
    --featured-section-wall-width: min(var(--home-section-wall-width, 2560px), calc(100vw - 16px));
    --featured-section-inline-pad: var(--featured-section-padding);
    --featured-section-rail-gutter: var(--featured-section-padding);
  }

  /* Featured split sections keep a real bottom landing zone after the 2x2 image grid before the next section begins. */
  body .page-shell main.featured-page > .featured-pillar {
    --featured-pillar-bottom-breathing: 44px;
    padding-bottom: max(var(--featured-section-padding), var(--featured-pillar-bottom-breathing)) !important;
  }

  /* Featured split sections use the wide wall, while desktop range rules below control the paired media/copy balance. */
  body .page-shell main.featured-page > .featured-pillar > .featured-pillar-grid {
    grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.98fr) !important;
  }

  body .page-shell main.featured-page > .featured-pillar > .featured-pillar-grid-reverse {
    grid-template-columns: minmax(420px, 0.98fr) minmax(0, 1.02fr) !important;
  }

  body .page-shell main.featured-page .featured-pillar-visual {
    max-width: 920px;
  }

  body .page-shell main.featured-page .featured-pillar-visual,
  body .page-shell main.featured-page .featured-visual-grid {
    height: 100%;
  }

  body .page-shell main.featured-page .featured-visual-grid {
    aspect-ratio: auto;
    gap: 12px;
  }

  /* Featured base split rail alignment is replaced by scaled desktop-pair rules at 1360px+ so media/copy do not drift apart on wide screens. */
  body .page-shell main.featured-page .featured-pillar-grid:not(.featured-pillar-grid-reverse) .featured-pillar-copy,
  body .page-shell main.featured-page .featured-pillar-grid-reverse .featured-pillar-visual {
    justify-self: start;
  }

  body .page-shell main.featured-page .featured-pillar-grid:not(.featured-pillar-grid-reverse) .featured-pillar-visual,
  body .page-shell main.featured-page .featured-pillar-grid-reverse .featured-pillar-copy {
    justify-self: end;
  }
}

@media (min-width: 1025px) and (max-width: 1500px) {
  /* Narrow desktop proof rhythm: only 1280-style ranges contain proof cards/buttons; larger desktops spread across the shared wall like Systems and Gallery. */
  body .page-shell main.featured-page .featured-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: min(100%, 600px);
    max-width: 600px;
    margin-right: auto !important;
    margin-left: 0 !important;
  }

  body .page-shell main.featured-page .featured-pillar-copy > .featured-actions {
    width: min(100%, 600px);
    max-width: 600px;
    margin-right: auto !important;
    margin-left: 0 !important;
  }

  body .page-shell main.featured-page #anaya-case-study .featured-stat-card {
    padding: 13px 15px !important;
  }

  body .page-shell main.featured-page #anaya-case-study .featured-actions {
    gap: 10px;
  }
}

@media (min-width: 1025px) and (max-width: 1359px) {
  /* Featured 1280 body/proof match: replaces the old 59ch paragraph cap so body text spans the same width as the proof-card group. */
  body .page-shell main.featured-page .featured-pillar-copy > p:not(.eyebrow) {
    width: min(100%, 540px) !important;
    max-width: 540px !important;
  }

  /* Featured 1280 balance: replaces the broad stretch-lock behavior only in narrow desktop so media stays premium without making each section taller than the proof/action stack. */
  body .page-shell main.featured-page > .featured-pillar > :is(.featured-pillar-grid, .featured-pillar-grid-reverse) {
    align-items: start !important;
  }

  body .page-shell main.featured-page .featured-pillar-visual {
    width: min(100%, 546px);
    max-width: 546px;
    height: auto;
  }

  body .page-shell main.featured-page .featured-visual-grid {
    height: auto;
    aspect-ratio: 4 / 3;
  }

  /* Featured 1280 proof containment: replaces the older 600px narrow-desktop proof/action cap with a tighter 2x2 group. */
  body .page-shell main.featured-page .featured-stat-grid {
    width: min(100%, 540px);
    max-width: 540px;
    gap: 12px !important;
    margin-top: 20px !important;
  }

  body .page-shell main.featured-page .featured-stat-card {
    min-height: 76px !important;
    padding: 9px 14px !important;
  }

  body .page-shell main.featured-page #the-archer-feature .featured-stat-card {
    min-height: 76px !important;
    padding-top: 9px !important;
    padding-bottom: 9px !important;
  }

  body .page-shell main.featured-page #the-archer-feature .featured-stat-card span {
    font-size: 15px;
    line-height: 1.15;
  }

  body .page-shell main.featured-page .featured-stat-grid + .featured-actions {
    width: min(100%, 540px);
    max-width: 540px;
    margin-top: 30px !important;
    gap: 14px !important;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: stretch;
  }

  body .page-shell main.featured-page .featured-stat-grid + .featured-actions:has(> :nth-child(4)) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body .page-shell main.featured-page .featured-stat-grid + .featured-actions .button {
    width: 100%;
    min-width: 0;
    min-height: 52px;
    padding-right: 12px;
    padding-left: 12px;
    border-radius: 999px;
    font-size: 0.96rem;
    font-weight: 700;
    white-space: nowrap;
  }

  body .page-shell main.featured-page > .featured-strategy-panel > .section-heading {
    margin-bottom: 0 !important;
  }

  body .page-shell main.featured-page > .featured-strategy-panel > .featured-value-grid {
    margin-top: 24px !important;
  }

  body .page-shell main.featured-page > .featured-strategy-panel .featured-value-grid article {
    min-height: 96px !important;
    padding: 18px 16px !important;
  }
}

@media (min-width: 1360px) {
  /* Featured desktop rail-span pair system: keeps approved gutters locked, removes the old flexible middle spacer, and holds a 60px text/image gap while the real columns stretch to both rails. */
  body .page-shell main.featured-page > .featured-pillar > :is(.featured-pillar-grid, .featured-pillar-grid-reverse) {
    column-gap: 60px !important;
    justify-content: start !important;
    align-items: start !important;
  }

  body .page-shell main.featured-page > .featured-pillar > .featured-pillar-grid {
    grid-template-columns: minmax(0, 1.06fr) minmax(0, 0.94fr) !important;
  }

  body .page-shell main.featured-page > .featured-pillar > .featured-pillar-grid-reverse {
    grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr) !important;
  }

  body .page-shell main.featured-page .featured-pillar-copy {
    width: 100% !important;
    max-width: none !important;
    align-self: stretch !important;
  }

  body .page-shell main.featured-page .featured-pillar-visual {
    width: 100% !important;
    max-width: none !important;
  }

  body .page-shell main.featured-page .featured-pillar-copy,
  body .page-shell main.featured-page .featured-pillar-visual,
  body .page-shell main.featured-page .featured-pillar-grid:not(.featured-pillar-grid-reverse) .featured-pillar-copy,
  body .page-shell main.featured-page .featured-pillar-grid:not(.featured-pillar-grid-reverse) .featured-pillar-visual,
  body .page-shell main.featured-page .featured-pillar-grid-reverse .featured-pillar-copy,
  body .page-shell main.featured-page .featured-pillar-grid-reverse .featured-pillar-visual {
    justify-self: stretch !important;
  }

  body .page-shell main.featured-page .featured-pillar-grid:not(.featured-pillar-grid-reverse) .featured-pillar-visual,
  body .page-shell main.featured-page .featured-pillar-grid-reverse .featured-pillar-copy {
    grid-column: 2;
  }

  body .page-shell main.featured-page .featured-pillar-grid:not(.featured-pillar-grid-reverse) .featured-pillar-copy,
  body .page-shell main.featured-page .featured-pillar-grid-reverse .featured-pillar-visual {
    grid-column: 1;
  }

  body .page-shell main.featured-page .featured-pillar-visual,
  body .page-shell main.featured-page .featured-visual-grid {
    height: auto !important;
  }

  body .page-shell main.featured-page .featured-visual-grid {
    aspect-ratio: 4 / 3 !important;
  }

  body .page-shell main.featured-page .featured-pillar-copy > p:not(.eyebrow),
  body .page-shell main.featured-page .featured-stat-grid,
  body .page-shell main.featured-page .featured-pillar-copy > .featured-actions {
    width: min(100%, var(--featured-pillar-content-max)) !important;
    max-width: var(--featured-pillar-content-max) !important;
  }

  body .page-shell main.featured-page .featured-pillar-copy > p:not(.eyebrow) {
    line-height: 3 !important;
  }

  body .page-shell main.featured-page .featured-stat-card {
    min-height: clamp(76px, 4.8vw, 92px) !important;
    padding: clamp(9px, 0.8vw, 14px) 14px !important;
  }

  body .page-shell main.featured-page .featured-pillar-copy > .featured-stat-grid {
    margin-top: auto !important;
  }

  body .page-shell main.featured-page .featured-pillar-copy > .featured-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: stretch;
    gap: 16px !important;
  }

  body .page-shell main.featured-page .featured-pillar-copy > .featured-actions:has(> :nth-child(4)) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body .page-shell main.featured-page .featured-pillar-copy > .featured-actions .button,
  body .page-shell main.featured-page > .featured-final-cta .featured-actions .button-secondary {
    width: 100%;
    min-width: 0;
    min-height: 60px;
    padding-right: 18px;
    padding-left: 18px;
    border-radius: 999px;
    font-size: 1rem;
    font-weight: 700;
    justify-content: center;
    text-align: center;
    white-space: nowrap;
  }
}

@media (min-width: 1501px) and (max-width: 2199px) {
  /* Featured mid/large desktop proof rhythm: keeps the 1280-style 2x2 rectangle-card stack so copy, cards and actions stay vertically paired with the image grid. */
  body .page-shell main.featured-page .featured-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}

@media (min-width: 2200px) {
  /* Featured ultra-wide media match: replaces the oversized 2560 Featured image tiles with About-page-sized tiles while preserving the section rail and content gutters. */
  /* The !important values in this block override the 1360px+ Featured stretch-rail rule that otherwise forces media to fill the full split column. */
  main.featured-page {
    --featured-title-to-body-gap: 30px;
  }

  body .page-shell main.featured-page > .featured-pillar {
    --featured-pillar-bottom-breathing: 48px;
    --featured-pillar-content-max: 100%;
  }

  body .page-shell main.featured-page .featured-pillar-copy > p:not(.eyebrow) {
    line-height: 40px !important;
  }

  /* Featured ultra-wide split fix: the media column matches the capped image grid, removing the dead middle gap without moving the image wall or text left wall. */
  body .page-shell main.featured-page > .featured-pillar > .featured-pillar-grid {
    grid-template-columns: minmax(0, 1fr) 915px !important;
  }

  body .page-shell main.featured-page > .featured-pillar > .featured-pillar-grid-reverse {
    grid-template-columns: 915px minmax(0, 1fr) !important;
  }

  body .page-shell main.featured-page .featured-pillar-visual {
    max-width: 915px !important;
  }

  /* Ultra-wide media wall alignment: replaces the inward-pull rule so 2x2 image grids sit on the same outside wall as the text/proof system. */
  body .page-shell main.featured-page .featured-pillar-grid:not(.featured-pillar-grid-reverse) .featured-pillar-visual {
    justify-self: end !important;
  }

  body .page-shell main.featured-page .featured-pillar-grid-reverse .featured-pillar-visual {
    justify-self: start !important;
  }

  body .page-shell main.featured-page .featured-visual-grid {
    grid-template-columns: repeat(2, minmax(0, 451.5px));
    grid-template-rows: repeat(2, 233px);
    gap: 12px;
    aspect-ratio: auto !important;
    height: auto !important;
  }

  /* Overrides the older shared Featured 4:3 image rule only inside ultra-wide 2x2 media grids so tile sizing matches the About page at 2560. */
  body .page-shell main.featured-page .featured-visual-grid img {
    height: 100% !important;
    aspect-ratio: auto !important;
  }
}

/* Featured final CTA spacing before footer is normalized with real outside spacing, not extra panel padding. */
body .page-shell main.featured-page > .featured-final-cta {
  margin-bottom: 28px !important;
}

@media (min-width: 768px) {
  body .page-shell main.featured-page > .featured-final-cta {
    margin-bottom: 36px !important;
  }
}

@media (min-width: 1025px) {
  body .page-shell main.featured-page > .featured-final-cta {
    margin-bottom: 44px !important;
  }
}

/* Featured centered proof layout final: clean stack, 20px rhythm, larger media capped at 1600px, stats spanning the same width. */
body .page-shell main.featured-page > .featured-pillar {
  --featured-centered-media-gap: 20px;
  --featured-centered-stat-gap: 20px;
  --featured-centered-media-width: 1600px;
}

body .page-shell main.featured-page > .featured-pillar > :is(.featured-pillar-grid, .featured-pillar-grid-reverse) {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0 !important;
  max-width: 100% !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy {
  display: contents !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > .eyebrow,
body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > h2 {
  width: min(100%, 980px) !important;
  max-width: 980px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  text-align: center !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > p:not(.eyebrow) {
  width: min(100%, var(--featured-centered-media-width)) !important;
  max-width: min(var(--featured-centered-media-width), 138ch) !important;
  margin-top: 12px !important;
  margin-right: auto !important;
  margin-bottom: 0 !important;
  margin-left: auto !important;
  font-size: clamp(16px, 0.82vw, 18px) !important;
  line-height: 1.52 !important;
  text-align: center !important;
  text-wrap: balance !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-pillar-visual {
  order: 4 !important;
  width: min(100%, var(--featured-centered-media-width)) !important;
  max-width: var(--featured-centered-media-width) !important;
  margin: var(--featured-centered-media-gap) auto 0 !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-visual-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1.82 / 1 !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-visual-grid.featured-visual-grid-tall {
  aspect-ratio: 4 / 3 !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-visual-grid img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
}

/* Pacific Academy crop notes:
   Keep the same tile sizing as the other featured grids. Frames stay filled with
   no borders; only crop positions change. The coach's far-left arm is already cut
   off in the source file, so CSS cannot reveal more of that arm. */
body .page-shell main.featured-page > #program-turnaround.featured-pillar .featured-visual-grid img {
  object-fit: cover !important;
  object-position: center bottom !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-stat-grid {
  order: 5 !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  width: min(100%, var(--featured-centered-media-width)) !important;
  max-width: var(--featured-centered-media-width) !important;
  margin-top: var(--featured-centered-stat-gap) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-actions {
  order: 6 !important;
  width: min(100%, var(--featured-centered-media-width)) !important;
  max-width: var(--featured-centered-media-width) !important;
  margin-top: 16px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-actions .button {
  border-color: var(--coach-orange) !important;
  background: var(--coach-orange) !important;
  background-image: none !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body .page-shell main.featured-page > .featured-pillar .featured-actions .button:hover,
body .page-shell main.featured-page > .featured-pillar .featured-actions .button:focus-visible {
  border-color: var(--coach-orange-hover) !important;
  background: var(--coach-orange-hover) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Featured proof control parity: all four proof sections share one rectangle-card row, one action-pill row, and one spacing system. */
body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar {
  --featured-proof-row-gap: 16px;
  --featured-proof-card-height: 92px;
  --featured-action-row-gap: 16px;
  --featured-action-pill-height: 58px;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-grid,
body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions {
  width: min(100%, var(--featured-centered-media-width)) !important;
  max-width: var(--featured-centered-media-width) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: 1fr !important;
  gap: var(--featured-proof-row-gap) !important;
  margin-top: var(--featured-centered-stat-gap) !important;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card {
  display: flex !important;
  min-width: 0 !important;
  min-height: var(--featured-proof-card-height) !important;
  height: 100% !important;
  padding: 14px 18px !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card strong {
  line-height: 1.05 !important;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card span {
  line-height: 1.22 !important;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions {
  display: grid !important;
  gap: var(--featured-action-row-gap) !important;
  margin-top: 16px !important;
  justify-content: stretch !important;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions:has(> :nth-child(4)) {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions .button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: var(--featured-action-pill-height) !important;
  height: var(--featured-action-pill-height) !important;
  padding-right: 18px !important;
  padding-left: 18px !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: nowrap !important;
}

@media (min-width: 2200px) {
  /* Featured ultra-wide pill text: 2560px proof rectangle pills and regular action pills get a 2px type bump. */
  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card strong {
    font-size: 30px !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card span,
  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions .button {
    font-size: 17px !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-grid,
  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions,
  body .page-shell main.featured-page > #the-archer-feature.featured-pillar .featured-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Featured proof section bands: beige backgrounds stay inside the shared hero/footer shell wall. */
body .page-shell main.featured-page > .featured-pillar {
  --featured-section-gap: 12px !important;
  margin-top: 12px !important;
}

body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar {
  background: linear-gradient(180deg, #ead8b8 0%, #f5e7cf 42%, #fff7e8 100%) !important;
  background-color: #f5e7cf !important;
  background-image: linear-gradient(180deg, #ead8b8 0%, #f5e7cf 42%, #fff7e8 100%) !important;
  padding-top: calc(var(--featured-section-padding) + 4px) !important;
}

body .page-shell main.featured-page > .featured-pillar > :is(.featured-pillar-grid, .featured-pillar-grid-reverse),
body .page-shell main.featured-page > .featured-pillar .featured-visual-grid {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

@media (max-width: 767px) {
  body .page-shell main.featured-page > .featured-pillar .featured-visual-grid {
    aspect-ratio: 1 / 1.16 !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main.featured-page :is(
    .featured-summary-section .section-heading > h2,
    .featured-pillar-copy > h2,
    .featured-strategy-panel .section-heading > h2,
    .featured-final-cta h2
  ) {
    --mobile-fit-title-size: clamp(28px, 3.6vw, 34px) !important;
    --mobile-fit-title-line: 1.05 !important;
    font-size: clamp(28px, 3.6vw, 34px) !important;
    line-height: 1.05 !important;
  }
}

/* Featured title one-line lock: replaces older wrap-friendly title rules so body section titles stay on one line across mobile, tablet and desktop. */
body .page-shell main.featured-page :is(
  .featured-summary-section .section-heading > h2,
  .featured-pillar-copy > h2,
  .featured-strategy-panel .section-heading > h2,
  .featured-final-cta h2
) {
  max-width: 100% !important;
  white-space: nowrap !important;
}

@media (max-width: 767px) {
  body .page-shell main.featured-page :is(
    .featured-summary-section .section-heading > h2,
    .featured-pillar-copy > h2,
    .featured-strategy-panel .section-heading > h2,
    .featured-final-cta h2
  ) {
    font-size: clamp(13px, 3.9vw, 18px) !important;
    line-height: 1.05 !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main.featured-page :is(
    .featured-summary-section .section-heading > h2,
    .featured-pillar-copy > h2,
    .featured-strategy-panel .section-heading > h2,
    .featured-final-cta h2
  ) {
    font-size: clamp(20px, 3vw, 28px) !important;
    line-height: 1.05 !important;
  }
}

@media (min-width: 1025px) {
  body .page-shell main.featured-page :is(
    .featured-summary-section .section-heading > h2,
    .featured-pillar-copy > h2,
    .featured-strategy-panel .section-heading > h2,
    .featured-final-cta h2
  ) {
    font-size: clamp(28px, 2.15vw, 37.6px) !important;
    line-height: 1.04 !important;
  }
}

/* Featured final CTA responsive lock: Explore the Work stays black/full-bleed, but title/body wrap on smaller screens instead of colliding with the action pills. */
html body .page-shell main.featured-page > section.featured-final-cta {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px) !important;
  align-items: stretch !important;
  gap: clamp(24px, 4vw, 48px) !important;
  margin-bottom: 0 !important;
  border: 0 !important;
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  box-shadow: none !important;
  clip-path: none !important;
  color: #f7f4ef !important;
}

html body .page-shell main.featured-page > section.featured-final-cta > div {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

html body .page-shell main.featured-page > section.featured-final-cta .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

html body .page-shell main.featured-page > section.featured-final-cta h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow) {
  max-width: none !important;
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
  overflow-wrap: normal !important;
  text-wrap: wrap !important;
  white-space: normal !important;
}

@media (min-width: 1025px) {
  /* Featured Explore body note: desktop copy uses the open text column instead of the old one-line lock. */
  html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow) {
    width: 100% !important;
    max-width: none !important;
    white-space: normal !important;
    text-wrap: wrap !important;
  }
}

@media (max-width: 1024px) {
  html body .page-shell main.featured-page > section.featured-final-cta {
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 24px !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta h2 {
    max-width: 100% !important;
    font-size: clamp(28px, 5.2vw, 38px) !important;
    line-height: 1.05 !important;
    text-wrap: wrap !important;
    white-space: normal !important;
  }

  /* Featured Explore tablet body note: remove the old character cap so the paragraph can spread across available width. */
  html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow) {
    width: 100% !important;
    max-width: none !important;
    font-size: clamp(15px, 2.3vw, 17px) !important;
    line-height: 1.55 !important;
    text-wrap: wrap !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions {
    width: min(100%, 520px) !important;
    grid-template-rows: none !important;
    grid-auto-rows: minmax(48px, auto) !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.featured-page > section.featured-final-cta h2 {
    font-size: clamp(24px, 8.4vw, 34px) !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions {
    width: 100% !important;
  }
}

@media (min-width: 1025px) {
  html body .page-shell main.featured-page > section.featured-final-cta h2 {
    white-space: nowrap !important;
  }
}

html body .page-shell main.featured-page > section.featured-final-cta .featured-actions {
  align-self: stretch !important;
  display: grid !important;
  grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin-top: 0 !important;
}

html body .page-shell main.featured-page > section.featured-final-cta .featured-actions .button {
  height: 100% !important;
  min-height: 0 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body .page-shell main.featured-page > section.featured-final-cta .featured-actions .button-primary {
  border-color: var(--coach-orange) !important;
  background: var(--coach-orange) !important;
  background-image: none !important;
}

html body .page-shell main.featured-page > section.featured-final-cta .featured-actions .button-secondary {
  border-color: rgba(255, 255, 255, 0.28) !important;
  background: rgba(255, 255, 255, 0.08) !important;
  background-image: none !important;
}

html body .page-shell main.featured-page > section.featured-final-cta .featured-actions .button:hover,
html body .page-shell main.featured-page > section.featured-final-cta .featured-actions .button:focus-visible {
  border-color: var(--coach-orange-hover) !important;
  background: var(--coach-orange-hover) !important;
  background-image: none !important;
}

/* Homepage Explore band mirrors the Featured page CTA directly below the hero. */
html body .page-shell main#top > section.home-explore-cta.featured-final-cta {
  --home-explore-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
  --home-explore-padding: var(--featured-section-padding, 42px);
  align-items: stretch !important;
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box;
  clip-path: none !important;
  color: #f7f4ef !important;
  display: grid !important;
  gap: clamp(24px, 4vw, 48px) !important;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px) !important;
  margin: 0 calc(50% - (var(--home-explore-wall-width) * 0.5)) !important;
  max-width: none !important;
  padding: var(--home-explore-padding) !important;
  width: var(--home-explore-wall-width) !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta > div {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta h2 span {
  display: inline !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta p:not(.eyebrow) {
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
  max-width: none !important;
  overflow-wrap: normal !important;
  text-wrap: wrap !important;
  white-space: normal !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions {
  align-self: stretch !important;
  display: grid !important;
  gap: 12px !important;
  grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
  margin-top: 0 !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions .button {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  height: 100% !important;
  min-height: 0 !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions .button-primary {
  background: var(--coach-orange) !important;
  background-image: none !important;
  border-color: var(--coach-orange) !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions .button-secondary {
  background: rgba(255, 255, 255, 0.08) !important;
  background-image: none !important;
  border-color: rgba(255, 255, 255, 0.28) !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions .button:hover,
html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions .button:focus-visible {
  background: var(--coach-orange-hover) !important;
  background-image: none !important;
  border-color: var(--coach-orange-hover) !important;
}

html body .page-shell main#top > section.home-explore-cta.featured-final-cta + #systems.section {
  margin-top: 0 !important;
}

@media (min-width: 1025px) {
  html body .page-shell main#top > section.home-explore-cta.featured-final-cta h2 {
    white-space: nowrap !important;
  }
}

@media (min-width: 1800px) {
  html body .page-shell main#top > section.home-explore-cta.featured-final-cta {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: clamp(24px, 1.8vw, 36px) !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions {
    align-self: center !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: none !important;
    justify-self: stretch !important;
    width: 100% !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions .button {
    height: auto !important;
    min-height: 46px !important;
    width: 100% !important;
  }
}

@media (min-width: 1025px) and (max-width: 1320px) {
  html body .page-shell main#top > section.home-explore-cta.featured-final-cta {
    gap: clamp(16px, 2vw, 24px) !important;
    grid-template-columns: minmax(0, 1fr) minmax(150px, 205px) !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta h2 {
    font-size: clamp(28px, 3.25vw, 38px) !important;
    line-height: 1.05 !important;
    max-width: 100% !important;
    text-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta p:not(.eyebrow) {
    font-size: 16px !important;
    line-height: 1.42 !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions {
    gap: 9px !important;
    grid-template-rows: repeat(3, minmax(38px, 1fr)) !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions .button {
    font-size: 0.78rem !important;
    height: auto !important;
    min-height: 38px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

@media (max-width: 1024px) {
  html body .page-shell main#top > section.home-explore-cta.featured-final-cta {
    align-items: start !important;
    gap: 24px !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta h2 {
    font-size: clamp(22px, 3.35vw, 28px) !important;
    line-height: 1.05 !important;
    max-width: 100% !important;
    text-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta p:not(.eyebrow) {
    font-size: clamp(15px, 2.3vw, 17px) !important;
    line-height: 1.55 !important;
    width: 100% !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions {
    align-self: start !important;
    grid-auto-rows: minmax(48px, auto) !important;
    grid-template-rows: none !important;
    width: min(100%, 520px) !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions .button {
    height: auto !important;
    min-height: 48px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main#top > section.home-explore-cta.featured-final-cta > div {
    width: 100% !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta p:not(.eyebrow) {
    max-width: none !important;
    width: 100% !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions {
    align-self: stretch !important;
    justify-self: stretch !important;
    max-width: none !important;
    width: 100% !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions .button {
    max-width: none !important;
    width: 100% !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main#top > section.home-explore-cta.featured-final-cta h2 {
    font-size: clamp(11.5px, 3.7vw, 30px) !important;
    line-height: 1.08 !important;
    text-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta h2 span {
    display: inline !important;
  }

  html body .page-shell main#top > section.home-explore-cta.featured-final-cta .featured-actions {
    width: 100% !important;
  }
}

@media (max-width: 1024px) {
  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions {
    align-self: start !important;
    width: min(100%, 520px) !important;
    grid-template-rows: none !important;
    grid-auto-rows: minmax(48px, auto) !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions .button {
    min-height: 48px !important;
    height: auto !important;
  }
}

@media (min-width: 1025px) and (max-width: 1320px) {
  /* Featured Explore desktop bridge note: keep the right-side pills, but remove the old balanced copy cap so text uses its full open column. */
  html body .page-shell main.featured-page > section.featured-final-cta {
    grid-template-columns: minmax(0, 1fr) minmax(150px, 205px) !important;
    align-items: stretch !important;
    gap: clamp(16px, 2vw, 24px) !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta h2 {
    max-width: 100% !important;
    font-size: clamp(28px, 3.25vw, 38px) !important;
    line-height: 1.05 !important;
    text-wrap: wrap !important;
    white-space: normal !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow) {
    width: 100% !important;
    max-width: none !important;
    font-size: 16px !important;
    line-height: 1.42 !important;
    text-wrap: wrap !important;
    white-space: normal !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions {
    align-self: stretch !important;
    width: 100% !important;
    grid-template-rows: repeat(3, minmax(38px, 1fr)) !important;
    grid-auto-rows: initial !important;
    gap: 9px !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions .button {
    min-height: 38px !important;
    height: auto !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
    font-size: 0.78rem !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  /* Featured Explore tablet-wide note: keep the pills on the right, but let title/body fill the open text column naturally. */
  html body .page-shell main.featured-page > section.featured-final-cta {
    grid-template-columns: minmax(0, 1fr) minmax(180px, 250px) !important;
    align-items: stretch !important;
    gap: clamp(16px, 2.5vw, 24px) !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta h2 {
    max-width: 100% !important;
    font-size: clamp(28px, 4vw, 36px) !important;
    line-height: 1.05 !important;
    text-wrap: wrap !important;
    white-space: normal !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow) {
    width: 100% !important;
    max-width: none !important;
    font-size: 14.5px !important;
    line-height: 1.48 !important;
    text-wrap: wrap !important;
    white-space: normal !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions {
    align-self: stretch !important;
    width: 100% !important;
    grid-template-rows: repeat(3, minmax(40px, 1fr)) !important;
    grid-auto-rows: initial !important;
    gap: 10px !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions .button {
    min-height: 40px !important;
    height: auto !important;
    padding-right: 14px !important;
    padding-left: 14px !important;
    font-size: 0.82rem !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions {
    width: 100% !important;
  }
}

/* Featured centered heading scale: larger eyebrow/title for the four proof sections, with a tighter 12px title-to-body gap. */
html body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > .eyebrow {
  font-size: 19px !important;
  line-height: 1.1 !important;
}

html body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > h2 {
  font-size: clamp(52px, 3.6vw, 72px) !important;
  line-height: 1.02 !important;
}

/* Featured proof body measure: paragraph copy stays inside the image-grid width and scales from roughly two desktop lines to four mobile lines. */
@media (min-width: 1501px) {
  html body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > p:not(.eyebrow) {
    max-width: min(var(--featured-centered-media-width), 150ch) !important;
    font-size: 18px !important;
    line-height: 1.5 !important;
  }
}

@media (min-width: 1025px) and (max-width: 1500px) {
  html body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > p:not(.eyebrow) {
    max-width: min(100%, 158ch) !important;
    font-size: 17px !important;
    line-height: 1.52 !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > p:not(.eyebrow) {
    max-width: min(100%, 128ch) !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    text-wrap: wrap !important;
  }
}

@media (max-width: 444px) {
  html body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > p:not(.eyebrow) {
    max-width: min(100%, 42ch) !important;
    font-size: 15.5px !important;
    line-height: 1.5 !important;
    text-wrap: pretty !important;
  }
}

/* Featured mid-mobile body note: 445-767px replaces the old narrow cap so proof-section paragraphs can use the available left-to-right section width. */
@media (min-width: 445px) and (max-width: 767px) {
  html body .page-shell main.featured-page > .featured-pillar .featured-pillar-copy > p:not(.eyebrow) {
    width: min(100%, var(--featured-centered-media-width)) !important;
    max-width: 100% !important;
    font-size: 15.5px !important;
    line-height: 1.5 !important;
    text-wrap: wrap !important;
  }
}

/* Featured black bands lock: Impact Summary and Explore stay black inside the shared hero/footer shell wall. */
html body .page-shell main.featured-page > section.section.featured-summary-section,
html body .page-shell main.featured-page > section.featured-final-cta {
  --featured-section-wall-width: min(var(--home-section-wall-width, 2560px), 100vw) !important;
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  box-shadow: none !important;
  clip-path: none !important;
  color: #f7f4ef !important;
  isolation: isolate !important;
  overflow: hidden !important;
  position: relative !important;
}

html body .page-shell main.featured-page > section.section.featured-summary-section::before,
html body .page-shell main.featured-page > section.featured-final-cta::before {
  background: #000000 !important;
  content: "" !important;
  inset: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  z-index: 0 !important;
}

html body .page-shell main.featured-page > section.section.featured-summary-section > *,
html body .page-shell main.featured-page > section.featured-final-cta > * {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 1279px) {
  /* Featured sub-1280 shell lock: all Featured bands use the full hero/footer wall so no left/right hairline appears. */
  html body .page-shell main.featured-page > :is(.featured-summary-section, .featured-pillar, .featured-strategy-panel, .featured-final-cta) {
    --featured-section-wall-width: min(var(--home-section-wall-width, 2560px), 100vw) !important;
    margin-right: calc(50% - (var(--featured-section-wall-width) * 0.5)) !important;
    margin-left: calc(50% - (var(--featured-section-wall-width) * 0.5)) !important;
  }
}

@media (min-width: 1025px) and (max-width: 1279px) {
  /* Featured 1025 shell note: hero and footer use the same full wall as the Featured bands, removing the narrow white edge rails. */
  body .page-shell main.featured-page > .hero.page-hero-system.page-hero-system {
    --home-hero-wall-width: min(var(--home-section-wall-width, 2560px), 100vw) !important;
  }

  body:has(main.featured-page) .site-footer.site-chrome {
    --home-footer-rule-width: min(var(--home-section-wall-width, 2560px), 100vw) !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  /* Featured tablet/mobile type pass: keep walls and image grids untouched while strengthening cards and cleaning pill text. */
  /* Featured Explore tablet body note: this stays uncapped so the CTA paragraph uses the available black-band width. */
  html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow) {
    width: 100% !important;
    max-width: none !important;
    font-size: 14px !important;
    line-height: 1.48 !important;
    text-wrap: wrap !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-card-label {
    font-size: 11px !important;
    line-height: 1.1 !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card h3 {
    font-size: 28px !important;
    line-height: 1.04 !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card strong {
    font-size: 15px !important;
    line-height: 1.18 !important;
    white-space: nowrap !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card > p {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card {
    min-height: 88px !important;
    padding: 14px 16px !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card strong {
    font-size: 24px !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card span {
    font-size: 15px !important;
    line-height: 1.24 !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions .button {
    min-height: 52px !important;
    height: auto !important;
    padding-right: 14px !important;
    padding-left: 14px !important;
    font-size: 15px !important;
    line-height: 1.1 !important;
  }
}

@media (max-width: 767px) {
  /* Featured Explore mobile body note: remove the old 46ch cap so title/body text can use the whole CTA content area. */
  html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow) {
    width: 100% !important;
    max-width: none !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    text-wrap: wrap !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card {
    padding: 18px 20px !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-card-label {
    font-size: 10.5px !important;
    line-height: 1.1 !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card h3 {
    font-size: 25px !important;
    line-height: 1.05 !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card strong {
    font-size: 14px !important;
    line-height: 1.18 !important;
    white-space: nowrap !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card > p {
    font-size: 15.5px !important;
    line-height: 1.42 !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-grid {
    gap: 12px !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card {
    min-height: 82px !important;
    padding: 12px 10px !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card strong {
    font-size: 22px !important;
    line-height: 1.05 !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card span {
    font-size: 13.5px !important;
    line-height: 1.22 !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions {
    gap: 12px !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions:not(:has(> :nth-child(4))) {
    grid-template-columns: minmax(0, min(100%, 320px)) !important;
    justify-content: center !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions:has(> :nth-child(4)) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-actions .button {
    min-height: 50px !important;
    height: auto !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
    font-size: 14px !important;
    line-height: 1.12 !important;
    white-space: normal !important;
  }
}

@media (min-width: 768px) and (max-width: 819px) {
  html body .page-shell main.featured-page > section.featured-final-cta {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  /* Featured Explore narrow-tablet body note: keep the CTA copy full-width here too, replacing the old 62ch lock. */
  html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow) {
    width: 100% !important;
    max-width: none !important;
    text-wrap: wrap !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta .featured-actions {
    width: min(100%, 520px) !important;
  }
}

@media (max-width: 374px) {
  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card h3 {
    font-size: 23px !important;
  }

  body .page-shell main.featured-page > .featured-summary-section .featured-summary-card strong {
    font-size: 13px !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card strong {
    font-size: 20px !important;
  }

  body .page-shell main.featured-page > :is(#program-turnaround, #collegiate-impact, #anaya-case-study, #the-archer-feature).featured-pillar .featured-stat-card span {
    font-size: 12.5px !important;
  }
}

@media (max-width: 767px) {
  /* Featured mobile copy width pass: Explore and Impact intro copy use the full black band content width instead of narrow/tiny line locks. */
  html body .page-shell main.featured-page > section.featured-final-cta > div,
  html body .page-shell main.featured-page > section.featured-final-cta h2,
  html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow),
  body .page-shell main.featured-page > .featured-summary-section > .section-heading,
  body .page-shell main.featured-page > .featured-summary-section > .section-heading > h2 + p {
    width: 100% !important;
    max-width: none !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta h2 {
    white-space: normal !important;
  }

  html body .page-shell main.featured-page > section.featured-final-cta p:not(.eyebrow) {
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  body .page-shell main.featured-page > .featured-summary-section > .section-heading > h2 + p {
    font-size: 11px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
  }

  body .page-shell main.featured-page > .page-hero-system.page-hero-system .hero-portrait-overlay-text a:nth-of-type(5) {
    transform: translateX(6px) !important;
  }
}

/* Archer page shell mirrors Featured: shared full-width wall, matching gutters, band spacing, and body backgrounds. */
body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page {
  --featured-section-gap: 24px;
  --featured-section-padding: clamp(22px, 6vw, 26px);
  background: #ffffff !important;
  background-image: none !important;
}

@media (min-width: 768px) {
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page {
    --featured-section-padding: clamp(28px, 4vw, 34px);
  }
}

@media (min-width: 1025px) {
  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page {
    --featured-section-padding: clamp(34px, 2.15vw, 44px);
  }
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page > .section.section {
  --archer-section-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
  --archer-section-inline-pad: var(--featured-section-padding);
  --archer-section-rail-gutter: var(--featured-section-padding);
  --archer-featured-media-width: min(100%, 1600px);
  --archer-featured-copy-max: min(100%, 760px);
  --archer-featured-gap: clamp(28px, 3.2vw, 60px);
  --archer-featured-proof-gap: 16px;
  --archer-featured-action-height: 58px;
  box-sizing: border-box !important;
  width: var(--archer-section-wall-width) !important;
  max-width: none !important;
  margin: 0 calc(50% - (var(--archer-section-wall-width) * 0.5)) !important;
  margin-top: var(--featured-section-gap) !important;
  padding-top: var(--featured-section-padding) !important;
  padding-right: var(--archer-section-inline-pad) !important;
  padding-bottom: var(--featured-section-padding) !important;
  padding-left: var(--archer-section-inline-pad) !important;
  background: linear-gradient(180deg, #ead8b8 0%, #f5e7cf 42%, #fff7e8 100%) !important;
  background-color: #ead8b8 !important;
  background-image: linear-gradient(180deg, #ead8b8 0%, #f5e7cf 42%, #fff7e8 100%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page > :is(.archer-overview-section, .archer-final-cta).section {
  --archer-section-wall-width: min(var(--home-section-wall-width, 2560px), 100vw) !important;
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  color: #f7f4ef !important;
  isolation: isolate !important;
  overflow: hidden !important;
  position: relative !important;
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page > .archer-overview-section.section {
  margin-top: 0 !important;
}

body .page-shell main.archer-page.archer-page > .hero.page-hero-system.page-hero-system + .archer-overview-section.section {
  margin-top: 0 !important;
}

/* Archer spacer-line note: middle-section dividers must be one solid white line from edge to edge.
   The hero-to-Training Tool handoff follows Featured: connected bands, no spacer border.
   Do not use margin gaps here; gaps expose the cream/black band colors at the ends. */
body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page > :is(.archer-development-section, .archer-portfolio-section).section,
body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page > :is(#photos, #videos, #archer-videos).section {
  margin-top: 0 !important;
  border-top: 12px solid #ffffff !important;
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page > :is(.archer-how-section, .archer-final-cta).section {
  margin-top: 0 !important;
  border-top: 0 !important;
}

body:has(main.archer-page) .page-shell main.archer-page.archer-page > #photos.section {
  padding-top: 0 !important;
}

html body:has(main.archer-page) .page-shell main.archer-page.archer-page > .archer-how-section.section.section {
  padding-top: 44px !important;
}

/* Archer section handoff lock: How It Works -> gallery and gallery -> Portfolio should
   use only the 12px white divider, without extra bottom padding making the spacer look thicker. */
html body:has(main.archer-page) .page-shell main.archer-page.archer-page > :is(.archer-how-section, #photos).section.section {
  padding-bottom: 0 !important;
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page > :is(.archer-overview-section, .archer-final-cta).section::before {
  background: #000000 !important;
  content: "" !important;
  inset: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  z-index: 0 !important;
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.archer-page.archer-page > :is(.archer-overview-section, .archer-final-cta).section > * {
  position: relative !important;
  z-index: 1 !important;
}

body .page-shell main.archer-page.archer-page > .section.section > :is(.section-heading, .archer-split, .archer-card-grid, .archer-proof-grid, .archer-media-grid, .featured-actions),
body .page-shell main.archer-page.archer-page > .section.archer-final-cta > :is(div, .featured-actions) {
  width: auto !important;
  max-width: none !important;
  margin-right: calc(var(--archer-section-rail-gutter) - var(--archer-section-inline-pad)) !important;
  margin-left: calc(var(--archer-section-rail-gutter) - var(--archer-section-inline-pad)) !important;
}

body .page-shell main.archer-page.archer-page .archer-split,
body .page-shell main.archer-page.archer-page .archer-split-reverse {
  gap: var(--archer-featured-gap) !important;
  align-items: center !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .page-shell main.archer-page.archer-page .archer-split {
  grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.98fr) !important;
}

body .page-shell main.archer-page.archer-page .archer-split-reverse {
  grid-template-columns: minmax(420px, 0.98fr) minmax(0, 1.02fr) !important;
}

body .page-shell main.archer-page.archer-page > .archer-overview-section.section {
  --archer-featured-copy-max: 100% !important;
}

body .page-shell main.archer-page.archer-page .archer-section-copy {
  display: flex !important;
  flex-direction: column !important;
  width: min(100%, var(--archer-featured-copy-max)) !important;
  max-width: var(--archer-featured-copy-max) !important;
}

body .page-shell main.archer-page.archer-page .archer-overview-section .archer-section-copy > .eyebrow,
body .page-shell main.archer-page.archer-page .archer-overview-section .archer-section-copy h2,
body .page-shell main.archer-page.archer-page .archer-final-cta > div > .eyebrow,
body .page-shell main.archer-page.archer-page .archer-final-cta h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body .page-shell main.archer-page.archer-page .archer-overview-section .archer-section-copy > .eyebrow,
body .page-shell main.archer-page.archer-page .archer-final-cta > div > .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

/* Archer eyebrow rhythm lock: keep section labels tight to their titles while preserving
   each label's existing page color treatment. */
body .page-shell main.archer-page.archer-page > section.section :is(.section-heading, .archer-section-copy, .archer-final-cta > div) > .eyebrow {
  margin-bottom: 0 !important;
}

body .page-shell main.archer-page.archer-page > section.section > .section-heading > h2 {
  margin-top: 0 !important;
}

body .page-shell main.archer-page.archer-page .archer-overview-section .archer-section-copy > p,
body .page-shell main.archer-page.archer-page .archer-final-cta > div > p {
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
}

body .page-shell main.archer-page.archer-page .archer-section-copy > p:not(.eyebrow),
body .page-shell main.archer-page.archer-page .archer-section-copy > .archer-chip-list,
body .page-shell main.archer-page.archer-page .archer-section-copy > .archer-card-grid,
body .page-shell main.archer-page.archer-page .archer-section-copy > .archer-mini-grid,
body .page-shell main.archer-page.archer-page .archer-section-copy > .archer-proof-grid,
body .page-shell main.archer-page.archer-page .archer-final-cta > div > p,
body .page-shell main.archer-page.archer-page .archer-final-cta > .featured-actions {
  width: 100% !important;
  max-width: none !important;
}

body .page-shell main.archer-page.archer-page .archer-section-copy > p:not(.eyebrow),
body .page-shell main.archer-page.archer-page .archer-final-cta > div > p {
  text-wrap: normal !important;
}

body .page-shell main.archer-page.archer-page .archer-feature-visual,
body .page-shell main.archer-page.archer-page .archer-media-grid figure {
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body .page-shell main.archer-page.archer-page .archer-feature-visual img,
body .page-shell main.archer-page.archer-page .archer-media-grid img,
body .page-shell main.archer-page.archer-page .archer-media-grid video {
  border-radius: 0 !important;
}

body .page-shell main.archer-page.archer-page .archer-overview-section .archer-feature-visual img {
  object-fit: cover !important;
  object-position: center top !important;
}

@media (min-width: 1025px) {
  /* Archer Training Tool image sizing: keep the proof photo present, but make this section shallower than the gallery. */
  body .page-shell main.archer-page.archer-page .archer-overview-section .archer-feature-visual {
    width: min(100%, 780px) !important;
    justify-self: end !important;
  }

  body .page-shell main.archer-page.archer-page .archer-overview-section .archer-feature-visual img {
    aspect-ratio: 16 / 9 !important;
    max-height: 440px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main.archer-page.archer-page .archer-overview-section .archer-feature-visual img {
    aspect-ratio: 16 / 9 !important;
    max-height: 430px !important;
  }
}

/* Archer Visual Gallery hero-rail lock: keep the media wall on the same outer rail as the Archer hero.
   The gallery heading is intentionally removed, so the image grid connects to How It Works with only
   the 12px white divider while preserving 11px internal seams. */
body:has(main.archer-page) .page-shell main.archer-page.archer-page > #photos.section {
  --archer-program-media-gap: 11px;
  box-sizing: border-box !important;
  width: var(--archer-section-wall-width) !important;
  max-width: var(--archer-section-wall-width) !important;
  margin-right: calc(50% - (var(--archer-section-wall-width) * 0.5)) !important;
  margin-left: calc(50% - (var(--archer-section-wall-width) * 0.5)) !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
}

body .page-shell main.archer-page.archer-page > #photos.section::before {
  content: none !important;
}

body .page-shell main.archer-page.archer-page > #photos.section > .section-heading {
  margin-right: 0 !important;
  margin-left: 0 !important;
  padding-right: var(--archer-section-inline-pad) !important;
  padding-left: var(--archer-section-inline-pad) !important;
}

body .page-shell main.archer-page.archer-page > #photos.section > .archer-media-grid {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--archer-program-media-gap) !important;
  row-gap: var(--archer-program-media-gap) !important;
  column-gap: var(--archer-program-media-gap) !important;
  background: #ffffff !important;
}

body .page-shell main.archer-page.archer-page .archer-media-grid figure {
  position: relative !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) !important;
  aspect-ratio: 4 / 3 !important;
}

body .page-shell main.archer-page.archer-page .archer-media-grid figure::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 40%,
      rgba(0, 0, 0, 0.22) 72%,
      rgba(0, 0, 0, 0.66) 100%
    ) !important;
  pointer-events: none !important;
}

body .page-shell main.archer-page.archer-page .archer-feature-visual figcaption {
  background: #ffffff !important;
  box-shadow: none !important;
}

body .page-shell main.archer-page.archer-page .archer-media-grid img,
body .page-shell main.archer-page.archer-page .archer-media-grid video {
  height: 100% !important;
  object-fit: cover !important;
}

/* Archer media title overlay: captions live inside each image/video like the homepage gallery cards.
   No arrow control is added; the grid gap handles spacing between cards. */
body .page-shell main.archer-page.archer-page .archer-media-grid figcaption {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 2 !important;
  min-height: 0 !important;
  padding: 14px 16px !important;
  color: #fff8ec !important;
  background: transparent !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-align: left !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.46) !important;
  pointer-events: none !important;
}

body .page-shell main.archer-page.archer-page .archer-media-grid figure:has(video) figcaption {
  bottom: 42px !important;
}

body .page-shell main.archer-page.archer-page > #photos.section > .archer-media-grid + .archer-media-grid {
  margin-top: var(--archer-program-media-gap) !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main.anaya-case-study-page .anaya-gallery-preview {
    gap: 11px !important;
    row-gap: 11px !important;
    column-gap: 11px !important;
  }

  body .page-shell main.archer-page.archer-page > #photos.section > .archer-media-grid {
    padding-right: 0 !important;
    padding-left: 0 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main.anaya-case-study-page .anaya-gallery-preview {
    gap: 11px !important;
    row-gap: 11px !important;
    column-gap: 11px !important;
  }

  body .page-shell main.archer-page.archer-page > #photos.section > .archer-media-grid {
    padding-right: 0 !important;
    padding-left: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .page-shell main.archer-page.archer-page .archer-media-grid figcaption {
    padding: 12px 14px !important;
  }

  body .page-shell main.archer-page.archer-page .archer-media-grid figure:has(video) figcaption {
    bottom: 38px !important;
  }
}

body .page-shell main.archer-page.archer-page .archer-card-grid,
body .page-shell main.archer-page.archer-page .archer-proof-grid {
  gap: var(--archer-featured-proof-gap) !important;
}

@media (min-width: 1025px) {
  /* Archer portfolio proof pills: desktop keeps the three proof cards in one row directly under the body copy. */
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-split {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-section-copy {
    width: 100% !important;
    max-width: none !important;
  }

  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin-top: 24px !important;
  }
}

body .page-shell main.archer-page.archer-page .archer-how-section .archer-card-grid-four {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body .page-shell main.archer-page.archer-page .archer-feature-card,
body .page-shell main.archer-page.archer-page .archer-mini-card,
body .page-shell main.archer-page.archer-page .archer-proof-grid article {
  display: flex !important;
  min-width: 0 !important;
  min-height: 92px !important;
  height: 100% !important;
  padding: 14px 18px !important;
  border: 1px solid rgba(196, 119, 46, 0.36) !important;
  border-radius: 0 !important;
  background: #fffaf2 !important;
  background-image: none !important;
  box-shadow: none !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

body .page-shell main.archer-page.archer-page .archer-feature-card,
body .page-shell main.archer-page.archer-page .archer-proof-grid article {
  flex-direction: column !important;
}

body .page-shell main.archer-page.archer-page .archer-mini-card h3,
body .page-shell main.archer-page.archer-page .archer-feature-card h3,
body .page-shell main.archer-page.archer-page .archer-proof-grid h3,
body .page-shell main.archer-page.archer-page .archer-feature-card p,
body .page-shell main.archer-page.archer-page .archer-proof-grid p {
  text-align: center !important;
}

/* Archer rectangle-pill parity note:
   How It Works and Portfolio Value share compact card sizing. Body copy stays one line
   and uses breakpoint-sized text so roomy pills read larger while narrow pills step down. */
html body:has(main.archer-page) .page-shell main.archer-page.archer-page > section#player-development.archer-how-section.section.section {
  padding-bottom: 24px !important;
}

body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card,
body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article {
  min-height: 66px !important;
  height: auto !important;
  padding: 8px 14px !important;
  gap: 4px !important;
}

body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card > span,
body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article > span {
  font-size: clamp(22px, 1.85vw, 28px) !important;
  line-height: 0.95 !important;
}

body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card h3,
body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article h3 {
  margin: 0 !important;
  font-size: clamp(16px, 1.28vw, 20px) !important;
  line-height: 1.05 !important;
}

body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card p,
body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article p {
  max-width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-size: clamp(12px, 0.82vw, 18px) !important;
  line-height: 1.3 !important;
  white-space: nowrap !important;
}

body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-section-copy > p:not(.eyebrow) {
  margin-top: 8px !important;
  margin-bottom: 12px !important;
  line-height: 1.24 !important;
}

/* Archer full-width body copy note:
   Portfolio Value and Next Step intro paragraphs use the whole content rail below their titles,
   replacing the old capped Portfolio paragraph and any inherited CTA copy max-width. */
body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-section-copy > p:not(.eyebrow),
body .page-shell main.archer-page.archer-page .archer-final-cta > div > p:not(.eyebrow) {
  width: 100% !important;
  max-width: none !important;
  text-wrap: normal !important;
}

@media (max-width: 1024px) {
  body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card,
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article {
    min-height: 58px !important;
    padding: 7px 12px !important;
    gap: 3px !important;
  }

  body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card > span,
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article > span {
    font-size: clamp(20px, 3.6vw, 27px) !important;
  }

  body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card h3,
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article h3 {
    font-size: clamp(15px, 2.8vw, 20px) !important;
  }

  body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card p,
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article p {
    font-size: clamp(8px, 1.45vw, 10px) !important;
    line-height: 1.3 !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card p,
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article p {
    font-size: clamp(7.5px, 1vw, 8.25px) !important;
  }
}

@media (min-width: 1025px) and (max-width: 1399px) {
  body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card p,
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article p {
    font-size: clamp(10.5px, 0.82vw, 11px) !important;
  }
}

@media (min-width: 1025px) and (max-width: 1279px) {
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article p {
    font-size: clamp(8px, 0.78vw, 8.4px) !important;
  }
}

@media (min-width: 1400px) and (max-width: 1799px) {
  body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card p,
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article p {
    font-size: clamp(12px, 0.72vw, 13px) !important;
  }
}

@media (min-width: 1800px) {
  body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card p,
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article p {
    font-size: clamp(14px, 0.86vw, 18px) !important;
  }
}

@media (max-width: 520px) {
  body .page-shell main.archer-page.archer-page .archer-how-section .archer-feature-card p,
  body .page-shell main.archer-page.archer-page .archer-portfolio-section .archer-proof-grid article p {
    font-size: clamp(7px, 1.95vw, 8.4px) !important;
  }
}

body .page-shell main.archer-page.archer-page .archer-final-cta {
  grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.98fr) !important;
  gap: var(--archer-featured-gap) !important;
}

body .page-shell main.archer-page.archer-page .featured-actions {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  justify-content: stretch !important;
}

body .page-shell main.archer-page.archer-page .featured-actions .button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: var(--archer-featured-action-height) !important;
  height: auto !important;
  padding-right: 18px !important;
  padding-left: 18px !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  justify-content: center !important;
  line-height: 1.14 !important;
  text-align: center !important;
  white-space: normal !important;
}

body .page-shell main.archer-page.archer-page .archer-final-cta .featured-actions .button-secondary {
  border-color: rgba(255, 255, 255, 0.26) !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

@media (min-width: 1025px) {
  /* Archer desktop CTA reset: deletes the old two-column/tall-pill behavior.
     Body copy now spans the available width in 1-2 long lines, with three smaller pills below it. */
  body .page-shell main.archer-page.archer-page .archer-final-cta {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 24px !important;
  }

  body .page-shell main.archer-page.archer-page .archer-final-cta > div,
  body .page-shell main.archer-page.archer-page .archer-final-cta > .featured-actions {
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  body .page-shell main.archer-page.archer-page .archer-final-cta > div > p:not(.eyebrow) {
    max-width: none !important;
    font-size: clamp(20px, 1.55vw, 28px) !important;
    line-height: 1.38 !important;
  }

  body .page-shell main.archer-page.archer-page .archer-final-cta .featured-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  body .page-shell main.archer-page.archer-page .archer-final-cta .featured-actions .button {
    min-height: 48px !important;
    height: 48px !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
    font-size: clamp(14px, 1vw, 17px) !important;
    line-height: 1.08 !important;
  }
}

@media (max-width: 1279px) {
  /* Archer sub-1280 shell lock: mirrors Featured so hero, body bands, and footer do not show side hairlines. */
  html body .page-shell main.archer-page.archer-page > :is(.hero.page-hero-system, .section.section) {
    --home-hero-wall-width: min(var(--home-section-wall-width, 2560px), 100vw) !important;
    --archer-section-wall-width: min(var(--home-section-wall-width, 2560px), 100vw) !important;
    margin-right: calc(50% - (var(--archer-section-wall-width) * 0.5)) !important;
    margin-left: calc(50% - (var(--archer-section-wall-width) * 0.5)) !important;
  }

  html body .page-shell main.archer-page.archer-page > section.hero.page-hero-system.page-hero-system {
    margin-bottom: 0 !important;
  }

  body:has(main.archer-page) .site-footer.site-chrome {
    --home-footer-rule-width: min(var(--home-section-wall-width, 2560px), 100vw) !important;
  }
}

@media (min-width: 2200px) {
  body .page-shell main.archer-page.archer-page > .section.section {
    --archer-featured-media-width: min(100%, 1600px);
    --archer-featured-copy-max: 100%;
    --archer-featured-gap: 60px;
  }

  body .page-shell main.archer-page.archer-page .archer-split {
    grid-template-columns: minmax(0, 1fr) 915px !important;
  }

  body .page-shell main.archer-page.archer-page .archer-split-reverse {
    grid-template-columns: 915px minmax(0, 1fr) !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  body .page-shell main.archer-page.archer-page .archer-split,
  body .page-shell main.archer-page.archer-page .archer-split-reverse,
  body .page-shell main.archer-page.archer-page .archer-final-cta {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .page-shell main.archer-page.archer-page .archer-section-copy {
    width: 100% !important;
    max-width: none !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main.archer-page.archer-page > .section.section {
    --archer-featured-action-height: 52px;
  }

  body .page-shell main.archer-page.archer-page .archer-split,
  body .page-shell main.archer-page.archer-page .archer-split-reverse,
  body .page-shell main.archer-page.archer-page .archer-final-cta,
  body .page-shell main.archer-page.archer-page .archer-how-section .archer-card-grid-four,
  body .page-shell main.archer-page.archer-page .archer-media-grid,
  body .page-shell main.archer-page.archer-page .featured-actions {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body .page-shell main.archer-page.archer-page .archer-section-copy {
    width: 100% !important;
    max-width: none !important;
  }

  body .page-shell main.archer-page.archer-page .featured-actions .button {
    white-space: normal !important;
  }
}

/* Archer hero seam lock: match Featured by connecting the hero directly to the Training Tool band. */
html body .page-shell main.archer-page.archer-page > section.hero.page-hero-system.page-hero-system {
  margin-bottom: 0 !important;
  border-bottom: 0 !important;
}

@media (min-width: 1720px) and (max-width: 2199px) {
  /* Archer wide-desktop logo overlay: shorter bar, lowered slightly so it clears the Archer wordmark. */
  html body .page-shell main.archer-page.archer-page > section.hero.page-hero-system.page-hero-system {
    --hero-overlay-bottom: 8px;
    --hero-overlay-gap: 4px;
    --hero-overlay-padding-block-start: 7px;
    --hero-overlay-padding-block-end: 7px;
    --hero-overlay-title-size: 10.8px;
    --hero-overlay-link-size: 12px;
    --hero-overlay-link-line: 1.05;
  }
}

html body .page-shell main.archer-page.archer-page > section.hero.page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-main {
  font-size: clamp(1.08rem, 2.1cqw, 1.62rem) !important;
  line-height: 1.02 !important;
}

html body .page-shell main.archer-page.archer-page > section.hero.page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-sub {
  font-size: clamp(0.7rem, 1.1cqw, 0.9rem) !important;
  line-height: 1.08 !important;
}

@media (min-width: 1025px) and (max-width: 1360px) {
  html body .page-shell main.archer-page.archer-page > section.hero.page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-main {
    font-size: clamp(17px, 1.75cqw, 20px) !important;
  }
}

@media (max-width: 767px), (max-width: 932px) and (max-height: 430px) {
  html body .page-shell main.archer-page.archer-page > section.hero.page-hero-system.page-hero-system > .hero-pill-system > .hero-pill > .hero-pill-main {
    font-size: clamp(11px, 3.2cqw, 13px) !important;
  }
}

/* Archer title fit lock: old balanced-wrap title rules are removed for this page.
   Keep h2/h3 titles on one line by assigning range-specific type sizes instead of clipping overflow. */
html body .page-shell main.archer-page.archer-page .archer-section-copy > h2,
html body .page-shell main.archer-page.archer-page .archer-final-cta h2,
html body .page-shell main.archer-page.archer-page .section-heading > h2,
html body .page-shell main.archer-page.archer-page .archer-feature-card h3,
html body .page-shell main.archer-page.archer-page .archer-proof-grid h3,
html body .page-shell main.archer-page.archer-page .archer-mini-card h3 {
  max-width: 100% !important;
  overflow: visible !important;
  text-wrap: normal !important;
  white-space: nowrap !important;
}

html body .page-shell main.archer-page.archer-page .archer-section-copy > h2,
html body .page-shell main.archer-page.archer-page .archer-final-cta h2,
html body .page-shell main.archer-page.archer-page .section-heading > h2 {
  font-size: 16px !important;
  line-height: 1.04 !important;
}

body:has(main.archer-page) .page-shell main.archer-page.archer-page > section.section > .section-heading > h2 {
  --mobile-fit-title-size: 16px !important;
  --mobile-fit-title-line: 16.64px !important;
  --type-heading-white-space: nowrap !important;
  font-size: 16px !important;
  line-height: 1.04 !important;
  max-width: 100% !important;
  overflow: visible !important;
  text-wrap: normal !important;
  white-space: nowrap !important;
}

body .page-shell main.archer-page.archer-page:not(#top) > section.section > .section-heading > h2 {
  --mobile-fit-title-size: 16px !important;
  --mobile-fit-title-line: 16.64px !important;
  --type-heading-white-space: nowrap !important;
  font-size: 16px !important;
  line-height: 1.04 !important;
  white-space: nowrap !important;
}

@media (max-width: 374px) {
  body:has(main.archer-page) .page-shell main.archer-page.archer-page > section.section > .section-heading > h2,
  body .page-shell main.archer-page.archer-page:not(#top) > section.section > .section-heading > h2 {
    --mobile-fit-title-size: 15px !important;
    --mobile-fit-title-line: 15.6px !important;
    font-size: 15px !important;
  }
}

html body .page-shell main.archer-page.archer-page .archer-feature-card h3,
html body .page-shell main.archer-page.archer-page .archer-proof-grid h3,
html body .page-shell main.archer-page.archer-page .archer-mini-card h3 {
  font-size: 15px !important;
  line-height: 1.04 !important;
}

@media (min-width: 430px) and (max-width: 767px) {
  html body .page-shell main.archer-page.archer-page .archer-section-copy > h2,
  html body .page-shell main.archer-page.archer-page .archer-final-cta h2,
  html body .page-shell main.archer-page.archer-page .section-heading > h2,
  body:has(main.archer-page) .page-shell main.archer-page.archer-page > section.section > .section-heading > h2 {
    --mobile-fit-title-size: 18px !important;
    --mobile-fit-title-line: 18.72px !important;
    font-size: 18px !important;
  }

  body .page-shell main.archer-page.archer-page:not(#top) > section.section > .section-heading > h2 {
    --mobile-fit-title-size: 18px !important;
    --mobile-fit-title-line: 18.72px !important;
    font-size: 18px !important;
  }
}

@media (min-width: 600px) and (max-width: 767px) {
  html body .page-shell main.archer-page.archer-page .archer-section-copy > h2,
  html body .page-shell main.archer-page.archer-page .archer-final-cta h2,
  html body .page-shell main.archer-page.archer-page .section-heading > h2,
  body:has(main.archer-page) .page-shell main.archer-page.archer-page > section.section > .section-heading > h2 {
    --mobile-fit-title-size: 29px !important;
    --mobile-fit-title-line: 30.16px !important;
    font-size: 29px !important;
  }

  body .page-shell main.archer-page.archer-page:not(#top) > section.section > .section-heading > h2 {
    --mobile-fit-title-size: 29px !important;
    --mobile-fit-title-line: 30.16px !important;
    font-size: 29px !important;
  }

  html body .page-shell main.archer-page.archer-page .archer-feature-card h3,
  html body .page-shell main.archer-page.archer-page .archer-proof-grid h3,
  html body .page-shell main.archer-page.archer-page .archer-mini-card h3 {
    font-size: 19px !important;
  }
}

@media (min-width: 768px) {
  html body .page-shell main.archer-page.archer-page .archer-section-copy > h2,
  html body .page-shell main.archer-page.archer-page .archer-final-cta h2,
  html body .page-shell main.archer-page.archer-page .section-heading > h2,
  body:has(main.archer-page) .page-shell main.archer-page.archer-page > section.section > .section-heading > h2 {
    --mobile-fit-title-size: 31px !important;
    --mobile-fit-title-line: 32.24px !important;
    font-size: 31px !important;
  }

  body .page-shell main.archer-page.archer-page:not(#top) > section.section > .section-heading > h2 {
    --mobile-fit-title-size: 31px !important;
    --mobile-fit-title-line: 32.24px !important;
    font-size: 31px !important;
  }

  html body .page-shell main.archer-page.archer-page .archer-feature-card h3,
  html body .page-shell main.archer-page.archer-page .archer-proof-grid h3,
  html body .page-shell main.archer-page.archer-page .archer-mini-card h3 {
    font-size: 18px !important;
  }
}

@media (min-width: 1025px) {
  html body .page-shell main.archer-page.archer-page .archer-split .archer-section-copy h2 {
    font-size: 24px !important;
  }
}

@media (min-width: 1180px) {
  html body .page-shell main.archer-page.archer-page .archer-split .archer-section-copy h2 {
    font-size: 30px !important;
  }
}

@media (min-width: 1440px) {
  html body .page-shell main.archer-page.archer-page .archer-split .archer-section-copy h2 {
    font-size: 34px !important;
  }
}

/* Systems footer CTA mirrors the Featured page Explore band. */
html body .page-shell main.systems-detail-page > section.featured-final-cta {
  --systems-cta-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
  --systems-cta-padding: clamp(34px, 2.15vw, 44px);
  align-items: stretch !important;
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box;
  clip-path: none !important;
  color: #f7f4ef !important;
  display: grid !important;
  gap: clamp(24px, 4vw, 48px) !important;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px) !important;
  isolation: isolate !important;
  margin: 0 calc(50% - (var(--systems-cta-wall-width) * 0.5)) 0 !important;
  max-width: none !important;
  overflow: hidden !important;
  padding: var(--systems-cta-padding) !important;
  position: relative !important;
  width: var(--systems-cta-wall-width) !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta::before {
  background: #000000 !important;
  content: "" !important;
  inset: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  z-index: 0 !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta > * {
  position: relative !important;
  z-index: 1 !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta > div {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  line-height: 1.03 !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta p:not(.eyebrow) {
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
  line-height: 1.52 !important;
  margin-top: 14px !important;
  max-width: none !important;
  overflow-wrap: normal !important;
  text-wrap: wrap !important;
  white-space: normal !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions {
  align-self: stretch !important;
  display: grid !important;
  gap: 12px !important;
  grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
  margin-top: 0 !important;
  min-width: 0 !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions .button {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  height: 100% !important;
  min-height: 0 !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions .button-primary {
  background: var(--coach-orange) !important;
  background-image: none !important;
  border-color: var(--coach-orange) !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions .button-secondary {
  background: rgba(255, 255, 255, 0.08) !important;
  background-image: none !important;
  border-color: rgba(255, 255, 255, 0.28) !important;
}

html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions .button:hover,
html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions .button:focus-visible {
  background: var(--coach-orange-hover) !important;
  background-image: none !important;
  border-color: var(--coach-orange-hover) !important;
}

@media (min-width: 1025px) {
  html body .page-shell main.systems-detail-page > section.featured-final-cta h2 {
    font-size: clamp(2rem, 1.8vw, 2.5rem) !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 1025px) and (max-width: 1320px) {
  html body .page-shell main.systems-detail-page > section.featured-final-cta {
    gap: clamp(16px, 2vw, 24px) !important;
    grid-template-columns: minmax(0, 1fr) minmax(150px, 205px) !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta h2 {
    font-size: clamp(28px, 3.25vw, 38px) !important;
    line-height: 1.05 !important;
    max-width: 100% !important;
    text-wrap: wrap !important;
    white-space: normal !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta p:not(.eyebrow) {
    font-size: 16px !important;
    line-height: 1.42 !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions {
    gap: 9px !important;
    grid-template-rows: repeat(3, minmax(38px, 1fr)) !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions .button {
    font-size: 0.78rem !important;
    height: auto !important;
    min-height: 38px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main.systems-detail-page > section.featured-final-cta {
    gap: clamp(16px, 2.5vw, 24px) !important;
    grid-template-columns: minmax(0, 1fr) minmax(180px, 250px) !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta h2 {
    font-size: clamp(28px, 4vw, 36px) !important;
    line-height: 1.05 !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta p:not(.eyebrow) {
    font-size: 14.5px !important;
    line-height: 1.48 !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions {
    gap: 10px !important;
    grid-template-rows: repeat(3, minmax(40px, 1fr)) !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions .button {
    font-size: 0.82rem !important;
    height: auto !important;
    min-height: 40px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.systems-detail-page > section.featured-final-cta {
    align-items: start !important;
    gap: 24px !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta h2 {
    font-size: clamp(24px, 8.4vw, 34px) !important;
    line-height: 1.05 !important;
    max-width: 100% !important;
    text-wrap: wrap !important;
    white-space: normal !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta p:not(.eyebrow) {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions {
    align-self: start !important;
    grid-auto-rows: minmax(48px, auto) !important;
    grid-template-rows: none !important;
    width: 100% !important;
  }

  html body .page-shell main.systems-detail-page > section.featured-final-cta .featured-actions .button {
    height: auto !important;
    min-height: 48px !important;
  }
}

/* Systems Impact Summary mirrors the Featured black summary band below the hero. */
html body .page-shell main.systems-detail-page > section.section.featured-summary-section {
  --featured-section-padding: clamp(34px, 2.15vw, 44px);
  --featured-section-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
  --featured-section-inline-pad: clamp(18px, 3vw, 56px);
  --featured-section-rail-gutter: var(--featured-section-inline-pad);
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box;
  clip-path: none !important;
  color: #f7f4ef !important;
  isolation: isolate !important;
  margin: 0 calc(50% - (var(--featured-section-wall-width) * 0.5)) !important;
  max-width: none !important;
  overflow: hidden !important;
  padding-top: calc(var(--featured-section-padding) * 0.5) !important;
  padding-right: var(--featured-section-inline-pad) !important;
  padding-bottom: calc(var(--featured-section-padding) * 0.5) !important;
  padding-left: var(--featured-section-inline-pad) !important;
  position: relative !important;
  width: var(--featured-section-wall-width) !important;
}

html body .page-shell main.systems-detail-page > section.section.featured-summary-section::before {
  background: #000000 !important;
  content: "" !important;
  inset: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  z-index: 0 !important;
}

html body .page-shell main.systems-detail-page > section.section.featured-summary-section > * {
  position: relative !important;
  z-index: 1 !important;
}

html body .page-shell main.systems-detail-page > section.section.featured-summary-section > :is(.section-heading, .featured-summary-grid) {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

html body .page-shell main.systems-detail-page > .hero.page-hero-system + .featured-summary-section {
  margin-top: 0 !important;
}

html body .page-shell main.systems-detail-page > .featured-summary-section + .system-detail-section {
  margin-top: 0 !important;
}

html body .page-shell main.systems-detail-page > .featured-summary-section > .section-heading {
  width: 100% !important;
  max-width: none !important;
  margin-bottom: 18px !important;
}

html body .page-shell main.systems-detail-page > .featured-summary-section > .section-heading > .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

html body .page-shell main.systems-detail-page > .featured-summary-section > .section-heading > h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body .page-shell main.systems-detail-page > .featured-summary-section > .section-heading > h2 + p {
  width: 100% !important;
  max-width: none !important;
  margin-top: calc(var(--featured-title-to-body-gap, 14px) * 0.5) !important;
  margin-bottom: 0 !important;
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
  font-size: 16px !important;
  line-height: 1.52 !important;
  text-align: left !important;
  white-space: nowrap !important;
}

html body .page-shell main.systems-detail-page > .featured-summary-section > .featured-summary-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  justify-content: stretch !important;
  gap: clamp(12px, 1.25vw, 20px) !important;
  width: 100% !important;
  max-width: none !important;
}

html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card {
  border-radius: 0 !important;
  justify-content: flex-start !important;
  min-height: 0 !important;
  padding: clamp(16px, 1.2vw, 20px) !important;
}

html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card h3 {
  margin-top: 0 !important;
  margin-bottom: 6px !important;
  color: var(--ink) !important;
  font-size: clamp(1.22rem, 0.9vw + 0.84rem, 1.95rem) !important;
  line-height: 1.08 !important;
  -webkit-text-fill-color: var(--ink) !important;
}

html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card > p {
  margin-top: 8px !important;
  font-size: clamp(0.94rem, 0.24vw + 0.86rem, 1.12rem) !important;
  line-height: 1.38 !important;
  overflow-wrap: normal !important;
  text-wrap: pretty !important;
  white-space: normal !important;
}

@media (max-width: 1024px) {
  html body .page-shell main.systems-detail-page > section.section.featured-summary-section {
    --featured-section-inline-pad: clamp(14px, 4vw, 28px);
    --featured-section-rail-gutter: var(--featured-section-inline-pad);
    padding-right: var(--featured-section-inline-pad) !important;
    padding-left: var(--featured-section-inline-pad) !important;
  }

  html body .page-shell main.systems-detail-page > .featured-summary-section > .featured-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    justify-content: stretch !important;
    gap: clamp(10px, 2.5vw, 14px) !important;
  }
}

@media (min-width: 1025px) and (max-width: 1199px) {
  html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card h3 {
    font-size: 21px !important;
  }

  html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card > p {
    font-size: 14px !important;
  }
}

@media (min-width: 1501px) and (max-width: 2199px) {
  html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card > p {
    font-size: 15px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main.systems-detail-page > .featured-summary-section > .section-heading > h2 + p {
    font-size: 12px !important;
    line-height: 1.4 !important;
    white-space: normal !important;
  }

  html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card > p {
    font-size: 15px !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.systems-detail-page > .featured-summary-section > .section-heading > h2 + p {
    font-size: 11px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
  }

  html body .page-shell main.systems-detail-page > .featured-summary-section > .featured-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-content: stretch !important;
  }

  html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card {
    padding: 12px !important;
  }

  html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card h3 {
    font-size: clamp(16px, 4.1vw, 19px) !important;
    line-height: 1.08 !important;
  }

  html body .page-shell main.systems-detail-page > .featured-summary-section .featured-summary-card > p {
    font-size: clamp(11px, 3.25vw, 13px) !important;
    line-height: 1.34 !important;
  }
}

/* Anaya Impact Summary mirrors the Featured/Systems black band below the hero. */
html body .page-shell main.anaya-case-study-page > section.section.anaya-summary-section {
  --featured-section-padding: clamp(34px, 2.15vw, 44px);
  --featured-section-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
  --featured-section-inline-pad: clamp(18px, 2.35vw, 40px);
  --featured-section-rail-gutter: var(--featured-section-inline-pad);
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box;
  clip-path: none !important;
  color: #f7f4ef !important;
  isolation: isolate !important;
  margin: 0 calc(50% - (var(--featured-section-wall-width) * 0.5)) !important;
  max-width: none !important;
  overflow: hidden !important;
  padding-top: calc(var(--featured-section-padding) * 0.5) !important;
  padding-right: var(--featured-section-inline-pad) !important;
  padding-bottom: calc(var(--featured-section-padding) * 0.5) !important;
  padding-left: var(--featured-section-inline-pad) !important;
  position: relative !important;
  width: var(--featured-section-wall-width) !important;
}

html body .page-shell main.anaya-case-study-page > section.section.anaya-summary-section::before {
  background: #000000 !important;
  content: "" !important;
  inset: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  z-index: 0 !important;
}

html body .page-shell main.anaya-case-study-page > section.section.anaya-summary-section > * {
  position: relative !important;
  z-index: 1 !important;
}

html body .page-shell main.anaya-case-study-page > section.section.anaya-summary-section > :is(.anaya-summary-feature, .section-heading, .featured-summary-grid) {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

/* Anaya Impact Summary feature note: Archer-style split belongs here, not in the page hero. */
html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .anaya-summary-feature {
  display: grid !important;
  grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.98fr) !important;
  gap: var(--archer-featured-gap, clamp(28px, 4vw, 72px)) !important;
  align-items: center !important;
  margin-bottom: clamp(18px, 1.65vw, 28px) !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .anaya-summary-feature > .section-heading {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  text-align: left !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .anaya-summary-feature > .section-heading > .eyebrow {
  margin-bottom: 0 !important;
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .anaya-summary-feature > .section-heading > h2 {
  margin-top: 0 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .anaya-summary-feature > .section-heading > h2 + p {
  width: 100% !important;
  max-width: none !important;
  margin-top: calc(var(--featured-title-to-body-gap, 14px) * 0.5) !important;
  margin-bottom: 0 !important;
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
  font-size: 16px !important;
  line-height: 1.52 !important;
  text-align: left !important;
  text-wrap: wrap !important;
  white-space: normal !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section .anaya-summary-actions {
  margin-top: clamp(16px, 1.4vw, 24px) !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .anaya-summary-feature > .anaya-summary-visual {
  justify-self: end !important;
  width: min(100%, 780px) !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .anaya-summary-feature > .anaya-summary-visual img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 2 !important;
  max-height: 500px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 0 !important;
}

@media (max-width: 1024px) {
  html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .anaya-summary-feature {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .anaya-summary-feature > .anaya-summary-visual {
    justify-self: stretch !important;
    width: 100% !important;
  }
}

html body .page-shell main.anaya-case-study-page > .hero.page-hero-system + .anaya-summary-section {
  margin-top: 0 !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section + .anaya-journey-section {
  border-top: 0 !important;
  margin-top: 0 !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .section-heading {
  width: 100% !important;
  max-width: none !important;
  margin-bottom: 18px !important;
  text-align: left !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .section-heading > .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .section-heading > h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .section-heading > h2 + p {
  width: 100% !important;
  max-width: none !important;
  margin-top: calc(var(--featured-title-to-body-gap, 14px) * 0.5) !important;
  margin-bottom: 0 !important;
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
  font-size: 16px !important;
  line-height: 1.52 !important;
  text-align: left !important;
  text-wrap: wrap !important;
  white-space: normal !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .featured-summary-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  justify-content: stretch !important;
  gap: clamp(12px, 1.25vw, 20px) !important;
  width: 100% !important;
  max-width: none !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card {
  border-radius: 0 !important;
  justify-content: flex-start !important;
  min-height: 0 !important;
  padding: clamp(16px, 1.2vw, 20px) !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card h3 {
  margin-top: 0 !important;
  margin-bottom: 3px !important;
  color: var(--ink) !important;
  font-size: clamp(1.12rem, 0.72vw + 0.84rem, 1.72rem) !important;
  line-height: 1.08 !important;
  -webkit-text-fill-color: var(--ink) !important;
}

html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card > p {
  margin-top: 4px !important;
  font-size: clamp(0.94rem, 0.24vw + 0.86rem, 1.12rem) !important;
  line-height: 1.38 !important;
  overflow-wrap: normal !important;
  text-wrap: pretty !important;
  white-space: normal !important;
}

html body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) .page-shell main.anaya-case-study-page > section.section.anaya-summary-section + section.section.anaya-journey-section {
  border-top: 0 !important;
  margin-top: 0 !important;
}

/* Anaya media wall parity with the Archer gallery:
   the section owns the cream wall, while the media rail expands back across
   the section padding. Card/frame wrappers stay transparent so no old panel
   line can appear between the image edge and the wall. */
body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) > .anaya-gallery-block {
  --anaya-program-media-gap: 11px;
  box-sizing: border-box !important;
  width: calc(100% + (var(--case-page-section-inline-pad) * 2)) !important;
  max-width: none !important;
  margin-top: var(--featured-section-gap, 12px) !important;
  margin-right: calc(var(--case-page-section-inline-pad) * -1) !important;
  margin-left: calc(var(--case-page-section-inline-pad) * -1) !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-gallery-preview {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--anaya-program-media-gap) !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-card {
  position: relative !important;
  display: block !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: 4 / 3 !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  transform: none !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-card::after {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 42%,
      rgba(0, 0, 0, 0.24) 70%,
      rgba(0, 0, 0, 0.62) 100%
    ) !important;
  content: "" !important;
  pointer-events: none !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-frame {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-frame img,
body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-frame video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 0 !important;
  filter: brightness(0.96) !important;
  object-fit: cover !important;
  object-position: center center !important;
  transition:
    filter 180ms ease,
    transform 220ms ease !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-card:is(:hover, :focus-visible) .anaya-media-frame img,
body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-card:is(:hover, :focus-visible) .anaya-media-frame video {
  filter: brightness(1.04) !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-kind {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  z-index: 2 !important;
  width: auto !important;
  height: auto !important;
  padding: 5px 9px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--red), #c4542c) !important;
  color: #ffffff !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  pointer-events: none !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-caption {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  min-height: 0 !important;
  padding: 14px 14px 14px !important;
  border: 0 !important;
  background: transparent !important;
  color: #fff8ec !important;
  line-height: 1.1 !important;
  text-align: left !important;
  pointer-events: none !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-title {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #fff8ec !important;
  font-size: clamp(15px, 1.15vw, 22px) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-align: left !important;
  text-overflow: ellipsis !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.46) !important;
  white-space: nowrap !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-media-arrow {
  display: inline-grid !important;
  flex: 0 0 auto !important;
  width: clamp(22px, 1.6vw, 30px) !important;
  height: clamp(22px, 1.6vw, 30px) !important;
  place-items: center !important;
  padding: 0 !important;
  border: 2px solid #d95a24 !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.88) !important;
  color: #d95a24 !important;
  -webkit-text-fill-color: #d95a24 !important;
  font-size: clamp(18px, 1.2vw, 24px) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-shadow: none !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-gallery-actions {
  display: none !important;
}

body .page-shell main.anaya-case-study-page > #foundation.anaya-journey-section .anaya-carousel-controls {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-top: 14px !important;
}

body .page-shell main.anaya-case-study-page > #foundation.anaya-journey-section .anaya-carousel-button {
  display: inline-grid !important;
  width: 42px !important;
  height: 42px !important;
  place-items: center !important;
  padding: 0 !important;
  border: 2px solid #d95a24 !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.9) !important;
  color: #d95a24 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  cursor: pointer !important;
}

body .page-shell main.anaya-case-study-page > #foundation.anaya-journey-section .anaya-carousel-button::before {
  display: block !important;
  width: 10px !important;
  height: 10px !important;
  border-top: 3px solid currentColor !important;
  border-left: 3px solid currentColor !important;
  content: "" !important;
}

body .page-shell main.anaya-case-study-page > #foundation.anaya-journey-section .anaya-carousel-button-prev::before {
  transform: translateX(2px) rotate(-45deg) !important;
}

body .page-shell main.anaya-case-study-page > #foundation.anaya-journey-section .anaya-carousel-button-next::before {
  transform: translateX(-2px) rotate(135deg) !important;
}

body .page-shell main.anaya-case-study-page > #foundation.anaya-journey-section .anaya-carousel-button:is(:hover, :focus-visible) {
  background: #d95a24 !important;
  color: #ffffff !important;
}

body .page-shell main.anaya-case-study-page > #foundation.anaya-journey-section .anaya-carousel-status {
  color: #6a5f53 !important;
  font-size: 0.82rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) > .anaya-gallery-block {
  width: calc(100% + (var(--case-page-section-inline-pad) * 2) - 2px) !important;
  margin-right: calc((var(--case-page-section-inline-pad) * -1) + 1px) !important;
  margin-left: calc((var(--case-page-section-inline-pad) * -1) + 1px) !important;
}

@media (max-width: 1024px) {
  body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-gallery-preview {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  /* Section 06 keeps its desktop composition, but tablet/mobile uses the same
     Archer-style wall fill so no cream strip appears between image and wall. */
  body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section > .anaya-gallery-block {
    --anaya-program-media-gap: 11px;
    box-sizing: border-box !important;
    width: calc(100% + (var(--case-page-section-inline-pad) * 2)) !important;
    max-width: none !important;
    margin-top: var(--featured-section-gap, 12px) !important;
    margin-right: calc(var(--case-page-section-inline-pad) * -1) !important;
    margin-left: calc(var(--case-page-section-inline-pad) * -1) !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
  }

  body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section .anaya-gallery-preview {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: var(--anaya-program-media-gap) !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
  }

  body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section .anaya-media-card {
    position: relative !important;
    display: block !important;
    min-width: 0 !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    transform: none !important;
  }

  body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section .anaya-media-frame {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
  }

  body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section .anaya-media-frame img,
  body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section .anaya-media-frame video {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border-radius: 0 !important;
    filter: brightness(0.96) !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}

@media (max-width: 767px) {
  body .page-shell main.anaya-case-study-page > .anaya-journey-section:not(#next-level) .anaya-gallery-preview {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (max-width: 1024px) {
  html body .page-shell main.anaya-case-study-page > section.section.anaya-summary-section {
    --featured-section-inline-pad: clamp(12px, 3.4vw, 24px);
    --featured-section-rail-gutter: var(--featured-section-inline-pad);
    padding-right: var(--featured-section-inline-pad) !important;
    padding-left: var(--featured-section-inline-pad) !important;
  }

  html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .featured-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    justify-content: stretch !important;
    gap: clamp(10px, 2.5vw, 14px) !important;
  }
}

@media (min-width: 1025px) and (max-width: 1199px) {
  html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card h3 {
    font-size: 19px !important;
  }

  html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card > p {
    font-size: 14px !important;
  }
}

@media (min-width: 1501px) and (max-width: 2199px) {
  html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card > p {
    font-size: 15px !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .section-heading > h2 + p {
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card > p {
    font-size: 15px !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .section-heading > h2 + p {
    font-size: 11px !important;
    line-height: 1.35 !important;
  }

  html body .page-shell main.anaya-case-study-page > .anaya-summary-section > .featured-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-content: stretch !important;
  }

  html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card {
    padding: 12px !important;
  }

  html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card h3 {
    font-size: clamp(15px, 3.75vw, 18px) !important;
    line-height: 1.08 !important;
  }

  html body .page-shell main.anaya-case-study-page > .anaya-summary-section .featured-summary-card > p {
    font-size: clamp(11px, 3.25vw, 13px) !important;
    line-height: 1.34 !important;
  }
}

/* Anaya production proof-card lock: #production uses a 5/3+2/2+2+1 grid without changing the surrounding section wall, media rail, or page gutters. */
html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section > .section-heading > h2 {
  font-size: clamp(44px, 2.3vw, 58px) !important;
  line-height: 1.02 !important;
  text-wrap: balance !important;
}

html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section > .production-grid.production-link-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: stretch !important;
  grid-auto-rows: 1fr !important;
}

html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section .production-card {
  appearance: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  min-height: clamp(96px, 6vw, 124px) !important;
  padding: clamp(12px, 1.1vw, 18px) !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  cursor: pointer !important;
  font: inherit !important;
  text-align: center !important;
}

html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section .production-grid strong {
  margin-bottom: 6px !important;
  font-size: clamp(20px, 1.03vw, 26px) !important;
  line-height: 1.08 !important;
  overflow-wrap: normal !important;
  text-align: center !important;
  text-wrap: nowrap !important;
  white-space: nowrap !important;
}

html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section .production-grid span {
  font-size: clamp(14px, 0.72vw, 18px) !important;
  line-height: 1.3 !important;
  overflow-wrap: normal !important;
  text-align: center !important;
  text-wrap: nowrap !important;
  white-space: nowrap !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section > .section-heading > h2 {
    font-size: clamp(42px, 5.6vw, 56px) !important;
    line-height: 1.02 !important;
  }

  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section > .production-grid.production-link-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section .production-card {
    min-height: clamp(100px, 11vw, 122px) !important;
    padding: clamp(12px, 1.8vw, 16px) !important;
  }

  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section .production-grid strong {
    font-size: clamp(22px, 2.05vw, 26px) !important;
  }

  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section .production-grid span {
    font-size: clamp(15px, 1.28vw, 17px) !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section > .section-heading > h2 {
    font-size: clamp(34px, 8vw, 44px) !important;
    line-height: 1.03 !important;
  }

  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section > .production-grid.production-link-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section .production-card {
    min-height: clamp(88px, 22vw, 104px) !important;
    padding: clamp(8px, 2.6vw, 12px) !important;
  }

  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section .production-grid strong {
    font-size: clamp(16px, 3.75vw, 19px) !important;
    letter-spacing: 0 !important;
  }

  html body .page-shell main.anaya-case-study-page > #production.anaya-journey-section .production-grid span {
    font-size: clamp(12px, 2.9vw, 15px) !important;
    line-height: 1.24 !important;
  }
}

/* Anaya next-level caption lock: remove only the lower caption panel while leaving the section text, image asset and crop intact. */
html body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section .anaya-media-caption {
  display: none !important;
}

/* Systems detail bands match the Systems hero/footer cream canvas. */
html body .page-shell main.systems-detail-page > .system-detail-section:is(#defense, #development, #recruiting, #operations, #scouting, #leadership) {
  background: var(--home-system-card-cream, #fff4e6) !important;
  background-color: var(--home-system-card-cream, #fff4e6) !important;
  background-image: none !important;
}

html body .page-shell main.systems-detail-page {
  display: flex !important;
  flex-direction: column !important;
}

html body .page-shell main.systems-detail-page > .page-hero-system {
  order: 1 !important;
}

html body .page-shell main.systems-detail-page > .systems-summary-section {
  order: 2 !important;
}

html body .page-shell main.systems-detail-page > #development.system-detail-section {
  order: 3 !important;
}

html body .page-shell main.systems-detail-page > #operations.system-detail-section {
  order: 4 !important;
}

html body .page-shell main.systems-detail-page > #defense.system-detail-section {
  order: 5 !important;
}

html body .page-shell main.systems-detail-page > #recruiting.system-detail-section {
  order: 6 !important;
}

html body .page-shell main.systems-detail-page > #scouting.system-detail-section {
  order: 7 !important;
}

html body .page-shell main.systems-detail-page > #leadership.system-detail-section {
  order: 8 !important;
}

html body .page-shell main.systems-detail-page > .featured-final-cta {
  order: 9 !important;
}

html body .page-shell main.systems-detail-page > .site-footer {
  order: 10 !important;
}

html body .page-shell main.systems-detail-page > .system-detail-section:is(#defense, #recruiting) {
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  color: #f7f4ef !important;
}

html body .page-shell main.systems-detail-page > .system-detail-section:is(#defense, #recruiting) .system-detail-copy > .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

html body .page-shell main.systems-detail-page > .system-detail-section:is(#defense, #recruiting) .system-detail-copy > h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body .page-shell main.systems-detail-page > .system-detail-section:is(#defense, #recruiting) .system-detail-copy > p:not(.eyebrow) {
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
}

html body .page-shell main.systems-detail-page > .system-detail-section:is(#defense, #development, #recruiting, #operations, #scouting, #leadership) > .system-detail-grid {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* Anaya closing CTA mirrors the Featured page Explore the Work band. */
html body .page-shell main.anaya-case-study-page > section.featured-final-cta {
  --featured-section-wall-width: min(var(--home-section-wall-width, 2560px), 100vw) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 280px) !important;
  align-items: stretch !important;
  gap: clamp(24px, 4vw, 48px) !important;
  width: var(--featured-section-wall-width) !important;
  max-width: none !important;
  margin: 0 calc(50% - (var(--featured-section-wall-width) * 0.5)) !important;
  margin-bottom: 0 !important;
  padding: var(--featured-section-padding, 42px) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #000000 !important;
  background-color: #000000 !important;
  background-image: none !important;
  box-shadow: none !important;
  clip-path: none !important;
  color: #f7f4ef !important;
  isolation: isolate !important;
  overflow: hidden !important;
  position: relative !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta::before {
  background: #000000 !important;
  content: "" !important;
  inset: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  z-index: 0 !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta > * {
  position: relative !important;
  z-index: 1 !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta > div {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta .eyebrow {
  color: #f2a179 !important;
  -webkit-text-fill-color: #f2a179 !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  overflow-wrap: normal !important;
  text-wrap: nowrap !important;
  white-space: nowrap !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta p:not(.eyebrow) {
  width: 100% !important;
  max-width: none !important;
  color: #ded8cf !important;
  -webkit-text-fill-color: #ded8cf !important;
  overflow-wrap: normal !important;
  text-wrap: wrap !important;
  white-space: normal !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions {
  align-self: stretch !important;
  display: grid !important;
  grid-template-rows: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin-top: 0 !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions .button {
  height: 100% !important;
  min-height: 0 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions .button-primary {
  border-color: var(--coach-orange) !important;
  background: var(--coach-orange) !important;
  background-image: none !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions .button-secondary {
  border-color: rgba(255, 255, 255, 0.28) !important;
  background: rgba(255, 255, 255, 0.08) !important;
  background-image: none !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions .button:hover,
html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions .button:focus-visible {
  border-color: var(--coach-orange-hover) !important;
  background: var(--coach-orange-hover) !important;
  background-image: none !important;
}

@media (min-width: 1025px) {
  html body .page-shell main.anaya-case-study-page > section.featured-final-cta h2 {
    white-space: nowrap !important;
  }
}

@media (min-width: 1025px) and (max-width: 1320px) {
  html body .page-shell main.anaya-case-study-page > section.featured-final-cta {
    grid-template-columns: minmax(0, 1fr) minmax(150px, 205px) !important;
    align-items: stretch !important;
    gap: clamp(16px, 2vw, 24px) !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta h2 {
    max-width: 100% !important;
    font-size: clamp(28px, 3.25vw, 38px) !important;
    line-height: 1.05 !important;
    text-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta p:not(.eyebrow) {
    font-size: 16px !important;
    line-height: 1.42 !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions {
    width: 100% !important;
    grid-template-rows: repeat(3, minmax(38px, 1fr)) !important;
    gap: 9px !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions .button {
    min-height: 38px !important;
    height: auto !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
    font-size: 0.78rem !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main.anaya-case-study-page > section.featured-final-cta {
    grid-template-columns: minmax(0, 1fr) minmax(180px, 250px) !important;
    align-items: stretch !important;
    gap: clamp(16px, 2.5vw, 24px) !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta h2 {
    max-width: 100% !important;
    font-size: clamp(25px, 3.4vw, 34px) !important;
    line-height: 1.05 !important;
    text-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta p:not(.eyebrow) {
    font-size: 14.5px !important;
    line-height: 1.48 !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions {
    width: 100% !important;
    grid-template-rows: repeat(3, minmax(40px, 1fr)) !important;
    grid-auto-rows: initial !important;
    gap: 9px !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions .button {
    min-height: 40px !important;
    height: auto !important;
    padding-right: 14px !important;
    padding-left: 14px !important;
    font-size: 0.82rem !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.anaya-case-study-page > section.featured-final-cta {
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 24px !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta h2 {
    max-width: 100% !important;
    font-size: clamp(17px, 4.8vw, 23px) !important;
    line-height: 1.05 !important;
    text-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta p:not(.eyebrow) {
    font-size: clamp(14px, 3.75vw, 15.5px) !important;
    line-height: 1.44 !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions {
    align-self: start !important;
    width: 100% !important;
    grid-template-rows: none !important;
    grid-auto-rows: minmax(48px, auto) !important;
    gap: 10px !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta .featured-actions .button {
    min-height: 48px !important;
    height: auto !important;
  }
}

/* Anaya final CTA title fit: keep "See the Systems Behind the Results" on one line from mobile to ultra-wide. */
html body .page-shell main.anaya-case-study-page.anaya-case-study-page > section.featured-final-cta.featured-final-cta h2 {
  overflow-wrap: normal !important;
  text-wrap: nowrap !important;
  white-space: pre !important;
}

html body .page-shell main.anaya-case-study-page > section.featured-final-cta #anaya-final-cta-title {
  overflow-wrap: normal !important;
  text-wrap: nowrap !important;
  white-space: nowrap !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main.anaya-case-study-page.anaya-case-study-page > section.featured-final-cta.featured-final-cta h2 {
    font-size: clamp(22px, 2.9vw, 32px) !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta #anaya-final-cta-title {
    font-size: clamp(22px, 2.9vw, 32px) !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.anaya-case-study-page.anaya-case-study-page > section.featured-final-cta.featured-final-cta h2 {
    font-size: clamp(14px, 4vw, 18px) !important;
  }

  html body .page-shell main.anaya-case-study-page > section.featured-final-cta #anaya-final-cta-title {
    font-size: clamp(14px, 4vw, 18px) !important;
  }
}

/* Anaya next-level spacing: match the eyebrow approach and image-to-section closeout. */
html body .page-shell main.anaya-case-study-page.anaya-case-study-page > section#next-level.section.anaya-journey-section {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

html body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section .anaya-media-card {
  border: 0 !important;
}

html body .page-shell main.media-library-page > #playing-awards-media.media-library-section .media-library-card.is-award-mvp-plaque .media-library-frame img {
  transform: scale(1.14) !important;
}

/* Shared carousel arrow centering lock: keep round controls and center the chevron glyph optically. */
html body :is(
  .media-carousel-arrow,
  .system-carousel-arrow,
  .playing-career-arrow,
  .playing-career-awards-arrow,
  .media-overlay-nav,
  .media-overlay-thumb-nav
) {
  display: grid !important;
  aspect-ratio: 1 / 1 !important;
  align-items: center !important;
  justify-items: center !important;
  place-items: center !important;
  padding: 0 !important;
  border-radius: 999px !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-align: center !important;
}

html body .media-carousel-arrow {
  width: 36px !important;
  height: 36px !important;
  border-color: #d95a24 !important;
  color: #d95a24 !important;
  -webkit-text-fill-color: #d95a24 !important;
}

html body :is(
  .media-carousel-arrow,
  .system-carousel-arrow,
  .playing-career-arrow,
  .playing-career-awards-arrow,
  .media-overlay-nav,
  .media-overlay-thumb-nav
) {
  border-color: #d95a24 !important;
  color: #d95a24 !important;
  -webkit-text-fill-color: #d95a24 !important;
}

html body :is(.playing-career-arrow, .media-overlay-nav) {
  width: 36px !important;
  height: 36px !important;
}

html body :is(.playing-career-awards-arrow, .system-carousel-arrow) {
  width: 36px !important;
  height: 36px !important;
}

html body .media-overlay-thumb-nav {
  width: 32px !important;
  height: 32px !important;
}

html body :is(
  .media-carousel-arrow-prev,
  .system-carousel-arrow-prev,
  .playing-career-arrow-prev,
  .playing-career-awards-arrow-prev,
  .media-overlay-prev,
  .media-overlay-thumb-prev
)::before,
html body :is(
  .media-carousel-arrow-next,
  .system-carousel-arrow-next,
  .playing-career-arrow-next,
  .playing-career-awards-arrow-next,
  .media-overlay-next,
  .media-overlay-thumb-next
)::before {
  display: grid !important;
  width: 100% !important;
  height: 100% !important;
  place-items: center !important;
  color: currentColor !important;
  -webkit-text-fill-color: currentColor !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 0.72em !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-align: center !important;
  transform: translateY(-0.02em) !important;
}

html body :is(
  .media-carousel-arrow-prev,
  .system-carousel-arrow-prev,
  .playing-career-arrow-prev,
  .playing-career-awards-arrow-prev,
  .media-overlay-prev,
  .media-overlay-thumb-prev
)::before {
  content: "\2039" !important;
}

html body :is(
  .media-carousel-arrow-next,
  .system-carousel-arrow-next,
  .playing-career-arrow-next,
  .playing-career-awards-arrow-next,
  .media-overlay-next,
  .media-overlay-thumb-next
)::before {
  content: "\203a" !important;
}

html body :is(.media-carousel-arrow, .system-carousel-arrow)::before {
  font-size: 1.7rem !important;
}

html body :is(.playing-career-arrow, .playing-career-awards-arrow, .media-overlay-thumb-nav)::before {
  font-size: 1.55rem !important;
}

html body .media-overlay-nav::before {
  font-size: 2rem !important;
}

html body :is(
  .media-carousel-arrow-prev,
  .system-carousel-arrow-prev,
  .playing-career-arrow-prev,
  .playing-career-awards-arrow-prev,
  .media-overlay-prev,
  .media-overlay-thumb-prev,
  .media-carousel-arrow-next,
  .system-carousel-arrow-next,
  .playing-career-arrow-next,
  .playing-career-awards-arrow-next,
  .media-overlay-next,
  .media-overlay-thumb-next
)::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  display: block !important;
  width: 0.54em !important;
  height: 0.54em !important;
  border-color: currentColor !important;
  border-style: solid !important;
  border-width: 0 !important;
  font-size: 1.5rem !important;
}

html body :is(.media-carousel-arrow, .system-carousel-arrow, .playing-career-arrow, .playing-career-awards-arrow, .media-overlay-nav, .media-overlay-thumb-nav)::after {
  content: none !important;
}

html body :is(
  .media-carousel-arrow-prev,
  .system-carousel-arrow-prev,
  .playing-career-arrow-prev,
  .playing-career-awards-arrow-prev,
  .media-overlay-prev,
  .media-overlay-thumb-prev
)::before {
  border-bottom-width: 4px !important;
  border-left-width: 4px !important;
  transform: translate(-38%, -50%) rotate(45deg) !important;
}

html body :is(
  .media-carousel-arrow-next,
  .system-carousel-arrow-next,
  .playing-career-arrow-next,
  .playing-career-awards-arrow-next,
  .media-overlay-next,
  .media-overlay-thumb-next
)::before {
  border-top-width: 4px !important;
  border-right-width: 4px !important;
  transform: translate(-62%, -50%) rotate(45deg) !important;
}

html body :is(.media-carousel-arrow, .system-carousel-arrow)::before {
  font-size: 1.08rem !important;
  border-width: 0 !important;
}

html body :is(.playing-career-arrow, .playing-career-awards-arrow, .media-overlay-thumb-nav)::before {
  font-size: 1.08rem !important;
  border-width: 0 !important;
}

html body :is(.media-carousel-arrow-prev, .system-carousel-arrow-prev, .playing-career-arrow-prev, .playing-career-awards-arrow-prev, .media-overlay-thumb-prev)::before {
  border-bottom-width: 3px !important;
  border-left-width: 3px !important;
}

html body :is(.media-carousel-arrow-next, .system-carousel-arrow-next, .playing-career-arrow-next, .playing-career-awards-arrow-next, .media-overlay-thumb-next)::before {
  border-top-width: 3px !important;
  border-right-width: 3px !important;
}

html body .media-overlay-nav::before {
  font-size: 1.28rem !important;
}

@media (max-width: 1024px) {
  html body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section {
    padding-top: 32px !important;
    padding-bottom: 32px !important;
  }

  html body .page-shell main.anaya-case-study-page.anaya-case-study-page > section#next-level.section.anaya-journey-section {
    padding-top: 32px !important;
    padding-bottom: 32px !important;
  }
}

@media (max-width: 767px) {
  html body .page-shell main.anaya-case-study-page > #next-level.anaya-journey-section,
  html body .page-shell main.anaya-case-study-page.anaya-case-study-page > section#next-level.section.anaya-journey-section {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
}

/* Sitewide carousel arrow color lock: match homepage arrow hex exactly. */
html body :is(
  .media-carousel-arrow,
  .system-carousel-arrow,
  .playing-career-arrow,
  .playing-career-awards-arrow,
  .media-overlay-nav,
  .media-overlay-thumb-nav
) {
  border-color: #d95a24 !important;
  color: #d95a24 !important;
  -webkit-text-fill-color: #d95a24 !important;
}

html body :is(
  .media-carousel-arrow,
  .system-carousel-arrow,
  .playing-career-arrow,
  .playing-career-awards-arrow,
  .media-overlay-nav,
  .media-overlay-thumb-nav
)::before {
  border-color: #d95a24 !important;
}

/* Sitewide carousel arrow size lock: match homepage Playing Career controls exactly. */
html body :is(
  .media-carousel-arrow,
  .system-carousel-arrow,
  .playing-career-arrow,
  .playing-career-awards-arrow,
  .media-overlay-nav,
  .media-overlay-thumb-nav
) {
  width: 36px !important;
  height: 36px !important;
}

html body :is(
  .media-carousel-arrow,
  .system-carousel-arrow,
  .playing-career-arrow,
  .playing-career-awards-arrow,
  .media-overlay-nav,
  .media-overlay-thumb-nav
)::before {
  width: 0.54em !important;
  height: 0.54em !important;
  font-size: 1.08rem !important;
  border-width: 0 !important;
  border-color: #d95a24 !important;
}

html body :is(
  .media-carousel-arrow-prev,
  .system-carousel-arrow-prev,
  .playing-career-arrow-prev,
  .playing-career-awards-arrow-prev,
  .media-overlay-prev,
  .media-overlay-thumb-prev
)::before {
  border-bottom-width: 3px !important;
  border-left-width: 3px !important;
}

html body :is(
  .media-carousel-arrow-next,
  .system-carousel-arrow-next,
  .playing-career-arrow-next,
  .playing-career-awards-arrow-next,
  .media-overlay-next,
  .media-overlay-thumb-next
)::before {
  border-top-width: 3px !important;
  border-right-width: 3px !important;
}

/* Hero pill line lock: all two-line hero pills use a 1px main/sub gap at every width. */
html body .page-shell :is(
  main#top,
  main.systems-detail-page,
  main.featured-page,
  main.media-library-page,
  main.anaya-case-study-page,
  main.archer-page
) > .page-hero-system.page-hero-system > .hero-pill-system > .hero-pill {
  gap: 1px !important;
}

/* Homepage awards carousel lock: no peek cards; every visible award fills a full card. */
html body .page-shell main#top #playing-career .playing-career-awards-strip {
  --playing-career-awards-visible-slots: 3;
  --playing-career-awards-gap: 11px;
  --playing-career-awards-slot-overhang: 0px;
  --playing-career-awards-track-width: 100%;
  --playing-career-awards-item-width: calc(
    (100% - (var(--playing-career-awards-gap) * (var(--playing-career-awards-visible-slots) - 1)))
    / var(--playing-career-awards-visible-slots)
  );
  --playing-career-awards-slot-width: var(--playing-career-awards-item-width);
  --playing-career-awards-thumb-height: calc(var(--playing-career-awards-item-width) * 2 / 3);
}

html body .page-shell main#top #playing-career .playing-career-awards-track {
  left: auto !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  width: 100% !important;
  background: #ffffff !important;
  transform: none !important;
}

html body .page-shell main#top #playing-career .playing-career-awards-track::after {
  content: none !important;
}

html body .page-shell main#top #playing-career .playing-career-award-thumb {
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  aspect-ratio: 3 / 2 !important;
  overflow: hidden !important;
}

html body .page-shell main#top #playing-career .playing-career-award-thumb::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: calc(-1 * var(--playing-career-awards-gap)) !important;
  bottom: 0 !important;
  z-index: 2 !important;
  width: var(--playing-career-awards-gap) !important;
  height: auto !important;
  background: #ffffff !important;
  pointer-events: none !important;
}

html body .page-shell main#top #playing-career .playing-career-award-thumb:last-child::after {
  content: none !important;
}

html body .page-shell main#top #playing-career .playing-career-award-thumb img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center center !important;
}

html body .page-shell main#top #playing-career .playing-career-awards-strip {
  border-top: 11px solid #ffffff !important;
  border-bottom: 11px solid #ffffff !important;
}

html body .page-shell main#top #playing-career .playing-career-award-thumb.is-home-award-mvp-plaque img {
  transform: scale(1.14) !important;
}

html body .page-shell main#top #playing-career .playing-career-awards-arrow {
  top: 50% !important;
  transform: translateY(-50%) !important;
}

/* Homepage Playing Career photo rail: responsive frame lock for mobile, tablet, desktop, and ultra-wide. */
html body .page-shell main#top #playing-career.playing-career-section {
  --playing-career-frame-ratio: 16 / 10;
  --playing-career-slide-half: calc(var(--playing-career-slide-width) / 2);
}

html body .page-shell main#top #playing-career .playing-career-track .achievement-card {
  aspect-ratio: var(--playing-career-frame-ratio) !important;
}

@media (max-width: 599.98px) {
  html body .page-shell main#top #playing-career.playing-career-section {
    --playing-career-composition-width: 100vw;
    --playing-career-slide-width: 86%;
    --playing-career-gap: 10px;
    --playing-career-frame-ratio: 4 / 3;
  }
}

@media (min-width: 600px) and (max-width: 767.98px) {
  html body .page-shell main#top #playing-career.playing-career-section {
    --playing-career-composition-width: 100vw;
    --playing-career-slide-width: 78%;
    --playing-career-gap: 11px;
    --playing-career-frame-ratio: 4 / 3;
  }
}

@media (min-width: 768px) and (max-width: 1024.98px) {
  html body .page-shell main#top #playing-career.playing-career-section {
    --playing-career-composition-width: 100vw;
    --playing-career-slide-width: 72%;
    --playing-career-gap: 11px;
    --playing-career-frame-ratio: 3 / 2;
  }
}

@media (min-width: 1025px) and (max-width: 1599.98px) {
  html body .page-shell main#top #playing-career.playing-career-section {
    --playing-career-composition-width: 100vw;
    --playing-career-slide-width: min(64%, 1100px);
    --playing-career-gap: 11px;
    --playing-career-frame-ratio: 16 / 10;
  }
}

@media (min-width: 1600px) and (max-width: 2199.98px) {
  html body .page-shell main#top #playing-career.playing-career-section {
    --playing-career-composition-width: 100vw;
    --playing-career-slide-width: min(60%, 1220px);
    --playing-career-gap: 11px;
    --playing-career-frame-ratio: 16 / 10;
  }
}

@media (min-width: 2200px) {
  html body .page-shell main#top #playing-career.playing-career-section {
    --playing-career-carousel-wall-width: var(--home-section-wall-width, min(100vw, 2560px));
    --playing-career-awards-wall-width: var(--playing-career-carousel-wall-width);
    --playing-career-composition-width: var(--playing-career-carousel-wall-width);
    --playing-career-slide-width: min(54%, 1300px);
    --playing-career-gap: 11px;
    --playing-career-frame-ratio: 16 / 10;
  }
}

/*
  Homepage Anaya case-study spacing lock.
  Retires the older min-height/copy-shift padding stack for this card only:
  the card uses equal top/bottom padding, then keeps the text, buttons and image
  grouped together so the eyebrow-to-top and image-to-bottom spaces match.
*/
html body .page-shell main#top #featured-work > .featured-card.featured-card--anaya {
  --featured-anaya-card-pad-y: clamp(30px, 3vw, 48px);
  --featured-anaya-card-pad-x: clamp(24px, 5vw, 76px);
  --featured-anaya-stack-gap: clamp(18px, 1.8vw, 30px);
  min-height: 0 !important;
  padding:
    var(--featured-anaya-card-pad-y)
    var(--featured-anaya-card-pad-x) !important;
  place-items: center !important;
}

html body .page-shell main#top #featured-work > .featured-card.featured-card--anaya .innovation-panel {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--featured-anaya-stack-gap) !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

html body .page-shell main#top #featured-work > .featured-card.featured-card--anaya .innovation-card-copy {
  order: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(7px, 0.75vw, 11px) !important;
  width: min(100%, var(--featured-body-max, 760px)) !important;
  margin: 0 !important;
  transform: none !important;
}

html body .page-shell main#top #featured-work > .featured-card.featured-card--anaya .innovation-card-copy .section-heading {
  margin: 0 !important;
}

html body .page-shell main#top #featured-work > .featured-card.featured-card--anaya .innovation-card-copy > p {
  margin: 0 !important;
}

html body .page-shell main#top #featured-work > .featured-card.featured-card--anaya .featured-pill-row {
  margin: 0 !important;
}

html body .page-shell main#top #featured-work > .featured-card.featured-card--anaya .innovation-thumbnail {
  order: 2 !important;
  width: min(100%, var(--featured-media-max, 900px)) !important;
  margin: 0 !important;
}

/* Overlay thumbnail nav stays hidden; main image arrows remain available. */
html body .media-overlay .media-overlay-strip-shell {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
}

html body .media-overlay .media-overlay-thumb-nav {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

html body .media-overlay .media-overlay-thumb-nav::before {
  content: none !important;
}

html body .media-overlay .media-overlay-nav {
  top: 50% !important;
  bottom: auto !important;
  display: inline-grid !important;
  visibility: visible !important;
  pointer-events: auto !important;
  font-size: 0 !important;
  line-height: 0 !important;
  transform: translateY(-50%) !important;
}

html body .media-overlay .media-overlay-nav::before {
  font-size: 1.08rem !important;
}

/*
  Gallery hero/category handoff lock:
  Match Featured. The black portfolio band touches the hero shell with no outside
  spacer, while the hero keeps its own bottom padding so the pill row can breathe.
*/
html body .page-shell main.media-library-page > .hero.page-hero-system.page-hero-system {
  margin-bottom: 0 !important;
  border-bottom: 0 !important;
}

html body .page-shell main.media-library-page > .hero.page-hero-system.page-hero-system > .hero-pill-system {
  margin-bottom: 0 !important;
}

html body .page-shell main.media-library-page > .hero.page-hero-system.page-hero-system + #featured-media.media-library-section {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 0 !important;
  border-top: 0 !important;
}

html body .page-shell main.media-library-page {
  background: var(--home-system-card-cream, #fff4e6) !important;
}

/*
  Systems hero-to-summary handoff lock:
  Match Featured. The black summary band touches the hero shell with no outside
  spacer, while the hero keeps its own bottom padding so the pill row can breathe.
*/
html body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system {
  margin-bottom: 0 !important;
  border-bottom: 0 !important;
}

html body .page-shell main.systems-detail-page > .hero.page-hero-system.page-hero-system + .systems-summary-section {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 0 !important;
  border-top: 0 !important;
}

/* Anaya case study hero handoff: match Featured and Archer without overlapping the final hero pill row. */
html body .page-shell main.anaya-case-study-page > .hero.page-hero-system.page-hero-system + .anaya-summary-section {
  margin-top: 0 !important;
}

/*
  Archer featured visuals refinement:
  Keep the Archer page as a restrained case study preview and route the full
  photo/video library through the existing Gallery page overlay flow.
*/
html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals {
  --archer-featured-preview-gap: clamp(14px, 1.25vw, 22px);
  padding-top: var(--featured-section-padding) !important;
  padding-right: var(--archer-section-inline-pad) !important;
  padding-bottom: var(--featured-section-padding) !important;
  padding-left: var(--archer-section-inline-pad) !important;
  background: linear-gradient(180deg, #f6ead7 0%, #fff7e8 100%) !important;
  background-color: #fff7e8 !important;
  background-image: linear-gradient(180deg, #f6ead7 0%, #fff7e8 100%) !important;
}

html body:has(main.archer-page) .page-shell main.archer-page.archer-page > #photos.section.section.archer-featured-visuals {
  padding-bottom: var(--featured-section-padding) !important;
}

html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals > :is(.section-heading, .archer-media-grid, .archer-media-actions) {
  width: auto !important;
  max-width: none !important;
  margin-right: calc(var(--archer-section-rail-gutter) - var(--archer-section-inline-pad)) !important;
  margin-left: calc(var(--archer-section-rail-gutter) - var(--archer-section-inline-pad)) !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}

html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals > .section-heading {
  margin-bottom: 16px !important;
}

html body .page-shell main.archer-page.archer-page > #archer-videos.section.archer-featured-visuals .archer-video-heading-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

html body .page-shell main.archer-page.archer-page > #archer-videos.section.archer-featured-visuals .archer-video-heading-row h2 {
  margin: 0 !important;
  min-width: 0 !important;
}

html body .page-shell main.archer-page.archer-page > #archer-videos.section.archer-featured-visuals .archer-video-carousel-controls {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  gap: 8px !important;
  align-items: center !important;
}

html body .page-shell main.archer-page.archer-page > #archer-videos.section.archer-featured-visuals .archer-video-carousel-button {
  display: inline-grid !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  padding: 0 !important;
  place-items: center !important;
  border: 1px solid rgba(31, 27, 22, 0.18) !important;
  border-radius: 999px !important;
  background: rgba(255, 253, 248, 0.78) !important;
  color: #2a2119 !important;
  box-shadow: 0 10px 24px rgba(52, 36, 24, 0.12) !important;
  cursor: pointer !important;
  font-family: Georgia, "Palatino Linotype", serif !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

html body .page-shell main.archer-page.archer-page > #archer-videos.section.archer-featured-visuals .archer-video-carousel-button:is(:hover, :focus-visible) {
  border-color: rgba(184, 135, 47, 0.52) !important;
  background: #fffaf2 !important;
  outline: none !important;
}

html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals > .archer-media-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--archer-program-media-gap, 11px) !important;
  background: transparent !important;
}

html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals .archer-media-grid figure {
  position: relative !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) !important;
  overflow: hidden !important;
  aspect-ratio: 4 / 3 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #1f1b16 !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals .archer-media-grid figure::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 40%,
      rgba(0, 0, 0, 0.22) 72%,
      rgba(0, 0, 0, 0.66) 100%
    ) !important;
  pointer-events: none !important;
}

html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals .archer-media-grid :is(img, video) {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 4 / 3 !important;
  border-radius: 0 !important;
  background: #1f1b16 !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body .page-shell main.archer-page.archer-page > #photos.section.archer-featured-visuals .archer-media-grid figure:nth-child(2) img {
  object-position: center 18% !important;
}

html body .page-shell main.archer-page.archer-page > #photos.section.archer-featured-visuals .archer-media-grid figure:nth-child(3) img {
  object-position: 65% 58% !important;
  transform: scale(1.36) !important;
  transform-origin: 65% 58% !important;
}

html body .page-shell main.archer-page.archer-page > #photos.section.archer-featured-visuals .archer-media-grid figure:nth-child(6) img {
  object-position: 45% 60% !important;
  transform: scale(1.28) !important;
  transform-origin: 45% 60% !important;
}

html body .page-shell main.archer-page.archer-page > #archer-videos.section.archer-featured-visuals .archer-media-grid img {
  transform: scale(1.78) !important;
  transform-origin: center center !important;
}

html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals .archer-media-grid figcaption,
html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals .archer-media-grid figure:has(video) figcaption {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 2 !important;
  min-height: 0 !important;
  padding: 14px 16px !important;
  color: #fff8ec !important;
  background: transparent !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-align: left !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.46) !important;
  pointer-events: none !important;
}

html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals .archer-media-grid figure:focus-visible {
  outline: 3px solid rgba(184, 135, 47, 0.72) !important;
  outline-offset: 3px !important;
}

html body .page-shell main.archer-page.archer-page > #photos.section.archer-featured-visuals > .archer-media-actions {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: var(--archer-program-media-gap, 11px) !important;
}

html body .page-shell main.archer-page.archer-page > #photos.section.archer-featured-visuals > .archer-media-actions::before {
  content: none !important;
}

html body .page-shell main.archer-page.archer-page > #photos.section.archer-featured-visuals > .archer-media-actions .button {
  width: 100% !important;
  min-width: 0 !important;
}

@media (max-width: 767px) {
  html body .page-shell main.archer-page.archer-page > #archer-videos.section.archer-featured-visuals .archer-video-heading-row {
    align-items: flex-end !important;
    gap: 12px !important;
  }

  html body .page-shell main.archer-page.archer-page > #archer-videos.section.archer-featured-visuals .archer-video-carousel-button {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    font-size: 26px !important;
  }

  html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals > .archer-media-grid,
  html body .page-shell main.archer-page.archer-page > :is(#photos, #archer-videos).section.archer-featured-visuals > .archer-media-actions {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Hero edge lock: active portfolio heroes use the same centered wall as the homepage Explore band. */
html body .page-shell :is(
  main#top,
  main.systems-detail-page,
  main.featured-page,
  main.media-library-page,
  main.credentials-page,
  main.anaya-case-study-page,
  main.archer-page
) > .hero.page-hero-system.page-hero-system {
  --home-hero-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
  box-sizing: border-box !important;
  width: var(--home-hero-wall-width) !important;
  max-width: 2560px !important;
  margin-right: calc(50% - (var(--home-hero-wall-width) * 0.5)) !important;
  margin-left: calc(50% - (var(--home-hero-wall-width) * 0.5)) !important;
  border-right: 0 !important;
  border-left: 0 !important;
  border-radius: 0 !important;
}

html body .page-shell main#top > .hero.page-hero-system.page-hero-system {
  margin-bottom: 0 !important;
}

/* Homepage Systems/Program Media gutter lock: outer rails match the internal card gap. */
html body .page-shell main#top {
  --home-section-grid-gap: 11px;
}

html body .page-shell main#top > :is(#systems.section, #media.section) {
  --home-systems-media-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
  box-sizing: border-box !important;
  width: var(--home-systems-media-wall-width) !important;
  max-width: 2560px !important;
  margin-right: calc(50% - (var(--home-systems-media-wall-width) * 0.5)) !important;
  margin-left: calc(50% - (var(--home-systems-media-wall-width) * 0.5)) !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  border-right: 0 !important;
  border-left: 0 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

html body .page-shell main#top > :is(#systems.section, #media.section)::before {
  content: none !important;
}

html body .page-shell main#top :is(#systems .library-grid, #media .gallery-grid) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: var(--home-section-grid-gap) !important;
  gap: var(--home-section-grid-gap) !important;
  row-gap: var(--home-section-grid-gap) !important;
  column-gap: var(--home-section-grid-gap) !important;
  background: #ffffff !important;
}

html body .page-shell main#top > #featured-work + #media.section {
  margin-top: var(--home-section-grid-gap) !important;
  padding-top: 0 !important;
}

/* Homepage visual rhythm lock: every visible white divider matches the card grid gap. */
html body .page-shell main#top {
  --home-section-grid-gap: 11px;
}

html body .page-shell main#top > :is(#systems.section, #media.section) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

html body .page-shell main#top :is(#systems .library-grid, #media .gallery-grid) {
  padding: var(--home-section-grid-gap) !important;
}

html body .page-shell main#top > #featured-work {
  --featured-wall-width: min(var(--home-section-wall-width, 2560px), 100vw);
  box-sizing: border-box !important;
  width: var(--featured-wall-width) !important;
  max-width: 2560px !important;
  margin: 0 calc(50% - (var(--featured-wall-width) * 0.5)) !important;
  padding: 0 !important;
  gap: 0 !important;
  background: transparent !important;
}

html body .page-shell main#top > #featured-work > .featured-card {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

html body .page-shell main#top > #featured-work > .featured-card + .featured-card {
  margin-top: 0 !important;
}

html body .page-shell main#top > #featured-work + #media.section {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html body .page-shell main#top > #media.section + #playing-career.section {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html body .page-shell main#top > #playing-career.section {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Homepage Archer-to-Program Media handoff: remove the internal bottom shelf so the only visible divider is the 11px grid rhythm. */
html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
  --featured-archer-stack-top-offset: 0px;
  --featured-archer-stack-balance-shift: 1.87px;
  --featured-archer-logo-art-shift: clamp(-40px, calc(-32.2px - 1.5vw), -37px);
  --featured-archer-title-pull: -68px;
  min-height: auto !important;
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer .innovation-panel {
  transform: translateY(calc(var(--featured-archer-stack-top-offset, 0px) + var(--featured-archer-stack-balance-shift, 0px))) !important;
}

html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer .innovation-card-copy > .section-heading.featured-archer-title {
  margin-bottom: var(--featured-archer-title-pull) !important;
}

@media (max-width: 329px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: calc(-2.09447px + 0.70855vw);
  }
}

@media (min-width: 330px) and (max-width: 361px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: calc(-20.857509px + 6.395161vw);
  }
}

@media (min-width: 362px) and (max-width: 392px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: calc(17.915333px - 4.338698vw);
  }
}

@media (min-width: 393px) and (max-width: 520px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: calc(-2.034668px + 0.75vw);
  }
}

@media (min-width: 521px) and (max-width: 767px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: calc(2.266px - 0.0764vw);
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-logo-art-shift: -51px;
    --featured-archer-stack-balance-shift: 1.32px;
    --featured-archer-title-pull: -93px;
    padding-top: clamp(30px, 3vw, 31px) !important;
    padding-bottom: clamp(30px, 3vw, 31px) !important;
  }
}

@media (min-width: 768px) and (max-width: 796px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: calc(27.065px - 3.231172vw);
  }
}

@media (min-width: 797px) and (max-width: 1024px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: 1.320156px;
  }
}

@media (min-width: 1025px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-logo-art-shift: clamp(-54px, calc(-39.5px - 0.66vw), -49px);
    --featured-archer-stack-balance-shift: 1.67457px;
    --featured-archer-title-pull: clamp(-105px, calc(-73.2px - 1.45vw), -94px);
    padding-top: clamp(43px, calc(33.5px + 0.66vw), 48px) !important;
    padding-bottom: clamp(43px, calc(33.5px + 0.66vw), 48px) !important;
  }
}

@media (min-width: 1440px) and (max-width: 1468px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: calc(-3.337573px + 0.347857vw);
  }
}

@media (min-width: 1469px) and (max-width: 1625px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: calc(21.315px - 1.330625vw);
  }
}

@media (min-width: 1626px) and (max-width: 2197px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: calc(-5.675156px + 0.33vw);
  }
}

@media (min-width: 2198px) {
  html body .page-shell main#top > #featured-work > .featured-card.featured-card--archer {
    --featured-archer-stack-balance-shift: 1.574844px;
  }
}

/* Homepage hero highlight links: keep the original contained overlay, but let links flow in one natural row. */
html body .page-shell main#top > .hero.page-hero-system.page-hero-system .hero-portrait-overlay-text {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
}

html body .page-shell main#top > .hero.page-hero-system.page-hero-system .hero-portrait-overlay-text a {
  display: inline-flex !important;
  grid-column: auto !important;
  min-width: 0 !important;
  width: auto !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

html body .page-shell main#top > .hero.page-hero-system.page-hero-system .hero-portrait-overlay-text span {
  display: inline-flex !important;
  position: static !important;
  transform: none !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
  html body .page-shell main#top > .hero.page-hero-system.page-hero-system .hero-portrait-overlay-text {
    justify-content: space-between !important;
    gap: clamp(12px, 2.4vw, 28px) !important;
  }

  html body .page-shell main#top > .hero.page-hero-system.page-hero-system > .hero-pill-system {
    gap: clamp(22px, 3vw, 34px) !important;
  }
}

/* Footer bottom row breathing room: keep the copyright/social line lower and less cramped. */
html body .site-footer.site-chrome .footer-bottom {
  margin-top: clamp(18px, 1.65vw, 30px) !important;
  padding-top: clamp(6px, 0.65vw, 12px) !important;
}

html body .site-footer.site-chrome .footer-socials {
  gap: clamp(13px, 1.15vw, 22px) !important;
}

html body .site-footer.site-chrome .footer-socials a {
  width: clamp(42px, 2.7vw, 54px) !important;
  height: clamp(42px, 2.7vw, 54px) !important;
}

/* Cross-page anchor lock: keep pill/nav links aligned directly below the compact sticky header. */
html:has(body :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) {
  scroll-padding-top: 36px !important;
}

body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page))
  .page-shell
  main:is(#top, .systems-detail-page, .featured-page, .media-library-page, .anaya-case-study-page, .archer-page, .about-cover-page, .contact-page)
  :is(section[id], [id="how-it-works"]) {
  scroll-margin-top: 36px !important;
}

@media (max-width: 767px) {
  html:has(body :is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page)) {
    scroll-padding-top: 52px !important;
  }

  body:has(:is(main#top, main.systems-detail-page, main.featured-page, main.media-library-page, main.anaya-case-study-page, main.archer-page, main.about-cover-page, main.contact-page))
    .page-shell
    main:is(#top, .systems-detail-page, .featured-page, .media-library-page, .anaya-case-study-page, .archer-page, .about-cover-page, .contact-page)
    :is(section[id], [id="how-it-works"]) {
    scroll-margin-top: 52px !important;
  }
}
