  /* ===== EDUCATOR ===== */
  .educator{
    --ed-font:'Plus Jakarta Sans','Nunito','Segoe UI',system-ui,sans-serif;
    --ed-ink:#0e1230;
    --ed-muted:#5d6179;
    --ed-violet:#5b4de0;
    background:#fff;padding:96px 0 150px;overflow:hidden;font-family:var(--ed-font);
  }
  .educator::before{
    content:'';position:absolute;inset:0;pointer-events:none;
    background:
      radial-gradient(circle at 18% 38%,rgba(122,106,255,.10),transparent 42%),
      radial-gradient(circle at 92% 16%,rgba(122,106,255,.07),transparent 36%);
  }
  .ed-wave{position:absolute;left:0;right:0;bottom:0;height:clamp(110px,15vw,210px);pointer-events:none;line-height:0;}
  .ed-wave svg{display:block;width:100%;height:100%;}
  .ed-grid{
    position:relative;z-index:1;max-width:1500px;padding-inline:clamp(18px,3vw,44px);
    display:grid;grid-template-columns:minmax(0,4.7fr) minmax(0,4.9fr) minmax(0,2.45fr);
    gap:clamp(20px,2.4vw,40px);align-items:center;
  }
  .ed-stage{position:relative;width:100%;max-width:640px;aspect-ratio:1/1.1;}
  .ed-glow{
    position:absolute;left:7%;top:7%;width:86%;aspect-ratio:1;border-radius:50%;
    background:radial-gradient(circle at 50% 42%,#e4dfff 0%,#eeebff 52%,rgba(255,255,255,0) 71%);
  }
  .ed-orb{position:absolute;left:76%;top:5%;width:11%;aspect-ratio:1;border-radius:50%;background:#efedff;opacity:.9;}
  .ed-photo{
    position:absolute;left:13%;bottom:12%;width:74%;height:auto;
    filter:drop-shadow(0 22px 30px rgba(52,44,160,.18));
    -webkit-mask-image:linear-gradient(#000 80%,transparent 100%);
    mask-image:linear-gradient(#000 80%,transparent 100%);
  }
  .ed-badge{
    position:absolute;z-index:3;display:flex;align-items:center;gap:.7em;
    background:#fff;border-radius:1.5em;padding:.8em 1.2em .8em 1em;
    font-size:clamp(11px,1.02vw,15px);font-weight:600;line-height:1.28;color:var(--ed-ink);
    box-shadow:0 14px 34px rgba(76,66,190,.13),0 2px 6px rgba(76,66,190,.06);
    rotate:var(--r,-3deg);white-space:nowrap;
  }
  .ed-badge svg{width:1.9em;height:1.9em;flex:none;color:var(--ed-violet);}
  .ed-b1{left:1%;top:12%;--r:-4deg;}
  .ed-b2{left:67%;top:19%;--r:-4deg;}
  .ed-b3{left:0;top:38%;--r:-4deg;}
  .ed-b4{left:70%;top:47%;--r:4deg;}
  .ed-b5{left:2%;top:67%;--r:-7deg;}
  .ed-arrows{position:absolute;inset:0;width:100%;height:100%;z-index:2;color:#7b6cf6;pointer-events:none;overflow:visible;}
  .ed-arrows path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;}
  .ed-sign{
    position:absolute;z-index:3;left:7%;bottom:1%;rotate:-7deg;
    font-family:'Caveat','Segoe Script',cursive;font-weight:700;font-size:clamp(32px,3.7vw,54px);line-height:1;color:#2b2a8c;
  }
  .ed-pioneer{
    position:absolute;z-index:3;right:0;bottom:2%;rotate:-12deg;text-align:left;
    font-family:'Caveat','Segoe Script',cursive;font-weight:600;font-size:clamp(19px,2vw,29px);line-height:1.08;color:#2a2f7a;
  }
  .ed-pioneer svg{display:block;width:70%;height:10px;margin-top:4px;color:#5b4de0;}
  .ed-pioneer svg path{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;}
  .ed-body{min-width:0;}
  .educator .eyebrow{font-family:var(--ed-font);font-size:12.5px;font-weight:800;color:var(--ed-violet);background:#f0eefd;padding:10px 18px;margin-bottom:26px;}
  .ed-body h2{
    font-family:var(--ed-font);font-weight:800;font-size:clamp(33px,3.2vw,52px);line-height:1.1;letter-spacing:-.028em;
    color:var(--ed-ink);margin-bottom:24px;
  }
  .ed-body h2 em{
    font-style:normal;display:inline-block;padding-bottom:.08em;
    background:linear-gradient(90deg,#6a4ae8 0%,#6a63f5 55%,#6577f8 100%);
    -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
  }
  .ed-intro{color:var(--ed-muted);font-size:clamp(14.5px,1.1vw,16.5px);line-height:1.7;margin-bottom:34px;max-width:540px;}
  .ed-creds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;margin:0 0 38px;padding:0;list-style:none;}
  .ed-cred{display:flex;align-items:center;gap:14px;font-size:clamp(13.5px,1.02vw,15.5px);font-weight:500;color:#2b2f48;line-height:1.3;min-width:0;}
  .ed-cred-ic{
    width:clamp(42px,3.4vw,52px);aspect-ratio:1;flex:none;border-radius:16px;background:#f1f0fc;color:var(--ed-violet);
    display:grid;place-items:center;box-shadow:0 6px 14px rgba(76,66,190,.07);
  }
  .ed-cred-ic svg{width:48%;height:48%;}
  .ed-ctas{display:flex;flex-wrap:wrap;gap:14px;align-items:center;}
  .educator .ed-ctas .btn{
    font-family:var(--ed-font);font-weight:700;font-size:clamp(14px,1.05vw,15.5px);padding:clamp(13px,1.15vw,16px) clamp(20px,1.7vw,26px);
    transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease,border-color .22s ease;
  }
  .educator .ed-ctas .btn:active{transform:translateY(0) scale(.98);}
  .educator .ed-ctas .btn-primary{box-shadow:0 12px 28px rgba(79,84,240,.34);}
  .educator .ed-ctas .btn-primary:hover{box-shadow:0 16px 34px rgba(79,84,240,.42);}
  .ed-btn-ghost{background:#fff;color:var(--ed-ink);border:1.5px solid #dedcec;box-shadow:0 4px 12px rgba(40,36,110,.05);}
  .ed-btn-ghost:hover{border-color:#bdb7e6;box-shadow:0 10px 24px rgba(76,66,190,.12);}
  .ed-btn-ghost[aria-disabled="true"]{opacity:.55;cursor:not-allowed;pointer-events:none;}
  .ed-play{width:1.9em;aspect-ratio:1;border-radius:50%;background:var(--ed-ink);color:#fff;display:grid;place-items:center;flex:none;}
  .ed-play svg{width:42%;height:42%;margin-left:6%;}
  .ed-card{
    min-width:0;background:linear-gradient(165deg,#f5f4ff 0%,#fbfaff 100%);
    border:1px solid rgba(107,92,248,.12);border-radius:28px;
    padding:clamp(28px,2.9vw,44px) clamp(24px,2.4vw,36px) clamp(26px,2.6vw,38px);
    box-shadow:0 22px 54px rgba(76,66,190,.08);
  }
  .ed-card-mark{display:block;width:34px;height:28px;color:#6d4cf0;margin-bottom:24px;}
  .ed-card blockquote{
    font-style:italic;font-weight:500;font-size:clamp(17px,1.55vw,23px);line-height:1.5;color:var(--ed-ink);letter-spacing:-.005em;
  }
  .ed-card-who{border-top:1px solid rgba(14,18,48,.1);margin-top:clamp(26px,2.8vw,40px);padding-top:clamp(18px,2vw,26px);}
  .ed-card-who b{display:block;font-weight:700;font-size:clamp(15px,1.15vw,17px);color:var(--ed-ink);margin-bottom:6px;}
  .ed-card-who span{font-size:clamp(13.5px,1vw,15px);color:#6a6e86;}

  /* Entrance animation: only armed when JS runs and motion is allowed. */
  .educator.ed-ready .ed-r{
    opacity:0;transform:translateY(18px);
    transition:opacity .8s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0s);
  }
  .educator.ed-ready.ed-in .ed-r{opacity:1;transform:none;}

  @media(max-width:1100px){
    .ed-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;}
    .ed-card{grid-column:1 / -1;max-width:640px;margin:8px auto 0;}
  }
  @media(max-width:900px){
    .educator{padding:56px 0 130px;}
    .ed-grid{display:flex;flex-direction:column;align-items:stretch;gap:0;max-width:640px;}
    .ed-body{display:contents;}
    .educator .eyebrow{order:1;align-self:flex-start;margin-bottom:6px;}
    .ed-stage{order:2;align-self:center;width:100%;max-width:520px;margin-bottom:6px;}
    .ed-body h2{order:3;margin:14px 0 18px;font-size:clamp(33px,8.6vw,48px);}
    .ed-intro{order:4;margin-bottom:26px;max-width:none;}
    .ed-creds{order:5;margin-bottom:30px;gap:14px 12px;}
    .ed-ctas{order:6;margin-bottom:34px;}
    .ed-card{order:7;max-width:none;margin:0;}
    .ed-badge{font-size:clamp(10.5px,2.7vw,14px);}
  }
  @media(max-width:480px){
    .educator{padding:44px 0 120px;}
    .ed-cred{gap:10px;font-size:13px;}
    .ed-cred-ic{width:40px;border-radius:13px;}
    .ed-ctas{flex-direction:column;align-items:stretch;gap:10px;}
    .educator .ed-ctas .btn{width:100%;justify-content:center;white-space:normal;text-align:center;}
    .ed-badge{padding:.65em .95em .65em .8em;gap:.55em;}
  }
  @media(max-width:380px){
    .ed-sign{left:2%;font-size:26px;}
    .ed-pioneer{font-size:16px;}
  }
  @media(prefers-reduced-motion:reduce){
    .educator.ed-ready .ed-r{opacity:1;transform:none;transition:none;}
    .educator .ed-ctas .btn{transition:none;}
  }

  .dots span.active{background:#fff;width:20px;border-radius:4px;}
