/* 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);
  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;
}

@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));
  }
}

@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);
  border-top-color: var(--acu-white);
}

.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-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-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-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);
}
