/* A shorter path from introduction to student stories and the first meeting. */
.reviews-section{padding-block:76px 58px}
.reviews-heading{margin-bottom:36px}
.reviews-track{padding-top:30px}
.review-portrait{width:min(224px,80%);margin-bottom:29px}
.goals-section{padding-block:76px 70px}
.goals-heading{margin-bottom:28px}
.goal-tabs{margin-bottom:28px}
.goal-panel{margin-block:28px}
.approach-section{padding-block:80px}
.approach-intro>p:not(.eyebrow){max-width:430px}
.scene-sticky,.scene-animated .scene-sticky{position:relative;top:auto;min-height:0;padding-block:56px}
.scene-heading h2{font-size:clamp(2.25rem,3.6vw,3rem)}
.scene-steps{margin-top:24px;gap:13px}
.scene-visual{max-width:590px}
.scene-scroll-cue{display:none!important}
.two-ways-section{padding-top:76px}
.demo-section{padding-block:70px}
.lesson-section{padding-block:0 72px}
.lesson-steps{margin-bottom:0}
.booking-section-heading{position:static}
.booking-intro{min-width:0}
.booking-intro>p:not(.eyebrow){font-size:.9375rem;color:var(--muted);margin-top:21px}
.booking-section-heading .booking-offer{margin-top:18px}

/* A clearly labelled example: no invented assessment of the visitor. */
.diagnostic-plan{margin-top:28px;padding:24px 25px 25px;border:1px solid #cedaf2;border-radius:18px;background:linear-gradient(130deg,#fff 60%,#f4f7ff);box-shadow:0 14px 35px #29477c07;position:relative;isolation:isolate}
.diagnostic-plan-top{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#65758c}
.diagnostic-plan-top>span{font-size:.625rem;letter-spacing:1.2px;line-height:1.6}
.diagnostic-plan-top svg{width:25px;height:25px;color:#3459e8;flex-shrink:0}
.diagnostic-plan h3{font-size:1.375rem;line-height:1.4;font-weight:500;letter-spacing:-.6px;margin:15px 0 24px;max-width:280px}
.diagnostic-steps{list-style:none;margin:0;padding:0;display:grid;gap:21px}
.diagnostic-steps li{display:grid;grid-template-columns:29px minmax(0,1fr);gap:13px;position:relative}
.diagnostic-steps li:not(:last-child)::after{content:"";position:absolute;top:35px;bottom:-15px;left:14px;border-left:1px solid #dbe3f0;z-index:-1}
.diagnostic-step-mark{width:29px;height:29px;border-radius:50%;background:#eaf1e7;color:#486747;display:grid;place-items:center;font-size:.875rem;line-height:1}
.diagnostic-steps li:nth-child(2) .diagnostic-step-mark{background:#fcf0e9;color:#a06748}
.diagnostic-steps li:nth-child(3) .diagnostic-step-mark{background:#eaf0ff;color:#3459e8}
.diagnostic-steps h4{font-size:.6875rem;font-weight:500;line-height:1.6;color:#65758c;letter-spacing:.1px;margin:0 0 5px}
.diagnostic-steps p{font-size:.875rem;line-height:1.65;color:#17233a;margin:0;overflow-wrap:anywhere}
.diagnostic-steps .diagnostic-route{display:flex;flex-wrap:wrap;column-gap:7px;row-gap:2px;color:#3459e8;font-size:.8125rem}
.diagnostic-route i{font-style:normal;color:#93a6d2}
.diagnostic-plan.is-visible .diagnostic-step-mark{animation:diagnostic-step-in .65s cubic-bezier(.2,.7,.2,1) both}
.diagnostic-plan.is-visible li:nth-child(2) .diagnostic-step-mark{animation-delay:.1s}
.diagnostic-plan.is-visible li:nth-child(3) .diagnostic-step-mark{animation-delay:.2s}
@keyframes diagnostic-step-in{from{opacity:0;transform:translateY(6px) scale(.85)}to{opacity:1;transform:none}}
@media(min-width:701px) and (max-width:1100px){
 .diagnostic-plan{padding:21px 19px}
 .diagnostic-plan h3{font-size:1.25rem}
 .diagnostic-steps li{gap:10px}
 .diagnostic-steps p{font-size:.8125rem}
}
@media(max-width:700px){
 .reviews-section{padding-block:48px 42px}
 .reviews-heading{margin-bottom:25px}
 .reviews-track{padding-top:27px}
 .review-portrait{width:min(235px,82%)}
 .goals-section{padding-block:50px}
 .goal-tabs{margin-bottom:24px}
 .approach-section{padding-block:50px}
 .approach-intro>p:not(.eyebrow){max-width:none}
 .scene-sticky,.scene-animated .scene-sticky{padding-block:44px 38px}
 .scene-heading h2{font-size:2.125rem;letter-spacing:-1.4px}
 .scene-visual{max-width:460px;width:100%;justify-self:center}
 .scene-steps{margin-top:18px;gap:12px}
 .two-ways-section{padding-top:50px}
 .demo-section{padding-block:50px}
 .lesson-section{padding-block:0 50px}
 .booking-section{padding-top:50px}
 .booking-section-heading{display:contents}
 .booking-intro{grid-row:1}
 .booking-intro>p:not(.eyebrow){margin-top:17px}
 .booking-widget{grid-row:2}
 .diagnostic-plan{grid-row:3;margin-top:0;padding:22px 21px}
 .booking-fallback{grid-row:4}
 .diagnostic-plan h3{max-width:260px;margin-bottom:22px;font-size:1.375rem}
 .diagnostic-steps{gap:19px}
}
@media(prefers-reduced-motion:reduce){.diagnostic-plan,.diagnostic-step-mark{animation:none!important}}
