/* Homepage (redesign). Builds on services-redesign.css (.fsv tokens, buttons,
   wrappers); classes here are prefixed fh-. */





/* Hero */






.fh-hero-media { flex: 1 1 0; min-width: 0; }
.fh-video { margin: 0; border-radius: 20px; overflow: hidden; background: #403770; }
.fh-video-frame { position: relative; }
.fh-video video { display: block; width: 100%; height: auto; aspect-ratio: 2 / 1; object-fit: cover; object-position: center bottom; background: rgba(196,231,230,0.9); }
.fh-video figcaption { padding: 6px 12px 7px; color: #FFFCFA; font-size: 13px; line-height: 1.35; }
.fh-video figcaption a { color: #FFFCFA; font-weight: 600; }
.fsv .fh-pause {
  position: absolute; right: 8px; bottom: 8px; display: flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; padding: 0; border: 0; border-radius: 50%; background: rgba(64,55,112,0.85); color: #FFFCFA; cursor: pointer;
}
.fsv .fh-pause[hidden] { display: none; }
.fh-pause svg { width: 14px; height: 14px; }
.fsv .fh-pause:hover { background: #403770; }
.fsv .fh-pause:focus-visible { outline: 3px solid var(--fsv-white); outline-offset: 2px; }

/* At a glance */







/* Services */
#services > .fsv-wrap { padding-top: 18px; }
















/* Results */







/* Roles */












/* Classroom */








/* Testimonials */






/* Getting started */






/* Resources */









/* Ready when you are */





@media (min-width: 701px) {
  /* Laptops: numbers row, the services intro and the three box headers fit on one screen
     (checked at 1190 x 650) once the visitor scrolls past the hero buttons. */
  
  #services > .fsv-wrap { padding-top: 12px; }
  #fh-svc-title { font-size: 32px; }
  
  
  /* First screen at 1190 x 650: smaller headline, shorter video, tighter hero spacing. */
  
  
  .fh-video video { aspect-ratio: 2.4 / 1; }
  
  
  #services > .fsv-wrap { padding-top: 4px; }
}

@media (max-width: 700px) {
  /* Phones: same text sizes as before, tighter spacing. The headline stays the largest text. */
  
  
  
   .fh-hero-media { flex-basis: 100%; }
  .fh-video video { aspect-ratio: 16 / 9; }
  .fh-video figcaption { font-size: 15px; padding: 10px 14px 12px; }
  .fsv .fh-pause { width: 40px; height: 40px; }
  .fh-pause svg { width: 16px; height: 16px; }
  
  
  
  
  
}

/* fullmind-local-fallbacks */
.menu-lottie {
  display: block;
  width: 24px;
  height: 18px;
  background: linear-gradient(to bottom, #403770 0 2px, transparent 2px 8px, #403770 8px 10px, transparent 10px 16px, #403770 16px 18px);
}

@media (max-width: 991px) {
  .nav-menu.w-nav {
    overflow: visible;
  }

  .nav-menu-links.w-nav-menu.w--nav-menu-open {
    float: none;
    position: absolute;
    z-index: 999;
    top: 100%;
    right: 0;
    left: 0;
    width: 100%;
    max-width: none;
    max-height: calc(100dvh - 120px);
  }
}
