.modern-teachers .app-search-hero {
  background: #fff !important;
}

.modern-teachers .teacher-skip-link {
  position: fixed;
  z-index: 1200;
  top: 10px;
  left: 10px;
  padding: 10px 14px;
  border-radius: 6px;
  background: #fff;
  color: #00875f;
  font-weight: 800;
  transform: translateY(-160%);
}

.modern-teachers .teacher-skip-link:focus-visible {
  transform: translateY(0);
}

.modern-teachers [id] {
  scroll-margin-top: 110px;
}

.modern-teachers .app-search-hero .inner-heading h1 {
  font-size: clamp(36px, 4vw, 52px);
  line-height: 1.35;
}

.teacher-heading-marker {
  position: relative;
  z-index: 0;
  width: fit-content;
  font-weight: 800;
}

.teacher-heading-marker::after {
  position: absolute;
  z-index: -1;
  right: -.1em;
  bottom: .06em;
  left: -.1em;
  height: .42em;
  border-radius: 999px;
  background: rgba(52, 192, 140, .24);
  content: "";
  transform: rotate(-.8deg);
}

.teacher-cards-showcase {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1200 / 245;
  margin-top: 48px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 55px rgba(27, 64, 52, .09);
}

.teacher-cards-showcase img {
  position: absolute;
  inset: 0 auto auto 0;
  display: block;
  width: 100%;
  height: auto;
  transform: translateY(-27.5%);
}

.teacher-primary-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  margin-top: 28px;
  padding: 15px 26px;
  gap: 18px;
}

.teacher-primary-cta span {
  font-family: "Manrope", sans-serif;
}

.modern-teachers > .fixed-cta {
  display: none !important;
}

.teacher-flow-section {
  background: #fff;
}

.teacher-flow-visual-section {
  padding-block: clamp(48px, 6vw, 82px);
}

.teacher-flow-visual {
  overflow-x: auto;
  margin: 0;
  border: 1px solid #deebe6;
  border-radius: 24px;
  background: #fff;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.teacher-flow-visual:focus-visible {
  outline: 3px solid rgba(11, 138, 103, .35);
  outline-offset: 4px;
}

.teacher-flow-visual img {
  display: block;
  width: 100%;
  height: auto;
}

.teacher-flow-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.teacher-safety-continuation {
  margin-top: clamp(48px, 6vw, 72px);
  padding-top: clamp(36px, 5vw, 56px);
  border-top: 1px solid #deebe6;
}

.teacher-safety-intro {
  max-width: 780px;
  margin: 0 auto 30px;
  color: #52665e;
  font-size: 15px;
  line-height: 1.9;
  text-align: center;
}

.teacher-process-heading { max-width:900px; margin:0 auto 30px; text-align:center; }
.teacher-process-heading h2 { margin:0; color:#14382f; font-size:clamp(28px,3.4vw,46px); line-height:1.4; text-wrap:balance; }
.teacher-process-heading p { margin:10px 0 0; color:#52665e; font-size:15px; line-height:1.8; }
.teacher-process-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:clamp(18px,2.2vw,30px); margin:0; padding:0; list-style:none; }
.teacher-process-grid > li { min-width:0; }
.teacher-process-art { aspect-ratio:1.1 / 1; border-radius:24px; background-repeat:no-repeat; background-size:400% auto; }
.teacher-process-grid li > div:last-child { padding:18px 4px 0; }
.teacher-process-grid span { display:inline-block; padding:6px 12px; border-radius:999px; color:#fff; background:#15986f; font-family:"Manrope",sans-serif; font-size:12px; font-weight:800; letter-spacing:.04em; }
.teacher-process-grid h3 { margin:12px 0 8px; color:#14382f; font-size:19px; line-height:1.5; }
.teacher-process-grid p { margin:0; color:#52665e; font-size:14px; line-height:1.85; }
.teacher-process-note { max-width:960px; margin:30px auto 0; color:#667a72; font-size:12px; line-height:1.8; text-align:center; }
.teacher-safety-steps .teacher-process-art { background-image:url('/assets/teacher-safety-four-steps-illustrated.webp'); background-position-y:44%; }
.teacher-flow-steps .teacher-process-art { background-image:url('/assets/teacher-flow-after-selection-illustrated.png'); background-position-y:44%; }
.teacher-safety-art-1,.teacher-flow-art-1 { background-position-x:0; }
.teacher-safety-art-2,.teacher-flow-art-2 { background-position-x:33.333%; }
.teacher-safety-art-3,.teacher-flow-art-3 { background-position-x:66.667%; }
.teacher-safety-art-4,.teacher-flow-art-4 { background-position-x:100%; }

.teacher-final-section {
  background: #00875f !important;
  color: #fff;
  text-align: center;
}

.teacher-final-inner {
  max-width: 760px;
}

.teacher-final-section .page-kicker {
  color: #a6e1cd;
}

.teacher-final-section h2 {
  margin: 12px 0 16px;
  color: #fff !important;
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.4;
}

.teacher-final-section p {
  margin: 0;
  color: #d8eee6 !important;
  font-size: 14px;
  line-height: 2;
}

.teacher-final-section .teacher-primary-cta {
  background: #fff !important;
  color: #00875f !important;
}

@media (max-width: 640px) {
  .teacher-cards-showcase {
    aspect-ratio: 1200 / 420;
    margin-top: 34px;
    border-radius: 14px;
  }

  .teacher-cards-showcase img {
    width: 175%;
    max-width: none;
    transform: translate(-1%, -27.5%);
  }

  .teacher-primary-cta {
    width: 100%;
    min-height: 50px;
    padding-inline: 18px;
  }

  .teacher-heading-marker {
    width: auto;
  }

  .teacher-flow-visual-section .wrap {
    padding-inline: 20px;
  }

  .teacher-safety-intro {
    text-align: left;
  }

  .teacher-process-heading { margin-bottom:24px; text-align:left; }
  .teacher-process-heading h2 { font-size:28px; }
  .teacher-process-grid { grid-template-columns:1fr; gap:30px; }
  .teacher-process-grid > li { display:grid; grid-template-columns:minmax(0,1fr); }
  .teacher-process-art { border-radius:18px; }
  .teacher-process-grid li > div:last-child { padding:14px 2px 0; }

}

.teacher-welcome {
  background: #faf6ed;
  padding-block: clamp(2rem, 5vw, 4rem);
}

.teacher-welcome-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: clamp(1.5rem, 4vw, 3rem);
}

.teacher-welcome-copy {
  flex: 1 1 28rem;
  min-width: 0;
  color: #4e5446;
}

.teacher-welcome-copy h2 {
  margin: 0 0 .75em;
  color: var(--public-hero-ink);
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  line-height: 1.45;
  text-wrap: balance;
}

.teacher-welcome-copy p {
  margin: .85em 0 0;
  line-height: 1.9;
}

.teacher-welcome-copy strong,
.teacher-welcome-copy a,
.teacher-flow-section .teacher-flow-steps h3 {
  color: var(--public-hero-accent);
}

.teacher-welcome-copy a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  text-decoration: underline;
  text-underline-offset: .2em;
}

.teacher-welcome-art {
  flex: 0 1 16rem;
  width: min(100%, 16rem);
  height: auto;
  margin-inline: auto;
}

.teacher-flow-section #teacherFlowTitle {
  color: var(--public-hero-accent);
}
