  /* Jump-to-section card, modeled on the admissions funnel design. */
.acu-ebenezer-page-sections__toc {
  --acu-toc-copy: var(--acu-midnight-purple);
  --acu-toc-marker: var(--acu-horizon-red);
  --acu-toc-border: rgba(33, 23, 75, 0.15);
  --acu-toc-surface: var(--acu-white);
  background-color: var(--acu-toc-surface);
  border: 1px solid var(--acu-toc-border);
  border-radius: var(--radius-md);
  /* The first section usually shares the page's white ground, so its own top
     padding spaces it from the card. A colored first section gets a white
     band under the card instead; see the sibling rule below. */
  margin: var(--space-2xl) auto 0;
  /* Card edges line up with section content, which sits inside the container
     gutters, rather than with the container edge itself. */
  max-width: calc(var(--container-xl) - (var(--space-xl) * 2));
  padding: var(--space-lg);
  width: calc(100% - (var(--space-xl) * 2));
}

.acu-ebenezer-page-sections__toc h2 {
  color: var(--acu-toc-copy);
  font-family: var(--font-sans);
  font-size: var(--text-md);
  font-weight: var(--font-bold);
  letter-spacing: 0;
  margin: 0 0 var(--space-md);
  text-transform: none;
}

.acu-ebenezer-page-sections__toc ul {
  display: grid;
  gap: var(--space-sm);
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.acu-ebenezer-page-sections__toc li {
  margin: 0;
}

.acu-ebenezer-page-sections__toc a {
  align-items: baseline;
  color: var(--acu-toc-copy);
  display: inline-flex;
  font-family: var(--font-sans);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  gap: var(--space-sm);
  line-height: 1.4;
  text-decoration: none;
  transition: color 150ms ease;
}

/* Return-style arrow matching the design's list markers. */
.acu-ebenezer-page-sections__toc a::before {
  background-color: var(--acu-toc-marker);
  content: "";
  flex: none;
  height: 0.75rem;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 1v4.5a2 2 0 0 0 2 2h5.5' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round'/%3E%3Cpath d='M7.5 5.2 10 7.5 7.5 9.8' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-repeat: no-repeat;
  mask-size: contain;
  transform: translateY(0.15em);
  width: 0.75rem;
}

.acu-ebenezer-page-sections__toc a:hover,
.acu-ebenezer-page-sections__toc a:focus-visible {
  color: var(--acu-vibrant-purple);
  text-decoration: underline;
  text-underline-offset: 0.25em;
}

.acu-ebenezer-page-sections__toc a:focus-visible {
  outline: 0.1875rem solid var(--acu-sky-blue);
  outline-offset: 0.25rem;
}

/* A colored first section would otherwise sit flush against the card. */
.acu-ebenezer-page-sections__toc + .acu-ebenezer-page-sections__sections > .acu-ebenezer-page-sections__section--background-cream:first-child,
.acu-ebenezer-page-sections__toc + .acu-ebenezer-page-sections__sections > .acu-ebenezer-page-sections__section--background-light-purple:first-child,
.acu-ebenezer-page-sections__toc + .acu-ebenezer-page-sections__sections > .acu-ebenezer-page-sections__section--background-purple:first-child {
  margin-top: var(--space-2xl);
}

@media (max-width: 47.9375rem) {
  .acu-ebenezer-page-sections__toc {
    margin-top: var(--space-xl);
    max-width: calc(var(--container-xl) - (var(--space-lg) * 2));
    padding: var(--space-md);
    width: calc(100% - (var(--space-lg) * 2));
  }

  .acu-ebenezer-page-sections__toc + .acu-ebenezer-page-sections__sections > .acu-ebenezer-page-sections__section--background-cream:first-child,
  .acu-ebenezer-page-sections__toc + .acu-ebenezer-page-sections__sections > .acu-ebenezer-page-sections__section--background-light-purple:first-child,
  .acu-ebenezer-page-sections__toc + .acu-ebenezer-page-sections__sections > .acu-ebenezer-page-sections__section--background-purple:first-child {
    margin-top: var(--space-xl);
  }
}

@media (prefers-reduced-motion: reduce) {
  .acu-ebenezer-page-sections__toc a {
    transition: none;
  }
}

.acu-ebenezer-page-sections__sections > .acu-ebenezer-page-sections__section:nth-child(odd) {
  --acu-ebenezer-section-alternating-background: var(--acu-white);
}

.acu-ebenezer-page-sections__sections > .acu-ebenezer-page-sections__section:nth-child(even) {
  --acu-ebenezer-section-alternating-background: var(--acu-casual-cream);
}

.acu-ebenezer-page-sections__section {
  background-color: var(
    --acu-ebenezer-section-background-override,
    var(--acu-ebenezer-section-alternating-background)
  );
  width: 100%;
}

.acu-ebenezer-page-sections__section > section {
  background-color: transparent;
  scroll-margin-top: 7rem;
}

.acu-ebenezer-page-sections__section--background-white {
  --acu-ebenezer-section-background-override: var(--acu-white);
}

.acu-ebenezer-page-sections__section--background-cream {
  --acu-ebenezer-section-background-override: var(--acu-casual-cream);
}

.acu-ebenezer-page-sections__section--background-purple {
  --acu-ebenezer-section-background-override: var(--acu-hero-purple);
}

.acu-ebenezer-page-sections__section--background-light-purple {
  --acu-ebenezer-section-background-override: var(--acu-primrose-purple);
}

.acu-ebenezer-page-sections__section--theme-dark > section {
  color: var(--acu-white);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-trust-recognition {
  --acu-trust-recognition-copy: var(--acu-white);
  --acu-trust-recognition-heading: var(--acu-white);
  --acu-trust-recognition-arrow: var(--acu-horizon-red);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-what-matters {
  --acu-what-matters-copy: var(--acu-white);
  --acu-what-matters-heading: var(--acu-white);
  --acu-what-matters-arrow: var(--acu-citrus-orange);
  --acu-what-matters-rule: rgba(255, 255, 255, 0.35);
  --acu-what-matters-title-hover: var(--acu-white);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-educational-impact,
.acu-ebenezer-page-sections__section--theme-dark .acu-educational-impact__eyebrow,
.acu-ebenezer-page-sections__section--theme-dark .acu-educational-impact__heading,
.acu-ebenezer-page-sections__section--theme-dark .acu-educational-impact__pillar-heading,
.acu-ebenezer-page-sections__section--theme-dark .acu-educational-impact__statistic-value,
.acu-ebenezer-page-sections__section--theme-dark .acu-educational-impact__statistic-heading {
  color: var(--acu-white);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-educational-impact {
  --acu-educational-impact-cta-secondary-surface-hover: rgba(255, 255, 255, 0.12);
  --acu-educational-impact-cta-secondary-copy: var(--acu-white);
  --acu-educational-impact-cta-secondary-border: rgba(255, 255, 255, 0.45);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-academic-programs {
  --acu-academic-programs-copy: var(--acu-white);
  --acu-academic-programs-heading: var(--acu-white);
  --acu-academic-programs-arrow: var(--acu-citrus-orange);
  --acu-academic-programs-rule: rgba(255, 255, 255, 0.35);
  --acu-academic-programs-title-hover: var(--acu-white);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-student-life {
  --acu-student-life-copy: var(--acu-white);
  --acu-student-life-eyebrow: var(--acu-white);
  --acu-student-life-heading: var(--acu-white);
  --acu-student-life-cta-secondary-surface: transparent;
  --acu-student-life-cta-secondary-surface-hover: rgba(255, 255, 255, 0.12);
  --acu-student-life-cta-secondary-copy: var(--acu-white);
  --acu-student-life-cta-secondary-border: rgba(255, 255, 255, 0.45);
  --acu-student-life-card-heading: var(--acu-white);
  --acu-student-life-card-heading-hover: var(--acu-white);
  --acu-student-life-card-arrow: var(--acu-citrus-orange);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-general-content {
  --acu-general-content-copy: var(--acu-white);
  --acu-general-content-eyebrow: var(--acu-white);
  --acu-general-content-heading: var(--acu-white);
  --acu-general-content-column-title: var(--acu-white);
  --acu-general-content-link-copy: var(--acu-white);
  --acu-general-content-link-arrow: var(--acu-citrus-orange);
  --acu-general-content-caption: var(--acu-white);
  --acu-general-content-cta-secondary-surface-hover: rgba(255, 255, 255, 0.12);
  --acu-general-content-cta-secondary-copy: var(--acu-white);
  --acu-general-content-cta-secondary-border: rgba(255, 255, 255, 0.45);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-news {
  --acu-news-copy: var(--acu-white);
  --acu-news-eyebrow: var(--acu-white);
  --acu-news-heading: var(--acu-white);
  --acu-news-title: var(--acu-white);
  --acu-news-title-hover: var(--acu-white);
  --acu-news-rule: rgba(255, 255, 255, 0.35);
  --acu-news-chip-copy: var(--acu-white);
  --acu-news-chip-border: rgba(255, 255, 255, 0.5);
  --acu-news-arrow: var(--acu-citrus-orange);
}

/* The campus detail card keeps its own white surface and dark copy, so only
   the copy that sits directly on the section surface flips to white. */
.acu-ebenezer-page-sections__section--theme-dark .acu-campus-locations {
  --acu-campus-locations-copy: var(--acu-white);
  --acu-campus-locations-heading: var(--acu-white);
  --acu-campus-locations-tab-copy: var(--acu-white);
  --acu-campus-locations-tab-rule: rgba(255, 255, 255, 0.35);
  --acu-campus-locations-tab-marker-soft: rgba(255, 255, 255, 0.5);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-callout-module {
  --acu-callout-module-copy: var(--acu-white);
  --acu-callout-module-heading: var(--acu-white);
  --acu-callout-module-heading-hover: var(--acu-white);
  --acu-callout-module-arrow: var(--acu-citrus-orange);
  --acu-callout-module-rule: rgba(255, 255, 255, 0.35);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-stats-grid {
  --acu-stats-grid-copy: var(--acu-white);
  --acu-stats-grid-eyebrow: var(--acu-white);
  --acu-stats-grid-heading: var(--acu-white);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-contact-grid {
  --acu-contact-grid-copy: var(--acu-white);
  --acu-contact-grid-heading: var(--acu-white);
  --acu-contact-grid-label: var(--acu-white);
  --acu-contact-grid-title: var(--acu-white);
  --acu-contact-grid-icon: var(--acu-citrus-orange);
  --acu-contact-grid-rule: rgba(255, 255, 255, 0.35);
}

/* The open FAQ card keeps its white surface and dark copy, so only the copy,
   icons, and borders that sit directly on the section surface flip to white. */
.acu-ebenezer-page-sections__section--theme-dark .acu-general-faq {
  --acu-general-faq-copy: var(--acu-white);
  --acu-general-faq-heading: var(--acu-white);
  --acu-general-faq-question: var(--acu-white);
  --acu-general-faq-icon: var(--acu-white);
  --acu-general-faq-border: rgba(255, 255, 255, 0.35);
  --acu-general-faq-button-copy: var(--acu-white);
  --acu-general-faq-button-border: rgba(255, 255, 255, 0.45);
  --acu-general-faq-button-surface-hover: rgba(255, 255, 255, 0.12);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-life-at-acu {
  --acu-life-at-acu-copy: var(--acu-white);
  --acu-life-at-acu-eyebrow: var(--acu-white);
  --acu-life-at-acu-heading: var(--acu-white);
  --acu-life-at-acu-note: rgba(255, 255, 255, 0.78);
  --acu-life-at-acu-rule: rgba(255, 255, 255, 0.35);
  --acu-life-at-acu-card-surface: rgba(255, 255, 255, 0.08);
  --acu-life-at-acu-progress-track: rgba(255, 255, 255, 0.4);
  --acu-life-at-acu-follow-heading: var(--acu-white);
  --acu-life-at-acu-channel-border: rgba(255, 255, 255, 0.5);
  --acu-life-at-acu-channel-icon: var(--acu-white);
}

.acu-ebenezer-page-sections__section--theme-dark .acu-rich-text {
  --acu-rich-text-copy: var(--acu-white);
  --acu-rich-text-heading: var(--acu-white);
  --acu-rich-text-link: var(--acu-white);
  --acu-rich-text-link-hover: var(--acu-sky-blue);
  --acu-rich-text-rule: rgba(255, 255, 255, 0.35);
  --acu-rich-text-quote-rule: var(--acu-citrus-orange);
  --acu-rich-text-muted-surface: rgba(255, 255, 255, 0.08);
}

/* The jump card and the open checklist step keep their own light surfaces and
   dark copy, so only the copy, rules, and closed steps that sit directly on
   the section surface flip to white. */
.acu-ebenezer-page-sections__section--theme-dark .acu-admissions-listing {
  --acu-admissions-listing-copy: var(--acu-white);
  --acu-admissions-listing-heading: var(--acu-white);
  --acu-admissions-listing-step-border: rgba(255, 255, 255, 0.45);
  --acu-admissions-listing-step-title: var(--acu-white);
  --acu-admissions-listing-step-icon: var(--acu-white);
  --acu-admissions-listing-event-title: var(--acu-white);
  --acu-admissions-listing-event-copy: var(--acu-white);
  --acu-admissions-listing-event-line: rgba(255, 255, 255, 0.5);
  --acu-admissions-listing-event-dot: var(--acu-horizon-red);
  --acu-admissions-listing-event-dot-core: var(--acu-hero-purple);
}

/* The arrow buttons keep their white surface and dark arrow, so only the copy
   that sits directly on the section surface flips to white. */
.acu-ebenezer-page-sections__section--theme-dark .acu-counselor-slider {
  --acu-counselor-slider-copy: var(--acu-white);
  --acu-counselor-slider-eyebrow: var(--acu-white);
  --acu-counselor-slider-heading: var(--acu-white);
  --acu-counselor-slider-name: var(--acu-white);
  --acu-counselor-slider-portrait-surface: rgba(255, 255, 255, 0.08);
  --acu-counselor-slider-progress-track: rgba(255, 255, 255, 0.4);
  --acu-counselor-slider-nav-border: transparent;
}

/* The rules and the arrow lighten on purple; the arrow takes the citrus
   accent used by the other dark-surface arrow links. */
.acu-ebenezer-page-sections__section--theme-dark .acu-quick-guide {
  --acu-quick-guide-copy: var(--acu-white);
  --acu-quick-guide-heading: var(--acu-white);
  --acu-quick-guide-card-heading: var(--acu-white);
  --acu-quick-guide-link-copy: var(--acu-white);
  --acu-quick-guide-link-arrow: var(--acu-citrus-orange);
  --acu-quick-guide-divider: rgba(255, 255, 255, 0.3);
  --acu-quick-guide-media-surface: rgba(255, 255, 255, 0.08);
}

/* Copy, rules, and the tag lighten on purple; the arrow takes the citrus
   accent used by the other dark-surface arrow links. */
.acu-ebenezer-page-sections__section--theme-dark .acu-featured-programs {
  --acu-featured-programs-copy: var(--acu-white);
  --acu-featured-programs-eyebrow: var(--acu-white);
  --acu-featured-programs-heading: var(--acu-white);
  --acu-featured-programs-title: var(--acu-white);
  --acu-featured-programs-title-hover: var(--acu-white);
  --acu-featured-programs-rule: rgba(255, 255, 255, 0.35);
  --acu-featured-programs-tag-copy: var(--acu-white);
  --acu-featured-programs-tag-border: rgba(255, 255, 255, 0.5);
  --acu-featured-programs-arrow: var(--acu-citrus-orange);
  --acu-featured-programs-media-surface: rgba(255, 255, 255, 0.08);
}
