/* District site custom styles: hero entrance animation. */
@keyframes district-rise {  from {
    opacity: 0;
    transform: translateY(26px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
section[aria-labelledby="hero-heading"] p,
section[aria-labelledby="hero-heading"] h1,
section[aria-labelledby="hero-heading"] .mt-5,
section[aria-labelledby="hero-heading"] .mt-8 {
  animation: district-rise 0.7s cubic-bezier(0.2, 0.7, 0.3, 1) both;
}
section[aria-labelledby="hero-heading"] h1 {
  animation-delay: 0.12s;
}
section[aria-labelledby="hero-heading"] .mt-5 {
  animation-delay: 0.22s;
}
section[aria-labelledby="hero-heading"] .mt-8 {
  animation-delay: 0.32s;
}
@media (prefers-reduced-motion: reduce) {
  section[aria-labelledby="hero-heading"] p,
  section[aria-labelledby="hero-heading"] h1,
  section[aria-labelledby="hero-heading"] .mt-5,
  section[aria-labelledby="hero-heading"] .mt-8 {
    animation: none;
  }
}

/* Real hero dressing (plain CSS so it always exists). */
.hero-shade {
  background: linear-gradient(90deg, rgba(7, 24, 45, 0.92) 0%, rgba(7, 24, 45, 0.75) 45%, rgba(0, 59, 162, 0.45) 75%, rgba(0, 59, 162, 0.25) 100%);
}
.hero-text {
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.65);
}

/* Backfill utilities used by PHP templates that Tailwind never generated. */
.mt-14 { margin-top: 3.5rem; }
.mb-6 { margin-bottom: 1.5rem; }
.max-w-4xl { max-width: 56rem; }
.h-28 { height: 7rem; }
.w-\[14\.28\%\] { width: 14.28%; }
.align-top { vertical-align: top; }
.bg-\[\#eef4ff\] { background-color: #eef4ff; }
.border-l-\[3px\] { border-left-width: 3px; }
.border-l-accent { border-left-color: var(--accent); }
.text-\[11px\] { font-size: 11px; }
.hover\:bg-white\/20:hover { background-color: rgb(255 255 255 / 0.2); }
@media (min-width: 40rem) {
  .sm\:p-8 { padding: 2rem; }
  .sm\:h-36 { height: 9rem; }
}
