/* What to Expect page: light-blue preparation section refresh */
.what-page .before-visit-section {
  position: relative;
  overflow: hidden;
  padding: clamp(5rem, 8vw, 6.75rem) 0;
  background:
    radial-gradient(circle at 15% 0%, rgba(255, 255, 255, 0.82), transparent 22rem),
    radial-gradient(circle at 100% 100%, rgba(169, 213, 238, 0.26), transparent 26rem),
    linear-gradient(180deg, #f3f9fc 0%, #eaf5fb 100%) !important;
}

.what-page .before-visit-section::before {
  content: "";
  position: absolute;
  inset: auto -5% 8% auto;
  width: 24rem;
  height: 24rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(79, 163, 217, 0.14) 0%, rgba(79, 163, 217, 0) 68%);
  pointer-events: none;
}

.what-page .before-visit-section .container {
  position: relative;
  z-index: 1;
}

.what-page .before-visit-section .section-header {
  margin-bottom: clamp(2rem, 4vw, 3rem);
}

.what-page .before-visit-section .section-header .eyebrow {
  color: var(--aim-sky-700) !important;
}

.what-page .before-visit-section .section-header h2 {
  color: var(--aim-blue) !important;
  font-size: clamp(2.35rem, 4.25vw, 4.4rem);
  line-height: 0.98;
  max-width: 12ch;
  margin-inline: auto;
}

.what-page .before-visit-section .section-header .decor-line {
  background: rgba(79, 163, 217, 0.34) !important;
}

.what-page .before-grid {
  gap: clamp(1rem, 2vw, 1.5rem);
}

.what-page .before-card {
  position: relative;
  min-height: 19rem;
  padding: 1.9rem 1.85rem 1.75rem;
  border: 1px solid rgba(79, 163, 217, 0.16) !important;
  border-radius: 1.9rem;
  background:
    radial-gradient(circle at 96% 0%, rgba(234, 245, 251, 0.78), transparent 8rem),
    #ffffff !important;
  box-shadow: 0 18px 38px rgba(4, 34, 73, 0.075) !important;
  backdrop-filter: none;
}

.what-page .before-card::after {
  content: "";
  position: absolute;
  inset: auto 1.25rem 1.1rem 1.25rem;
  height: 1px;
  background: linear-gradient(90deg, rgba(79, 163, 217, 0.22), rgba(79, 163, 217, 0));
}

.what-page .before-icon {
  width: 3.85rem;
  height: 3.85rem;
  margin-bottom: 1.15rem;
  border-radius: 1.2rem;
  background: linear-gradient(180deg, #ffffff 0%, #f3f9fc 100%) !important;
  color: var(--aim-sky-700) !important;
  border: 1px solid rgba(79, 163, 217, 0.20) !important;
  box-shadow: 0 10px 24px rgba(4, 34, 73, 0.08) !important;
}

.what-page .before-icon svg {
  width: 1.65rem;
  height: 1.65rem;
}

.what-page .before-card h3 {
  margin: 0 0 0.65rem;
  color: var(--aim-blue) !important;
  font-size: 1.4rem;
  line-height: 1.16;
  font-weight: 750;
  letter-spacing: -0.01em;
}

.what-page .before-card p {
  margin: 0 0 1rem;
  color: var(--aim-text-soft) !important;
  font-size: 1.06rem;
  line-height: 1.72;
}

.what-page .before-card a {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: var(--aim-olive-900) !important;
  font-size: 0.88rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
}

.what-page .before-card a:hover {
  color: var(--aim-blue) !important;
}

/* Remove text-box overlays from these two page images entirely. */
.what-page .what-hero-callout,
.resource-doc-page .resource-doc-callout {
  display: none !important;
}

.what-page .what-hero-image,
.resource-doc-page .resource-doc-hero-image {
  isolation: isolate;
}

@media (max-width: 1120px) {
  .what-page .before-visit-section .section-header h2 {
    max-width: 16ch;
  }
}

@media (max-width: 720px) {
  .what-page .before-card {
    min-height: auto;
  }
  .what-page .before-visit-section .section-header h2 {
    font-size: clamp(2rem, 9vw, 3rem);
  }
  .what-page .before-card h3 {
    font-size: 1.28rem;
  }
  .what-page .before-card p {
    font-size: 1rem;
  }
}
