/* Learning intro stays near the Hero; testimonials follow the teacher section. */
.family-journey{position:relative;background:#fff;z-index:3;scroll-margin-top:110px}
.family-stage{position:relative;max-width:1600px;margin:auto;padding:100px 7% 0}
.family-editorial{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px;gap:30px}
.family-eyebrow{font:600 11px/1.5 Inter,Arial,sans-serif;letter-spacing:.16em;color:#567296}
.learning-introduction .family-eyebrow{display:block;margin:0;font:600 12px/1.4 Inter,Arial,sans-serif;letter-spacing:.04em;color:#1261df}
.family-heading h2{font:600 clamp(40px,4.8vw,72px)/1.02 Inter,Arial,sans-serif;letter-spacing:-.055em;color:#10265a;margin-top:18px}
.family-heading h2 em{font-family:Georgia,serif;font-weight:400;color:#1261df}
.family-source{position:relative;display:inline-flex;align-items:center;min-height:48px;padding:10px 0 16px;color:var(--ink,#112e63);font:600 16px/1.4 Inter,Arial,sans-serif;letter-spacing:-.015em;text-decoration:none;white-space:nowrap;transition:color .18s ease}
.family-source::after{content:"";position:absolute;left:0;bottom:4px;width:32px;height:2px;border-radius:1px;background:var(--blue,#1261df);transition:width .22s cubic-bezier(.22,1,.36,1)}
.family-source:hover,.family-source:focus-visible{color:var(--blue,#1261df)}
.family-source:hover::after,.family-source:focus-visible::after{width:100%}
.family-source:focus-visible{outline:2px solid var(--blue,#1261df);outline-offset:6px;border-radius:2px}
@media(prefers-reduced-motion:reduce){.family-source,.family-source::after{transition:none}}
.family-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;position:relative;perspective:1600px}
.family-card{position:relative;min-width:0;min-height:390px;padding:28px 30px 26px;border-radius:5px 24px 24px 24px;background:#eaf2fc;color:#10265a;box-shadow:0 18px 38px -28px #10265a55;display:flex;flex-direction:column;transform-origin:50% 85%}
.family-card-two{background:#1157d4;color:white;z-index:2}
.family-card-three{background:#fff0df}
.family-card-top{display:flex;justify-content:space-between;gap:8px;font:600 9px/1.5 Inter,Arial,sans-serif;letter-spacing:.09em}
.family-card-top span:last-child{opacity:.58;white-space:nowrap}
.family-quote-mark{font:90px/.72 Georgia,serif;color:#1261df;margin-top:30px;height:46px}
.family-card-two .family-quote-mark{color:#a4ccff}
.family-card-three .family-quote-mark{color:#e76b23}
.family-card blockquote{margin:0;font:500 clamp(23px,2.25vw,34px)/1.15 Inter,Arial,sans-serif;letter-spacing:-.045em;min-height:112px}
.family-context{font:400 13px/1.65 Inter,Arial,sans-serif;opacity:.8;margin:20px 0 30px;max-width:310px}
.family-card footer{display:flex;align-items:center;gap:12px;border-top:1px solid #10265a20;padding-top:19px;margin-top:auto}
.family-card-two footer{border-color:#ffffff30}
.family-monogram{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:1px solid currentColor;border-radius:50%;font:500 12px Inter,Arial,sans-serif;opacity:.8}
.family-card footer strong{display:block;font:600 13px/1.4 Inter,Arial,sans-serif}
.family-card-two footer strong{color:#fff}
.family-card footer div>span{display:block;font:400 10px/1.6 Inter,Arial,sans-serif;opacity:.7;margin-top:3px}
.family-footnote{font:400 10px/1.5 Inter,Arial,sans-serif;color:#60718b;margin:28px 0 0;text-align:center}
.journey-next{padding:100px 0 70px;color:#10265a;position:relative}
.journey-next h2{scroll-margin-top:130px;font:600 clamp(56px,7.8vw,116px)/1.02 Inter,Arial,sans-serif;letter-spacing:-.065em;margin:24px 0 30px;text-wrap:initial}
.journey-title-line{display:block}
.journey-next h2 em{font-family:Georgia,serif;font-weight:400;color:#1261df}
.journey-title-last{padding-left:16%}
.journey-next-bottom{display:flex;justify-content:space-between;align-items:center;padding-left:16%;gap:24px}
.journey-next-bottom p{font:400 17px/1.6 Inter,Arial,sans-serif;color:#4b6383}
.journey-down{display:grid;place-items:center;width:56px;height:56px;border:1px solid #b6c8e1;border-radius:50%;font:400 29px Inter,Arial,sans-serif;color:#1261df}
.learning-introduction+.learning{padding-top:0}
/* No learning-title overlay: the restored cards hand back to normal-flow FAQ. */
.family-journey.is-scroll-story{height:180svh}
.family-journey.is-scroll-story .family-stage{
  position:sticky;top:0;height:100svh;min-height:650px;
  width:100%;max-width:none;
  padding: max(125px,15svh) max(var(--page-gutter,48px),calc((100% - var(--page-width,1200px))/2)) 0;
  overflow:clip;overflow-clip-margin:0;
}
.is-scroll-story .family-editorial{margin-bottom:38px}
.is-scroll-story .family-card{min-height:min(430px,49svh);will-change:transform}
.is-scroll-story .family-editorial,.is-scroll-story .family-cards,.is-scroll-story .family-footnote{position:relative;z-index:2}
@media(min-width:901px) and (max-height:780px){
  .family-journey.is-scroll-story .family-stage{padding-top:105px}
  .is-scroll-story .family-editorial{margin-bottom:24px}
}
@media(min-width:901px) and (max-height:780px){
  .family-stage{padding-top:90px}
  .family-editorial{margin-bottom:24px}
  .family-heading h2{font-size:40px}
  .family-heading h2 br{display:none}
  .family-card{min-height:355px;padding:20px 24px}
  .family-card blockquote{font-size:27px;min-height:92px}
  .family-quote-mark{margin-top:22px;height:38px;font-size:76px}
  .family-context{margin:12px 0 20px;font-size:12px}
  .family-footnote{margin-top:18px}
}
@media(max-width:900px){
  .family-stage{padding:70px 24px 0}
  .family-editorial{align-items:flex-start;gap:20px}
  .family-heading h2{font-size:43px}
  .family-source{font-size:14px;margin-top:40px}
  .family-cards{gap:14px}
  .family-card{padding:22px 24px;min-height:365px}
  .family-card blockquote{font-size:28px}
  .family-context{font-size:13px}
  .journey-next{padding:85px 0 60px}
  .journey-next h2{font-size:clamp(47px,7.8vw,72px)}
}
@media(max-width:600px){
  .family-editorial{display:block;margin-bottom:30px}
  .family-heading h2{font-size:44px}
  .family-source{margin-top:24px}
  .family-cards{display:flex;flex-direction:column;gap:22px}
  .family-card{min-height:365px}
  .family-card blockquote{font-size:30px;min-height:90px}
  .family-card-two{margin:0 0 0 14px}
  .family-card-three{margin-right:14px}
  .family-footnote{text-align:left;font-size:10px}
  .journey-next h2{font-size:clamp(43px,11.2vw,62px)}
  .journey-title-last{padding-left:0}
  .journey-next-bottom{padding-left:0}
  .journey-next-bottom p{font-size:15px}
  .journey-down{width:42px;height:42px;flex-shrink:0;font-size:24px}
}
@media(prefers-reduced-motion:reduce){.family-card{will-change:auto}}



/* Restore the original full-screen title stage, independently of testimonials. */
.learning-introduction.is-learning-scene{height:160svh;position:relative}
.learning-introduction.is-learning-scene .journey-next{
  position:sticky;top:0;height:100svh;min-height:650px;
  padding:8svh 0 16svh;display:flex;flex-direction:column;justify-content:center;
}

/* Let the first learning row occupy the empty tail of the desktop title stage. */
.learning-introduction.is-learning-scene + .learning{margin-top:-24svh}
