/* Production-safe shared typography and controls */
body{word-spacing:.018em;letter-spacing:0;text-rendering:optimizeLegibility}
h1,h2,h3,.brand,.btn,.eyebrow,.pill,.fact strong{word-break:normal!important;overflow-wrap:normal!important}
h1{letter-spacing:-.052em!important;word-spacing:.028em!important;line-height:.92!important;text-wrap:balance}
h2{letter-spacing:-.036em!important;word-spacing:.032em!important;line-height:1.02!important;text-wrap:balance}
h3{letter-spacing:-.014em!important;word-spacing:.035em!important;line-height:1.22!important;text-wrap:balance}
p,.lead,.module p,.career-item p,.person-bio,.person-credentials{word-spacing:.045em;letter-spacing:.003em;line-height:1.65;text-wrap:pretty}
.eyebrow{letter-spacing:.07em!important;word-spacing:.12em!important;line-height:1.35!important}
.nav-links{column-gap:24px;word-spacing:.02em}
.nav-links a,.brand{letter-spacing:-.006em;word-spacing:.025em;line-height:1.25}
.btn,.pill{letter-spacing:0!important;word-spacing:.025em!important;line-height:1.28!important;text-align:center}
.btn-light{background:#fff!important;color:var(--ink)!important;border-color:var(--ink)!important}
.btn-light:hover,.btn-light:focus-visible{color:var(--blue)!important;border-color:var(--blue)!important}
.btn[aria-disabled="true"],a[aria-disabled="true"],button:disabled{opacity:.62!important;cursor:not-allowed!important;filter:grayscale(.25);transform:none!important;box-shadow:none!important}
[hidden]{display:none!important}
.req{color:#c2382b;font-weight:950;margin-left:3px}
.consent{display:flex!important;align-items:flex-start;gap:10px;margin-top:14px;color:var(--muted);font-size:.78rem;line-height:1.5}
.consent input{width:auto!important;flex:0 0 auto;margin:3px 0 0!important;accent-color:var(--blue)}
.policy-section{background:#f3f6ff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.policy-intro{max-width:720px;margin:14px 0 34px;color:var(--muted)}
.policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.policy-card{padding:26px;border:1px solid #cbd5ef;border-radius:22px;background:#fff;box-shadow:0 12px 28px rgba(20,33,61,.07)}
.policy-card h3{margin:0 0 14px;color:var(--ink)}
.policy-card ul{margin:0;padding-left:19px;color:var(--muted)}
.policy-card li{margin:9px 0;line-height:1.55}
.policy-card strong{color:var(--ink)}
.policy-note{margin-top:20px;padding:14px 17px;border-left:4px solid var(--blue);border-radius:10px;background:#e8edff;color:#394763;font-size:.82rem;line-height:1.55}
.batch-kicker{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:2px 12px;margin-top:18px;padding:11px 15px;border:1.5px solid var(--ink);border-radius:15px;background:#fff;box-shadow:5px 6px 0 #cbd6ff}
.batch-kicker span{grid-row:1/3;padding:6px 9px;border-radius:9px;background:var(--lime);color:var(--ink);font-size:.63rem;font-weight:950;letter-spacing:.08em}
.batch-kicker strong{font-size:.88rem;line-height:1.25}
.batch-kicker small{color:var(--muted);font-size:.72rem;line-height:1.25}
.explorer-family-visual{position:relative;min-height:530px;perspective:1100px}
.explorer-family-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border:2px solid var(--ink);border-radius:30px;box-shadow:12px 12px 0 var(--ink);transform:rotateY(-3deg);transition:transform .3s ease,box-shadow .3s ease}
.explorer-family-visual:hover img{transform:rotateY(0) translateY(-4px);box-shadow:15px 17px 0 var(--ink)}
.visual-caption{position:absolute;z-index:2;left:-4%;bottom:6%;display:grid;gap:3px;padding:14px 17px;border:2px solid var(--ink);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:6px 7px 0 var(--blue);transform:rotate(-2deg)}
.visual-caption strong{color:var(--blue);font-size:.9rem}
.visual-caption span{color:var(--muted);font-size:.72rem;font-weight:800}
.batch-section{padding:38px 0;background:linear-gradient(135deg,#eaf0ff,#f8faff)}
.batch-panel{display:grid;grid-template-columns:1.05fr 1fr;gap:24px;align-items:center;padding:28px;border:2px solid var(--ink);border-radius:25px;background:#fff;box-shadow:9px 10px 0 var(--blue)}
.batch-copy h2{margin:8px 0 10px;font-size:clamp(2rem,4vw,3.2rem)!important}
.batch-copy p{margin:0;color:var(--muted)}
.batch-label{color:var(--blue);font-size:.7rem;font-weight:950;letter-spacing:.1em}
.batch-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;grid-column:2}
.batch-mini-grid div{padding:13px;border-radius:13px;background:#edf2ff;text-align:center}
.batch-mini-grid strong{display:block;color:var(--blue);font-size:.85rem}
.batch-mini-grid span{display:block;margin-top:3px;color:var(--muted);font-size:.68rem}
.batch-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px;padding-top:4px}
.value-fact strong{font-size:1rem!important}
.value-fact del{text-decoration-thickness:2px;text-decoration-color:#ff7a45}
.enquiry-note{display:inline-block;margin-top:13px;padding:10px 13px;border-radius:10px;background:#253556;color:#d7deec;font-size:.78rem}
.era-banner{padding:9px 16px;background:linear-gradient(90deg,var(--blue),#2545ba);color:#fff;text-align:center;font-size:.82rem;font-weight:900;letter-spacing:.025em;box-shadow:inset 0 -1px 0 rgba(255,255,255,.15)}
.era-banner span{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;border-radius:50%;background:var(--lime);color:var(--ink)}
.referral-nav{padding:8px 13px;border:1px solid currentColor;border-radius:999px;color:var(--blue);font-size:.82rem;font-weight:900;text-decoration:none}
.nav-quick{display:flex;align-items:center;gap:11px}
.referral-section{padding:38px 0;background:#fff}
.referral-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:22px;align-items:center;padding:27px 29px;border:2px solid var(--ink);border-radius:24px;background:var(--ink);color:#fff;box-shadow:8px 9px 0 var(--blue)}
.referral-amount{width:92px;aspect-ratio:1;display:grid;place-items:center;border-radius:24px;background:var(--lime);color:var(--ink);font-size:1.45rem;font-weight:1000;transform:rotate(-3deg)}
.referral-copy span{color:var(--lime);font-size:.68rem;font-weight:950;letter-spacing:.1em}
.referral-copy h2{margin:5px 0 7px;font-size:clamp(1.75rem,3vw,2.65rem)!important}
.referral-copy p{max-width:700px;margin:0;color:#cbd3e4;font-size:.86rem;line-height:1.55}
.referral-card .btn{background:#fff!important;color:var(--ink)!important;white-space:nowrap}
.team-section{background:#fff}
.team-section.alt{background:#f3f6ff}
.team-group{margin-top:34px}
.team-group-title{margin:0 0 17px;color:var(--blue);font-size:.78rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase}
.person-photo.photo-pending{position:relative;overflow:hidden;background:linear-gradient(145deg,#e7ecff,#c9d6ff);border:1px solid #8da1e8;color:var(--blue)}
.person-photo.photo-pending:before{content:"";width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,.75);box-shadow:0 52px 0 22px rgba(255,255,255,.75)}
.person-photo.photo-pending span{position:absolute;inset:auto 8px 12px;font-size:.62rem;font-weight:950;letter-spacing:.07em}
.person-card .confirmation{margin-top:10px;color:#7b6320;font-size:.74rem;font-weight:800}
.stories-section{background:var(--ink);color:#fff}
.stories-section .section-head p{color:#cbd3e4}
.video-testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}
.video-slot{min-height:300px;display:grid;place-items:center;padding:28px;border:1px solid #52617f;border-radius:24px;background:linear-gradient(145deg,#203052,#101b34);text-align:center}
.video-slot .play{width:66px;height:66px;display:grid;place-items:center;margin:0 auto 16px;border-radius:50%;background:var(--lime);color:var(--ink);font-size:1.35rem;box-shadow:0 0 0 10px rgba(215,242,82,.12)}
.video-slot strong{display:block;margin-bottom:6px}
.video-slot span:last-child{color:#bfc9dc;font-size:.82rem}
.written-testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}
.written-story{min-height:250px;padding:25px;border:1px solid #52617f;border-radius:22px;background:#1b2948}
.star-row{color:#ffd85a;font-size:1.25rem;letter-spacing:.12em}
.rating-pending{display:block;margin-top:4px;color:#aebbd1;font-size:.7rem;letter-spacing:.04em}
.written-story blockquote{margin:24px 0;color:#fff;font-size:1.03rem;font-weight:750;line-height:1.55}
.written-story p{margin:0;color:#bfc9dc;font-size:.8rem}

/* Advertising badge: reserve space for both dots */
.advertising-page .eyebrow{gap:9px!important;padding-left:17px!important}
.advertising-page .eyebrow:before{flex:0 0 25px!important;width:25px!important;height:9px!important;background:radial-gradient(circle at 4.5px 4.5px,var(--blue) 0 4.5px,transparent 4.7px),radial-gradient(circle at 20.5px 4.5px,var(--lime) 0 4.5px,transparent 4.7px)!important;box-shadow:none!important}

/* AI Builders hero */
.builders-page .hero .hero-grid{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr)!important;width:min(1140px,calc(100% - 40px))!important;gap:64px!important;align-items:center!important}
.hero-copy,.builder-hero-visual{min-width:0!important}
.hero-copy{position:relative;z-index:2}
.hero-copy .eyebrow{box-shadow:4px 5px 0 var(--ink);transform:rotate(-1deg)}
.hero-copy h1{letter-spacing:-.055em!important;word-spacing:.035em!important;line-height:.92!important}
.hero-copy h1 em{display:inline-block;text-shadow:4px 5px 0 #cbd6ff}
.hero-copy .lead{max-width:590px;line-height:1.68;word-spacing:.04em}
.hero-copy .actions{column-gap:14px;row-gap:16px}
.hero-copy .btn-dark{box-shadow:0 7px 0 #3657d6}
.hero-copy .btn-light{box-shadow:0 7px 0 #cbd6ff}
.builder-hero-visual{position:relative!important;display:block!important;width:100%!important;min-height:560px!important;isolation:isolate;perspective:1200px}
.builder-hero-visual:before{content:"";position:absolute;z-index:0;inset:7% -4% -3% 8%;border-radius:34px;background:linear-gradient(145deg,#9fb4ff,#3657d6 56%,#14213d);transform:rotate(4deg) translateZ(-20px);box-shadow:0 28px 55px rgba(20,33,61,.24)}
.builder-hero-visual:after{content:"AI • CREATE • AUTOMATE";position:absolute;z-index:3;top:22px;right:-20px;padding:9px 14px;border:2px solid var(--ink);border-radius:999px;background:var(--lime);color:var(--ink);font-size:.68rem;font-weight:950;letter-spacing:.08em;box-shadow:5px 6px 0 var(--ink);transform:rotate(5deg)}
.student-pair-hero{position:absolute!important;inset:0!important;z-index:1!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;object-position:center bottom!important;background:linear-gradient(145deg,#f5f7fd,#dfe8ff)!important;border:2px solid var(--ink)!important;border-radius:30px!important;box-shadow:0 24px 50px rgba(20,33,61,.22),10px 12px 0 var(--ink)!important;transform:rotateY(-4deg) rotateX(1deg) translateZ(12px);transform-origin:center;transition:transform .35s ease,box-shadow .35s ease}
.builder-hero-visual:hover .student-pair-hero{transform:rotateY(0) rotateX(0) translateY(-5px) translateZ(18px);box-shadow:0 32px 60px rgba(20,33,61,.28),12px 15px 0 var(--ink)!important}
.builder-hero-chip{z-index:4!important;left:-6%!important;bottom:6%!important;width:68%!important;min-width:300px;padding:19px 21px!important;backdrop-filter:blur(12px);box-shadow:8px 9px 0 var(--ink),0 20px 36px rgba(20,33,61,.18)!important;transform:translateZ(32px) rotate(-2deg);word-break:normal!important;overflow-wrap:normal!important}
.builder-hero-chip b{font-size:.72rem!important;line-height:1.45!important;letter-spacing:.065em!important;word-spacing:.12em!important}
.builder-hero-chip span{font-size:.92rem!important;line-height:1.55!important;letter-spacing:0!important;word-spacing:.12em!important}
.builder-hero-chip i{line-height:1.3!important;letter-spacing:0!important;word-spacing:.04em!important}

@media(max-width:900px){
  .policy-grid{grid-template-columns:1fr}
  .written-testimonial-grid{grid-template-columns:1fr}
  .builders-page .hero .hero-grid{grid-template-columns:minmax(0,1fr)!important;gap:48px!important}
  .builder-hero-visual{width:min(100%,620px)!important;min-height:600px!important;margin:0 auto!important}
  .builder-hero-chip{left:3%!important}
}
@media(max-width:620px){
  h1{letter-spacing:-.043em!important;word-spacing:.022em!important;line-height:.95!important}
  h2{letter-spacing:-.028em!important;word-spacing:.025em!important;line-height:1.04!important}
  h3{letter-spacing:-.01em!important;word-spacing:.025em!important}
  p,.lead{word-spacing:.03em;line-height:1.62}
  .btn{padding-left:17px;padding-right:17px}
  .video-testimonial-grid{grid-template-columns:1fr}
  .builders-page .hero .hero-grid{width:calc(100% - 26px)!important}
  .builder-hero-visual{min-height:500px!important}
  .builder-hero-visual:before{inset:7% -1% -2% 5%;transform:rotate(2.5deg)}
  .builder-hero-visual:after{top:16px;right:-3px;font-size:.58rem}
  .student-pair-hero{transform:none;box-shadow:0 18px 36px rgba(20,33,61,.2),7px 8px 0 var(--ink)!important}
  .builder-hero-chip{left:14px!important;right:14px!important;bottom:18px!important;width:auto!important;min-width:0!important;padding:15px 16px!important;transform:rotate(-1deg)}
}
/* Visual rhythm pass: tighter sections and naturally sized actions */
.hero{padding-top:68px!important;padding-bottom:68px!important}
.section{padding-top:72px!important;padding-bottom:72px!important}
.section-head,.head{margin-bottom:30px!important}
.section-head{gap:28px!important}
.facts{padding-top:15px!important;padding-bottom:15px!important}
.curriculum{gap:15px!important}
.module{min-height:188px!important;padding:23px!important}
.module h3{margin-top:25px!important}
.offer-grid,.people-grid,.policy-grid,.choose,.steps{gap:18px!important}
.offer,.choice{padding:30px!important}
.person-card{grid-template-columns:124px minmax(0,1fr)!important;gap:20px!important;padding:22px!important}
.person-photo{width:124px!important;border-radius:16px!important}
.person-photo.has-photo{padding:0!important;overflow:hidden;border:1px solid #c8d2f0;background:#e8edff}
.person-photo.has-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.profile-link{display:inline-flex;margin-top:10px;color:var(--blue);font-size:.78rem;font-weight:900;text-decoration:none}
.profile-link:hover{text-decoration:underline}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.brand-logo-shell{position:relative;display:block;width:190px;aspect-ratio:620/180;flex:0 0 auto}
.brand-logo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}
.logo-on-dark{display:none}
.footer .logo-on-light,.foot .logo-on-light{display:none}
.footer .logo-on-dark,.foot .logo-on-dark{display:block}
.footer .brand-logo-shell,.foot .brand-logo-shell{width:178px}
.team-group{margin-top:27px!important}
.team-group+.team-group{margin-top:34px!important}
.policy-intro{margin-bottom:27px!important}
.policy-card{padding:22px!important}
.policy-card li{margin:7px 0!important}
.video-testimonial-grid{margin-top:24px!important;gap:18px!important}
.video-slot{min-height:255px!important;padding:24px!important}
.written-testimonial-grid{margin-top:18px!important;gap:16px!important}
.written-story{min-height:225px!important;padding:22px!important}
.faq-grid{gap:42px!important}
.enquiry{padding:44px!important}
.footer{padding-top:27px!important;padding-bottom:34px!important}
.btn{width:auto;max-width:100%;padding:12px 18px!important}
.actions{gap:12px!important;margin-top:26px!important}
.actions .btn{width:auto!important;flex:0 0 auto}
.choice-actions{display:flex!important;flex-wrap:wrap;align-items:center;gap:10px!important;margin-top:18px!important}
.choice-actions .btn,.programme-link .btn,.offer .btn{width:auto!important;min-width:0!important;margin-top:6px!important}
.choice .price{margin-top:20px!important;margin-bottom:10px!important}
.form .btn{width:100%!important}
.closebox .actions{justify-content:center}

@media(max-width:900px){
  .hero{padding-top:58px!important;padding-bottom:58px!important}
  .section{padding-top:62px!important;padding-bottom:62px!important}
  .person-card{grid-template-columns:118px minmax(0,1fr)!important}
  .person-photo{width:118px!important}
  .enquiry{padding:38px!important}
  .explorer-family-visual{min-height:560px;max-width:620px;margin:0 auto}
  .batch-panel{grid-template-columns:1fr}
  .batch-mini-grid{grid-column:auto}
  .batch-actions{grid-column:auto}
  .referral-card{grid-template-columns:auto 1fr}
  .referral-card .btn{grid-column:1/-1;width:max-content!important}
}
@media(max-width:620px){
  .hero{padding-top:48px!important;padding-bottom:48px!important}
  .section{padding-top:54px!important;padding-bottom:54px!important}
  .section-head,.head{margin-bottom:24px!important}
  .module{min-height:auto!important}
  .offer,.choice,.policy-card,.written-story{padding:21px!important}
  .person-card{grid-template-columns:1fr!important;padding:20px!important}
  .person-photo{width:100%!important;max-width:220px!important}
  .enquiry{padding:30px 20px!important}
  .choice-actions{display:grid!important;grid-template-columns:1fr!important}
  .choice-actions .btn,.programme-link .btn,.offer .btn{width:100%!important}
  .actions .btn{flex:1 1 210px}
  .batch-kicker{grid-template-columns:1fr;gap:5px;width:100%}
  .batch-kicker span{grid-row:auto;width:max-content}
  .explorer-family-visual{min-height:430px}
  .explorer-family-visual img{transform:none;box-shadow:7px 8px 0 var(--ink)}
  .visual-caption{left:12px;right:12px;bottom:14px}
  .batch-section{padding:28px 0}
  .batch-panel{padding:21px;box-shadow:6px 7px 0 var(--blue)}
  .batch-mini-grid{grid-template-columns:1fr}
  .batch-actions{display:grid;grid-template-columns:1fr}
  .batch-actions .btn{width:100%!important}
  .era-banner{font-size:.74rem}
  .referral-section{padding:29px 0}
  .referral-card{grid-template-columns:1fr;padding:22px;text-align:left}
  .referral-amount{width:78px}
  .referral-card .btn{grid-column:auto;width:100%!important}
  .nav-quick .referral-nav{display:none}
  .brand-logo-shell{width:152px}
  .footer .brand-logo-shell,.foot .brand-logo-shell{width:156px}
}

/* Main landing header: keep the mobile CTA readable and prevent pill collapse. */
@media(max-width:620px){
  body.advertising-page .nav{height:auto!important;min-height:0!important}
  body.advertising-page .navin{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    gap:9px 12px!important;
    height:auto!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  body.advertising-page .navin>.brand{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    margin:0!important;
  }
  body.advertising-page .navin>.region-switch{
    grid-column:2!important;
    grid-row:1!important;
    margin:0!important;
    justify-self:end!important;
  }
  body.advertising-page .navin>.nav-quick{
    grid-column:1/-1!important;
    grid-row:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    gap:9px!important;
  }
  body.advertising-page .nav-quick .help-nav,
  body.advertising-page .nav-quick .cta{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    min-height:38px!important;
    margin:0!important;
    padding:9px 14px!important;
    border-radius:999px!important;
    font-size:.78rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}
@media(prefers-reduced-motion:reduce){.student-pair-hero,.btn,.module{transition:none!important;transform:none!important}}

/* High-value course takeaways */
.takeaways-section{
  position:relative;
  overflow:hidden;
  padding:72px 0;
  color:#fff;
  background:
    radial-gradient(circle at 12% 18%,rgba(203,241,63,.22),transparent 25%),
    radial-gradient(circle at 88% 86%,rgba(73,105,255,.35),transparent 28%),
    linear-gradient(135deg,#101f48 0%,#193ca5 55%,#2955dc 100%);
}
.takeaways-section::before,.takeaways-section::after{
  content:"";position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:50%;pointer-events:none
}
.takeaways-section::before{width:280px;height:280px;right:-95px;top:-120px}
.takeaways-section::after{width:190px;height:190px;left:-75px;bottom:-105px}
.takeaways-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;margin-bottom:34px}
.takeaways-kicker{display:inline-flex;align-items:center;gap:9px;margin-bottom:13px;color:#d8f75d;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.takeaways-kicker::before{content:"";width:9px;height:9px;border-radius:50%;background:#d8f75d;box-shadow:0 0 0 6px rgba(216,247,93,.14)}
.takeaways-head h2{max-width:760px;margin:0;color:#fff;font-size:clamp(2.1rem,4.5vw,4.3rem);line-height:.98;letter-spacing:-.045em}
.takeaways-value{min-width:230px;padding:18px 21px;border:1px solid rgba(255,255,255,.28);border-radius:20px;background:rgba(255,255,255,.1);box-shadow:0 15px 34px rgba(3,13,47,.2);backdrop-filter:blur(8px)}
.takeaways-value span{display:block;color:#cdd7ff;font-size:.73rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.takeaways-value strong{display:block;margin-top:3px;color:#d8f75d;font-size:clamp(1.65rem,3vw,2.35rem);line-height:1}
.takeaways-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.takeaway-card{min-height:164px;padding:20px;border:1px solid rgba(255,255,255,.17);border-radius:19px;background:rgba(255,255,255,.095);box-shadow:0 14px 30px rgba(4,14,49,.14);backdrop-filter:blur(7px);transition:transform .2s ease,background .2s ease,border-color .2s ease}
.takeaway-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.15);border-color:rgba(216,247,93,.55)}
.takeaway-icon{display:grid;place-items:center;width:43px;height:43px;margin-bottom:17px;border-radius:13px;color:#102252;background:#d8f75d;font-size:1.25rem;box-shadow:4px 5px 0 rgba(5,17,54,.42)}
.takeaway-card h3{margin:0 0 7px;color:#fff;font-size:1.04rem;line-height:1.18;letter-spacing:-.015em}
.takeaway-card p{margin:0;color:#dbe3ff;font-size:.86rem;line-height:1.45}
.takeaways-note{margin:18px 0 0;color:#ccd7ff;font-size:.76rem}
.free-value{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:6px;line-height:1!important}
.free-value del{position:relative;display:inline-block;padding:0;color:#fff;font-size:1rem;font-weight:950;letter-spacing:.015em;text-decoration:none;background:none;border:0;border-radius:0;white-space:nowrap}
.free-value del::after{content:"";position:absolute;left:-2px;right:-2px;top:50%;height:1.5px;border-radius:999px;background:#ff6958;transform:translateY(-50%) rotate(-3deg)}
.free-value b{color:#d8f75d;font-size:1.28rem;font-weight:950;letter-spacing:.09em;text-shadow:0 2px 12px rgba(216,247,93,.18)}
.takeaways-free{display:flex!important;align-items:baseline;gap:10px;flex-wrap:wrap}
.takeaways-free del{position:relative;display:inline-block;padding:0;color:#fff;font-size:.82em;text-decoration:none;background:none;border:0;border-radius:0;white-space:nowrap}
.takeaways-free del::after{content:"";position:absolute;left:-2px;right:-2px;top:50%;height:1.5px;border-radius:999px;background:#ff806c;transform:translateY(-50%) rotate(-3deg)}
.takeaways-free em{color:#d8f75d;font-size:1em;font-style:normal;font-weight:950;letter-spacing:.05em}
@media(max-width:900px){.takeaways-head{grid-template-columns:1fr}.takeaways-value{width:max-content}.takeaways-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.takeaways-section{padding:54px 0}.takeaways-head{margin-bottom:26px}.takeaways-value{width:100%;min-width:0}.takeaways-grid{grid-template-columns:1fr}.takeaway-card{min-height:0;display:grid;grid-template-columns:48px 1fr;column-gap:14px}.takeaway-icon{grid-row:1/3;margin:0}.takeaway-card p{grid-column:2}.takeaway-card:hover{transform:none}}
.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:150;display:inline-flex;align-items:center;gap:9px;padding:12px 17px;border:1px solid rgba(255,255,255,.65);border-radius:999px;color:#fff!important;background:#128c4a;box-shadow:0 12px 28px rgba(7,31,20,.28);font-size:.82rem;font-weight:900;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.whatsapp-float span{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;color:#128c4a;background:#fff;font-size:.72rem}
.whatsapp-icon{display:block;width:24px;height:24px;object-fit:contain;flex:0 0 24px}
.whatsapp-float:hover{transform:translateY(-2px);background:#0e7d40;box-shadow:0 15px 32px rgba(7,31,20,.34)}
@media(max-width:620px){.whatsapp-float{right:12px;bottom:12px;padding:11px 14px;font-size:.76rem}}

/* Keep the square Explorers hero artwork stable at every breakpoint. */
.explorer-family-visual{width:100%;max-width:560px;min-height:0!important;aspect-ratio:1/1;justify-self:end}
.explorer-family-visual img{display:block;object-position:center center}
@media(max-width:900px){.explorer-family-visual{width:min(100%,620px);max-width:620px;min-height:0!important;aspect-ratio:1/1;justify-self:center;margin:0 auto}}
@media(max-width:620px){.explorer-family-visual{width:100%;min-height:0!important;aspect-ratio:1/1}.explorer-family-visual img{transform:none;box-shadow:7px 8px 0 var(--ink)}}
/* Parent-friendly AI Explorers promotion */
.parent-hero-note {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  max-width: 540px;
  margin: 16px 0 2px;
  padding: 12px 16px;
  border: 1px solid rgba(54, 89, 224, 0.24);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 14px 32px rgba(16, 35, 74, 0.1);
  animation: parent-note-float 4.5s ease-in-out infinite;
}

.parent-note-spark {
  display: grid;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 50%;
  color: #11213f;
  background: #d9f75a;
  font-size: 20px;
}

.parent-hero-note strong,
.parent-hero-note small {
  display: block;
}

.parent-hero-note strong {
  color: #11213f;
  font-size: 17px;
}

.parent-hero-note small {
  margin-top: 2px;
  color: #52617b;
  font-size: 13px;
  line-height: 1.45;
}

.parent-learning-section {
  position: relative;
  overflow: hidden;
  padding: 68px 0;
  background: linear-gradient(135deg, #edf3ff 0%, #f8fbff 48%, #efffd2 100%);
}

.parent-learning-section::before {
  content: "";
  position: absolute;
  width: 330px;
  height: 330px;
  right: -130px;
  top: -150px;
  border-radius: 50%;
  background: rgba(54, 89, 224, 0.12);
  filter: blur(2px);
}

.parent-learning-card {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
  align-items: center;
  gap: 52px;
  padding: 42px 48px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 34px;
  color: #fff;
  background: linear-gradient(145deg, #101f3f, #19366f);
  box-shadow: 0 24px 60px rgba(17, 33, 63, 0.2), 12px 12px 0 #3659e0;
}

.parent-orbit {
  position: relative;
  width: min(240px, 100%);
  aspect-ratio: 1;
  margin: auto;
  border: 2px dashed rgba(217, 247, 90, 0.55);
  border-radius: 50%;
  animation: parent-orbit-spin 16s linear infinite;
}

.parent-orbit::before,
.parent-orbit::after {
  content: "";
  position: absolute;
  inset: 20%;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 50%;
}

.parent-orbit::after {
  inset: 37%;
  background: rgba(217, 247, 90, 0.14);
}

.parent-orbit > span {
  position: absolute;
  inset: 50% auto auto 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  color: #d9f75a;
  font-size: clamp(46px, 7vw, 76px);
  font-weight: 900;
  letter-spacing: -0.08em;
  animation: parent-orbit-counter 16s linear infinite;
}

.parent-orbit i {
  position: absolute;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 14px;
  color: #11213f;
  background: #d9f75a;
  font-style: normal;
  font-weight: 900;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.22);
}

.parent-orbit i:nth-of-type(1) { left: 5%; top: 16%; }
.parent-orbit i:nth-of-type(2) { right: -3%; top: 42%; background: #fff; }
.parent-orbit i:nth-of-type(3) { left: 25%; bottom: -4%; background: #8fb3ff; }

.parent-kicker {
  display: inline-block;
  margin-bottom: 12px;
  color: #d9f75a;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.parent-learning-copy h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(34px, 4.4vw, 58px);
  line-height: 1.02;
  letter-spacing: -0.045em;
}

.parent-learning-copy p {
  max-width: 700px;
  margin: 18px 0;
  color: #dfe7f7;
  font-size: 17px;
  line-height: 1.7;
}

.parent-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 0 0 22px;
}

.parent-benefits span {
  padding: 8px 12px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
  font-size: 13px;
  font-weight: 750;
}

.parent-learning-card .btn-dark {
  color: #11213f;
  background: #d9f75a;
  box-shadow: 0 10px 0 rgba(0, 0, 0, 0.22);
}

.parent-demo-ribbon {
  display: flex;
  align-items: center;
  gap: 14px;
  width: fit-content;
  max-width: 100%;
  margin: 24px 0 4px;
  padding: 12px 16px;
  border: 1px solid rgba(54, 89, 224, 0.2);
  border-radius: 16px;
  background: linear-gradient(90deg, #eef3ff, #f6ffd8);
  box-shadow: 0 12px 28px rgba(17, 33, 63, 0.08);
}

.parent-demo-ribbon > span {
  font-size: 28px;
  animation: parent-spark-pulse 2.8s ease-in-out infinite;
}

.parent-demo-ribbon strong,
.parent-demo-ribbon small {
  display: block;
}

.parent-demo-ribbon strong { color: #11213f; }
.parent-demo-ribbon small { margin-top: 2px; color: #5c6981; line-height: 1.45; }

.takeaways-value small {
  display: block;
  margin-top: 5px;
  font-size: 13px;
  font-weight: 800;
}

@keyframes parent-note-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes parent-orbit-spin {
  to { transform: rotate(360deg); }
}

@keyframes parent-orbit-counter {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(-360deg); }
}

@keyframes parent-spark-pulse {
  0%, 100% { transform: scale(1) rotate(-2deg); }
  50% { transform: scale(1.09) rotate(2deg); }
}

@media (max-width: 760px) {
  .parent-learning-section { padding: 48px 0; }
  .parent-learning-card {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 30px 22px;
    border-radius: 26px;
    box-shadow: 0 20px 44px rgba(17, 33, 63, 0.2), 7px 7px 0 #3659e0;
  }
  .parent-orbit { width: 190px; }
  .parent-hero-note { align-items: flex-start; }
  .parent-demo-ribbon { align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  .parent-hero-note,
  .parent-orbit,
  .parent-orbit > span,
  .parent-demo-ribbon > span { animation: none !important; }
}

/* Final visual consistency fixes */
.person-photo.has-photo img[src*="pranjal-dwivedi"],
.person-photo.has-photo img[alt="Pranjal Dwivedi"] {
  transform: scale(1.48);
  transform-origin: center 46%;
}

.person-photo.has-photo img[src*="akanksha-dhanraj"],
.person-photo.has-photo img[alt="Akanksha Dhanraj"] {
  transform: scale(1.12);
  transform-origin: center 38%;
  image-rendering: auto;
}

.free-value > span {
  display: inline-block;
  color: #fff;
  font-size: 1rem;
  font-weight: 950;
  letter-spacing: .015em;
  white-space: nowrap;
}

.free-value > span del {
  margin-left: .18em;
}

.footer .logo-on-light,
.foot .logo-on-light {
  display: block !important;
}

.footer .logo-on-dark,
.foot .logo-on-dark {
  display: none !important;
}

.demo-focus {
  position: relative;
  isolation: isolate;
  border-color: #3659e0 !important;
  color: #fff !important;
  background: linear-gradient(135deg, #3659e0, #19366f) !important;
  box-shadow: 0 12px 28px rgba(54, 89, 224, .28), 0 0 0 0 rgba(217, 247, 90, .4) !important;
  animation: demo-focus-pulse 2.6s ease-in-out infinite;
}

.demo-focus::after {
  content: "";
  position: absolute;
  inset: -5px;
  z-index: -1;
  border: 2px solid rgba(217, 247, 90, .7);
  border-radius: inherit;
  opacity: .55;
}

@keyframes demo-focus-pulse {
  0%, 100% { transform: translateY(0); box-shadow: 0 12px 28px rgba(54, 89, 224, .28), 0 0 0 0 rgba(217, 247, 90, .35); }
  50% { transform: translateY(-3px); box-shadow: 0 16px 34px rgba(54, 89, 224, .34), 0 0 0 8px rgba(217, 247, 90, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .demo-focus { animation: none !important; }
}

/* AI Builders demo spotlight */
.builders-demo-section {
  padding: 56px 0;
  background: linear-gradient(180deg, #f7f9ff, #eef3ff);
}

.builders-demo-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) auto;
  align-items: center;
  gap: 34px;
  padding: 34px 40px;
  border-radius: 30px;
  color: #fff;
  background: linear-gradient(135deg, #101f3f 0%, #17336b 65%, #3659e0 100%);
  box-shadow: 0 22px 50px rgba(17, 33, 63, .2), 9px 9px 0 #d9f75a;
}

.builders-demo-card::after {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: -120px;
  top: -150px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 50%;
  box-shadow: 0 0 0 40px rgba(255, 255, 255, .04), 0 0 0 80px rgba(255, 255, 255, .03);
  pointer-events: none;
}

.builders-demo-orb {
  position: relative;
  z-index: 1;
  display: grid;
  width: 130px;
  height: 130px;
  place-items: center;
  border: 2px solid rgba(217, 247, 90, .75);
  border-radius: 36px;
  background: rgba(217, 247, 90, .12);
  transform: rotate(-4deg);
  animation: builders-demo-float 3.4s ease-in-out infinite;
}

.builders-demo-orb span {
  color: #d9f75a;
  font-size: 34px;
  font-weight: 950;
  line-height: 1;
}

.builders-demo-orb i {
  position: absolute;
  right: -10px;
  bottom: 14px;
  padding: 6px 9px;
  border-radius: 999px;
  color: #11213f;
  background: #fff;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .12em;
}

.builders-demo-copy {
  position: relative;
  z-index: 1;
}

.builders-demo-kicker {
  display: inline-block;
  margin-bottom: 8px;
  color: #d9f75a;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.builders-demo-copy h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(28px, 3.5vw, 46px);
  line-height: 1.05;
  letter-spacing: -.035em;
}

.builders-demo-copy p {
  max-width: 650px;
  margin: 11px 0 0;
  color: #dce5f8;
  line-height: 1.6;
}

.builders-demo-card > .btn {
  position: relative;
  z-index: 2;
  white-space: nowrap;
}

@keyframes builders-demo-float {
  0%, 100% { transform: translateY(0) rotate(-4deg); }
  50% { transform: translateY(-7px) rotate(2deg); }
}

@media (max-width: 880px) {
  .builders-demo-card {
    grid-template-columns: 110px minmax(0, 1fr);
    padding: 28px;
  }
  .builders-demo-orb { width: 100px; height: 100px; border-radius: 28px; }
  .builders-demo-orb span { font-size: 27px; }
  .builders-demo-card > .btn { grid-column: 1 / -1; width: fit-content; }
}

@media (max-width: 580px) {
  .builders-demo-section { padding: 42px 0; }
  .builders-demo-card { grid-template-columns: 1fr; gap: 22px; padding: 25px 20px; border-radius: 24px; box-shadow: 0 18px 42px rgba(17, 33, 63, .2), 6px 6px 0 #d9f75a; }
  .builders-demo-orb { width: 92px; height: 92px; }
  .builders-demo-card > .btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .builders-demo-orb { animation: none !important; }
}

/* Company registration details */
.footer-inner {
  flex-wrap: wrap;
}

.company-legal {
  flex: 0 0 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 7px 18px;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(17, 33, 63, .12);
  color: #52617b;
  font-size: 12px;
  line-height: 1.5;
}

.company-legal strong {
  flex: 0 0 100%;
  color: #11213f;
  font-size: 12px;
  letter-spacing: .015em;
}

.company-legal span {
  white-space: nowrap;
}

@media (max-width: 900px) {
  .person-photo.has-photo img[src*="ignasia-mligo"],
  .person-photo.has-photo img[alt="Dr. Ignasia Mligo"] {
    object-fit: contain !important;
    object-position: center center !important;
    transform: scale(.86) !important;
    transform-origin: center center !important;
    background: #e8edff;
  }
}

@media (max-width: 620px) {
  .company-legal {
    display: grid;
    gap: 5px;
    margin-top: 16px;
    padding-top: 16px;
  }
  .company-legal span { white-space: normal; }
}

/* Advertising-page introductory pricing */
.marketing-price {
  display: flex !important;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px 12px;
}

.marketing-price .price-was {
  position: relative;
  display: inline-block;
  color: #69758c;
  font-size: .58em;
  font-weight: 850;
  letter-spacing: .01em;
  white-space: nowrap;
}

.marketing-price .price-was::after {
  content: "";
  position: absolute;
  left: -3px;
  right: -3px;
  top: 50%;
  height: 2px;
  border-radius: 999px;
  background: #ef4f43;
  transform: translateY(-50%) rotate(-4deg);
}

.marketing-price strong {
  color: #11213f;
  font-size: 1em;
  font-weight: 950;
  letter-spacing: -.025em;
}

.marketing-price small {
  font-size: .42em !important;
  font-weight: 750;
}

/* Advertising-page founders */
.founders-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #f8faff 0%, #eef3ff 100%);
}

.founders-section::before {
  content: "";
  position: absolute;
  width: 360px;
  height: 360px;
  right: -170px;
  top: -170px;
  border-radius: 50%;
  background: rgba(54, 89, 224, .09);
}

.founders-head {
  position: relative;
  z-index: 1;
}

.founders-kicker {
  display: inline-block;
  margin-bottom: 10px;
  color: #3659e0;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.founders-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.founder-card {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  align-items: start;
  gap: 26px;
  min-width: 0;
  padding: 26px;
  border: 1px solid #d3dcf4;
  border-radius: 26px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 18px 42px rgba(17, 33, 63, .1);
}

.founder-photo {
  overflow: hidden;
  width: 180px;
  aspect-ratio: 4 / 5;
  border: 1px solid #c8d2f0;
  border-radius: 20px;
  background: #e8edff;
  box-shadow: 8px 8px 0 #d9f75a;
}

.founder-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.founder-card:nth-child(2) .founder-photo img {
  object-position: 46% top;
}

.founder-copy {
  min-width: 0;
}

.founder-type {
  display: inline-flex;
  padding: 6px 10px;
  border-radius: 999px;
  color: #19366f;
  background: #e8eeff;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.founder-copy h3 {
  margin: 12px 0 4px;
  color: #11213f;
  font-size: clamp(25px, 2.6vw, 36px);
  line-height: 1.05;
  letter-spacing: -.035em;
}

.founder-role {
  margin: 0 0 13px !important;
  color: #3659e0 !important;
  font-size: 13px !important;
  font-weight: 850;
}

.founder-copy > p:last-child {
  margin: 0;
  color: #56637b;
  font-size: 13px;
  line-height: 1.65;
}

@media (max-width: 1100px) {
  .founder-card { grid-template-columns: 140px minmax(0, 1fr); gap: 20px; }
  .founder-photo { width: 140px; }
}

@media (max-width: 900px) {
  .founders-grid { grid-template-columns: 1fr; }
  .founder-card { grid-template-columns: 180px minmax(0, 1fr); }
  .founder-photo { width: 180px; }
}

@media (max-width: 620px) {
  .founder-card { grid-template-columns: 1fr; padding: 21px; }
  .founder-photo { width: 100%; max-width: 240px; aspect-ratio: 4 / 5; }
  .founder-copy > p:last-child { font-size: 12.5px; }
}

/* Newly added programme trainers */
.person-photo.has-photo img[src*="riddhi-saxena"],
.person-photo.has-photo img[alt="Riddhi Saxena"] {
  object-position: center 24%;
}

.person-photo.has-photo img[src*="ronak-sood"],
.person-photo.has-photo img[alt="Ronak Sood"] {
  object-fit: cover;
  object-position: center 22%;
  padding: 0;
  transform: scale(1.04);
  transform-origin: center 30%;
  background: #fff;
}

.founder-photo img[src*="richi-sood"],
.founder-photo img[alt="Richi Sood"] {
  object-fit: cover;
  object-position: center 24%;
  transform: scale(1.38);
  transform-origin: center 28%;
}

/* July 16 top announcement ticker */
.era-banner {
  overflow: hidden;
  display: block !important;
  padding: 10px 0 !important;
  color: #11213f !important;
  background: #d9f75a !important;
  border-block: 1px solid rgba(17, 33, 63, .16);
  white-space: nowrap;
}

.era-banner-track {
  display: flex;
  width: max-content;
  will-change: transform;
  animation: era-ticker-scroll 16s linear infinite;
}

.era-banner-track > span {
  display: inline-flex !important;
  flex: 0 0 auto;
  align-items: center;
  gap: 18px;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding-right: 56px;
  border-radius: 0 !important;
  color: inherit !important;
  background: transparent !important;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .025em;
  text-transform: uppercase;
}

.era-banner-track b { color: #3659e0; font-size: 17px; }
.era-banner-track i { color: #3659e0; font-style: normal; }

.ticker-spark {
  display: inline-block;
  filter: drop-shadow(0 0 5px rgba(54, 89, 224, .35));
  animation: ticker-spark-blink 1.15s ease-in-out infinite;
}

.ticker-dot {
  display: inline-block;
  animation: ticker-dot-blink 1.3s ease-in-out infinite;
}

.ticker-alert {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border: 1px solid rgba(17, 33, 63, .24);
  border-radius: 999px;
  color: #d9f75a;
  background: #11213f;
  box-shadow: 0 0 0 0 rgba(54, 89, 224, .35);
  font-size: .92em;
  font-weight: 950;
  animation: ticker-alert-glow 1.55s ease-in-out infinite;
}

.era-banner-track > span:nth-child(2) .ticker-spark,
.era-banner-track > span:nth-child(2) .ticker-dot,
.era-banner-track > span:nth-child(2) .ticker-alert {
  animation-delay: .55s;
}

@keyframes ticker-spark-blink {
  0%, 100% { opacity: .38; transform: scale(.82) rotate(-8deg); }
  50% { opacity: 1; transform: scale(1.16) rotate(8deg); }
}

@keyframes ticker-dot-blink {
  0%, 100% { opacity: .3; transform: scale(.7); }
  50% { opacity: 1; transform: scale(1.25); }
}

@keyframes ticker-alert-glow {
  0%, 100% { filter: brightness(.92); box-shadow: 0 0 0 0 rgba(54, 89, 224, .32); }
  50% { filter: brightness(1.16); box-shadow: 0 0 0 6px rgba(54, 89, 224, 0); }
}

@keyframes era-ticker-scroll {
  to { transform: translateX(-50%); }
}

/* Mobile-safe trainer portraits */
@media (max-width: 900px) {
  .person-photo.has-photo img[src*="sugam-vishnoi"],
  .person-photo.has-photo img[alt="Sugam Vishnoi"],
  .person-photo.has-photo img[src*="ignasia-mligo"],
  .person-photo.has-photo img[alt="Dr. Ignasia Mligo"] {
    object-fit: contain !important;
    object-position: center center !important;
    transform: scale(.88) !important;
    transform-origin: center center !important;
    background: #e8edff !important;
  }
}

/* Horizontal founder profiles */
.founders-grid {
  grid-template-columns: 1fr !important;
}

.founder-card {
  grid-template-columns: 220px minmax(0, 1fr) !important;
  width: 100%;
  align-items: center;
}

.founder-photo { width: 220px !important; }

/* 10+ AI tools slider */
.tools-slider-section {
  overflow: hidden;
  padding: 76px 0;
  background: #fff;
}

.tools-slider-head {
  max-width: 760px;
  margin: 0 auto 38px;
  text-align: center;
}

.tools-slider-head h2 {
  margin: 0;
  color: #111827;
  font-size: clamp(34px, 5vw, 60px);
  line-height: 1.03;
  letter-spacing: -.045em;
}

.tools-slider-head p {
  max-width: 670px;
  margin: 15px auto 0;
  color: #626b7d;
  font-size: clamp(16px, 2.2vw, 21px);
  line-height: 1.55;
}

.tools-slider-window {
  overflow: hidden;
  width: 100%;
  padding: 12px 0 18px;
  mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.tools-slider-track {
  display: flex;
  gap: 32px;
  width: max-content;
  animation: tools-slide 34s linear infinite;
}

.tools-slider-track article {
  display: grid;
  flex: 0 0 150px;
  justify-items: center;
  gap: 13px;
}

.tool-mark {
  display: grid;
  width: 82px;
  height: 82px;
  place-items: center;
  border: 1px solid #e0e5ef;
  border-radius: 20px;
  color: #3659e0;
  background: #fff;
  box-shadow: 0 8px 20px rgba(17, 33, 63, .08);
  font-size: 25px;
  font-weight: 950;
}

.tools-slider-track article > b { color: #272d3b; font-size: 16px; }
.tool-mark.chatgpt { color: #0b8f72; }
.tool-mark.gemini { color: #694cff; background: #f2efff; }
.tool-mark.canva { color: #7a32d5; background: #effcff; }
.tool-mark.perplexity { color: #178c91; }
.tool-mark.claude { color: #c4633b; background: #fff5ef; }
.tool-mark.gamma { color: #fff; background: #6d45ed; }
.tool-mark.heygen { color: #27b1b0; background: #f2ffff; }
.tool-mark.eleven { color: #111; }
.tool-mark.loom { color: #6252e9; }
.tool-mark.notion { color: #111; }
.tool-mark.copilot { color: #4775ef; background: #eff4ff; }
.tool-mark.zapier { color: #fff; background: #ff5b22; }

.tools-slider-track .tool-card-link {
  display: grid;
  flex: 0 0 150px;
  justify-items: center;
  gap: 13px;
  color: inherit;
  text-decoration: none;
}

.tool-logo-shell {
  display: grid;
  width: 82px;
  height: 82px;
  place-items: center;
  padding: 14px;
  border: 1px solid #e0e5ef;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(17, 33, 63, .08);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.tool-logo-shell img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.tool-card-link > b {
  color: #272d3b;
  font-size: 16px;
  text-align: center;
}

.tool-card-link:hover .tool-logo-shell,
.tool-card-link:focus-visible .tool-logo-shell {
  transform: translateY(-5px) scale(1.04);
  border-color: #3659e0;
  box-shadow: 0 14px 28px rgba(54, 89, 224, .18);
}

.tool-card-link:focus-visible {
  outline: 3px solid rgba(54, 89, 224, .3);
  outline-offset: 5px;
  border-radius: 18px;
}

.footer-email {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #3659e0;
  font-size: 13px;
  font-weight: 850;
  text-decoration: none;
}

.footer-email::before {
  content: "✉";
  color: #11213f;
}

.footer-email:hover,
.footer-email:focus-visible { text-decoration: underline; }

.tools-slider-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
}

.tools-slider-dots i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #d4d8df;
}

.tools-slider-dots .active {
  width: 40px;
  border-radius: 999px;
  background: #3659e0;
}

@keyframes tools-slide {
  to { transform: translateX(calc(-50% - 16px)); }
}

/* Separate Help page */
.help-page { background: #f8faff; }

.help-hero {
  padding: 90px 0 76px;
  color: #fff;
  background: radial-gradient(circle at 80% 15%, rgba(217,247,90,.2), transparent 26%), linear-gradient(135deg, #101f3f, #244da8);
}

.help-hero h1 {
  max-width: 850px;
  margin: 15px 0 18px;
  color: #fff;
  font-size: clamp(52px, 8vw, 92px);
  line-height: .94;
}

.help-hero h1 em { color: #d9f75a; font-style: normal; }
.help-hero .lead { max-width: 750px; color: #dce5f7; }
.help-content .policy-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.help-support {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 34px;
  padding: 30px 34px;
  border-radius: 26px;
  color: #fff;
  background: #11213f;
  box-shadow: 9px 9px 0 #d9f75a;
}

.help-support span { color: #d9f75a; font-size: 12px; font-weight: 950; letter-spacing: .1em; text-transform: uppercase; }
.help-support h2 { margin: 7px 0; color: #fff; font-size: clamp(28px, 4vw, 45px); }
.help-support p { margin: 0; color: #dce5f7; }

@media (max-width: 900px) {
  .help-content .policy-grid { grid-template-columns: 1fr 1fr; }
  .founder-card { grid-template-columns: 180px minmax(0, 1fr) !important; }
  .founder-photo { width: 180px !important; }
}

@media (max-width: 620px) {
  .era-banner-track > span { font-size: 11px; gap: 12px; padding-right: 36px; }
  .tools-slider-section { padding: 54px 0; }
  .tools-slider-track { gap: 18px; }
  .tools-slider-track article { flex-basis: 112px; }
  .tool-mark { width: 68px; height: 68px; border-radius: 17px; }
  .tools-slider-track .tool-card-link { flex-basis: 112px; }
  .tool-logo-shell { width: 68px; height: 68px; padding: 11px; border-radius: 17px; }
  .founder-card { grid-template-columns: 1fr !important; }
  .founder-photo { width: 100% !important; max-width: 250px; }
  .help-content .policy-grid { grid-template-columns: 1fr; }
  .help-support { align-items: flex-start; flex-direction: column; padding: 24px 21px; }
}

@media (prefers-reduced-motion: reduce) {
  .era-banner-track,
  .tools-slider-track { animation-play-state: paused !important; }
  .ticker-spark,
  .ticker-dot,
  .ticker-alert { animation: none !important; }
}
/* Contact placement and final image-fit refinements - 17 July 2026 */
.tool-logo-shell {
  display: grid;
  place-items: center;
  overflow: hidden;
}

.tool-logo-shell img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  transform: scale(1.04) !important;
  transform-origin: center;
}

/* The source favicons have different amounts of built-in whitespace.
   Normalize their visible artwork to the Gemini reference size. */
.tool-card-link[href*="suno.com"] img { transform: scale(2.15) !important; }
.tool-card-link[href*="higgsfield.ai"] img { transform: scale(.9) !important; }
.tool-card-link[href*="heygen.com"] img { transform: scale(2.15) !important; }
.tool-card-link[href*="gamma.app"] img { transform: scale(.9) !important; }
.tool-card-link[href*="elevenlabs.io"] img { transform: scale(4.2) !important; }
.tool-card-link[href*="chatgpt.com"] img { transform: scale(2.3) !important; }
.tool-card-link[href*="notebooklm.google.com"] img { transform: scale(4.2) !important; }
.tool-card-link[href*="minimax.io"] img { transform: scale(3.2) !important; }
.tool-card-link[href*="lovable.dev"] img { transform: scale(6) !important; }
.tool-card-link[href*="canva.com"] img { transform: scale(3.1) !important; }
.tool-card-link[href*="gemini.google.com"] img { transform: scale(.9) !important; }

.founder-photo img[alt="Richi Sood"] {
  object-fit: cover !important;
  object-position: center top !important;
  transform: none !important;
  transform-origin: center top !important;
}

.contact-us-section {
  padding: clamp(48px, 6vw, 82px) 0;
  background: linear-gradient(135deg, #eef3ff 0%, #fff 52%, #f3ffd0 100%);
  border-top: 1px solid rgba(20, 38, 77, .1);
}

.contact-us-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: clamp(28px, 4vw, 48px);
  border: 1px solid rgba(36, 82, 214, .18);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 22px 55px rgba(26, 49, 99, .1);
}

.contact-us-card h2 {
  margin: 0 0 8px;
}

.contact-us-card p {
  margin: 0;
  color: #5f6c86;
}

.contact-email-button,
.question-email-option {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  padding: 14px 22px;
  border-radius: 999px;
  background: #14264d;
  color: #fff !important;
  font-weight: 800;
  text-decoration: none;
  white-space: normal;
  text-align: center;
  box-shadow: 0 8px 0 #d9fa54;
  transition: transform .2s ease, box-shadow .2s ease;
}

.contact-email-button:hover,
.question-email-option:hover {
  transform: translateY(-2px);
  box-shadow: 0 11px 0 #d9fa54;
}

.questions-email-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  margin-top: 22px;
}

.questions-email-wrap span {
  color: #5f6c86;
  font-weight: 650;
}

@media (max-width: 720px) {
  .tool-logo-shell img {
    transform: scale(1.16);
  }

  .contact-us-card {
    align-items: flex-start;
    flex-direction: column;
  }
}
.person-photo.has-photo img[alt="Pranjal Dwivedi"] {
  content: url("assets/mentors/pranjal-dwivedi-new.svg") !important;
  object-fit: cover !important;
  object-position: center 22% !important;
  transform: none !important;
}
/* AI Explorers trainer hover galleries */
.person-card.has-training-gallery {
  position: relative;
  isolation: isolate;
}

.training-gallery-popover {
  position: absolute;
  z-index: 30;
  left: 50%;
  bottom: calc(100% - 18px);
  width: min(720px, 86vw);
  padding: 18px;
  border: 1px solid rgba(36,82,214,.2);
  border-radius: 22px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 28px 80px rgba(16,35,75,.24);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 14px) scale(.97);
  transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
}

.person-card.has-training-gallery:hover .training-gallery-popover,
.person-card.has-training-gallery:focus-within .training-gallery-popover,
.person-card.has-training-gallery:focus .training-gallery-popover {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0) scale(1);
}

.training-gallery-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.training-gallery-title b { color: #14264d; font-size: 1.05rem; }
.training-gallery-title span { color: #315bdd; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.training-gallery-landscape { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; }
.training-gallery-landscape figure { position: relative; min-height: 132px; margin: 0; overflow: hidden; border-radius: 14px; background: linear-gradient(135deg,#eaf0ff,#f3ffd0); }
.training-gallery-landscape img { width: 100%; height: 100%; min-height: 132px; object-fit: cover; display: block; }
.training-gallery-landscape figcaption { position: absolute; inset: auto 8px 8px; padding: 6px 8px; border-radius: 9px; background: rgba(20,38,77,.82); color: white; font-size: .68rem; }
.training-gallery-landscape figure.photo-needed::before { content: "Training photograph needed"; position: absolute; inset: 0; display: grid; place-items: center; padding: 18px; color: #315bdd; font-weight: 800; text-align: center; }

@media (max-width: 720px) {
  .training-gallery-popover { position: fixed; left: 16px; right: 16px; bottom: 18px; width: auto; transform: translateY(18px) scale(.97); }
  .person-card.has-training-gallery:hover .training-gallery-popover,
  .person-card.has-training-gallery:focus-within .training-gallery-popover,
  .person-card.has-training-gallery:focus .training-gallery-popover { transform: translateY(0) scale(1); }
  .training-gallery-landscape { grid-template-columns: 1fr; max-height: 54vh; overflow-y: auto; }
}
/* Final people-card and demo CTA responsiveness */
.person-photo.has-photo img[alt="Pranjal Dwivedi"] {
  object-fit: cover !important;
  object-position: center 34% !important;
  transform: scale(1.28) !important;
  transform-origin: center 34% !important;
}

.demo-cta-fixed {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: .55rem !important;
  min-width: fit-content;
  max-width: 100%;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}

.demo-cta-fixed > * {
  position: static !important;
  inset: auto !important;
  margin: 0 !important;
  transform: none !important;
  line-height: inherit !important;
}

@media (max-width: 760px) {
  .people-grid,
  .trainers-grid,
  .advisors-grid,
  .founders-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
  }

  .person-card,
  .trainer-card,
  .advisor-card {
    display: grid !important;
    grid-template-columns: 104px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 16px !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 16px !important;
    overflow: visible !important;
  }

  .person-card > div:last-child,
  .trainer-card > div:last-child,
  .advisor-card > div:last-child {
    min-width: 0 !important;
  }

  .person-photo,
  .trainer-photo,
  .advisor-photo {
    width: 104px !important;
    height: 124px !important;
    min-width: 104px !important;
    min-height: 124px !important;
    max-width: 104px !important;
    max-height: 124px !important;
    aspect-ratio: auto !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 16px !important;
  }

  .person-photo img,
  .trainer-photo img,
  .advisor-photo img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
  }

  .person-card h3,
  .trainer-card h3,
  .advisor-card h3 {
    margin-top: 4px !important;
    font-size: clamp(1.08rem, 5vw, 1.35rem) !important;
    overflow-wrap: anywhere;
  }

  .person-role,
  .person-bio,
  .trainer-role,
  .trainer-bio,
  .advisor-role,
  .advisor-bio {
    font-size: .88rem !important;
    line-height: 1.48 !important;
    overflow-wrap: anywhere;
  }

  .founder-card {
    grid-template-columns: minmax(0, 1fr) !important;
    padding: 16px !important;
  }

  .founder-photo {
    width: 100% !important;
    height: min(76vw, 360px) !important;
    min-height: 260px !important;
    overflow: hidden !important;
    border-radius: 20px !important;
  }

  .founder-photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  .hero img,
  .hero-visual img,
  .hero-art img,
  .stage img {
    max-width: 100% !important;
    height: auto !important;
  }

  .demo-cta-fixed {
    width: auto !important;
    padding-inline: 18px !important;
    font-size: clamp(.84rem, 3.8vw, 1rem) !important;
  }
}

@media (max-width: 420px) {
  .person-card,
  .trainer-card,
  .advisor-card {
    grid-template-columns: 88px minmax(0, 1fr) !important;
    gap: 13px !important;
    padding: 13px !important;
  }

  .person-photo,
  .trainer-photo,
  .advisor-photo {
    width: 88px !important;
    height: 108px !important;
    min-width: 88px !important;
    min-height: 108px !important;
    max-width: 88px !important;
    max-height: 108px !important;
  }

  .demo-cta-fixed {
    gap: .35rem !important;
    padding-inline: 14px !important;
  }
}
/* ========================================================================== 
   Final mobile parity and demo-price overlap corrections
   Keeps the desktop visual language while reflowing content on small screens.
   ========================================================================== */

/* Price/demo artwork: keep both labels in their own layout space. */
.demo-price,
.demo-price-badge,
.demo-badge,
.price-badge,
.trial-price,
[class*="demo-price"],
[class*="price-badge"] {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  min-width: 0;
}

.demo-price .demo,
.demo-price-badge .demo,
.demo-badge .demo,
.price-badge .demo,
.trial-price .demo,
[class*="demo-price"] .demo,
[class*="price-badge"] .demo {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  flex: 0 0 auto;
  margin: 0 !important;
  white-space: nowrap;
}

/* This page's artwork uses a price tile followed by a small DEMO pill. */
.demo-offer-card > :first-child,
.demo-card > :first-child,
.demo-showcase > :first-child {
  min-width: 0;
}

.demo-offer-card .demo-price,
.demo-card .demo-price,
.demo-showcase .demo-price {
  padding-inline: clamp(1rem, 3vw, 1.6rem);
}

.demo-cta-fixed {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: fit-content !important;
  max-width: 100%;
  min-height: 3.25rem;
  padding: 0.78rem 1.35rem !important;
  white-space: normal !important;
  text-align: center;
  line-height: 1.25 !important;
  overflow-wrap: anywhere;
}

img,
video,
svg,
canvas {
  max-width: 100%;
}

@media (max-width: 767px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
  }

  section,
  header,
  footer,
  main,
  nav,
  .container,
  .wrap,
  .section-inner {
    max-width: 100%;
  }

  .container,
  .wrap,
  .section-inner {
    padding-inline: clamp(1rem, 4.5vw, 1.35rem);
  }

  h1 {
    font-size: clamp(2.2rem, 11vw, 3.65rem) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.045em !important;
    overflow-wrap: normal;
    word-break: normal;
  }

  h2 {
    font-size: clamp(1.75rem, 8vw, 2.65rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.025em !important;
  }

  h3 {
    line-height: 1.15 !important;
  }

  p,
  li,
  label,
  input,
  select,
  textarea,
  button,
  a {
    word-spacing: normal !important;
  }

  .hero,
  .hero-inner,
  .hero-grid,
  .hero-content,
  [class*="hero-grid"],
  [class*="hero-inner"] {
    min-width: 0;
  }

  .hero-grid,
  [class*="hero-grid"],
  .programme-grid,
  .program-grid,
  .trainer-grid,
  .advisor-grid,
  .founder-grid,
  .people-grid,
  .contact-grid,
  .policy-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .hero,
  .hero-inner,
  [class*="hero-inner"] {
    height: auto !important;
    min-height: 0 !important;
  }

  .hero-visual,
  .hero-media,
  .hero-art,
  [class*="hero-visual"],
  [class*="hero-media"] {
    width: 100% !important;
    max-width: 34rem !important;
    min-width: 0 !important;
    margin-inline: auto !important;
  }

  .hero-visual img,
  .hero-media img,
  .hero-art img,
  [class*="hero-visual"] img,
  [class*="hero-media"] img {
    width: 100% !important;
    height: auto !important;
    max-height: 31rem;
    object-fit: contain !important;
    object-position: center top !important;
  }

  .trainer-card,
  .advisor-card,
  .founder-card,
  .person-card,
  [class*="trainer-card"],
  [class*="advisor-card"],
  [class*="founder-card"] {
    width: 100% !important;
    max-width: 34rem;
    min-width: 0 !important;
    margin-inline: auto;
    overflow: hidden;
  }

  .demo-offer-card,
  .demo-card,
  .demo-showcase,
  [class*="demo-offer"],
  [class*="demo-showcase"] {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 1.25rem !important;
    width: 100%;
    min-width: 0;
  }

  .demo-price,
  .demo-price-badge,
  .demo-badge,
  .price-badge,
  .trial-price,
  [class*="demo-price"],
  [class*="price-badge"] {
    justify-self: start;
    gap: 0.65rem;
    width: auto !important;
    max-width: 100%;
    padding: 0.7rem 0.9rem !important;
  }

  .demo-price .demo,
  .demo-price-badge .demo,
  .demo-badge .demo,
  .price-badge .demo,
  .trial-price .demo,
  [class*="demo-price"] .demo,
  [class*="price-badge"] .demo {
    font-size: 0.7rem !important;
    padding: 0.55rem 0.7rem !important;
  }

  .demo-cta-fixed {
    width: auto !important;
    max-width: 100% !important;
    font-size: clamp(0.92rem, 4.2vw, 1.08rem) !important;
  }

  .tools-track,
  .tools-slider,
  [class*="tools-track"] {
    max-width: 100%;
  }

  .tool-card,
  [class*="tool-card"] {
    min-width: clamp(8rem, 38vw, 10rem) !important;
  }

  .cta-row,
  .hero-actions,
  .button-row,
  [class*="cta-row"],
  [class*="hero-actions"] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
  }

  .cta-row .btn,
  .hero-actions .btn,
  .button-row .btn,
  [class*="cta-row"] a,
  [class*="hero-actions"] a {
    width: auto !important;
    max-width: 100%;
  }
}

@media (max-width: 390px) {
  .demo-price,
  .demo-price-badge,
  .demo-badge,
  .price-badge,
  .trial-price,
  [class*="demo-price"],
  [class*="price-badge"] {
    gap: 0.45rem;
  }

  .demo-cta-fixed {
    padding-inline: 1rem !important;
  }
}
.demo-price-no-overlap {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.65rem !important;
  width: auto !important;
  max-width: 100% !important;
  overflow: visible !important;
}

.demo-pill-no-overlap {
  display: none !important;
}

@media (max-width: 767px) {
  .demo-price-no-overlap {
    gap: 0.5rem !important;
  }
}
.trainer-training-modal {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: grid;
  place-items: center;
  padding: clamp(1rem, 4vw, 2rem);
  background: rgba(7, 18, 48, 0.74);
  backdrop-filter: blur(8px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 180ms ease, visibility 180ms ease;
}

.trainer-training-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.trainer-training-dialog {
  position: relative;
  width: min(880px, 94vw);
  padding: clamp(0.75rem, 2vw, 1.15rem);
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 28px 80px rgba(2, 12, 39, .38);
  transform: translateY(12px) scale(.98);
  transition: transform 180ms ease;
}

.trainer-training-modal.is-open .trainer-training-dialog {
  transform: translateY(0) scale(1);
}

.trainer-training-title {
  margin: 0 3rem .75rem .25rem;
  color: #12203f;
  font-size: clamp(1.05rem, 2.5vw, 1.35rem);
  line-height: 1.2;
}

.trainer-training-viewport {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 1rem;
  background: #eef3ff;
}

.trainer-training-track {
  display: flex;
  width: 100%;
  height: 100%;
  transition: transform 280ms cubic-bezier(.22,.61,.36,1);
}

.trainer-training-slide {
  flex: 0 0 100%;
  width: 100%;
  height: 100%;
}

.trainer-training-slide img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  transform: none !important;
}

.trainer-training-empty {
  position: absolute;
  inset: 0;
  display: none;
  place-items: center;
  padding: 2rem;
  color: #52617e;
  text-align: center;
  font-weight: 700;
}

.trainer-training-empty.is-visible { display: grid; }

.trainer-training-close,
.trainer-training-prev,
.trainer-training-next {
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  color: #fff;
  background: #12203f;
  box-shadow: 0 8px 20px rgba(2, 12, 39, .22);
}

.trainer-training-close {
  position: absolute;
  top: .75rem;
  right: .75rem;
  z-index: 3;
  width: 2.4rem;
  height: 2.4rem;
  font-size: 1.3rem;
}

.trainer-training-prev,
.trainer-training-next {
  position: absolute;
  top: 50%;
  z-index: 2;
  width: 2.75rem;
  height: 2.75rem;
  transform: translateY(-50%);
  font-size: 1.45rem;
}

.trainer-training-prev { left: 1.25rem; }
.trainer-training-next { right: 1.25rem; }

.trainer-training-dots {
  display: flex;
  justify-content: center;
  gap: .5rem;
  padding-top: .8rem;
}

.trainer-training-dot {
  width: .55rem;
  height: .55rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #c6cee0;
  cursor: pointer;
}

.trainer-training-dot.is-active { background: #3159db; }

@media (max-width: 767px) {
  .trainer-training-modal { padding: .75rem; }
  .trainer-training-dialog { width: 100%; border-radius: 1.15rem; }
  .trainer-training-viewport { aspect-ratio: 4 / 3; }
  .trainer-training-prev { left: .65rem; }
  .trainer-training-next { right: .65rem; }
}

@media (prefers-reduced-motion: reduce) {
  .trainer-training-modal,
  .trainer-training-dialog,
  .trainer-training-track { transition: none !important; }
}
/* Superseded three-slot hover gallery; the accessible two-photo modal is used. */
.training-gallery-popover,
.trainer-gallery-popover,
.trainer-training-popover,
[class*="training-gallery-popover"] {
  display: none !important;
}
/* Remove the decorative DEMO sticker from the Rs 49 artwork (not CTA text). */
.demo-pill,
.demo-label,
.demo-tag,
.demo-sticker,
.demo-chip,
.demo-bubble,
.price-demo,
[class*="demo-pill"],
[class*="demo-label"],
[class*="demo-sticker"],
[class*="demo-chip"],
[class*="demo-bubble"] {
  display: none !important;
}

.demo-price::before,
.demo-price::after,
.demo-price-badge::before,
.demo-price-badge::after,
.price-badge::before,
.price-badge::after,
.trial-price::before,
.trial-price::after,
[class*="demo-price"]::before,
[class*="demo-price"]::after,
[class*="price-badge"]::before,
[class*="price-badge"]::after {
  content: none !important;
  display: none !important;
}

/* Sugam's file has extra outer whitespace: crop that canvas consistently. */
.sugam-portrait-frame {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
}

img.sugam-portrait-fill,
img[alt*="Sugam" i] {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center 24% !important;
  transform: scale(1.32) !important;
  transform-origin: center 24% !important;
  border-radius: inherit !important;
}

.pranjal-portrait-frame {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
}

img.pranjal-portrait-zoom,
img[alt*="Pranjal" i] {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center 22% !important;
  transform: scale(1.5) !important;
  transform-origin: center 22% !important;
}

@media (max-width: 767px) {
  img.sugam-portrait-fill,
  img[alt*="Sugam" i] {
    /* Keep exactly the same crop as desktop; do not recalculate around viewport. */
    object-position: center 24% !important;
    transform: scale(1.32) !important;
    transform-origin: center 24% !important;
  }

  img.pranjal-portrait-zoom,
  img[alt*="Pranjal" i] {
    object-position: center 22% !important;
    transform: scale(1.5) !important;
    transform-origin: center 22% !important;
  }
}
/* Source-based fallback for pages whose Sugam portrait has no useful alt text. */
*:has(> img[src*="sugam" i]) {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
}

img[src*="sugam" i] {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center 24% !important;
  transform: scale(1.34) !important;
  transform-origin: center 24% !important;
  border-radius: inherit !important;
}

@media (max-width: 767px) {
  img[src*="sugam" i] {
    object-position: center 24% !important;
    transform: scale(1.34) !important;
    transform-origin: center 24% !important;
  }
}
/* Direct trainers-grid fallback: fill every portrait frame without inner gutters. */
#trainers .trainer-card *:has(> img),
#trainers .person-card *:has(> img),
#trainers [class*="trainer-card"] *:has(> img),
.trainers .trainer-card *:has(> img),
.trainers .person-card *:has(> img),
[class*="trainers-section"] [class*="trainer-card"] *:has(> img) {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
}

#trainers .trainer-card img,
#trainers .person-card img,
#trainers [class*="trainer-card"] img,
.trainers .trainer-card img,
.trainers .person-card img,
[class*="trainers-section"] [class*="trainer-card"] img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  border-radius: inherit !important;
}

/* AI Explorers trainer order: Akanksha first, Sugam second. */
#trainers [class*="grid"] > :nth-child(2) *:has(> img),
.trainers [class*="grid"] > :nth-child(2) *:has(> img),
[class*="trainers-section"] [class*="grid"] > :nth-child(2) *:has(> img) {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
}

#trainers [class*="grid"] > :nth-child(2) img,
.trainers [class*="grid"] > :nth-child(2) img,
[class*="trainers-section"] [class*="grid"] > :nth-child(2) img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center 22% !important;
  transform: scale(1.36) !important;
  transform-origin: center 22% !important;
}

@media (max-width: 767px) {
  #trainers [class*="grid"] > :nth-child(2) img,
  .trainers [class*="grid"] > :nth-child(2) img,
  [class*="trainers-section"] [class*="grid"] > :nth-child(2) img {
    object-position: center 22% !important;
    transform: scale(1.36) !important;
    transform-origin: center 22% !important;
  }
}
/* ========================================================================== 
   Final responsive parity layer - layout only, no portrait recropping.
   ========================================================================== */
@media (max-width: 767px) {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  html,
  body {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow-x: hidden;
  }

  body {
    margin: 0;
  }

  main,
  section,
  header,
  footer,
  nav,
  .container,
  .wrap,
  .section-inner,
  .hero,
  .hero-inner,
  .hero-content {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  section {
    height: auto !important;
  }

  .container,
  .wrap,
  .section-inner {
    margin-inline: auto;
    padding-inline: clamp(1rem, 4.5vw, 1.4rem);
  }

  .hero-grid,
  [class*="hero-grid"],
  .programme-grid,
  .program-grid,
  .curriculum-grid,
  .trainer-grid,
  .advisor-grid,
  .founder-grid,
  .testimonial-grid,
  .contact-grid,
  .policy-grid,
  .faq-grid,
  .people-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100%;
  }

  .hero-grid > *,
  [class*="hero-grid"] > *,
  .programme-grid > *,
  .program-grid > *,
  .curriculum-grid > *,
  .trainer-grid > *,
  .advisor-grid > *,
  .founder-grid > *,
  .testimonial-grid > *,
  .contact-grid > *,
  .policy-grid > *,
  .faq-grid > *,
  .people-grid > * {
    min-width: 0;
    max-width: 100%;
  }

  .card,
  .programme-card,
  .program-card,
  .curriculum-card,
  .trainer-card,
  .advisor-card,
  .founder-card,
  .testimonial-card,
  .person-card,
  [class*="trainer-card"],
  [class*="advisor-card"],
  [class*="founder-card"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-inline: auto;
  }

  /* Images keep their established desktop crop and focal point. */
  .trainer-card img,
  .advisor-card img,
  .founder-card img,
  .person-card img,
  [class*="trainer-card"] img,
  [class*="advisor-card"] img,
  [class*="founder-card"] img {
    max-width: 100%;
  }

  .hero-actions,
  .cta-row,
  .button-row,
  .form-actions,
  [class*="hero-actions"],
  [class*="cta-row"] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem;
    width: 100%;
  }

  .hero-actions > *,
  .cta-row > *,
  .button-row > *,
  .form-actions > *,
  [class*="hero-actions"] > *,
  [class*="cta-row"] > * {
    width: auto !important;
    max-width: 100%;
  }

  input,
  select,
  textarea {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  table {
    width: 100%;
  }

  .table-wrap,
  [class*="table-wrap"] {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .tools-slider,
  .tools-track,
  [class*="tools-slider"],
  [class*="tools-track"] {
    max-width: 100%;
  }

  .marquee,
  .announcement-track,
  [class*="marquee"],
  [class*="announcement-track"] {
    max-width: 100%;
    overflow: hidden;
  }

  footer img,
  header img,
  nav img {
    max-width: 100%;
    height: auto;
  }
}

@media (max-width: 420px) {
  .container,
  .wrap,
  .section-inner {
    padding-inline: 1rem;
  }

  .hero-actions > *,
  .cta-row > *,
  .button-row > *,
  [class*="hero-actions"] > *,
  [class*="cta-row"] > * {
    font-size: .95rem;
  }
}
.trainer-training-slide img.sugam-training-slide-image {
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
  background: #eef3ff;
}
.trainer-gallery-trigger-frame {
  position: relative !important;
  overflow: hidden !important;
  cursor: pointer;
}

.trainer-gallery-trigger-frame::after {
  content: "View training sessions";
  position: absolute;
  left: 50%;
  bottom: .85rem;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: calc(100% - 1.5rem);
  padding: .58rem .85rem;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 999px;
  color: #fff;
  background: rgba(12, 29, 68, .88);
  box-shadow: 0 8px 22px rgba(3, 13, 42, .25);
  font-size: .76rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .02em;
  text-align: center;
  opacity: 0;
  transform: translate(-50%, .55rem);
  transition: opacity 180ms ease, transform 180ms ease;
  pointer-events: none;
}

/* Keep the gallery interaction visual, without a button-like overlay label. */
.trainer-gallery-trigger-frame::after {
  content: none !important;
  display: none !important;
}

.trainer-gallery-trigger-frame:has(img[data-trainer-photo="true"]):hover::after,
.trainer-gallery-trigger-frame:has(img[data-trainer-photo="true"]):focus-within::after {
  opacity: 1;
  transform: translate(-50%, 0);
}

.trainer-gallery-trigger-frame img[data-trainer-photo="true"] {
  cursor: pointer;
  transition: filter 180ms ease, transform 180ms ease;
}

.trainer-gallery-trigger-frame:hover img[data-trainer-photo="true"],
.trainer-gallery-trigger-frame:focus-within img[data-trainer-photo="true"] {
  filter: brightness(.76) saturate(.92);
}

@media (hover: none), (max-width: 767px) {
  .trainer-gallery-trigger-frame::after {
    opacity: 1;
    transform: translate(-50%, 0);
    font-size: .7rem;
  }
}
.trainer-gallery-hint {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  width: fit-content;
  max-width: 100%;
  margin: .8rem auto 1.35rem;
  padding: .6rem .9rem;
  border: 1px solid rgba(49, 89, 219, .22);
  border-radius: 999px;
  color: #24345b;
  background: #f3f6ff;
  box-shadow: 0 8px 22px rgba(31, 63, 146, .08);
  font-size: clamp(.78rem, 1.6vw, .92rem);
  font-weight: 750;
  line-height: 1.25;
  text-align: center;
}

.trainer-gallery-hint-icon {
  flex: 0 0 auto;
  color: #3159db;
  font-size: 1rem;
  animation: trainerHintPulse 1.5s ease-in-out infinite;
}

@keyframes trainerHintPulse {
  0%, 100% { transform: scale(.82) rotate(0deg); opacity: .55; }
  50% { transform: scale(1.22) rotate(15deg); opacity: 1; }
}

.trainer-gallery-trigger-frame {
  transition: box-shadow 180ms ease, transform 180ms ease;
}

.trainer-gallery-trigger-frame:hover,
.trainer-gallery-trigger-frame:focus-within {
  box-shadow: 0 0 0 3px rgba(49, 89, 219, .22), 0 14px 30px rgba(21, 43, 104, .18);
}

@media (max-width: 767px) {
  .trainer-gallery-hint {
    border-radius: 1rem;
    padding: .65rem .8rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .trainer-gallery-hint-icon { animation: none !important; }
}
/* Help page: keep every programme navigation link available on mobile. */
@media (max-width: 767px) {
  body:has(.help-hero) .nav,
  body:has([class*="help-hero"]) .nav,
  body:has(.policy-hero) .nav {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: .7rem !important;
    height: auto !important;
    min-height: 0 !important;
    padding-block: .75rem !important;
  }

  body:has(.help-hero) .nav-links,
  body:has([class*="help-hero"]) .nav-links,
  body:has(.policy-hero) .nav-links {
    display: flex !important;
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: .45rem !important;
    padding: .1rem 0 .15rem !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  body:has(.help-hero) .nav-links::-webkit-scrollbar,
  body:has([class*="help-hero"]) .nav-links::-webkit-scrollbar,
  body:has(.policy-hero) .nav-links::-webkit-scrollbar {
    display: none;
  }

  body:has(.help-hero) .nav-links a,
  body:has([class*="help-hero"]) .nav-links a,
  body:has(.policy-hero) .nav-links a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    min-height: 2.35rem !important;
    padding: .58rem .78rem !important;
    border: 1px solid #dce3f3 !important;
    border-radius: 999px !important;
    color: #14213d !important;
    background: #fff !important;
    box-shadow: 0 5px 14px rgba(20, 33, 61, .07);
    font-size: .76rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  body:has(.help-hero) .nav-links a[aria-current="page"],
  body:has([class*="help-hero"]) .nav-links a[aria-current="page"],
  body:has(.policy-hero) .nav-links a[aria-current="page"] {
    color: #fff !important;
    border-color: #3159db !important;
    background: #3159db !important;
  }
}
/* Help page: keep all programme navigation available on mobile. */
@media (max-width: 767px) {
  body.help-page .nav {
    height: auto !important;
    min-height: 0 !important;
    padding: 12px 16px 10px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
  }

  body.help-page .nav .brand,
  body.help-page .nav .logo {
    flex: 0 0 auto !important;
  }

  body.help-page .nav-links {
    order: 2 !important;
    display: flex !important;
    width: 100% !important;
    gap: 8px !important;
    padding: 2px 0 4px !important;
    margin: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  body.help-page .nav-links::-webkit-scrollbar {
    display: none;
  }

  body.help-page .nav-links a {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    padding: 8px 13px !important;
    border: 1px solid rgba(20, 33, 61, 0.18) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #14213d !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
  }

  body.help-page .nav-links a[aria-current='page'],
  body.help-page .nav-links a:last-child {
    background: #3657d6 !important;
    border-color: #3657d6 !important;
    color: #ffffff !important;
  }
}
