/* MSO brand sections: GEA trust strip, GEA journey, student stories, university partners, consultation CTA.
   Tokens: navy #110053, orange #f08000 (accent). Radius: cards 16px, buttons/inputs 8px, icon chips full. */
:root{--mso-navy:#110053;--mso-navy-2:#1d1270;--mso-orange:#f08000;--mso-orange-dark:#b56100;--mso-tint:#f4f2fb;--mso-cream:#fff7ee;--mso-ink:#1f1d2b;--mso-muted:#5b5872;--mso-line:#e3e0ef;--mso-ease:cubic-bezier(.16,1,.3,1)}
.mso-icon{width:1em;height:1em;flex:none;display:inline-block;vertical-align:-.125em}
.mso-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mso-orange-dark)}
.mso-eyebrow .mso-icon{font-size:18px}
.mso-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border-radius:8px;background:var(--mso-navy);color:#fff !important;font-weight:600;text-decoration:none;white-space:nowrap;transition:background .2s,transform .15s}
.mso-btn:hover{background:var(--mso-navy-2)}.mso-btn:active{transform:translateY(1px)}

/* ---------- Trust strip: white endorsement bar (no numbers, the stats bar owns those) ---------- */
.gea-trust{padding:32px 0 40px;background:#fff;position:relative;z-index:2}
.gea-trust__inner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:8px 0 28px;border-bottom:1px solid var(--mso-line)}
.gea-trust__brand{display:flex;align-items:center;gap:28px;min-width:0}
.gea-trust__logo{height:64px;width:auto;flex:none;padding-right:28px;border-right:1px solid var(--mso-line);box-sizing:content-box}
.gea-trust__eyebrow{display:flex;align-items:center;gap:6px;margin:0 0 4px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mso-orange-dark)}
.gea-trust__eyebrow .mso-icon{font-size:17px}
.gea-trust__title{margin:0;font-size:20px;line-height:1.3;font-weight:700;color:var(--mso-navy);max-width:28ch}
.gea-trust__link{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:14px;font-weight:600;color:var(--mso-navy);text-decoration:underline;text-underline-offset:3px}
.gea-trust__awards{list-style:none;margin:0;padding:0;display:flex;gap:28px}
.gea-trust__awards li{display:flex;align-items:center;gap:12px}
.gea-trust__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--mso-cream);color:var(--mso-orange-dark);font-size:22px;flex:none}
.gea-trust__awards strong{display:block;font-size:14px;line-height:1.3;color:var(--mso-navy)}
.gea-trust__awards small{display:block;font-size:12.5px;line-height:1.35;color:var(--mso-muted)}
@media (max-width:1199px){.gea-trust__inner{flex-direction:column;align-items:flex-start;gap:24px}}
@media (max-width:767px){
  .gea-trust__brand{flex-direction:column;align-items:flex-start;gap:14px}
  .gea-trust__logo{height:52px;padding:0;border:0}
  .gea-trust__title{font-size:18px}
  .gea-trust__awards{flex-direction:column;gap:14px}
}

/* ---------- GEA journey: looping progress rail ---------- */
.gea-journey{background:var(--mso-tint);padding:140px 0 56px;overflow:hidden}
.gea-journey__head{text-align:center;margin-bottom:0}
.gea-journey__title{margin:0 auto 12px;max-width:760px;font-size:clamp(28px,3.2vw,40px);line-height:1.15;font-weight:700;color:var(--mso-navy)}
.gea-journey__intro{margin:0 auto;max-width:60ch;font-size:16px;line-height:1.6;color:var(--mso-muted)}
.gea-journey__track{position:relative;--p:0;margin-top:72px}
.gea-journey__rail{position:absolute;left:calc(100% / var(--n) / 2);right:calc(100% / var(--n) / 2);top:31px;height:4px;border-radius:4px;background:var(--mso-line)}
.gea-journey__fill{position:absolute;inset:0;border-radius:inherit;background:var(--mso-orange);transform-origin:left;transform:scaleX(var(--p))}
.gea-journey__spark{position:absolute;top:50%;left:calc(var(--p) * 100%);width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--mso-orange);box-shadow:0 0 0 6px rgba(240,128,0,.2),0 0 18px 4px rgba(240,128,0,.45)}
.gea-journey__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:16px;position:relative}
.gea-journey__item{display:flex;flex-direction:column;align-items:center;text-align:center}
.gea-journey__node{position:relative;display:grid;place-items:center;width:66px;height:66px;border-radius:50%;border:2px solid var(--mso-line);background:#fff;color:var(--mso-muted);font-size:28px;cursor:pointer;padding:0;transition:background .5s,color .5s,border-color .5s,transform .5s var(--mso-ease)}
.gea-journey__node::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid var(--mso-orange);opacity:0;transform:scale(.8)}
.gea-journey__node:focus-visible{outline:3px solid var(--mso-orange);outline-offset:4px}
.gea-journey__card{margin-top:20px;padding:20px 18px;border-radius:16px;background:transparent;transition:background .5s,box-shadow .5s,transform .5s var(--mso-ease)}
.gea-journey__year{display:block;font-size:28px;line-height:1;font-weight:700;color:var(--mso-navy);opacity:.45;transition:opacity .5s,color .5s}
.gea-journey__item-title{margin:10px 0 8px;font-size:16px;line-height:1.35;font-weight:700;color:var(--mso-navy)}
.gea-journey__item-text{margin:0;font-size:14px;line-height:1.55;color:var(--mso-muted)}
.gea-journey__item.is-done .gea-journey__node{background:var(--mso-navy);border-color:var(--mso-navy);color:#fff}
.gea-journey__item.is-done .gea-journey__year{opacity:1}
.gea-journey__item.is-active .gea-journey__node{background:var(--mso-orange);border-color:var(--mso-orange);color:#fff;transform:scale(1.08)}
.gea-journey__item.is-active .gea-journey__node::after{animation:msoPing 1.8s var(--mso-ease) infinite}
.gea-journey__item.is-active .gea-journey__year{opacity:1;color:var(--mso-orange-dark)}
.gea-journey__item.is-active .gea-journey__card{background:#fff;box-shadow:0 20px 40px -24px rgba(17,0,83,.35);transform:translateY(-4px)}
@keyframes msoPing{0%{opacity:.8;transform:scale(.85)}100%{opacity:0;transform:scale(1.35)}}
@media (max-width:991px){
  .gea-journey{padding:120px 0 64px}
  .gea-journey__head{text-align:left;margin-bottom:40px}
  .gea-journey__rail{left:31px;right:auto;top:33px;bottom:33px;width:4px;height:auto}
  .gea-journey__fill{transform-origin:top;transform:scaleY(var(--p))}
  .gea-journey__spark{left:50%;top:calc(var(--p) * 100%)}
  .gea-journey__list{grid-template-columns:1fr;gap:8px}
  .gea-journey__item{flex-direction:row;align-items:flex-start;text-align:left;gap:16px}
  .gea-journey__card{margin-top:0;flex:1;padding:14px 16px}
}
@media (prefers-reduced-motion:reduce){.gea-journey__node,.gea-journey__card{transition:none}.gea-journey__item.is-active .gea-journey__node::after{animation:none}}

/* ---------- Stats bar (existing markup, restyled: flat, calm) ---------- */
.mso-stats .stats-wrapper{background:#110053 !important;padding:40px 16px 36px !important;border-radius:16px !important;box-shadow:none}
.mso-stats .star{display:none}
.mso-stats .stats-wrapper .row>.col{position:relative;padding:4px 24px}
.mso-stats .stats-wrapper .row>.col+.col::before{content:"";position:absolute;left:0;top:8%;bottom:8%;width:1px;background:rgba(255,255,255,.12)}
.mso-stats .stats-wrapper h2{font-size:clamp(30px,2.8vw,40px) !important;font-weight:600 !important;line-height:1.1;letter-spacing:-.01em;padding-bottom:8px !important;margin:0;color:#fff}
.mso-stats .stats-wrapper .count{font-size:inherit !important;font-weight:600 !important;font-variant-numeric:tabular-nums}
.mso-stats .stats-wrapper .main-title span{font-size:14px !important;font-weight:400 !important;line-height:1.5;color:rgba(255,255,255,.7);text-transform:none !important;display:block;max-width:22ch;margin:0 auto}
@media (max-width:991px){.mso-stats .stats-wrapper .row>.col::before{display:none}}

/* ---------- Student stories ---------- */
.stories{padding:96px 0;background:#fff}
.stories__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center}
.stories__title{margin:0 0 14px;font-size:clamp(28px,3.2vw,40px);line-height:1.15;font-weight:700;color:var(--mso-navy)}
.stories__text{margin:0 0 32px;font-size:16px;line-height:1.6;color:var(--mso-muted);max-width:42ch}
.stories__nav{display:flex;align-items:center;gap:16px}
.stories__arrow{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid var(--mso-line);background:#fff;color:var(--mso-navy);font-size:20px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.stories__arrow:hover{background:var(--mso-navy);border-color:var(--mso-navy);color:#fff}
.stories__arrow:focus-visible{outline:3px solid var(--mso-orange);outline-offset:3px}
.stories__dots{display:flex;gap:6px}
.stories__dots i{width:8px;height:8px;border-radius:8px;background:var(--mso-line);transition:width .4s var(--mso-ease),background .4s}
.stories__dots i.is-active{width:24px;background:var(--mso-orange)}
.stories__stage{position:relative;display:grid;border-radius:16px;background:var(--mso-tint);overflow:hidden}
.story{grid-area:1/1;margin:0;padding:44px 48px 40px;display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateX(-16px);transition:opacity .25s ease,transform .25s ease,visibility 0s .25s}
.story.is-active{opacity:1;visibility:visible;transform:none;transition:opacity .6s var(--mso-ease) .2s,transform .6s var(--mso-ease) .2s,visibility 0s .2s}
.story__quote-mark{display:block;font-size:44px;line-height:1;color:var(--mso-orange);margin-bottom:16px}
.story__text{margin:0 0 28px;font-size:18px;line-height:1.7;color:var(--mso-ink);font-weight:500}
.story__who{margin-top:auto;padding-top:22px;border-top:1px solid var(--mso-line);display:flex;align-items:center;gap:16px}
.story__avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;flex:none;border:3px solid #fff;box-shadow:0 8px 20px -10px rgba(17,0,83,.4)}
.story__who strong{display:block;font-size:18px;color:var(--mso-navy)}
.story__who small{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:14px;color:var(--mso-muted)}
.story__who .mso-icon{font-size:18px;color:var(--mso-orange-dark)}
.stories__progress{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(17,0,83,.08)}
.stories__progress span{display:block;height:100%;width:100%;background:var(--mso-orange);transform-origin:left;transform:scaleX(0)}
.stories.is-playing .stories__progress span{animation:msoBar var(--dur,7s) linear forwards}
.stories.is-paused .stories__progress span{animation-play-state:paused}
@keyframes msoBar{to{transform:scaleX(1)}}
@media (max-width:991px){.stories__grid{grid-template-columns:1fr;gap:28px}.stories__nav{order:2}}
@media (max-width:575px){.stories{padding:64px 0}.story{padding:28px 22px}.story__text{font-size:15.5px}.story__avatar{width:60px;height:60px}}

/* ---------- University partners: two-row marquee ---------- */
.uni-partners{padding:96px 0;background:var(--mso-tint);overflow:hidden}
.uni-partners__head{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:end;margin-bottom:48px}
.uni-partners__title{margin:0;font-size:clamp(28px,3.2vw,40px);line-height:1.15;font-weight:700;color:var(--mso-navy);max-width:18ch}
.uni-partners__text{margin:0 0 20px;font-size:16px;line-height:1.6;color:var(--mso-muted)}
.uni-partners__marquee{display:grid;gap:20px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.uni-partners__row{display:flex;width:max-content;animation:msoMarquee 60s linear infinite}
.uni-partners__row.is-reverse{animation-direction:reverse;animation-duration:70s}
.uni-partners__marquee:hover .uni-partners__row{animation-play-state:paused}
.uni-partners__set{list-style:none;margin:0;padding:0 10px;display:flex;gap:20px}
.uni-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;width:250px;height:184px;padding:18px 20px;text-align:center;border-radius:16px;background:#fff;border:1px solid var(--mso-line);transition:transform .35s var(--mso-ease),box-shadow .35s var(--mso-ease)}
.uni-card__logo{display:flex;align-items:center;justify-content:center;height:84px;width:100%;margin-bottom:8px}
.uni-card img{max-width:100%;max-height:72px;width:auto;height:auto;object-fit:contain}
.uni-card__name{font-size:14px;line-height:1.3;font-weight:700;color:var(--mso-navy)}
.uni-card__loc{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;color:var(--mso-muted)}
.uni-card__loc .mso-icon{color:var(--mso-orange-dark)}
@keyframes msoMarquee{to{transform:translateX(-50%)}}
@media (max-width:991px){.uni-partners__head{grid-template-columns:1fr;gap:16px;align-items:start}}
@media (max-width:575px){.uni-partners{padding:64px 0}.uni-card{width:200px;height:170px}.uni-card img{max-height:56px}}
@media (prefers-reduced-motion:reduce){.uni-partners__row{animation:none;flex-wrap:wrap}.uni-partners__set[aria-hidden]{display:none}}

/* ---------- Consultation CTA: original form layout on the light tint; bottom wave flows into the navy footer ---------- */
.cta-wave path{fill:var(--mso-tint) !important}
.cta-wave-bottom{background:#110053 !important;margin:0 !important}
.free_consultation.mso-cta{background:var(--mso-tint) !important;color:var(--mso-ink);padding:72px 0 96px}
.mso-cta form[id^="_form_"]{margin:0 auto !important;padding:0 !important;background:transparent !important}
#free_consultation#free_consultation form,
#free_consultation#free_consultation form[id],
#free_consultation#free_consultation form[id^="_form_"],
#free_consultation#free_consultation div[id^="_form_"],
#free_consultation#free_consultation ._form,
#free_consultation#free_consultation ._form_2,
#free_consultation#free_consultation ._form-content,
#free_consultation#free_consultation ._inline-form,
#free_consultation#free_consultation ._inline-style,
.mso-cta .mso-cta__card form,
.mso-cta .mso-cta__card form[id^="_form_"],
.mso-cta .mso-cta__card div[id^="_form_"],
.mso-cta .mso-cta__card ._form,
.mso-cta .mso-cta__card ._form_2,
.mso-cta .mso-cta__card ._form-content,
.mso-cta .mso-cta__card ._inline-form,
.mso-cta .mso-cta__card ._inline-style,
.mso-cta form[id^="_form_"],
.mso-cta ._form_2,
.mso-cta ._form{background:transparent !important;background-color:transparent !important;box-shadow:none !important}
#free_consultation#free_consultation #_form_2_submit,
#free_consultation#free_consultation button[type=submit],
#free_consultation#free_consultation [type=submit],
#free_consultation#free_consultation ._submit,
#free_consultation#free_consultation [id$="_submit"],
.mso-cta .mso-cta__card #_form_2_submit,
.mso-cta .mso-cta__card [type=submit],
.mso-cta.new-form #_form_2_submit,
.mso-cta.new-form form [type=submit]{background:#110053 !important;background-color:#110053 !important;color:#fff !important;border:0 !important;border-radius:8px !important;cursor:pointer !important;width:100% !important;height:52px !important;display:block !important;font-weight:700 !important;font-size:16px !important;transition:background .2s,transform .15s}
.mso-cta form[id^="_form_"] ._form-title{color:var(--mso-navy) !important;text-transform:none !important;font-weight:700 !important}
.mso-cta form[id^="_form_"] ._html-code,.mso-cta form[id^="_form_"] ._html-code *{color:var(--mso-muted) !important}
.mso-cta form[id^="_form_"] label,.mso-cta form[id^="_form_"] ._form-label,.mso-cta form[id^="_form_"] .sms_consent_message,.mso-cta form[id^="_form_"] label div{color:var(--mso-ink) !important}
.mso-cta.new-form form input:not([type=checkbox]),.mso-cta.new-form form select{background-color:#fff !important;color:var(--mso-ink) !important;border:1px solid #cfcbe0 !important;border-radius:8px !important}
.mso-cta.new-form form input::placeholder{color:#76738c !important}
.mso-cta.new-form form input:focus,.mso-cta.new-form form select:focus{outline:2px solid var(--mso-orange) !important;outline-offset:1px;border-color:var(--mso-navy) !important}
.mso-cta.new-form form select option{background:#fff !important;color:var(--mso-ink) !important}
.mso-cta.new-form ._required,.mso-cta.new-form ._form-label span,.mso-cta.new-form label span[style*="color"]{color:var(--mso-orange-dark) !important}
.mso-cta.new-form #_form_2_submit,.mso-cta.new-form form [type=submit]{background:#110053 !important;background-color:#110053 !important;color:#fff !important;border:0 !important;border-radius:8px !important;transition:background .2s,transform .15s}
.mso-cta.new-form #_form_2_submit:hover{background:#1d1270 !important}
.mso-cta.new-form form input[type=checkbox]{accent-color:#110053}
/* Form card highlight */
.mso-cta__card{max-width:1080px;margin:0 auto;padding:40px 48px 32px;background:#fff;border:1px solid var(--mso-line);border-top:4px solid var(--mso-orange);border-radius:16px;box-shadow:0 24px 48px -28px rgba(17,0,83,.3)}
.mso-cta__eyebrow{display:flex;justify-content:center;align-items:center;gap:8px;margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mso-orange-dark)}
.mso-cta__eyebrow .mso-icon{font-size:18px}
.mso-cta__points{list-style:none;margin:24px 0 0;padding:20px 0 0;border-top:1px solid var(--mso-line);display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px}
.mso-cta__points li{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--mso-navy)}
.mso-cta__points .mso-icon{font-size:18px;color:var(--mso-orange-dark)}
.mso-cta form[id^="_form_"] ._form-content{display:grid !important;grid-template-columns:1fr 1fr;gap:14px 20px;align-items:end}
.mso-cta form[id^="_form_"] ._form-content>*{width:auto !important;margin:0 !important;float:none !important}
.mso-cta form[id^="_form_"] ._form-content>._clear,.mso-cta form[id^="_form_"] ._form-content>.sms_consent_checkbox,.mso-cta form[id^="_form_"] ._form-content>._button-wrapper,.mso-cta form[id^="_form_"] ._form-content>._clear-element{grid-column:1/-1}
.mso-cta form[id^="_form_"] ._form_element:has(>input[type=hidden]:only-child){display:none !important}
.mso-cta form[id^="_form_"] ._form-content>._form_element:has(._html-code){margin-bottom:12px !important}
.mso-cta.new-form form input:not([type=checkbox]),.mso-cta.new-form form select{width:100% !important;height:52px !important}
.mso-cta form[id^="_form_"] .sms_consent_checkbox{display:flex !important;gap:12px;align-items:center}
.mso-cta form[id^="_form_"] .sms_consent_message{width:auto !important}
.mso-cta.new-form #_form_2_submit{width:100% !important;height:54px !important}
@media (max-width:767px){.mso-cta__card{padding:28px 18px}.mso-cta form[id^="_form_"] ._form-content{grid-template-columns:1fr}}

/* ---------- "Ready to begin" CTA: original design, colours inverted (navy wave, orange accents) ---------- */
.expert-section .expert-btn{background:var(--mso-orange) !important;color:#fff !important;box-shadow:0 4px 0 #fff !important}
.expert-section .expert-btn:hover{background:#d97300 !important}
.expert-section .container .row .content{padding-top:150px}
.expert-section .expert-text{line-height:1.75;font-weight:400;color:rgba(255,255,255,.85);letter-spacing:.01em}
.expert-section .expert-text::first-line{font-weight:700;color:#fff}
/* Trust strip: more prominent card */
.gea-trust__inner{padding:28px 36px;border:1px solid var(--mso-line);border-bottom:1px solid var(--mso-line);border-radius:16px;background:#fff;box-shadow:0 18px 40px -24px rgba(17,0,83,.28);position:relative;overflow:hidden}
.gea-trust__inner::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--mso-orange)}
.gea-trust__logo{height:76px}
.gea-trust__title{font-size:22px}
.gea-trust__icon{width:48px;height:48px;background:var(--mso-navy);color:#fff;font-size:24px}
.gea-trust__awards strong{font-size:15px}
@media (max-width:767px){.gea-trust__inner{padding:22px 20px 22px 24px}.gea-trust__logo{height:56px}}
.gea-trust__inner{gap:28px}.gea-trust__awards{gap:22px}.gea-trust__eyebrow{white-space:nowrap}.gea-trust__title{max-width:none}@media (max-width:767px){.gea-trust__eyebrow{white-space:normal}}
/* Stats bar: full-bleed band so it doesn't compete with the trust card */
.stats-section.mso-stats{max-width:none !important;width:100%;padding:0 !important;margin:0 !important}
.mso-stats>.row{margin:0}
.mso-stats>.row>[class*="col-"]{width:100%;max-width:100%;flex:0 0 100%;padding:0}
.mso-stats .stats-wrapper{border-radius:0 !important;padding:48px 0 44px !important}
.mso-stats .stats-wrapper>.row{max-width:1320px;margin:0 auto}
.gea-journey{padding-top:88px}
.gea-trust{padding-bottom:48px}
.mso-stats .stats-wrapper h2,.mso-stats .stats-wrapper .count{font-weight:700 !important}

/* =====================================================================
   v3 minimal system: white + warm neutral surfaces, navy ink, orange as a small accent only.
   ===================================================================== */
:root{--mso-tint:#f6f5f2;--mso-line:#e7e5df;--mso-muted:#5f5d6b;--mso-surface:#f6f5f2}
.mso-eyebrow{color:var(--mso-muted);gap:10px}
.mso-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--mso-orange);flex:none}
.mso-eyebrow .mso-icon{display:none}

/* ---------- Hero ---------- */
.mso-hero{padding:20px 0 8px;background:#fff}
.mso-hero__panel{position:relative;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:24px;min-height:560px;padding:56px 0 56px 64px;border-radius:24px;background:var(--mso-surface);overflow:hidden}
.mso-hero__panel::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(17,0,83,.07) 1.2px,transparent 1.2px);background-size:22px 22px;-webkit-mask-image:radial-gradient(70% 80% at 80% 40%,#000,transparent);mask-image:radial-gradient(70% 80% at 80% 40%,#000,transparent);pointer-events:none}
.mso-hero__copy{position:relative;z-index:2;max-width:600px}
.mso-hero__eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 22px;padding:6px 14px 6px 8px;border-radius:999px;background:#fff;border:1px solid var(--mso-line);font-size:13px;font-weight:600;color:var(--mso-navy)}
.mso-hero__eyebrow img{height:18px;width:auto}
.mso-hero__title{margin:0 0 18px;font-size:clamp(36px,4.4vw,60px);line-height:1.06;letter-spacing:-.025em;font-weight:700;color:var(--mso-navy);text-transform:none}
.mso-hero__rotator{position:relative;display:block;height:1.14em;overflow:hidden}
.mso-hero__word{position:absolute;left:0;top:0;white-space:nowrap;color:var(--mso-navy);opacity:0;transform:translateY(100%);transition:transform .6s var(--mso-ease),opacity .6s var(--mso-ease)}
.mso-hero__word::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.16em;border-radius:4px;background:var(--mso-orange);opacity:.9;z-index:-1}
.mso-hero__word.is-active{opacity:1;transform:none}
.mso-hero__word.is-leaving{opacity:0;transform:translateY(-100%)}
.mso-hero__text{margin:0 0 30px;max-width:48ch;font-size:18px;line-height:1.6;color:var(--mso-muted)}
.mso-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-bottom:36px}
.mso-hero__btn{display:inline-flex;align-items:center;gap:10px;padding:16px 26px;border-radius:999px;background:var(--mso-navy);color:#fff !important;font-weight:600;font-size:16px;text-decoration:none;transition:transform .2s var(--mso-ease),box-shadow .2s}
.mso-hero__btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(17,0,83,.6)}
.mso-hero__btn .mso-icon{transition:transform .2s var(--mso-ease)}.mso-hero__btn:hover .mso-icon{transform:translateX(3px)}
.mso-hero__link{font-weight:600;font-size:16px;color:var(--mso-navy) !important;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1.5px}
.mso-hero__btn:focus-visible,.mso-hero__link:focus-visible{outline:3px solid var(--mso-orange);outline-offset:3px}
.mso-hero__proof{display:flex;align-items:center;gap:14px;font-size:14.5px;font-weight:600;color:var(--mso-navy)}
.mso-hero__avatars{display:flex}
.mso-hero__avatars img{width:36px;height:36px;border-radius:50%;object-fit:cover;border:2px solid var(--mso-surface);margin-left:-10px}
.mso-hero__avatars img:first-child{margin-left:0}
.mso-hero__visual{position:relative;align-self:stretch;min-height:460px}
.mso-hero__shape{position:absolute;right:-60px;top:50%;width:520px;height:520px;transform:translateY(-50%);border-radius:50%;background:#fde7cf}
.mso-hero__img{position:absolute;left:50%;bottom:-56px;width:115%;max-width:620px;transform:translateX(-46%) scale(.98);opacity:0;transition:opacity .9s ease,transform 1.2s var(--mso-ease)}
.mso-hero__img.is-active{opacity:1;transform:translateX(-46%) scale(1)}
.mso-hero__chip{position:absolute;z-index:3;display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;border-radius:16px;background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.9);box-shadow:0 18px 40px -20px rgba(17,0,83,.35);animation:msoFloat 6s ease-in-out infinite}
.mso-hero__chip strong{display:block;font-size:14.5px;line-height:1.25;color:var(--mso-navy)}
.mso-hero__chip small{display:block;font-size:12.5px;color:var(--mso-muted)}
.mso-hero__chip-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--mso-navy);color:#fff;font-size:20px;flex:none}
.mso-hero__chip--1{left:-8px;top:40% !important}
.mso-hero__chip--2{right:32px;top:6%;animation-delay:-2s}
.mso-hero__chip--3{right:12px;bottom:14%;animation-delay:-4s}
@keyframes msoFloat{50%{transform:translateY(-8px)}}
@media (max-width:1199px){.mso-hero__panel{padding:48px 0 48px 40px}.mso-hero__chip--1{left:-20px;top:40% !important}}
@media (max-width:991px){
  .mso-hero__panel{grid-template-columns:1fr;padding:40px 24px 0;min-height:0;text-align:left}
  .mso-hero__visual{min-height:380px;margin:0 -24px}
  .mso-hero__shape{right:50%;transform:translate(50%,-40%);width:380px;height:380px}
  .mso-hero__img{width:100%;max-width:460px;bottom:-30px;transform:translateX(-50%)}
  .mso-hero__img.is-active{transform:translateX(-50%)}
  .mso-hero__chip--1{left:16px;top:8%}.mso-hero__chip--2{display:none}.mso-hero__chip--3{right:16px;bottom:18%}
}
@media (max-width:575px){.mso-hero__title{font-size:34px}.mso-hero__text{font-size:16px}.mso-hero__chip{padding:8px 12px 8px 8px}.mso-hero__chip-icon{width:32px;height:32px;font-size:17px}}
@media (prefers-reduced-motion:reduce){.mso-hero__chip{animation:none}.mso-hero__word,.mso-hero__img{transition:none}}

/* ---------- Trust strip: calmer ---------- */
.gea-trust{padding:28px 0 8px}
.gea-trust__inner{box-shadow:none;border-color:var(--mso-line)}
.gea-trust__inner::before{display:none}
.gea-trust__icon{background:var(--mso-surface);color:var(--mso-navy)}
.gea-trust__eyebrow{color:var(--mso-muted)}

/* ---------- GEA story: compact timeline ---------- */
.gea-story{padding:88px 0;background:#fff}
.gea-story__head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:40px}
.gea-story__title{margin:0;font-size:clamp(28px,3.2vw,42px);line-height:1.12;letter-spacing:-.02em;font-weight:700;color:var(--mso-navy)}
.gea-story__intro{margin:0;font-size:16.5px;line-height:1.65;color:var(--mso-muted);max-width:52ch}
.gea-story__body{display:grid;grid-template-columns:300px 1fr;gap:40px;align-items:stretch}
.gea-story__list{list-style:none;margin:0;padding:0 0 0 22px;position:relative;display:flex;flex-direction:column;justify-content:space-between}
.gea-story__list::before{content:"";position:absolute;left:5px;top:12px;bottom:12px;width:2px;background:var(--mso-line)}
.gea-story__tab{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:12px 16px;border:0;border-radius:12px;background:none;text-align:left;cursor:pointer;transition:background .3s}
.gea-story__tab::before{content:"";position:absolute;left:-22px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;background:#fff;border:2px solid #cfcbd8;transition:all .3s}
.gea-story__tab:hover{background:var(--mso-surface)}
.gea-story__tab.is-active{background:var(--mso-surface)}
.gea-story__tab.is-active::before{background:var(--mso-orange);border-color:var(--mso-orange);box-shadow:0 0 0 5px rgba(240,128,0,.18)}
.gea-story__tab:focus-visible{outline:3px solid var(--mso-orange);outline-offset:2px}
.gea-story__year{font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--mso-muted)}
.gea-story__tab-title{font-size:16px;font-weight:600;line-height:1.35;color:var(--mso-navy)}
.gea-story__tab.is-active .gea-story__year{color:var(--mso-orange-dark)}
.gea-story__stage{position:relative;display:grid;border-radius:24px;background:var(--mso-surface);overflow:hidden}
.gea-story__panel{grid-area:1/1;display:grid;grid-template-columns:1.05fr 1fr;align-items:stretch;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility 0s .5s}
.gea-story__panel.is-active{opacity:1;visibility:visible;transition:opacity .6s ease .1s,visibility 0s}
.gea-story__art{position:relative;min-height:380px;margin:16px;border-radius:16px;background:var(--mso-navy);overflow:hidden;display:grid;place-items:center}
.gea-story__art.has-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gea-story__big{position:absolute;left:24px;bottom:4px;font-size:clamp(96px,11vw,150px);line-height:1;font-weight:800;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.22)}
.gea-story__icon{position:relative;display:grid;place-items:center;width:112px;height:112px;border-radius:50%;background:var(--mso-orange);color:#fff;font-size:52px;box-shadow:0 0 0 14px rgba(240,128,0,.16),0 0 0 30px rgba(240,128,0,.07)}
.gea-story__panel.is-active .gea-story__icon{animation:msoPop .7s var(--mso-ease)}
.gea-story__panel.is-active .gea-story__big{animation:msoRiseIn .9s var(--mso-ease)}
@keyframes msoPop{from{transform:scale(.6);opacity:0}to{transform:none;opacity:1}}
@keyframes msoRiseIn{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}
.gea-story__card{display:flex;flex-direction:column;justify-content:center;padding:40px 44px 48px 20px}
.gea-story__step{font-size:14px;font-weight:700;letter-spacing:.06em;color:var(--mso-orange-dark);margin-bottom:10px}
.gea-story__card h3{margin:0 0 14px;font-size:clamp(24px,2.4vw,32px);line-height:1.2;font-weight:700;color:var(--mso-navy)}
.gea-story__card p{margin:0;font-size:17px;line-height:1.7;color:var(--mso-muted)}
.gea-story__progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(17,0,83,.06)}
.gea-story__progress span{display:block;height:100%;background:var(--mso-navy);transform-origin:left;transform:scaleX(0)}
.gea-story.is-playing .gea-story__progress span{animation:msoBar var(--dur,5s) linear forwards}
.gea-story.is-paused .gea-story__progress span{animation-play-state:paused}
@media (max-width:991px){
  .gea-story{padding:64px 0}
  .gea-story__head{grid-template-columns:1fr;gap:12px;margin-bottom:28px}
  .gea-story__body{grid-template-columns:1fr;gap:16px}
  .gea-story__list{flex-direction:row;overflow-x:auto;padding:0 0 6px;gap:8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
  .gea-story__list::before,.gea-story__tab::before{display:none}
  .gea-story__list li{flex:none;scroll-snap-align:start}
  .gea-story__tab{width:auto;border:1px solid var(--mso-line);padding:10px 14px}
  .gea-story__tab.is-active{border-color:var(--mso-navy)}
  .gea-story__panel{grid-template-columns:1fr}
  .gea-story__art{min-height:220px}
  .gea-story__card{padding:8px 24px 32px}
}
@media (prefers-reduced-motion:reduce){.gea-story__panel,.gea-story__panel.is-active{transition:none}.gea-story__icon,.gea-story__big{animation:none !important}}

/* ---------- Calm the remaining coloured blocks ---------- */
.why-mso-section .mso-card{background:var(--mso-surface) !important;color:var(--mso-navy) !important;border:0 !important;box-shadow:none !important;border-radius:16px !important}
.why-mso-section .mso-card *{color:var(--mso-navy) !important}
.why-mso-section .mso-card p{color:var(--mso-muted) !important}
.why-mso-section .mso-card::before,.why-mso-section .mso-card::after{display:none !important}
.play-Video-section{background:#fff !important}
.mso-cta__card{border-top:1px solid var(--mso-line)}
.free_consultation.mso-cta{background:var(--mso-surface) !important}
.cta-wave path{fill:var(--mso-surface) !important}
.why-mso-section .mso-card h3,.why-mso-section .mso-card h4,.why-mso-section .mso-card h2{text-transform:none !important;letter-spacing:-.01em}

/* ---------- v3.1: full-width hero, rotator fix ---------- */
.mso-hero{padding:0;background:var(--mso-surface);position:relative;overflow:hidden}
.mso-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(17,0,83,.07) 1.2px,transparent 1.2px);background-size:22px 22px;-webkit-mask-image:radial-gradient(60% 80% at 78% 45%,#000,transparent);mask-image:radial-gradient(60% 80% at 78% 45%,#000,transparent);pointer-events:none}
.mso-hero__panel{background:none;border-radius:0;padding:64px 0 0;min-height:620px;overflow:visible}
.mso-hero__panel::before{display:none}
.mso-hero__copy{padding-bottom:64px}
.mso-hero__visual{min-height:560px}
.mso-hero__img{bottom:0}
.mso-hero__shape{right:-40px}
.mso-hero__rotator{height:1.18em;padding-bottom:.04em}
.mso-hero__word{transform:translateY(120%)}
.mso-hero__word.is-leaving{transform:translateY(-120%)}
.mso-hero__eyebrow{background:#fff}
@media (max-width:991px){.mso-hero__panel{padding:40px 0 0}.mso-hero__copy{padding-bottom:8px}.mso-hero__visual{min-height:380px;margin:0}}

/* ---------- GEA story v3: pinned horizontal scroll ---------- */
.gea-scroll{position:relative;height:calc(100vh + var(--n) * 34vh);background:#fff}
.gea-scroll__pin{position:sticky;top:0;height:100vh;min-height:640px;display:flex;flex-direction:column;justify-content:center;gap:36px;overflow:hidden}
.gea-scroll__head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end}
.gea-scroll__title{margin:0;font-size:clamp(28px,3.2vw,42px);line-height:1.12;letter-spacing:-.02em;font-weight:700;color:var(--mso-navy)}
.gea-scroll__aside{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.gea-scroll__intro{margin:0;max-width:44ch;font-size:16px;line-height:1.65;color:var(--mso-muted)}
.gea-scroll__count{flex:none;font-variant-numeric:tabular-nums;color:var(--mso-muted);font-size:15px}
.gea-scroll__count b{font-size:40px;line-height:1;font-weight:700;color:var(--mso-navy);margin-right:6px}
.gea-scroll__viewport{--pad:max(12px,calc((100vw - 1320px) / 2 + 12px))}
.gea-scroll__track{list-style:none;margin:0;padding:0 var(--pad);display:flex;gap:32px;width:max-content;will-change:transform;transform:translate3d(var(--x,0),0,0)}
.gea-scroll__item{position:relative;width:min(380px,78vw);flex:none;opacity:.45;transition:opacity .5s ease}
.gea-scroll__item.is-active,.gea-scroll__item.is-done{opacity:1}
.gea-scroll__rail{position:relative;height:14px;margin-bottom:18px}
.gea-scroll__rail::before{content:"";position:absolute;left:0;right:-32px;top:6px;height:2px;background:var(--mso-line)}
.gea-scroll__rail::after{content:"";position:absolute;left:0;right:-32px;top:6px;height:2px;background:var(--mso-navy);transform-origin:left;transform:scaleX(0);transition:transform .6s var(--mso-ease)}
.gea-scroll__item.is-done .gea-scroll__rail::after{transform:scaleX(1)}
.gea-scroll__item:last-child .gea-scroll__rail::before,.gea-scroll__item:last-child .gea-scroll__rail::after{right:0}
.gea-scroll__dot{position:absolute;left:0;top:0;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid #cfcbd8;transition:all .4s}
.gea-scroll__item.is-done .gea-scroll__dot{background:var(--mso-navy);border-color:var(--mso-navy)}
.gea-scroll__item.is-active .gea-scroll__dot{background:var(--mso-orange);border-color:var(--mso-orange);box-shadow:0 0 0 6px rgba(240,128,0,.18)}
.gea-scroll__year{display:block;margin-bottom:12px;font-size:15px;font-weight:700;letter-spacing:.06em;color:var(--mso-muted)}
.gea-scroll__item.is-active .gea-scroll__year{color:var(--mso-orange-dark)}
.gea-scroll__media{position:relative;margin:0 0 18px;aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:var(--mso-surface)}
.gea-scroll__media img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.2s var(--mso-ease)}
.gea-scroll__item.is-active .gea-scroll__media img,.gea-scroll__item.is-done .gea-scroll__media img{transform:scale(1)}
.gea-scroll__badge{position:absolute;left:14px;bottom:14px;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.92);color:var(--mso-navy);font-size:22px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.gea-scroll__item-title{margin:0 0 8px;font-size:20px;line-height:1.3;font-weight:700;color:var(--mso-navy)}
.gea-scroll__item-text{margin:0;font-size:15px;line-height:1.6;color:var(--mso-muted)}
.gea-scroll__bar{height:3px;border-radius:3px;background:var(--mso-line);overflow:hidden}
.gea-scroll__bar span{display:block;height:100%;background:var(--mso-navy);transform-origin:left;transform:scaleX(var(--p,0))}
@media (max-width:991px),(prefers-reduced-motion:reduce){
  .gea-scroll{height:auto;padding:64px 0}
  .gea-scroll__pin{position:static;height:auto;min-height:0;gap:28px}
  .gea-scroll__head{grid-template-columns:1fr;gap:12px}
  .gea-scroll__count,.gea-scroll__bar{display:none}
  .gea-scroll__viewport{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:8px}
  .gea-scroll__track{transform:none !important;padding:0 16px;gap:20px}
  .gea-scroll__item{scroll-snap-align:start;opacity:1}
  .gea-scroll__rail::after{transform:scaleX(1)}
  .gea-scroll__media img{transform:none}
}

/* ---------- Stats: navy band, separate from the GEA card ---------- */
.mso-stats .stats-wrapper{background:var(--mso-navy) !important}
.mso-stats .stats-wrapper h2,.mso-stats .stats-wrapper .count{color:#fff !important}
.mso-stats{margin-top:24px !important}
/* Let the pinned GEA story stick: "clip" hides overflow like "hidden" but does not break position:sticky */
body{overflow-x:clip !important}
.container-fluid.overflow-hidden{overflow:clip !important}
.gea-scroll__item{width:min(340px,78vw)}.gea-scroll__media{aspect-ratio:16/11}@media (max-height:760px) and (min-width:992px){.gea-scroll__pin{gap:24px}.gea-scroll__media{aspect-ratio:16/9}.gea-scroll__title{font-size:34px}}
.stats-section.mso-stats{margin-top:40px !important}.gea-scroll__pin{padding-top:24px}

/* ---------- v3.2 hero: rounded box again, tight outer margins ---------- */
.mso-hero{background:#fff;padding:12px 0 0;overflow:visible}
.mso-hero::before{display:none}
.mso-hero>.container{max-width:none;padding:0 16px}
.mso-hero__panel{background:var(--mso-surface);border-radius:24px;padding:64px 0 0 max(40px,calc((100vw - 1320px) / 2 + 12px));overflow:hidden;min-height:620px}
.mso-hero__panel::before{display:block}
@media (max-width:991px){.mso-hero>.container{padding:0 10px}.mso-hero__panel{padding:36px 20px 0;border-radius:20px}}

/* ---------- Story: bigger cards, no bottom bar ---------- */
.gea-scroll__bar{display:none !important}
.gea-scroll__item{width:min(440px,80vw)}
.gea-scroll__media{aspect-ratio:4/3}
.gea-scroll__item-title{font-size:22px}
.gea-scroll__item-text{font-size:16px}
@media (max-height:780px) and (min-width:992px){.gea-scroll__item{width:400px}.gea-scroll__media{aspect-ratio:16/10}}

/* ---------- Scroll reveal (only hides content once JS is running) ---------- */
.mso-js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .8s var(--mso-ease),transform .8s var(--mso-ease);transition-delay:var(--d,0ms)}
.mso-js [data-reveal].is-in{opacity:1;transform:none}

/* ---------- Destinations: every country visible as a photo card ---------- */
.mso-dest{padding:100px 0;background:#fff}
.mso-dest__head{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:end;margin-bottom:44px}
.mso-dest__title{margin:0;max-width:18ch;font-size:clamp(30px,3.4vw,46px);line-height:1.1;letter-spacing:-.02em;font-weight:700;color:var(--mso-navy)}
.mso-dest__text{margin:0;font-size:16.5px;line-height:1.6;color:var(--mso-muted)}
.mso-dest__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.mso-dest__card{position:relative;display:block;aspect-ratio:3/4;border-radius:18px;overflow:hidden;background:var(--mso-surface);color:#fff !important;text-decoration:none;isolation:isolate}
.mso-dest__card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--mso-ease)}
.mso-dest__card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(17,0,83,.82) 0%,rgba(17,0,83,.25) 38%,transparent 60%);transition:opacity .5s}
.mso-dest__label{position:absolute;left:16px;right:16px;bottom:16px;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;font-size:19px;font-weight:700;line-height:1.15}
.mso-dest__label small{display:block;margin-bottom:2px;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.mso-dest__go{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:50%;background:#fff;color:var(--mso-navy);font-size:16px;opacity:0;transform:translate(-8px,0) scale(.8);transition:all .45s var(--mso-ease)}
.mso-dest__card:hover img,.mso-dest__card:focus-visible img{transform:scale(1.08)}
.mso-dest__card:hover .mso-dest__go,.mso-dest__card:focus-visible .mso-dest__go{opacity:1;transform:none;background:var(--mso-orange);color:#fff}
.mso-dest__card:focus-visible{outline:3px solid var(--mso-orange);outline-offset:3px}
@media (max-width:1199px){.mso-dest__grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:991px){.mso-dest{padding:64px 0}.mso-dest__head{grid-template-columns:1fr;gap:12px;margin-bottom:28px}.mso-dest__grid{grid-template-columns:repeat(3,1fr);gap:12px}}
@media (max-width:640px){.mso-dest__grid{grid-template-columns:1fr 1fr}.mso-dest__card{border-radius:16px}.mso-dest__label{left:14px;right:14px;bottom:12px;font-size:17px}.mso-dest__go{display:none}}

/* ---------- Student reviews: one-card-step carousel ---------- */
.mso-reviews{padding:96px 0;background:var(--mso-surface);overflow:hidden}
.mso-reviews__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:36px}
.mso-reviews__nav{display:flex;gap:10px;flex:none}
.mso-reviews__arrow{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;border:1px solid #d6d3cc;background:#fff;color:var(--mso-navy);font-size:20px;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.mso-reviews__arrow:hover{background:var(--mso-navy);border-color:var(--mso-navy);color:#fff}
.mso-reviews__arrow:focus-visible{outline:3px solid var(--mso-orange);outline-offset:3px}
.mso-reviews__viewport{--per:3;--gap:24px;overflow:hidden;margin:-12px;padding:12px}
.mso-reviews__track{list-style:none;margin:0;padding:0;display:flex;gap:var(--gap);transition:transform .8s cubic-bezier(.65,0,.35,1)}
.mso-reviews__track.no-anim{transition:none}
.mso-review{flex:0 0 calc((100% - (var(--per) - 1) * var(--gap)) / var(--per));display:flex;flex-direction:column;padding:30px 28px 26px;border-radius:20px;background:#fff;border:1px solid var(--mso-line);transition:box-shadow .4s var(--mso-ease)}
.mso-review__mark{font-size:30px;line-height:1;color:var(--mso-orange);margin-bottom:14px}
.mso-review__text{margin:0;font-size:16px;line-height:1.7;color:var(--mso-ink);display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.mso-review__more{align-self:flex-start;margin:12px 0 0;padding:0;border:0;background:none;font-size:14px;font-weight:600;color:var(--mso-navy);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.mso-review__more:hover{color:var(--mso-orange)}
.mso-review__who{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:22px}
.mso-review__who img{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:none}
.mso-review__who strong{display:block;font-size:15.5px;color:var(--mso-navy)}
.mso-review__who small{display:block;font-size:13px;line-height:1.35;color:var(--mso-muted)}
@media (max-width:991px){.mso-reviews{padding:64px 0}.mso-reviews__viewport{--per:2}}
@media (max-width:640px){.mso-reviews__viewport{--per:1}.mso-reviews__head{margin-bottom:24px}.mso-reviews__arrow{width:44px;height:44px}}
.mso-review-modal{width:min(620px,calc(100vw - 32px));max-height:85vh;padding:36px 34px 32px;border:0;border-radius:24px;background:#fff;color:var(--mso-ink);box-shadow:0 40px 80px -30px rgba(17,0,83,.5)}
.mso-review-modal[open]{animation:mso-pop .35s var(--mso-ease)}
.mso-review-modal::backdrop{background:rgba(17,0,83,.55);backdrop-filter:blur(4px)}
@keyframes mso-pop{from{opacity:0;transform:translateY(16px) scale(.97)}}
.mso-review-modal .mso-review__text{display:block;-webkit-line-clamp:unset;font-size:16.5px;line-height:1.75}
.mso-review-modal .mso-review__more,.mso-review-modal .mso-review__mark{display:none}
.mso-review-modal__close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:var(--mso-surface);color:var(--mso-navy);font-size:18px;cursor:pointer}
@media (max-width:991px){.mso-reviews{padding:64px 0}.mso-reviews__grid{grid-template-columns:1fr;gap:32px}.mso-reviews__wall{height:520px}}
@media (max-width:640px){.mso-reviews__wall{grid-template-columns:1fr}.mso-reviews__col.is-reverse{display:none}}
@media (prefers-reduced-motion:reduce){.mso-reviews__wall{height:auto;-webkit-mask:none;mask:none}}

/* ---------- Ready to begin: light band, title left, actions right ---------- */
.mso-ready{padding:72px 0;background:#fff}
.mso-ready__inner{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:48px 0;border-top:1px solid var(--mso-line);border-bottom:1px solid var(--mso-line)}
.mso-ready__title{margin:0;color:var(--mso-navy)}
.mso-ready__text{margin:0 0 22px;font-size:17px;line-height:1.6;color:var(--mso-muted)}
.mso-ready__actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:22px}
.mso-ready__btn,.mso-ready__ghost{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:999px;font-size:15.5px;font-weight:600;text-decoration:none;transition:transform .25s var(--mso-ease),background .25s,border-color .25s,color .25s}
.mso-ready__btn{background:var(--mso-orange);color:#fff !important}
.mso-ready__btn .mso-icon{transition:transform .25s var(--mso-ease)}
.mso-ready__btn:hover{background:#d97300;transform:translateY(-2px)}
.mso-ready__btn:hover .mso-icon{transform:translateX(3px)}
.mso-ready__ghost{border:1.5px solid #d6d3cc;color:var(--mso-navy) !important}
.mso-ready__ghost .mso-icon{font-size:19px;color:#25a244}
.mso-ready__ghost:hover{border-color:var(--mso-navy);transform:translateY(-2px)}
.mso-ready__btn:focus-visible,.mso-ready__ghost:focus-visible{outline:3px solid var(--mso-orange);outline-offset:3px}
.mso-ready__proof{display:flex;align-items:center;gap:12px;margin:0;font-size:14px;font-weight:500;color:var(--mso-muted)}
.mso-ready__avatars{display:flex}
.mso-ready__avatars img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid #fff;margin-left:-10px}
.mso-ready__avatars img:first-child{margin-left:0}
@media (max-width:991px){.mso-ready{padding:48px 0}.mso-ready__inner{grid-template-columns:1fr;gap:20px;padding:36px 0}}
@media (prefers-reduced-motion:reduce){.mso-js [data-reveal]{opacity:1;transform:none;transition:none}}

/* ---------- One title size for every homepage section; balanced lines so no single word wraps alone ---------- */
.gea-scroll__title,.mso-dest__title,.mso-reviews__title,.mso-ready__title,.uni-partners__title,.why-mso-section .main-title h2,.play-Video-section .section-heading{font-size:clamp(26px,2.5vw,36px) !important;line-height:1.18 !important;letter-spacing:-.02em;font-weight:700;text-wrap:balance;max-width:none}
.mso-dest__title,.mso-reviews__title{margin-bottom:12px}
.mso-reviews__title{color:var(--mso-navy)}

/* Story pin sized to content (JS sets the section height and the sticky offset) */
@media (min-width:992px){.gea-scroll__pin{top:var(--pin-top,0px);height:auto;min-height:0;padding:56px 0}}
@media (min-width:992px){.gea-scroll__pin{padding:56px 0 8px}.gea-scroll__pin>.container:last-child{display:none}}
.mso-dest{padding:64px 0 90px}
@media (min-width:992px){.gea-scroll{padding:0 !important}}

/* Ready band v2: soft peach band, slow-turning globe outline, no borders */
.mso-dest{padding-bottom:72px}
.mso-ready{position:relative;overflow:hidden;padding:64px 0;background:linear-gradient(100deg,#fff6ea 0%,#fffaf3 55%,#f6f5f2 100%)}
.mso-ready__inner{position:relative;z-index:1;padding:0;border:0}
.mso-ready__globe{position:absolute;right:-90px;top:50%;width:420px;height:420px;margin-top:-210px;font-size:420px;line-height:1;color:var(--mso-orange);opacity:.08;animation:mso-spin 60s linear infinite}
.mso-ready__globe .mso-icon{width:100%;height:100%;display:block}
@keyframes mso-spin{to{transform:rotate(360deg)}}
.mso-ready__ghost{background:#fff}
.mso-dest__label{font-size:18px}.mso-dest__label>span:first-child{white-space:nowrap}
@media (max-width:991px){.mso-ready{padding:48px 0}.mso-ready__globe{width:260px;height:260px;margin-top:-130px;right:-80px}}
@media (prefers-reduced-motion:reduce){.mso-ready__globe{animation:none}}
.mso-reviews{padding:80px 0 88px}

/* ---------- Ready v3: peach card on white, stock photo box ---------- */
.mso-ready{padding:24px 0 88px;background:#fff;overflow:visible}
.mso-ready__globe{display:none}
.mso-ready__card{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:center;padding:20px 56px 20px 20px;border-radius:28px;background:linear-gradient(110deg,#fff3e3,#fff9f1 60%,#fdf6ec)}
.mso-ready__photo{margin:0;aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:var(--mso-surface)}
.mso-ready__photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.4s var(--mso-ease)}
.mso-ready__card.is-in .mso-ready__photo img,.mso-ready__card:not([data-reveal]) .mso-ready__photo img{transform:scale(1)}
.mso-ready__title{margin:0 0 12px}
.mso-ready__text{margin:0 0 26px}
@media (max-width:991px){.mso-ready{padding:8px 0 64px}.mso-ready__card{grid-template-columns:1fr;gap:24px;padding:14px 14px 28px}.mso-ready__body{padding:0 10px}}

/* ---------- Stories v4: full reviews, slow continuous drift ---------- */
.mso-reviews__viewport{overflow:hidden;margin:0;padding:12px 0;width:100vw;position:relative;left:50%;transform:translateX(-50%);-webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.mso-reviews__track{align-items:flex-start;width:max-content;transition:none;gap:24px}
.mso-reviews__track.is-running{animation:mso-marquee var(--speed,80s) linear infinite}
.mso-reviews__viewport:hover .mso-reviews__track{animation-play-state:paused}
.mso-review{flex:0 0 400px;width:400px}
.mso-review__text{display:block;-webkit-line-clamp:unset;overflow:visible}
@media (max-width:640px){.mso-review{flex-basis:300px;width:300px}}
@media (prefers-reduced-motion:reduce){.mso-reviews__viewport{overflow-x:auto}}
@keyframes mso-marquee{to{transform:translateX(calc(-50% - 12px))}}
.mso-dest{padding-bottom:48px}
.mso-reviews__track{align-items:stretch}
/* Ready: peach background runs edge to edge */
.mso-ready{padding:72px 0;background:linear-gradient(110deg,#fff3e3,#fff9f1 60%,#fdf6ec)}
.mso-ready__card{padding:0;border-radius:0;background:none}
.mso-dest{padding-bottom:88px}
@media (max-width:991px){.mso-ready{padding:48px 0}.mso-ready__card{padding:0}.mso-ready__body{padding:0}}

/* ---------- The MSO Difference: centred intro, zigzag cards drifting slowly ---------- */
.mso-why{padding:96px 0;background:#fff;overflow:hidden}
.mso-why__head{max-width:780px;margin:0 auto 48px;text-align:center}
.mso-why__head .mso-eyebrow{justify-content:center}
.mso-why__title{margin:0 0 14px;color:var(--mso-navy);font-weight:700 !important}
.mso-why__text{margin:0 auto;max-width:66ch;font-size:16px;line-height:1.7;color:var(--mso-muted)}
.mso-why__viewport{overflow:hidden;padding:8px 0 40px}
.mso-why__track{list-style:none;margin:0;padding:0;display:flex;align-items:flex-start;gap:24px;width:max-content}
.mso-why__track.is-running{animation:mso-marquee var(--speed,90s) linear infinite}
.mso-why__viewport:hover .mso-why__track{animation-play-state:paused}
.mso-why__card{flex:0 0 320px;min-height:300px;padding:30px 28px;border-radius:20px;background:#fff;border:1px solid var(--mso-line);transition:background .4s,border-color .4s,box-shadow .4s,transform .4s var(--mso-ease)}
.mso-why__card.is-low{margin-top:40px}
.mso-why__icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:28px;border-radius:14px;background:#fff3e3;color:var(--mso-orange);font-size:26px;transition:background .4s,color .4s}
.mso-why__card-title{margin:0 0 10px;font-size:19px;line-height:1.3;font-weight:700;letter-spacing:-.01em;color:var(--mso-navy);text-transform:none;transition:color .4s}
.mso-why__card-text{margin:0;font-size:15px;line-height:1.65;color:var(--mso-muted);transition:color .4s}
.mso-why__card:hover{background:var(--mso-navy);border-color:var(--mso-navy);transform:translateY(-6px);box-shadow:0 26px 44px -30px rgba(17,0,83,.55)}
.mso-why__card:hover .mso-why__icon{background:var(--mso-orange);color:#fff}
.mso-why__card:hover .mso-why__card-title{color:#fff}
.mso-why__card:hover .mso-why__card-text{color:rgba(255,255,255,.78)}
@media (max-width:991px){.mso-why{padding:64px 0}.mso-why__head{margin-bottom:32px}}
@media (max-width:640px){.mso-why__card{flex-basis:270px}.mso-why__card.is-low{margin-top:24px}}
@media (prefers-reduced-motion:reduce){.mso-why__viewport{overflow-x:auto}}

/* ---------- Explore About Study Abroad: clean reel cards ---------- */
.play-Video-section{padding:96px 0 !important;background:var(--mso-surface) !important}
.mso-videos__head{margin-bottom:28px;text-align:left}
.mso-videos__head .section-heading{margin:0;color:var(--mso-navy)}
.mso-videos__head .section-paragraph{margin:12px 0 0;max-width:56ch;color:var(--mso-muted);text-align:left}
.play-Video-section .container.px-4{padding-left:12px !important;padding-right:12px !important}
.play-Video-section .swiper{overflow:hidden}
.play-Video-section .student-card{height:480px !important;border-radius:20px !important;background:var(--mso-navy) !important;box-shadow:none !important;transition:transform .4s var(--mso-ease)}
.play-Video-section .student-card:hover{transform:translateY(-6px)}
.play-Video-section .student-card .insta-video iframe{height:calc(100% + 190px) !important;margin-top:-58px !important}
.mso-why__title{font-weight:700 !important}.mso-why__item{padding:26px 0 24px}
.play-Video-section .student-card{height:auto !important;aspect-ratio:4/5}
.mso-why__viewport{clip-path:inset(-30px -100vw -40px 0)}
.mso-why__top{margin-bottom:0;padding-bottom:32px}.mso-why__title{max-width:none}.mso-why__text{max-width:62ch}.mso-why__card{min-height:0}

/* No gradients */
.mso-ready{background:#fff5e9 !important}
.mso-dest__card::after{display:none}
.mso-dest__label{left:10px;right:10px;bottom:10px;padding:12px 14px;border-radius:12px;background:rgba(17,0,83,.82);align-items:center}

/* ---------- Final tweaks ---------- */
/* Hero: a little more breathing room around the box */
.mso-hero>.container{padding:0 32px !important}
@media (max-width:991px){.mso-hero>.container{padding:0 16px !important}}

/* Ready: photo flush to the left, top and bottom edges; text on the right */
.mso-ready{padding:0 !important}
.mso-ready>.container{max-width:none;padding:0}
.mso-ready__card{grid-template-columns:42% 1fr;gap:0;align-items:stretch;padding:0}
.mso-ready__photo{aspect-ratio:auto;min-height:440px;border-radius:0}
.mso-ready__body{align-self:center;padding:64px max(24px,calc((100vw - 1320px) / 2 + 12px)) 64px 72px}
@media (max-width:991px){.mso-ready__card{grid-template-columns:1fr}.mso-ready__photo{min-height:260px}.mso-ready__body{padding:40px 20px 48px}}

/* MSO Difference: wider intro, equal cards in static navy / orange, zigzag kept */
.mso-why__head{max-width:1080px}
.mso-why__text{max-width:none}
.mso-why__viewport{padding:8px 0 64px}
.mso-why__track{align-items:stretch}
.mso-why__card,.mso-why__card:hover{flex:0 0 320px;min-height:0;margin-top:0;border:0;background:var(--mso-navy);transform:none;box-shadow:none;transition:none}
.mso-why__card.is-low,.mso-why__card.is-low:hover{background:var(--mso-orange);transform:translateY(40px)}
.mso-why__icon,.mso-why__card:hover .mso-why__icon{background:#fff;color:var(--mso-orange)}
.mso-why__card.is-low .mso-why__icon{color:var(--mso-navy)}
.mso-why__card-title,.mso-why__card:hover .mso-why__card-title{color:#fff}
.mso-why__card-text,.mso-why__card:hover .mso-why__card-text{color:rgba(255,255,255,.82)}
.mso-why__card.is-low .mso-why__card-text{color:#fff}
@media (max-width:640px){.mso-why__card,.mso-why__card:hover{flex-basis:270px}.mso-why__card.is-low{transform:translateY(24px)}}
.mso-why__card.is-low{margin-top:0 !important}

/* MSO Difference: navy cards only (zigzag kept) */
.mso-why__card.is-low,.mso-why__card.is-low:hover{background:var(--mso-navy)}
.mso-why__card.is-low .mso-why__icon{color:var(--mso-orange)}
.mso-why__card.is-low .mso-why__card-text{color:rgba(255,255,255,.82)}

/* Ready: shorter, text moved right */
.mso-ready__photo{min-height:360px}
.mso-ready__body{padding-top:48px;padding-bottom:48px;padding-left:110px}
@media (max-width:991px){.mso-ready__photo{min-height:240px}.mso-ready__body{padding:36px 20px 40px}}

/* A little more space between sections */
@media (min-width:992px){
  .mso-dest{padding-top:88px;padding-bottom:104px}
  .mso-reviews{padding:104px 0 112px}
  .mso-why{padding:112px 0 104px}
  .play-Video-section{padding:112px 0 !important}
  .uni-partners{padding-top:112px;padding-bottom:112px}
}

/* MSO Difference: old card style (centred, caps titles, no icon), navy only */
.mso-why__icon{display:none}
.mso-why__card,.mso-why__card:hover{display:flex;flex-direction:column;justify-content:center;text-align:center;padding:40px 30px;border-radius:0 0 24px 0}
.mso-why__card-title{font-size:22px;line-height:1.25;text-transform:uppercase !important;letter-spacing:.01em;margin-bottom:14px}
.mso-why__card-text{font-size:14.5px}

/* Ready: title on one line */
@media (min-width:992px){
  .mso-ready__title{white-space:nowrap;text-wrap:nowrap;font-size:clamp(24px,2.2vw,34px) !important}
  .mso-ready__body{padding-left:80px}
}
/* Old card shape: top-left and bottom-right rounded */
.mso-why__card,.mso-why__card:hover{border-radius:36px 0 36px 0}
/* Ready: a bit shorter */
.mso-ready__photo{min-height:300px}
.mso-ready__body{padding-top:36px;padding-bottom:36px}

/* Reels: iframe is display-only (no hover popups); a transparent link covers the card */
.play-Video-section .student-card .insta-video{pointer-events:none}
.play-Video-section .reel-link{position:absolute;inset:0;z-index:8;border-radius:inherit}
.play-Video-section .reel-link:focus-visible{outline:3px solid var(--mso-orange);outline-offset:3px}
.play-Video-section .swiper-slide{height:auto}
/* Ready: shorter again */
.mso-ready__photo{min-height:260px}
.mso-ready__body{padding-top:28px;padding-bottom:28px}

/* ---------- Sticky contact dock ---------- */
.whatsapp,.chatbot_sticky{display:none !important}
.mso-dock{position:fixed;right:24px;bottom:24px;z-index:9999;display:flex;align-items:center;gap:10px}
.mso-dock a{display:inline-flex;align-items:center;gap:10px;height:54px;border-radius:999px;font-size:15px;font-weight:600;text-decoration:none;box-shadow:0 14px 30px -12px rgba(17,0,83,.45);transition:transform .25s var(--mso-ease),box-shadow .25s}
.mso-dock a:hover{transform:translateY(-3px);box-shadow:0 18px 34px -12px rgba(17,0,83,.55)}
.mso-dock a:focus-visible{outline:3px solid var(--mso-orange);outline-offset:3px}
.mso-dock .mso-icon{font-size:22px;flex:none}
.mso-dock__cta{padding:0 22px 0 18px;background:var(--mso-navy);color:#fff !important}
.mso-dock__cta .mso-icon{color:var(--mso-orange)}
.mso-dock__wa{position:relative;justify-content:center;width:54px;padding:0;background:#25d366;color:#fff !important}
.mso-dock__wa .mso-icon{font-size:28px}
.mso-dock__wa-label{display:none}
.mso-dock__wa::after{content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid #25d366;animation:mso-ping 2.4s ease-out infinite}
@keyframes mso-ping{from{transform:scale(1);opacity:.7}to{transform:scale(1.5);opacity:0}}
@media (max-width:767px){
  .mso-dock{left:0;right:0;bottom:0;gap:0;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--mso-line);box-shadow:0 -8px 24px -16px rgba(17,0,83,.35)}
  .mso-dock a{flex:1;justify-content:center;height:48px;box-shadow:none}
  .mso-dock__cta{margin-right:8px}
  .mso-dock__wa{width:auto;padding:0 16px}
  .mso-dock__wa-label{display:inline}
  .mso-dock__wa::after{display:none}
  body{padding-bottom:68px}
}
@media (prefers-reduced-motion:reduce){.mso-dock__wa::after{animation:none;display:none}}

/* Ready: slightly deeper peach */
.mso-ready{background:#ffe9d1 !important}

/* Form: section title above the card, like other sections */
.mso-cta__head{max-width:760px;margin:0 auto 32px;text-align:center}
.mso-cta__head .mso-eyebrow{justify-content:center}
.mso-cta__title{margin:0 0 10px;color:var(--mso-navy);font-weight:700}
.mso-cta__sub{margin:0;font-size:16px;line-height:1.6;color:var(--mso-muted)}
.mso-cta ._form-title,.mso-cta ._form_element._clear ._form-title{display:none !important}
/* Form: one subtitle only (the form's own intro moves into the header); balanced title */
.mso-cta ._form_element:has(> ._html-code){display:none !important}
.mso-cta__title{font-size:clamp(26px,2.5vw,36px) !important;line-height:1.18;letter-spacing:-.02em;text-wrap:balance}
.mso-cta__head{max-width:820px}
.mso-cta ._form_element:has(._form-title){display:none !important}.mso-cta ._form{padding-top:0 !important;margin-top:0 !important}.mso-cta ._form-content{padding-top:0 !important}
.mso-cta__card{padding-top:16px !important}
/* Ready: hero peach (#fde7cf), navy primary button, shorter */
.mso-ready{background:#fde7cf !important}
.mso-ready__btn{background:var(--mso-navy) !important}
.mso-ready__btn:hover{background:#1f0a7a !important}
.mso-ready__btn .mso-icon{color:var(--mso-orange)}
.mso-ready__photo{min-height:220px}
.mso-ready__body{padding-top:20px;padding-bottom:20px}
.mso-dock__wa .mso-icon{font-size:26px}
@media (min-width:992px){.mso-ready__body{padding-top:28px;padding-bottom:28px}.mso-ready__title{margin-bottom:8px}.mso-ready__text{margin-bottom:20px}.mso-ready__actions{margin-bottom:18px}.mso-ready__btn,.mso-ready__ghost{padding:12px 22px}}
.mso-ready__photo{position:relative}.mso-ready__photo img{position:absolute;inset:0}
@media (min-width:992px){.mso-ready__body{padding-top:52px;padding-bottom:52px}}
/* Fainter peach, hero circle and Ready kept matching */
.mso-ready{background:#fef1e3 !important}.mso-hero__shape{background:#fef1e3}
/* Hero: thin hand-drawn scribble underline, drawn in left to right when each word appears */
.mso-hero__word::after{bottom:-.02em;height:.24em;border-radius:0;opacity:1;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 20' preserveAspectRatio='none'%3E%3Cpath d='M3 13c40-6 92-9 150-8 50 1 96 3 144-2M14 17c58-5 128-7 196-5' fill='none' stroke='%23f08000' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") left center/0% 100% no-repeat;transition:background-size .9s var(--mso-ease) .25s}
.mso-hero__word.is-active::after{background-size:100% 100%}
@media (prefers-reduced-motion:reduce){.mso-hero__word::after{background-size:100% 100%;transition:none}}
/* Hero underline: single brush swoosh (tapered ends, thicker middle) */
.mso-hero__word::after{height:.2em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 16' preserveAspectRatio='none'%3E%3Cpath d='M2 12.5C70 6 150 3.5 298 5.5c-110 1.2-190 4.3-296 8.6z' fill='%23f08000'/%3E%3C/svg%3E")}

/* University cards: logo-only cards stay compact and centred */
.uni-card.is-logo-only{justify-content:center;height:150px}
.uni-card.is-logo-only .uni-card__logo{height:100%;margin:0}
.uni-card.is-logo-only img{max-height:78px}
@media (max-width:575px){.uni-card.is-logo-only{width:170px;height:120px}.uni-card.is-logo-only img{max-height:56px}}

/* ---------- Phones: comfortable edges and card widths ---------- */
@media (max-width:767px){
  .gea-scroll__track{padding-left:16px !important;padding-right:16px !important;scroll-padding-left:16px}
  .gea-scroll__item{width:min(300px,82vw) !important}
  .mso-reviews__viewport,.uni-partners__marquee,.mso-why__viewport{-webkit-mask:none !important;mask:none !important;-webkit-mask-image:none !important;mask-image:none !important}
  .mso-review{flex-basis:min(300px,84vw) !important;width:min(300px,84vw) !important;padding:22px 20px}
  .mso-review__text{font-size:15px}
  .mso-why__card,.mso-why__card:hover{flex-basis:min(280px,80vw) !important}
  .mso-why__card-title{font-size:19px}
  .mso-ready__actions{flex-direction:column;align-items:stretch}
  .mso-ready__btn,.mso-ready__ghost{justify-content:center}
  .mso-cta__title{font-size:26px !important}
}
@media (max-width:360px){
  .mso-dest__label{font-size:15px;padding:10px}
  .mso-dest__label small{font-size:10.5px}
  .mso-hero__title{font-size:32px !important}
  .mso-dock a{font-size:14px}
}
@media (max-width:991px){.gea-scroll__viewport{scroll-padding-inline:16px}}
@media (max-width:991px){.gea-scroll{padding-bottom:24px !important}}
@media (max-width:767px){.mso-dock a{white-space:nowrap;padding:0 12px;gap:8px}}
@media (max-width:400px){.mso-dock__cta .mso-icon{display:none}.mso-dock a{font-size:14px}}

/* =====================================================================
   v4 homepage: one calm editorial system. Hairline rules, numbered points,
   no icon boxes, no shadows, no gradients. Motion = reveal + count-up only.
   ===================================================================== */
.mso-h2{margin:0;font-size:clamp(26px,2.5vw,36px);line-height:1.18;letter-spacing:-.02em;font-weight:700;color:var(--mso-navy);text-wrap:balance}
.mso-lead{margin:0;font-size:clamp(16px,1.25vw,18px);line-height:1.7;color:var(--mso-muted)}
.mso-num{display:block;margin-bottom:14px;font-size:13px;font-weight:700;letter-spacing:.08em;color:var(--mso-orange-dark);font-variant-numeric:tabular-nums}
.mso-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px 64px;align-items:end;margin-bottom:48px}
.mso-head__text{margin:0;max-width:46ch;font-size:16px;line-height:1.65;color:var(--mso-muted)}
.mso-textlink{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:600;color:var(--mso-navy) !important;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px;transition:gap .25s var(--mso-ease)}
.mso-textlink:hover{gap:10px}
.mso-textlink .mso-icon{font-size:14px}
.mso-about,.mso-gea,.mso-founder,.mso-svc,.mso-social{padding:104px 0}
.mso-svc,.mso-gea{background:var(--mso-tint)}
.uni-partners{background:#fff}
.mso-usp,.mso-glance{display:none}

/* 1. About MSO */
.mso-about__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 72px;align-items:start}
.mso-about__facts{display:flex;flex-wrap:wrap;gap:16px 48px;margin:32px 0 0;padding:28px 0 0;border-top:1px solid var(--mso-line)}
.mso-about__facts div{display:flex;flex-direction:column-reverse}
.mso-about__facts dd{margin:0;font-size:clamp(28px,2.6vw,36px);line-height:1.1;font-weight:700;letter-spacing:-.02em;color:var(--mso-navy);font-variant-numeric:tabular-nums}
.mso-about__facts dt{margin-top:4px;font-size:14px;font-weight:500;color:var(--mso-muted)}
.mso-about__usp{list-style:none;margin:72px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--mso-line)}
.mso-about__usp li{position:relative;padding:32px 40px 0 0}
.mso-about__usp li+li{padding-left:40px;border-left:1px solid var(--mso-line)}
.mso-about__usp li::before{content:"";position:absolute;left:0;top:-1px;height:2px;width:100%;background:var(--mso-navy);transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--mso-ease) .2s}
.mso-about__usp li.is-in::before,.mso-about__usp li:not([data-reveal])::before{transform:scaleX(1)}
.mso-about__usp h3,.mso-svc__list h3{margin:0 0 10px;font-size:19px;line-height:1.3;font-weight:700;color:var(--mso-navy)}
.mso-about__usp p,.mso-svc__list p{margin:0;font-size:15px;line-height:1.65;color:var(--mso-muted)}

/* 2. GEA intro */
.mso-gea__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px 96px;align-items:center}
.mso-gea__logo{display:block;width:auto;height:52px;margin-bottom:28px}
.mso-gea .mso-h2{margin-bottom:20px}
.mso-gea__text p{margin:0 0 14px;font-size:16px;line-height:1.7;color:var(--mso-muted)}
.mso-gea__text{margin-bottom:24px}
.mso-gea__stats{display:grid;grid-template-columns:1fr 1fr;margin:0;border-top:1px solid #d6d2e6;border-left:1px solid #d6d2e6}
.mso-gea__stats>div{display:flex;flex-direction:column;gap:6px;padding:32px 28px;border-right:1px solid #d6d2e6;border-bottom:1px solid #d6d2e6}
.mso-gea__stats dd{margin:0;font-size:clamp(32px,3.2vw,46px);line-height:1;font-weight:700;letter-spacing:-.03em;color:var(--mso-navy);font-variant-numeric:tabular-nums}
.mso-gea__stats dt{font-size:14px;line-height:1.45;font-weight:500;color:var(--mso-muted)}

/* 3. Founder */
.mso-founder{background:#fff}
.mso-founder__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px 88px;align-items:center}
.mso-founder__media{margin:0;aspect-ratio:4/5;overflow:hidden;border-radius:4px;background:var(--mso-tint)}
.mso-founder__media img{width:100%;height:100%;object-fit:cover;object-position:top;transform:scale(1.06);transition:transform 1.4s var(--mso-ease)}
.mso-founder__media.is-in img{transform:none}
.mso-founder__quote{position:relative;margin:8px 0 28px;padding:0;border:0}
.mso-founder__quote p{margin:0;font-size:clamp(21px,2vw,28px);line-height:1.45;letter-spacing:-.01em;font-weight:500;color:var(--mso-navy);text-wrap:pretty}
.mso-founder__quote p::before{content:"\201C";color:var(--mso-orange)}
.mso-founder__quote p::after{content:"\201D";color:var(--mso-orange)}
.mso-founder__sign{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--mso-line)}
.mso-founder__name{margin:0;font-size:18px;font-weight:700;color:var(--mso-ink)}
.mso-founder__role{margin:0;font-size:15px;color:var(--mso-muted)}
.mso-founder__text p{margin:0 0 12px;font-size:15px;line-height:1.7;color:var(--mso-muted)}
.mso-founder__hl{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px 40px}
.mso-founder__hl li{display:flex;gap:10px;align-items:baseline;font-size:14px;color:var(--mso-ink)}
.mso-founder__hl b{color:var(--mso-orange-dark);font-variant-numeric:tabular-nums}

/* 5. Services */
.mso-svc__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0 48px;counter-reset:s}
.mso-svc__list li{position:relative;padding:28px 0 36px;border-top:1px solid #d6d2e6}
.mso-svc__list li::before{content:"";position:absolute;left:0;top:-1px;height:2px;width:48px;background:var(--mso-orange);transition:width .6s var(--mso-ease)}
.mso-svc__list li:hover::before{width:100%}
.mso-svc__btn{margin-top:16px}

/* Universities (kept as is, white band after the tinted reviews) */

/* 8. CTA + form: navy band, copy left, white form right */
.free_consultation.mso-cta{background:var(--mso-navy) !important;color:#fff;padding:104px 0 !important}
.mso-cta__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px 80px;align-items:center}
.mso-cta .mso-cta__head{max-width:none;margin:0;text-align:left}
.mso-cta .mso-cta__head .mso-eyebrow{justify-content:flex-start;color:var(--mso-orange)}
.mso-cta .mso-cta__title{color:#fff !important;margin-bottom:14px}
.mso-cta .mso-cta__sub{color:rgba(255,255,255,.78);font-size:17px}
.mso-cta .mso-cta__points{display:grid;gap:14px;justify-content:start;margin:32px 0 0;padding:28px 0 0;border-top:1px solid rgba(255,255,255,.16)}
.mso-cta .mso-cta__points li{color:#fff;font-weight:500;font-size:15px}
.mso-cta .mso-cta__points .mso-icon{color:var(--mso-orange);font-size:20px}
.mso-cta__gea{display:flex;align-items:center;gap:12px;margin:32px 0 0;font-size:13px;color:rgba(255,255,255,.7)}
.mso-cta__gea img{height:24px;width:auto;padding:4px 8px;background:#fff;border-radius:4px;box-sizing:content-box}
.mso-cta .mso-cta__card{max-width:none;margin:0;padding:36px 36px 28px !important;border:0;border-radius:8px;box-shadow:none;background:#fff}
.mso-cta form[id^="_form_"] ._form-content{grid-template-columns:1fr 1fr}

/* 9. Social */
.mso-social{padding-bottom:0}
.mso-social .mso-head{margin-bottom:8px}
.mso-social__links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.mso-social__link{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px;border:1px solid var(--mso-line);border-radius:999px;font-size:14px;font-weight:600;color:var(--mso-navy) !important;text-decoration:none;transition:border-color .2s,background .2s,color .2s}
.mso-social__link:hover{background:var(--mso-navy);border-color:var(--mso-navy);color:#fff !important}
.mso-social__link .mso-icon{font-size:20px}
.mso-social .play-Video-section{padding-top:24px !important}
.mso-social .mso-videos__head{display:none}

@media (max-width:991px){
  .mso-about,.mso-gea,.mso-founder,.mso-svc,.mso-social,.free_consultation.mso-cta{padding:72px 0 !important}
  .mso-social{padding-bottom:0 !important}
  .mso-head,.mso-about__top,.mso-gea__grid,.mso-founder__grid,.mso-cta__grid{grid-template-columns:1fr}
  .mso-head{gap:12px;margin-bottom:32px}
  .mso-about__usp{grid-template-columns:1fr;margin-top:48px}
  .mso-about__usp li,.mso-about__usp li+li{padding:24px 0 28px;border-left:0}
  .mso-about__usp li+li{border-top:1px solid var(--mso-line)}
  .mso-about__usp li+li::before{display:none}
  .mso-svc__list{grid-template-columns:1fr 1fr;gap:0 32px}
  .mso-founder__media{max-width:420px;aspect-ratio:1/1}
  .mso-social__links{justify-content:flex-start}
}
@media (max-width:767px){
  .mso-svc__list{grid-template-columns:1fr}
  .mso-svc__list li{padding:22px 0 24px}
  .mso-gea__stats>div{padding:22px 16px}
  .mso-about__facts{gap:16px 28px}
  .mso-cta .mso-cta__card{padding:24px 18px 20px !important}
  .mso-cta form[id^="_form_"] ._form-content{grid-template-columns:1fr}
  .mso-founder__media{max-width:none;aspect-ratio:4/3.4}
  .mso-social__link{height:40px;padding:0 14px}
}
@media (prefers-reduced-motion:reduce){.mso-about__usp li::before{transform:scaleX(1);transition:none}.mso-founder__media img{transform:none}}
.mso-cta .mso-cta__card{padding-top:20px !important}

/* Small USP strip under the hero (replaces About MSO + GEA intro) */
.mso-usp2{padding:40px 0 8px;background:#fff}
.mso-usp2__list{list-style:none;margin:0;padding:28px 0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--mso-line);border-bottom:1px solid var(--mso-line)}
.mso-usp2__list li{display:flex;gap:12px;align-items:flex-start;padding:0 28px}
.mso-usp2__list li:first-child{padding-left:0}
.mso-usp2__list li+li{border-left:1px solid var(--mso-line)}
.mso-usp2__tick{flex:none;color:var(--mso-orange-dark);font-size:22px;line-height:1;margin-top:1px}
.mso-usp2__title{margin:0 0 4px;font-size:16px;line-height:1.35;font-weight:700;color:var(--mso-navy)}
.mso-usp2__list p{margin:0;font-size:14px;line-height:1.55;color:var(--mso-muted)}
@media (max-width:991px){.mso-usp2__list{grid-template-columns:1fr 1fr;gap:24px 0}.mso-usp2__list li:nth-child(odd){padding-left:0;border-left:0}}
@media (max-width:575px){.mso-usp2{padding:28px 0 0}.mso-usp2__list{grid-template-columns:1fr;gap:0;padding:8px 0}.mso-usp2__list li{padding:16px 0 !important;border-left:0 !important}.mso-usp2__list li+li{border-top:1px solid var(--mso-line)}}

/* ---------- USP band v3: one focused navy panel under the hero ---------- */
.mso-usp2{display:none}
.mso-usp3{padding:40px 0 16px;background:#fff}
.mso-usp3__panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:32px 56px;align-items:center;padding:40px 48px;background:var(--mso-navy);border-radius:20px;color:#fff}
.mso-usp3__eyebrow{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mso-orange)}
.mso-usp3__title{margin:0;font-size:clamp(20px,1.8vw,26px);line-height:1.3;font-weight:700;letter-spacing:-.01em;color:#fff;text-wrap:balance}
.mso-usp3__list{display:grid;grid-template-columns:repeat(4,1fr);margin:0}
.mso-usp3__list>div{display:flex;flex-direction:column;gap:6px;padding:4px 24px;border-left:1px solid rgba(255,255,255,.16)}
.mso-usp3__list dd{margin:0;font-size:clamp(28px,2.6vw,38px);line-height:1;font-weight:700;letter-spacing:-.02em;color:#fff;font-variant-numeric:tabular-nums}
.mso-usp3__list dt{font-size:14px;line-height:1.4;font-weight:500;color:rgba(255,255,255,.72)}
@media (max-width:1199px){.mso-usp3__panel{grid-template-columns:1fr;padding:36px}}
@media (max-width:767px){
  .mso-usp3{padding:24px 0 8px}
  .mso-usp3__panel{padding:28px 22px;border-radius:16px;gap:24px}
  .mso-usp3__list{grid-template-columns:1fr 1fr;gap:20px 0}
  .mso-usp3__list>div{padding:2px 16px}
  .mso-usp3__list>div:nth-child(odd){border-left:0;padding-left:0}
}

/* ---------- Founder v2: peach panel, message left, portrait right ---------- */
.mso-founder,.mso-founder__grid{display:none}
.mso-founder2{padding:104px 0;background:#fff}
.mso-founder2__panel{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:40px;align-items:end;padding:64px 0 0 64px;background:#fef1e3;border-radius:24px;overflow:hidden}
.mso-founder2__copy{padding-bottom:64px}
.mso-founder2__mark{display:block;margin:8px 0 4px;font-size:56px;line-height:1;color:var(--mso-orange)}
.mso-founder2__quote{margin:0 0 32px;padding:0;border:0}
.mso-founder2__quote p{margin:0;max-width:34ch;font-size:clamp(22px,2.1vw,30px);line-height:1.4;font-weight:600;letter-spacing:-.015em;color:var(--mso-navy);text-wrap:pretty}
.mso-founder2__by{padding-left:16px;border-left:3px solid var(--mso-orange)}
.mso-founder2__name{margin:0;font-size:19px;line-height:1.3;font-weight:700;color:var(--mso-navy)}
.mso-founder2__role{margin:2px 0 0;font-size:15px;color:var(--mso-muted)}
.mso-founder2__bio{margin:12px 0 0;max-width:56ch;font-size:15px;line-height:1.65;color:var(--mso-muted)}
.mso-founder2__hl{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.mso-founder2__hl li{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:#fff;border-radius:999px;font-size:13px;color:var(--mso-ink)}
.mso-founder2__hl .mso-icon{font-size:16px;color:var(--mso-orange-dark)}
.mso-founder2__hl b{color:var(--mso-navy)}
.mso-founder2__media{align-self:stretch;display:flex;align-items:flex-end;justify-content:center;margin:0}
.mso-founder2__media img{display:block;width:100%;max-width:440px;height:auto;max-height:560px;object-fit:cover;object-position:top;mix-blend-mode:multiply;transform:translateY(24px);opacity:.001;transition:transform 1.2s var(--mso-ease),opacity 1s ease}
.mso-founder2__media.is-in img,.mso-founder2__media:not([data-reveal]) img,html:not(.mso-js) .mso-founder2__media img{transform:none;opacity:1}
@media (max-width:991px){
  .mso-founder2{padding:72px 0}
  .mso-founder2__panel{grid-template-columns:1fr;padding:40px 28px 0;gap:8px}
  .mso-founder2__copy{padding-bottom:16px}
  .mso-founder2__media img{max-width:340px;max-height:400px}
}
@media (max-width:575px){.mso-founder2__panel{padding:32px 20px 0;border-radius:18px}.mso-founder2__mark{font-size:44px}}
@media (prefers-reduced-motion:reduce){.mso-founder2__media img{transform:none;opacity:1;transition:none}}

/* ---------- Social: real brand logos ---------- */
.mso-social__links{gap:12px}
.mso-social__card{display:flex;align-items:center;gap:12px;min-width:210px;padding:12px 14px 12px 12px;border:1px solid var(--mso-line);border-radius:14px;background:#fff;color:var(--mso-ink) !important;text-decoration:none;transition:border-color .25s,transform .25s var(--mso-ease)}
.mso-social__card:hover{border-color:var(--mso-navy);transform:translateY(-2px)}
.mso-social__logo{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;color:#fff;font-size:22px}
.is-instagram .mso-social__logo{background:#E4405F}
.is-facebook .mso-social__logo{background:#0866FF}
.is-linkedin .mso-social__logo{background:#0A66C2}
.is-youtube .mso-social__logo{background:#FF0000}
.mso-social__meta{display:flex;flex-direction:column;line-height:1.25}
.mso-social__meta b{font-size:15px;color:var(--mso-navy)}
.mso-social__meta small{font-size:13px;color:var(--mso-muted)}
.mso-social__go{margin-left:auto;font-size:14px;color:var(--mso-muted)}
@media (max-width:575px){.mso-social__links{display:grid;grid-template-columns:1fr;width:100%}.mso-social__card{min-width:0}}

/* ---------- Footer: one readable type scale ---------- */
footer{padding:72px 0 0 !important}
footer .footer_links{padding:0 0 40px !important}
footer h3,footer .footer-widget-title{margin:0 0 18px !important;font-size:15px !important;line-height:1.4;font-weight:700 !important;letter-spacing:.02em;color:#fff !important;text-transform:none}
footer ul li{margin-bottom:10px}
footer ul li a{font-size:14px !important;font-weight:400 !important;line-height:1.5;color:rgba(255,255,255,.75) !important;text-transform:none !important;text-decoration:none}
footer ul li a:hover{color:#fff !important}
footer p,footer p a,footer .address_info p{font-size:14px !important;font-weight:400 !important;line-height:1.65 !important;color:rgba(255,255,255,.75) !important;margin-bottom:10px !important}
footer .address_info a{color:rgba(255,255,255,.75)}
footer hr{margin:0;border-color:rgba(255,255,255,.14);opacity:1}
footer .bottom-social-links{align-items:center;padding:20px 0 28px !important}
footer .copyright,footer .bottom-social-links .col-md-6:first-child p{margin:0 !important;font-size:13px !important;font-weight:400 !important;text-transform:none !important;color:rgba(255,255,255,.6) !important}
footer .bottom-social-links .col-md-6:last-child>div{justify-content:flex-end !important;margin-top:0 !important;gap:14px}
.mso-foot-follow{margin:0 !important;font-size:13px !important;color:rgba(255,255,255,.6) !important}
.mso-foot-social{display:flex;gap:8px;margin:0 !important}
.mso-foot-social a{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:17px;transition:background .2s,color .2s}
.mso-foot-social a:hover{background:#fff;color:var(--mso-navy)}
footer .accordion .accordion-button{font-size:15px;font-weight:600}
@media (max-width:767px){
  footer{padding:48px 0 0 !important}
  footer .bottom-social-links .col-md-6:last-child>div{justify-content:flex-start !important;margin-top:16px !important}
  footer .bottom-social-links{padding-bottom:96px !important}
}
.mso-social .play-Video-section{background:#fff !important;padding-top:32px !important}@media (min-width:992px){.mso-social{padding-top:96px !important}}

/* USP band: same type as every other section (eyebrow + section title + Montserrat numbers) */
.mso-usp3__eyebrow{color:rgba(255,255,255,.8) !important}
.mso-usp3 .mso-usp3__title{color:#fff;font-size:clamp(24px,2.2vw,32px)}
.mso-usp3__list dd{font-family:'Montserrat',sans-serif;font-weight:700}
.mso-usp3__list dt{font-size:15px}

/* ---------- Founder v3: compact, photo on brand graphic (peach disc, orange ring, dot grid) ---------- */
.mso-founder2{display:none}
.mso-founder3{padding:96px 0;background:#fff}
.mso-founder3__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px 80px;align-items:center}
.mso-founder3__media{position:relative;margin:0;height:440px;display:flex;align-items:flex-end;justify-content:center;isolation:isolate}
.mso-founder3__disc{position:absolute;left:50%;bottom:0;width:380px;height:380px;border-radius:50%;background:#fef1e3;transform:translateX(-50%);z-index:-2}
.mso-founder3__ring{position:absolute;left:50%;bottom:30px;width:420px;height:420px;border-radius:50%;border:1.5px solid var(--mso-orange);opacity:.55;transform:translateX(-46%);z-index:-1;clip-path:inset(0 0 22% 0)}
.mso-founder3__dots{position:absolute;right:4%;top:6%;width:120px;height:120px;background-image:radial-gradient(var(--mso-navy) 1.5px,transparent 1.6px);background-size:16px 16px;opacity:.18;z-index:-3}
.mso-founder3__media>img{position:relative;height:420px;width:auto;max-width:100%;object-fit:contain;object-position:bottom;mix-blend-mode:multiply}
.mso-founder3__badge{position:absolute;left:4%;bottom:44px;display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1px solid var(--mso-line);border-radius:12px;font-size:13px;font-weight:600;color:var(--mso-navy)}
.mso-founder3__badge img{height:22px;width:auto}
.mso-founder3__quote{margin:0 0 24px;padding:0;border:0}
.mso-founder3__quote p{margin:0;font-size:clamp(20px,1.7vw,24px);line-height:1.5;font-weight:600;letter-spacing:-.01em;color:var(--mso-navy);text-wrap:pretty}
.mso-founder3__quote p::before{content:"\201C";color:var(--mso-orange)}
.mso-founder3__quote p::after{content:"\201D";color:var(--mso-orange)}
.mso-founder3__by{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;padding-left:14px;border-left:3px solid var(--mso-orange)}
.mso-founder3__name{margin:0;font-size:18px;font-weight:700;color:var(--mso-navy)}
.mso-founder3__role{margin:0;font-size:15px;color:var(--mso-muted)}
.mso-founder3__bio{margin:18px 0 0;max-width:60ch;font-size:15px;line-height:1.65;color:var(--mso-muted)}
.mso-founder3__hl{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.mso-founder3__hl li{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:#fef1e3;border-radius:999px;font-size:13px;color:var(--mso-ink)}
.mso-founder3__hl .mso-icon{font-size:16px;color:var(--mso-orange-dark)}
.mso-founder3__hl b{color:var(--mso-navy)}
.mso-js .mso-founder3__media[data-reveal]>img{transform:translateY(20px);transition:transform 1.1s var(--mso-ease)}
.mso-js .mso-founder3__media.is-in>img{transform:none}
@media (max-width:991px){
  .mso-founder3{padding:72px 0}
  .mso-founder3__grid{grid-template-columns:1fr;gap:28px}
  .mso-founder3__media{height:340px}
  .mso-founder3__media>img{height:330px}
  .mso-founder3__disc{width:300px;height:300px}
  .mso-founder3__ring{width:330px;height:330px}
}
@media (max-width:575px){.mso-founder3__badge{left:0;bottom:24px}.mso-founder3__dots{right:0}}
@media (max-width:575px){.mso-founder3__media{height:290px}.mso-founder3__media>img{height:280px}.mso-founder3__disc{width:250px;height:250px}.mso-founder3__ring{width:280px;height:280px}.mso-founder3__badge{padding:8px 12px;font-size:12px}.mso-founder3__bio{display:none}.mso-founder3__quote p{font-size:19px}}

/* Founder: light background; photo clipped to the circle's lower curve so it sits inside the disc */
.mso-founder3{background:var(--mso-tint)}
.mso-founder3+.mso-svc,.mso-svc{background:#fff}
.mso-founder3__frame{position:absolute;left:50%;bottom:0;width:380px;height:440px;transform:translateX(-50%);border-radius:0 0 190px 190px;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}
.mso-founder3__frame .mso-founder3__disc{left:0;bottom:0;transform:none;z-index:0}
.mso-founder3__frame>img{position:relative;z-index:1;height:430px;width:auto;max-width:none;mix-blend-mode:multiply}
.mso-js .mso-founder3__media[data-reveal] .mso-founder3__frame>img{transform:translateY(24px);transition:transform 1.1s var(--mso-ease)}
.mso-js .mso-founder3__media.is-in .mso-founder3__frame>img{transform:none}
.mso-founder3__ring{bottom:-20px;clip-path:none;transform:translateX(-50%);width:420px;height:420px;opacity:.5}
.mso-founder3__dots{opacity:.22}
.mso-founder3__badge{z-index:2;bottom:36px}
@media (max-width:991px){.mso-founder3__frame{width:300px;height:340px;border-radius:0 0 150px 150px}.mso-founder3__frame>img{height:330px}.mso-founder3__ring{width:336px;height:336px;bottom:-18px}}
@media (max-width:575px){.mso-founder3__frame{width:250px;height:290px;border-radius:0 0 125px 125px}.mso-founder3__frame>img{height:280px}.mso-founder3__ring{width:282px;height:282px;bottom:-16px}}

/* USP band: smaller, lighter headline and numbers */
.mso-usp3 .mso-usp3__title{font-size:clamp(19px,1.6vw,22px) !important;font-weight:600 !important;line-height:1.4}
.mso-usp3__list dd{font-size:clamp(26px,2.2vw,32px);font-weight:600}
.mso-usp3__list dt{font-size:14px}
.mso-usp3__panel{padding:34px 44px}
.mso-founder3__media{isolation:auto}
.mso-founder3__dots{z-index:0}
.mso-founder3__ring{z-index:0}
.mso-founder3__frame{z-index:1;transform:none;left:0;right:0;margin:0 auto}
.mso-founder3__frame .mso-founder3__disc{z-index:auto}
.mso-founder3__frame>img{z-index:auto}
.mso-founder3__frame{z-index:auto}.mso-founder3__dots,.mso-founder3__ring{z-index:auto}
.uni-card,.uni-card:hover,.mso-review,.mso-review:hover{box-shadow:none !important;transform:none}

/* Founder: transparent cut-out photo (no blend), a little larger; section size unchanged */
.mso-founder3__frame{width:420px;height:480px;border-radius:0 0 210px 210px}
.mso-founder3__frame .mso-founder3__disc{width:420px;height:420px}
.mso-founder3__frame>img{height:476px;mix-blend-mode:normal}
.mso-founder3__ring{width:460px;height:460px}
@media (max-width:991px){.mso-founder3__frame{width:320px;height:360px;border-radius:0 0 160px 160px}.mso-founder3__frame .mso-founder3__disc{width:320px;height:320px}.mso-founder3__frame>img{height:356px}.mso-founder3__ring{width:356px;height:356px}}
@media (max-width:575px){.mso-founder3__frame{width:264px;height:300px;border-radius:0 0 132px 132px}.mso-founder3__frame .mso-founder3__disc{width:264px;height:264px}.mso-founder3__frame>img{height:296px}.mso-founder3__ring{width:296px;height:296px}}

/* ---------- Services: stage cards (progress meter + what the student gets) ---------- */
.mso-svc__list{display:none}
.mso-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:none}
.mso-step{position:relative;display:flex;flex-direction:column;padding:26px 26px 0;background:#fff;border:1px solid var(--mso-line);border-radius:16px;overflow:hidden;transition:border-color .3s}
.mso-step:hover{border-color:var(--mso-navy)}
.mso-step__top{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.mso-step__no{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:10px;background:var(--mso-navy);color:#fff;font-family:'Montserrat',sans-serif;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}
.mso-step__bar{display:flex;gap:4px;flex:1}
.mso-step__bar i{flex:1;height:4px;border-radius:2px;background:var(--mso-line)}
.mso-step__bar i.is-on{background:var(--mso-orange)}
.mso-js .mso-step[data-reveal] .mso-step__bar i.is-on{transform:scaleX(0);transform-origin:left;transition:transform .5s var(--mso-ease)}
.mso-js .mso-step.is-in .mso-step__bar i.is-on{transform:none}
.mso-step.is-in .mso-step__bar i:nth-child(2){transition-delay:.08s}.mso-step.is-in .mso-step__bar i:nth-child(3){transition-delay:.16s}.mso-step.is-in .mso-step__bar i:nth-child(4){transition-delay:.24s}.mso-step.is-in .mso-step__bar i:nth-child(5){transition-delay:.32s}.mso-step.is-in .mso-step__bar i:nth-child(6){transition-delay:.4s}
.mso-step__of{flex:none;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--mso-muted)}
.mso-step__title{margin:0 0 8px;font-size:19px;line-height:1.3;font-weight:700;color:var(--mso-navy)}
.mso-step__text{margin:0 0 24px;font-size:15px;line-height:1.6;color:var(--mso-muted)}
.mso-step__out{display:flex;align-items:center;gap:8px;margin:auto -26px 0;padding:14px 26px;border-top:1px dashed #d6d2e6;background:#fbfaff;font-size:14px;color:var(--mso-navy)}
.mso-step__out span{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mso-muted);margin-right:4px}
.mso-step__out .mso-icon{font-size:18px;color:var(--mso-orange-dark)}
.mso-step__out b{font-weight:700}
.mso-svc__btn{margin-top:32px}
@media (max-width:991px){.mso-steps{grid-template-columns:1fr 1fr;gap:16px}}
@media (max-width:640px){.mso-steps{grid-template-columns:1fr}.mso-step{padding:22px 20px 0}.mso-step__out{margin:auto -20px 0;padding:12px 20px}}
@media (prefers-reduced-motion:reduce){.mso-js .mso-step[data-reveal] .mso-step__bar i.is-on{transform:none;transition:none}}

/* Services cards v2: calm, light tinted cards with one line icon each */
.mso-step{padding:28px 28px 24px;background:#f7f5fc;border:1px solid transparent;border-radius:16px;transition:border-color .3s,background .3s}
.mso-step:hover{background:#fff;border-color:var(--mso-line)}
.mso-step__top{justify-content:space-between;margin-bottom:28px}
.mso-step__icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;color:var(--mso-navy);font-size:26px;border:1px solid var(--mso-line)}
.mso-step__no{width:auto;height:auto;background:none;border-radius:0;color:#b9b4cf;font-size:15px;font-weight:600;letter-spacing:.04em}
.mso-step__bar,.mso-step__of{display:none}
.mso-step__text{margin-bottom:20px}
.mso-step__out{margin:auto 0 0;padding:16px 0 0;border-top:1px solid #e6e2f1;background:none;gap:8px;font-size:14px;font-weight:600;color:var(--mso-navy)}
.mso-step__out .mso-icon{font-size:18px;color:var(--mso-orange-dark)}
@media (max-width:640px){.mso-step{padding:22px 20px 20px}.mso-step__out{margin:auto 0 0;padding:14px 0 0}}
.mso-step__out span{margin:0;font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--mso-navy)}

/* ---------- Services v3: vertical scroll story (sticky heading left, stages on a filling rail right) ---------- */
.mso-svc2 .mso-head,.mso-svc2 .mso-steps{display:none}
.mso-svc2__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px 96px;align-items:start}
.mso-svc2__sticky{position:sticky;top:120px}
.mso-svc2__text{margin:16px 0 0;max-width:40ch;font-size:16px;line-height:1.65;color:var(--mso-muted)}
.mso-svc2__count{margin:36px 0 28px;font-size:15px;color:var(--mso-muted);font-variant-numeric:tabular-nums}
.mso-svc2__count b{font-family:'Montserrat',sans-serif;font-size:44px;line-height:1;font-weight:700;color:var(--mso-navy);margin-right:4px}
.mso-svc2__list{position:relative;list-style:none;margin:0;padding:0}
.mso-svc2__rail{position:absolute;left:25px;top:26px;bottom:26px;width:2px;background:var(--mso-line)}
.mso-svc2__rail span{position:absolute;inset:0;background:var(--mso-orange);transform-origin:top;transform:scaleY(0);transition:transform .15s linear}
.mso-svc2__item{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);gap:28px;padding-bottom:40px}
.mso-svc2__item:last-child{padding-bottom:0}
.mso-svc2__icon{position:relative;z-index:1;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;border:1.5px solid var(--mso-line);color:#9b96b5;font-size:24px;transition:background .4s,border-color .4s,color .4s}
.mso-svc2__item.is-done .mso-svc2__icon{border-color:var(--mso-orange);color:var(--mso-navy)}
.mso-svc2__item.is-active .mso-svc2__icon{background:var(--mso-navy);border-color:var(--mso-navy);color:#fff}
.mso-svc2__body{padding:24px 28px;border-radius:16px;background:#f7f5fc;opacity:.55;transition:opacity .45s,background .45s}
.mso-svc2__item.is-done .mso-svc2__body{opacity:.85}
.mso-svc2__item.is-active .mso-svc2__body{opacity:1;background:#fef1e3}
.mso-svc2__no{display:block;margin-bottom:6px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mso-orange-dark)}
.mso-svc2__title{margin:0 0 6px;font-size:19px;line-height:1.3;font-weight:700;color:var(--mso-navy)}
.mso-svc2__desc{margin:0;font-size:15px;line-height:1.6;color:var(--mso-muted)}
.mso-svc2__out{display:flex;align-items:center;gap:8px;margin:14px 0 0;font-size:14px;font-weight:600;color:var(--mso-navy)}
.mso-svc2__out .mso-icon{font-size:18px;color:var(--mso-orange-dark)}
@media (max-width:991px){
  .mso-svc2__grid{grid-template-columns:1fr;gap:32px}
  .mso-svc2__sticky{position:static}
  .mso-svc2__count{display:none}
  .mso-svc2__sticky .mso-btn{margin-top:20px}
}
@media (max-width:575px){
  .mso-svc2__item{grid-template-columns:40px minmax(0,1fr);gap:14px;padding-bottom:20px}
  .mso-svc2__icon{width:40px;height:40px;font-size:19px}
  .mso-svc2__rail{left:19px;top:20px;bottom:20px}
  .mso-svc2__body{padding:18px 18px}
}
.mso-svc2__aside{align-self:stretch}

/* ---------- Reels strip: true 9:16 cards drifting slowly in one row ---------- */
.mso-social .play-Video-section{display:none}
.mso-reels{margin-top:40px;overflow:hidden;padding-bottom:104px}
.mso-reels__track{list-style:none;margin:0;padding:0 max(16px,calc((100vw - 1320px) / 2 + 12px));display:flex;gap:20px;width:max-content}
.mso-reels.is-running .mso-reels__track{padding-left:0;animation:mso-reels var(--speed,60s) linear infinite}
.mso-reels.is-running:hover .mso-reels__track{animation-play-state:paused}
@keyframes mso-reels{to{transform:translate3d(-50%,0,0)}}
.mso-reel{position:relative;flex:none;width:250px;aspect-ratio:9/16;border-radius:18px;overflow:hidden;background:var(--mso-navy)}
.mso-reel video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mso-reels.is-embed .mso-reel iframe{position:absolute;left:0;top:-56px;width:100%;height:calc(100% + 240px);border:0;pointer-events:none}
.mso-reel__link{position:absolute;inset:0;z-index:2;display:flex;align-items:flex-start;justify-content:flex-end;padding:12px}
.mso-reel__ig{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);color:#E4405F;font-size:18px;opacity:0;transform:translateY(-4px);transition:opacity .25s,transform .25s}
.mso-reel:hover .mso-reel__ig,.mso-reel__link:focus-visible .mso-reel__ig{opacity:1;transform:none}
.mso-reel__link:focus-visible{outline:3px solid var(--mso-orange);outline-offset:-3px;border-radius:18px}
@media (max-width:767px){.mso-reels{margin-top:28px;padding-bottom:72px}.mso-reel{width:200px}.mso-reels__track{gap:14px}}
@media (prefers-reduced-motion:reduce){.mso-reels{overflow-x:auto}}
.mso-reels.is-embed .mso-reel{width:300px;aspect-ratio:4/5}.mso-reels.is-embed .mso-reel iframe{top:-56px;height:calc(100% + 260px)}@media (max-width:767px){.mso-reels.is-embed .mso-reel{width:240px}}

/* Reel cards v2: always 9:16 — profile row, reel, "Watch on Instagram" bar (like an Instagram post) */
.mso-reels .mso-reel,.mso-reels.is-embed .mso-reel{width:270px;aspect-ratio:9/16;display:flex;flex-direction:column;background:#fff;border:1px solid var(--mso-line);border-radius:18px}
.mso-reel__head{display:flex;align-items:center;gap:10px;flex:none;height:58px;padding:0 14px;border-bottom:1px solid var(--mso-line)}
.mso-reel__avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px #fff,0 0 0 3.5px #E4405F}
.mso-reel__who{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.mso-reel__who b{font-size:14px;font-weight:700;color:var(--mso-ink)}
.mso-reel__who small{font-size:12px;color:var(--mso-muted)}
.mso-reel__head .mso-reel__ig{margin-left:auto;width:auto;height:auto;background:none;border-radius:0;opacity:1;transform:none;color:#E4405F;font-size:20px}
.mso-reel__media{position:relative;flex:1;overflow:hidden;background:var(--mso-navy)}
.mso-reels.is-embed .mso-reel__media iframe{position:absolute;left:50%;top:-56px;width:auto;height:calc(100% + 56px + 220px);aspect-ratio:auto;transform:translateX(-50%);min-width:100%;border:0;pointer-events:none}
.mso-reel__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mso-reel__foot{display:flex;align-items:center;justify-content:space-between;flex:none;height:50px;padding:0 16px;border-top:1px solid var(--mso-line);font-size:14px;font-weight:600;color:var(--mso-navy)}
.mso-reel__foot .mso-icon{font-size:14px;transition:transform .25s}
.mso-reel:hover .mso-reel__foot .mso-icon{transform:translateX(3px)}
.mso-reel__link{display:block;padding:0}
@media (max-width:767px){.mso-reels .mso-reel,.mso-reels.is-embed .mso-reel{width:220px}.mso-reel__head{height:52px}}
.mso-reels.is-embed .mso-reel__media{container-type:size}.mso-reels.is-embed .mso-reel__media iframe{width:max(100cqw,82cqh);min-width:0;height:calc(max(100cqw,82cqh) * 1.25 + 300px);top:-55px}

/* Services: completed stages turn navy too (the current one keeps the peach card) */
.mso-svc2__item.is-done .mso-svc2__icon{background:var(--mso-navy);border-color:var(--mso-navy);color:#fff}

/* Founder: larger portrait (head rises further out of the circle; section height unchanged) */
.mso-founder3__frame{width:440px;height:540px;border-radius:0 0 220px 220px}
.mso-founder3__frame .mso-founder3__disc{width:440px;height:440px}
.mso-founder3__frame>img{height:536px}
.mso-founder3__ring{width:480px;height:480px}
@media (max-width:991px){.mso-founder3__media{height:380px}.mso-founder3__frame{width:330px;height:400px;border-radius:0 0 165px 165px}.mso-founder3__frame .mso-founder3__disc{width:330px;height:330px}.mso-founder3__frame>img{height:396px}.mso-founder3__ring{width:366px;height:366px}}
@media (max-width:575px){.mso-founder3__media{height:330px}.mso-founder3__frame{width:276px;height:336px;border-radius:0 0 138px 138px}.mso-founder3__frame .mso-founder3__disc{width:276px;height:276px}.mso-founder3__frame>img{height:332px}.mso-founder3__ring{width:308px;height:308px}}
/* Founder: the photo box now holds the full portrait so it centres vertically */
@media (min-width:992px){.mso-founder3{padding:64px 0}.mso-founder3__media{height:540px}.mso-founder3__ring{bottom:-20px}}

/* ---------- Opening animation (CSS only, ~1.2s, no loader) ----------
   Header drops in, hero panel settles, text rises line by line, photo and badges follow.
   Starts at opacity .01 (not 0) so the browser still counts the hero as painted straight away (keeps LCP fast). */
@keyframes msoInFade{from{opacity:.01}to{opacity:1}}
@keyframes msoInUp{from{opacity:.01;translate:0 18px}to{opacity:1;translate:0 0}}
@keyframes msoInDown{from{opacity:.01;translate:0 -14px}to{opacity:1;translate:0 0}}
@keyframes msoInSettle{from{opacity:.01;scale:.985}to{opacity:1;scale:1}}
@keyframes msoInPop{from{opacity:.01;scale:.9}to{opacity:1;scale:1}}
body:has(.mso-hero) header .navbar,body:has(.mso-hero) .navbar.navbar-expand-lg{animation:msoInDown .7s var(--mso-ease) both}
.mso-hero__panel{animation:msoInSettle .9s var(--mso-ease) both}
.mso-hero__copy>*{animation:msoInUp .8s var(--mso-ease) both}
.mso-hero__eyebrow{animation-delay:.12s}
.mso-hero__title{animation-delay:.2s}
.mso-hero__text{animation-delay:.32s}
.mso-hero__actions{animation-delay:.44s}
.mso-hero__proof{animation-delay:.56s}
.mso-hero__visual{animation:msoInFade 1s ease .25s both}
.mso-hero__chip{animation:msoInPop .6s var(--mso-ease) both,msoFloat 6s ease-in-out infinite}
.mso-hero__chip--1{animation-delay:.8s,1.4s}
.mso-hero__chip--2{animation-delay:.95s,-2s}
.mso-hero__chip--3{animation-delay:1.1s,-4s}
@media (prefers-reduced-motion:reduce){
  body:has(.mso-hero) header .navbar,body:has(.mso-hero) .navbar.navbar-expand-lg,.mso-hero__panel,.mso-hero__copy>*,.mso-hero__visual,.mso-hero__chip{animation:none !important}
}
/* Opening animation: don't keep the animated transform after it finishes (it trapped the nav dropdown under the hero) */
body:has(.mso-hero) header .navbar,body:has(.mso-hero) .navbar.navbar-expand-lg,.mso-hero__panel,.mso-hero__copy>*,.mso-hero__visual{animation-fill-mode:backwards}
.mso-hero__chip{animation-fill-mode:backwards,none}
header,body:has(.mso-hero) .navbar.navbar-expand-lg{position:relative;z-index:1000}

/* =====================================================================
   About page v2 (same system as the homepage)
   ===================================================================== */
.mso-about-page{display:block}
/* Hero */
.ab-hero{padding:24px 0 0}
.ab-hero__panel{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px 64px;align-items:center;padding:56px 56px;background:#f6f5f2;border-radius:28px;animation:msoInSettle .9s var(--mso-ease) backwards}
.ab-hero__copy>*{animation:msoInUp .8s var(--mso-ease) backwards}
.ab-hero__copy>:nth-child(2){animation-delay:.1s}.ab-hero__copy>:nth-child(3){animation-delay:.18s}.ab-hero__copy>:nth-child(4){animation-delay:.28s}.ab-hero__copy>:nth-child(5){animation-delay:.38s}
.ab-crumbs{display:flex;gap:8px;align-items:center;margin-bottom:20px;font-size:13px;color:var(--mso-muted)}
.ab-crumbs a{color:var(--mso-navy);text-decoration:none}
.ab-hero__title{margin:0 0 18px;font-size:clamp(34px,4vw,54px);line-height:1.08;letter-spacing:-.025em;font-weight:800;color:var(--mso-navy);text-wrap:balance}
.ab-hero__text{margin:0 0 28px;max-width:52ch;font-size:clamp(16px,1.25vw,18px);line-height:1.7;color:var(--mso-muted)}
.ab-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}
.ab-hero__media{position:relative;margin:0;aspect-ratio:4/3.2;border-radius:22px;overflow:hidden;background:var(--mso-tint);animation:msoInFade 1s ease .2s backwards}
.ab-hero__media>img{width:100%;height:100%;object-fit:cover}
.ab-hero__badge{position:absolute;left:16px;bottom:16px;display:flex;align-items:center;gap:12px;padding:10px 16px 10px 10px;background:#fff;border-radius:14px;animation:msoInPop .6s var(--mso-ease) .7s backwards}
.ab-hero__badge img{height:26px;width:auto}
.ab-hero__badge b{display:block;font-size:14px;color:var(--mso-navy)}
.ab-hero__badge small{display:block;font-size:12px;color:var(--mso-muted)}

/* Journey (reuses the services scroll story) */
.ab-journey{padding:104px 0;background:#fff}
.ab-journey__year{margin-top:28px}
.ab-journey__year b{font-size:clamp(48px,5vw,72px);letter-spacing:-.03em}
.ab-journey__dot{font-family:'Montserrat',sans-serif;font-size:14px !important;font-weight:700}
.ab-journey__dot img{width:26px;height:26px;border-radius:6px}
.ab-journey .mso-svc2__item{padding-bottom:28px}
.ab-journey .mso-svc2__body{padding:20px 24px}
.ab-journey .mso-svc2__item.is-mso .mso-svc2__body{background:var(--mso-navy);opacity:1}
.ab-journey .mso-svc2__item.is-mso .mso-svc2__title{color:#fff}
.ab-journey .mso-svc2__item.is-mso .mso-svc2__desc{color:rgba(255,255,255,.78)}
.ab-journey .mso-svc2__item.is-mso .mso-svc2__no{color:var(--mso-orange)}
.ab-journey .mso-svc2__item.is-mso .ab-journey__dot{background:#fff;border-color:var(--mso-orange)}

/* GEA at a glance: navy band */
.ab-glance{padding:72px 0;background:var(--mso-navy);color:#fff}
.ab-glance__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-bottom:40px}
.ab-glance__title{margin:0;font-size:clamp(26px,2.5vw,36px);font-weight:700;color:#fff;letter-spacing:-.02em}
.ab-glance__sub{display:flex;align-items:center;gap:12px;margin:0;font-size:14px;color:rgba(255,255,255,.72)}
.ab-glance__sub img{height:24px;width:auto;padding:4px 8px;background:#fff;border-radius:6px;box-sizing:content-box}
.ab-glance__list{display:grid;grid-template-columns:repeat(6,1fr);margin:0}
.ab-glance__list>div{display:flex;flex-direction:column;gap:8px;padding:4px 20px;border-left:1px solid rgba(255,255,255,.16)}
.ab-glance__list>div:first-child{padding-left:0;border-left:0}
.ab-glance__list dd{margin:0;font-family:'Montserrat',sans-serif;font-size:clamp(30px,2.6vw,40px);line-height:1;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ab-glance__list dt{font-size:14px;line-height:1.45;font-weight:500;color:rgba(255,255,255,.72)}

/* Story, vision, mission */
.ab-story{padding:104px 0;background:#fff}
.ab-story__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px 80px;align-items:start}
.ab-story .mso-h2{margin-bottom:20px}
.ab-story__text p{margin:0 0 14px;font-size:16px;line-height:1.75;color:var(--mso-muted)}
.ab-story__cards{display:grid;gap:16px}
.ab-vm{padding:28px;border-radius:16px;background:#f7f5fc}
.ab-vm:first-child{background:#fef1e3}
.ab-vm__icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:18px;border-radius:50%;background:#fff;color:var(--mso-navy);font-size:24px}
.ab-vm h3{margin:0 0 8px;font-size:19px;font-weight:700;color:var(--mso-navy)}
.ab-vm p{margin:0;font-size:15px;line-height:1.65;color:var(--mso-muted)}

/* Leaders */
.ab-leaders{padding:104px 0;background:var(--mso-tint)}
.ab-leaders__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ab-leader{display:flex;align-items:center;gap:20px;padding:20px;background:#fff;border:1px solid var(--mso-line);border-radius:16px}
.ab-leader__photo{flex:none;width:88px;height:104px;border-radius:12px;overflow:hidden;background:var(--mso-tint)}
.ab-leader__photo img{width:100%;height:100%;object-fit:cover;object-position:top}
.ab-leader__who b{display:block;margin-bottom:4px;font-family:'Montserrat',sans-serif;font-size:17px;line-height:1.3;color:var(--mso-navy)}
.ab-leader__who small{display:block;font-size:14px;line-height:1.45;color:var(--mso-muted)}

/* Global offices */
.ab-offices{padding:104px 0;background:#fff}
.ab-offices__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.ab-office{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px 12px 16px;border:1px solid var(--mso-line);border-radius:14px;background:#fff;text-align:center;transition:border-color .25s}
.ab-office:hover{border-color:var(--mso-navy)}
.ab-office.is-home{border-color:var(--mso-orange);background:#fef1e3}
.ab-office__tag{position:absolute;top:-10px;left:50%;transform:translateX(-50%);padding:3px 10px;border-radius:999px;background:var(--mso-navy);color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em;white-space:nowrap}
.ab-office__art{display:grid;place-items:center;height:64px}
.ab-office__art img{max-height:64px;max-width:100%;width:auto;object-fit:contain}
.ab-office__name{font-size:14px;font-weight:600;color:var(--mso-navy)}

@media (max-width:1199px){.ab-glance__list{grid-template-columns:repeat(3,1fr);gap:28px 0}.ab-glance__list>div:nth-child(4){padding-left:0;border-left:0}.ab-offices__grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:991px){
  .ab-hero__panel{grid-template-columns:1fr;padding:36px 28px}
  .ab-journey,.ab-story,.ab-leaders,.ab-offices{padding:72px 0}
  .ab-story__grid{grid-template-columns:1fr}
  .ab-leaders__grid{grid-template-columns:1fr 1fr}
  .ab-offices__grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:640px){
  .ab-hero{padding-top:12px}
  .ab-hero__panel{padding:28px 20px;border-radius:20px;gap:28px}
  .ab-glance{padding:56px 0}
  .ab-glance__list{grid-template-columns:1fr 1fr;gap:24px 0}
  .ab-glance__list>div{padding:2px 14px}
  .ab-glance__list>div:nth-child(odd){padding-left:0;border-left:0}
  .ab-glance__list>div:nth-child(4){padding-left:14px;border-left:1px solid rgba(255,255,255,.16)}
  .ab-leaders__grid{grid-template-columns:1fr}
  .ab-offices__grid{grid-template-columns:1fr 1fr;gap:12px}
  .ab-vm{padding:22px}
}
@media (prefers-reduced-motion:reduce){.ab-hero__panel,.ab-hero__copy>*,.ab-hero__media,.ab-hero__badge{animation:none}}
/* Offices: wrap and centre the last row (any number of offices) */
.ab-offices__grid{display:flex;flex-wrap:wrap;justify-content:center;--cols:6}
.ab-office{flex:0 0 calc((100% - (var(--cols) - 1) * 14px) / var(--cols))}
@media (max-width:1199px){.ab-offices__grid{--cols:4}}
@media (max-width:991px){.ab-offices__grid{--cols:3}}
@media (max-width:640px){.ab-offices__grid{--cols:2}.ab-office{flex-basis:calc((100% - 12px) / 2)}}
.ab-hero__title{font-size:clamp(32px,3.5vw,50px)}

/* ---------- Homepage intro (brochure "A Legacy Built Since 2004") ---------- */
.mso-intro{padding:96px 0;background:#fff}
.mso-intro__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px 88px;align-items:start}
.mso-intro__gea{display:flex;align-items:center;gap:14px;margin:28px 0 0;padding-top:24px;border-top:1px solid var(--mso-line);font-size:14px;font-weight:600;color:var(--mso-navy)}
.mso-intro__gea img{height:48px;width:auto}
.mso-intro__text p{margin:0 0 16px;font-size:clamp(16px,1.25vw,18px);line-height:1.75;color:var(--mso-muted)}
.mso-intro__text p:first-child{color:var(--mso-ink)}
.mso-intro .mso-textlink{margin-top:8px}
@media (max-width:991px){.mso-intro{padding:72px 0}.mso-intro__grid{grid-template-columns:1fr}}

/* Form band: GEA logo in its white-lettering version, sitting directly on navy (no white box) */
.mso-cta__gea{gap:14px}
.mso-cta__gea img{height:44px;width:auto;padding:0;background:none;border-radius:0}
/* Form: every field gets a visible heading; button reads "Get FREE Counselling" in normal case */
.mso-cta form[id^="_form_"] ._form-label:empty{display:none !important}
.mso-cta.new-form #_form_2_submit,.mso-cta.new-form form [type=submit]{text-transform:none !important;font-size:17px !important;letter-spacing:0 !important}
.mso-cta select:invalid,.mso-cta select.is-placeholder{color:#76738c !important}

/* Hero supporting line: kept to one line on desktop */
@media (min-width:1200px){.mso-hero__text{white-space:nowrap;max-width:none}}

/* =====================================================================
   Meeting changes (Oct 2026)
   ===================================================================== */
/* Student voices: photo first, details below, review on hover / tap */
.mso-voices{padding:104px 0;background:#fff;overflow:hidden}
.mso-voices__viewport{max-width:1320px;margin:0 auto;padding:0 12px}
.mso-voices__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.mso-voice__card{position:relative;display:flex;flex-direction:column;height:100%;border:1px solid var(--mso-line);border-radius:18px;background:#fff;overflow:hidden;cursor:pointer;outline:none}
.mso-voice__card:focus-visible{box-shadow:0 0 0 3px var(--mso-orange)}
.mso-voice__photo{position:relative;margin:0;aspect-ratio:4/4.4;background:var(--mso-tint);overflow:hidden}
.mso-voice__photo img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .8s var(--mso-ease)}
.mso-voice__initials{position:absolute;inset:0;display:grid;place-items:center;font-family:'Montserrat',sans-serif;font-size:56px;font-weight:700;color:var(--mso-navy);background:#fef1e3}
.mso-voice__dest{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#fff;font-size:12px;font-weight:700;color:var(--mso-navy)}
.mso-voice__dest .mso-icon{font-size:14px;color:var(--mso-orange-dark)}
.mso-voice__info{display:flex;flex-direction:column;gap:6px;flex:1;padding:18px 18px 20px}
.mso-voice__name{margin:0;font-size:18px;line-height:1.25;font-weight:700;color:var(--mso-navy)}
.mso-voice__course{margin:0;font-size:14px;line-height:1.45;color:var(--mso-ink)}
.mso-voice__uni{display:flex;gap:6px;align-items:flex-start;margin:0;font-size:13.5px;line-height:1.45;color:var(--mso-muted)}
.mso-voice__uni .mso-icon{flex:none;margin-top:2px;font-size:15px;color:var(--mso-orange-dark)}
.mso-voice__intake{margin:auto 0 0;padding-top:10px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mso-orange-dark)}
.mso-voice__hint{position:absolute;right:14px;bottom:16px;display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--mso-navy);opacity:.7}
.mso-voice__hint .mso-icon{font-size:12px}
.mso-voice__review{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;padding:24px 22px;background:var(--mso-navy);color:#fff;opacity:0;transform:translateY(12px);transition:opacity .35s var(--mso-ease),transform .45s var(--mso-ease);pointer-events:none;overflow:auto}
.mso-voice__mark{font-size:32px;line-height:1;color:var(--mso-orange)}
.mso-voice__review blockquote{margin:12px 0 0;padding:0;border:0}
.mso-voice__review blockquote p{margin:0;font-size:14.5px;line-height:1.6;color:#fff}
.mso-voice__by{margin:auto 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.18);font-size:13px;line-height:1.4;color:rgba(255,255,255,.72)}
.mso-voice__by b{display:block;font-size:15px;color:#fff}
@media (hover:hover){.mso-voice__card:hover .mso-voice__review{opacity:1;transform:none;pointer-events:auto}.mso-voice__card:hover .mso-voice__photo img{transform:scale(1.04)}}
.mso-voice__card:focus-within .mso-voice__review,.mso-voice__card.is-open .mso-voice__review{opacity:1;transform:none;pointer-events:auto}
@media (max-width:1199px){
  .mso-voices__viewport{padding:0}
  .mso-voices__list{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px max(16px,calc((100vw - 960px) / 2)) 12px;scroll-padding-inline:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .mso-voices__list::-webkit-scrollbar{display:none}
  .mso-voice{flex:0 0 260px;scroll-snap-align:start}
}
@media (max-width:991px){.mso-voices{padding:72px 0}}
@media (max-width:575px){.mso-voice{flex-basis:min(260px,78vw)}}
@media (prefers-reduced-motion:reduce){.mso-voice__review,.mso-voice__photo img{transition:none}}

/* Universities: "Explore universities" sits below the marquee */
.uni-partners__cta{display:flex;justify-content:center;margin-top:40px}

/* Form band: last section before the footer, so it gets a light background (the navy footer follows) */
.free_consultation.mso-cta{background:#fef1e3 !important;color:var(--mso-ink)}
.mso-cta .mso-cta__head .mso-eyebrow{color:var(--mso-orange-dark)}
.mso-cta .mso-cta__title{color:var(--mso-navy) !important}
.mso-cta .mso-cta__sub{color:var(--mso-muted)}
.mso-cta .mso-cta__points{border-top-color:rgba(17,0,83,.12)}
.mso-cta .mso-cta__points li{color:var(--mso-navy)}
.mso-cta .mso-cta__points .mso-icon{color:var(--mso-orange-dark)}
.mso-cta__gea{color:var(--mso-navy)}
.mso-cta .mso-cta__card{border:1px solid rgba(17,0,83,.08)}
/* Social now comes before the form: keep its bottom spacing */
.mso-social{padding-bottom:0}
/* Student voices: align with the page width, taller photo (more room for the review), hint on the intake row */
@media (min-width:1200px){.mso-voices__viewport{max-width:1140px}}
@media (min-width:1400px){.mso-voices__viewport{max-width:1320px}}
.mso-voice__photo{aspect-ratio:4/5}
.mso-voice__intake{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mso-voice__hint{position:static;font-size:12px;letter-spacing:0;text-transform:none;color:var(--mso-navy)}
.mso-voice__review{padding:22px 20px}
.mso-voice__review blockquote p{font-size:14px;line-height:1.55}
/* Student voices v2: one slowly drifting row of wider cards (pauses on hover / while a story is open) */
.mso-voices__viewport,.mso-voices .mso-voices__viewport{max-width:none;padding:0;overflow:hidden}
.mso-voices__list,.mso-voices .mso-voices__list{display:flex;flex-wrap:nowrap;gap:20px;width:max-content;padding:4px max(16px,calc((100vw - 1320px) / 2 + 12px)) 12px;overflow:visible;scroll-snap-type:none}
.mso-voice,.mso-voices .mso-voice{flex:0 0 300px;scroll-snap-align:none}
.mso-voices.is-running .mso-voices__list{padding-left:0;animation:mso-voices var(--speed,60s) linear infinite}
.mso-voices.is-running:hover .mso-voices__list,.mso-voices.is-paused .mso-voices__list,.mso-voices.is-running:focus-within .mso-voices__list{animation-play-state:paused}
@keyframes mso-voices{to{transform:translate3d(-50%,0,0)}}
@media (max-width:575px){.mso-voice,.mso-voices .mso-voice{flex-basis:min(280px,80vw)}}
@media (prefers-reduced-motion:reduce){.mso-voices__viewport{overflow-x:auto}}
/* Student voices: keep drifting unless a card itself is hovered (or a story is open) */
.mso-voices.is-running:hover .mso-voices__list,.mso-voices.is-running:focus-within .mso-voices__list{animation-play-state:running}
.mso-voices.is-running .mso-voices__list:has(.mso-voice__card:hover),.mso-voices.is-running .mso-voices__list:has(.mso-voice__card:focus-visible),.mso-voices.is-paused .mso-voices__list{animation-play-state:paused}
.mso-voices__list{transition:none}

/* Tighter spacing between homepage sections */
@media (min-width:992px){
  .mso-intro,.mso-svc2,.mso-dest,.mso-voices,.uni-partners,.free_consultation.mso-cta{padding-top:72px !important;padding-bottom:72px !important}
  .mso-social{padding-top:72px !important}
  .mso-reels{padding-bottom:72px}
  .mso-usp3{padding:32px 0 8px}
}
@media (max-width:991px){
  .mso-intro,.mso-svc2,.mso-dest,.mso-voices,.uni-partners,.free_consultation.mso-cta{padding-top:52px !important;padding-bottom:52px !important}
  .mso-social{padding-top:52px !important}
  .mso-reels{padding-bottom:52px}
}
.mso-head,.mso-dest__head,.uni-partners__head{margin-bottom:32px}

/* Meeting 2 (Oct 2026) */
/* Services: no lavender — neutral light cards, peach for the current stage */
.mso-svc2__body{background:#f6f5f2}
/* Instagram strip: slightly smaller reel cards */
.mso-reels .mso-reel,.mso-reels.is-embed .mso-reel{width:220px}
@media (max-width:767px){.mso-reels .mso-reel,.mso-reels.is-embed .mso-reel{width:180px}}
/* Blue stripe: 3 numbers */
.mso-usp3__list{grid-template-columns:repeat(3,1fr)}
@media (max-width:767px){.mso-usp3__list{grid-template-columns:1fr;gap:16px 0}.mso-usp3__list>div{border-left:0;padding-left:0}}
/* Footer: GEA logo */
.mso-foot-gea{display:flex;align-items:center;gap:12px;margin:0 0 10px !important;font-size:13px !important;color:rgba(255,255,255,.7) !important}
.mso-foot-gea img{height:40px;width:auto}
.mso-usp3__list dd{white-space:nowrap}

/* Footer contact: compact office list instead of two full addresses */
.mso-foot-contact p{margin:0 0 8px !important}
.mso-foot-contact a{color:rgba(255,255,255,.75) !important;text-decoration:none}
.mso-foot-contact a:hover{color:#fff !important}
.mso-foot-contact__label{margin-top:14px !important;font-size:12px !important;font-weight:700 !important;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.5) !important}
.mso-foot-offices{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 4px !important}
.mso-foot-offices li{margin:0 !important}
.mso-foot-offices a{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid rgba(255,255,255,.2);border-radius:999px;font-size:13.5px !important;color:#fff !important}
.mso-foot-offices a:hover{background:#fff;color:var(--mso-navy) !important}
.mso-foot-offices .mso-icon{font-size:14px;color:var(--mso-orange)}

/* Office Location page */
.of-hero{padding:24px 0 0}
.of-hero__panel{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px 64px;align-items:center;padding:52px;background:#f6f5f2;border-radius:28px}
.of-hero__title{margin:0 0 16px;font-size:clamp(30px,3.2vw,46px);line-height:1.1;letter-spacing:-.02em;font-weight:800;color:var(--mso-navy)}
.of-hero__text{margin:0 0 20px;max-width:54ch;font-size:17px;line-height:1.7;color:var(--mso-muted)}
.of-hero__facts{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:10px}
.of-hero__facts li{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--mso-ink)}
.of-hero__facts .mso-icon{flex:none;margin-top:3px;font-size:18px;color:var(--mso-orange-dark)}
.of-hero__contact{display:flex;flex-wrap:wrap;gap:6px 12px;margin:20px 0 0;font-size:14px;color:var(--mso-muted)}
.of-hero__contact a{color:var(--mso-navy);font-weight:600;text-decoration:none}
.of-hero__media{margin:0;aspect-ratio:4/3.2;border-radius:22px;overflow:hidden;background:#fef1e3}
.of-hero__media img{width:100%;height:100%;object-fit:cover}
.of-hero__placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;color:var(--mso-navy);text-align:center}
.of-hero__placeholder .mso-icon{font-size:56px;color:var(--mso-orange-dark)}
.of-hero__placeholder b{font-family:'Montserrat',sans-serif;font-size:24px}
.of-hero__placeholder small{font-size:13px;color:var(--mso-muted)}
.of-gallery,.of-updates{padding:72px 0}
.of-gallery__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.of-gallery__grid li{aspect-ratio:1/1;border-radius:14px;overflow:hidden;background:var(--mso-tint)}
.of-gallery__grid img{width:100%;height:100%;object-fit:cover}
.of-updates{background:#f6f5f2}
.of-updates__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.of-update{background:#fff;border:1px solid var(--mso-line);border-radius:16px;overflow:hidden}
.of-update img{width:100%;aspect-ratio:16/10;object-fit:cover}
.of-update div{padding:18px 20px 20px}
.of-update__date{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mso-orange-dark)}
.of-update h3{margin:6px 0 6px;font-size:18px;font-weight:700;color:var(--mso-navy)}
.of-update p{margin:0;font-size:14.5px;line-height:1.6;color:var(--mso-muted)}
@media (max-width:991px){.of-hero__panel{grid-template-columns:1fr;padding:32px 24px}.of-gallery__grid{grid-template-columns:repeat(2,1fr)}.of-updates__list{grid-template-columns:1fr}.of-gallery,.of-updates{padding:52px 0}}

/* ---------- Hero: real photo in a rounded frame (instead of the cut-out) ---------- */
.mso-hero__visual.is-photo .mso-hero__shape{display:none}
.mso-hero__visual.is-photo{align-self:stretch;min-height:440px}
.mso-hero__visual.is-photo .mso-hero__img{position:absolute;inset:24px 0 24px 24px;left:24px;bottom:auto;width:calc(100% - 24px);height:calc(100% - 48px);max-width:none;transform:none;object-fit:cover;border-radius:24px}
.mso-hero__visual.is-photo .mso-hero__img.is-active{transform:none}
@media (max-width:991px){.mso-hero__visual.is-photo{min-height:320px}.mso-hero__visual.is-photo .mso-hero__img{inset:0;left:0;width:100%;height:100%}}

/* ---------- "Popular" badge (header menu + destination tabs) and corner ribbon ---------- */
.mso-hot{display:inline-block;margin-left:6px;padding:2px 7px;border-radius:999px;background:var(--mso-orange);color:#fff !important;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.4;vertical-align:middle}
.mso-ribbon{position:absolute;top:22px;left:-44px;z-index:2;width:170px;padding:7px 0;background:var(--mso-orange);color:#fff;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-align:center;transform:rotate(-45deg);box-shadow:0 6px 14px -8px rgba(0,0,0,.4)}

/* ---------- Destinations v2: flag tabs + one large card (like the Vietnam site) ---------- */
.mso-dest{display:none}
.mso-dest2{padding:72px 0;background:#fff}
.mso-dest2__tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.mso-dest2__tab{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--mso-line);border-radius:999px;background:#fff;font-size:14px;font-weight:600;color:var(--mso-navy);cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.mso-dest2__tab img{width:24px;height:16px;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.mso-dest2__tab:hover{border-color:var(--mso-navy)}
.mso-dest2__tab.is-active{background:var(--mso-navy);border-color:var(--mso-navy);color:#fff}
.mso-dest2__tab.is-hot:not(.is-active){border-color:var(--mso-orange)}
.mso-dest2__tab .mso-hot{margin-left:2px}
.mso-dest2__card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);border-radius:24px;overflow:hidden;background:#f6f5f2;animation:msoDestIn .5s var(--mso-ease)}
.mso-dest2__card[hidden]{display:none}
@keyframes msoDestIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.mso-dest2__media{position:relative;margin:0;min-height:420px;overflow:hidden;background:var(--mso-tint)}
.mso-dest2__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mso-dest2__body{display:flex;flex-direction:column;justify-content:center;padding:44px 48px}
.mso-dest2__label{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mso-orange-dark)}
.mso-dest2__name{margin:0 0 14px;font-size:clamp(26px,2.4vw,36px);line-height:1.15;font-weight:800;color:var(--mso-navy)}
.mso-dest2__desc{margin:0 0 26px;font-size:16px;line-height:1.7;color:var(--mso-muted)}
.mso-dest2__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.mso-dest2__pager{display:flex;align-items:center;gap:14px;margin-top:32px;padding-top:20px;border-top:1px solid rgba(17,0,83,.1);font-size:14px;color:var(--mso-muted)}
.mso-dest2__pager b{font-family:'Montserrat',sans-serif;font-size:20px;color:var(--mso-navy)}
.mso-dest2__arrow{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--mso-line);border-radius:50%;background:#fff;color:var(--mso-navy);cursor:pointer}
.mso-dest2__arrow:hover{background:var(--mso-navy);color:#fff;border-color:var(--mso-navy)}
@media (max-width:991px){
  .mso-dest2{padding:52px 0}
  .mso-dest2__tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}
  .mso-dest2__tabs::-webkit-scrollbar{display:none}
  .mso-dest2__tab{flex:none}
  .mso-dest2__card{grid-template-columns:1fr}
  .mso-dest2__media{min-height:240px}
  .mso-dest2__body{padding:28px 22px}
}

/* ---------- Awards strip ---------- */
.mso-awards{padding:64px 0;background:#f6f5f2;overflow:hidden}
.mso-awards__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px 56px;align-items:center}
.mso-awards__text{margin:14px 0 24px;font-size:16px;line-height:1.65;color:var(--mso-muted)}
.mso-awards__viewport{overflow-x:auto !important;overflow-y:hidden !important;-webkit-overflow-scrolling:touch !important;scrollbar-width:none !important;cursor:grab;user-select:none;-webkit-user-select:none}
.mso-awards__viewport:active{cursor:grabbing}
.mso-awards__viewport::-webkit-scrollbar{display:none !important;width:0 !important;height:0 !important}
.mso-awards__track{list-style:none;margin:0;padding:0;display:flex;gap:16px;width:max-content;animation:none !important}
@keyframes mso-awards{to{transform:translate3d(-50%,0,0)}}
.mso-award{display:flex;flex-direction:column;gap:6px;flex:0 0 220px;padding:20px;border:1px solid var(--mso-line);border-radius:16px;background:#fff}
.mso-award__pic{display:grid;place-items:center;width:56px;height:56px;margin-bottom:8px;border-radius:12px;background:#fef1e3;color:var(--mso-orange-dark);font-size:28px;overflow:hidden}
.mso-award__pic img{width:100%;height:100%;object-fit:cover}
.mso-award b{font-size:15px;line-height:1.35;color:var(--mso-navy)}
.mso-award small{font-size:13px;line-height:1.4;color:var(--mso-muted)}
@media (max-width:991px){.mso-awards{padding:52px 0}.mso-awards__grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.mso-awards__viewport{overflow-x:auto}}
@media (min-width:992px){.mso-hero__visual.is-photo .mso-hero__img{width:calc(100% - 48px)}}

/* ---------- Destinations v3: country list left, big photo card right with a white info panel ---------- */
.mso-dest2__layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:stretch}
.mso-dest2__layout .mso-dest2__tabs{flex-direction:column;flex-wrap:nowrap;gap:4px;margin:0;max-height:560px;overflow-y:auto;padding:8px;border:1px solid var(--mso-line);border-radius:20px;background:#fff;scrollbar-width:thin}
.mso-dest2__layout .mso-dest2__tab{justify-content:flex-start;width:100%;padding:12px 14px;border:0;border-radius:12px;background:transparent;font-size:15px;text-align:left}
.mso-dest2__layout .mso-dest2__tab span{flex:1}
.mso-dest2__layout .mso-dest2__tab:hover{background:#f6f5f2}
.mso-dest2__layout .mso-dest2__tab.is-active{background:var(--mso-navy);color:#fff}
.mso-dest2__layout .mso-dest2__tab.is-hot:not(.is-active){border:0;background:#fef1e3}
.mso-dest2__layout .mso-dest2__card{position:relative;display:block;height:560px;border-radius:24px;background:var(--mso-navy)}
.mso-dest2__layout .mso-dest2__media{position:absolute;inset:0;min-height:0}
.mso-dest2__layout .mso-dest2__body{position:absolute;left:24px;bottom:24px;width:min(460px,calc(100% - 48px));padding:28px 30px 22px;background:#fff;border-radius:20px;justify-content:flex-start}
.mso-dest2__layout .mso-dest2__name{font-size:clamp(24px,2vw,30px);margin-bottom:10px}
.mso-dest2__layout .mso-dest2__desc{font-size:15px;margin-bottom:20px}
.mso-dest2__layout .mso-dest2__pager{margin-top:20px;padding-top:16px}
@media (max-width:991px){
  .mso-dest2__layout{grid-template-columns:1fr;gap:16px}
  .mso-dest2__layout .mso-dest2__tabs{flex-direction:row;max-height:none;overflow-x:auto;overflow-y:hidden;padding:0;border:0;border-radius:0;background:none}
  .mso-dest2__layout .mso-dest2__tab{width:auto;flex:none;padding:9px 14px;border:1px solid var(--mso-line);border-radius:999px;background:#fff}
  .mso-dest2__layout .mso-dest2__card{height:auto}
  .mso-dest2__layout .mso-dest2__media{position:relative;height:260px;border-radius:20px 20px 0 0}
  .mso-dest2__layout .mso-dest2__body{position:static;width:auto;border-radius:0 0 20px 20px;padding:22px 20px}
  .mso-dest2__layout .mso-dest2__card{background:#fff;border:1px solid var(--mso-line)}
}

/* ---------- Destinations v4 (reference layout): full-width landmark photo, info panel bottom-right, navy country bar bottom-left ---------- */
.mso-dest2__layout{position:relative;display:block}
.mso-dest2__layout .mso-dest2__card{height:600px;border-radius:0;background:var(--mso-navy)}
.mso-dest2__layout .mso-dest2__media{position:absolute;inset:0}
.mso-dest2__layout .mso-dest2__body{left:auto;right:0;bottom:0;width:min(560px,40%);padding:44px 44px 92px;border-radius:0;background:rgba(255,255,255,.96)}
.mso-dest2__layout .mso-dest2__label{letter-spacing:.12em}
.mso-dest2__layout .mso-dest2__name{font-weight:600;font-family:'Montserrat',sans-serif}
.mso-dest2__layout .mso-dest2__pager{position:absolute;left:44px;right:44px;bottom:0;height:64px;margin:0;padding:0;border-top:1px solid var(--mso-line)}
.mso-dest2__layout .mso-dest2__tabs{position:absolute;left:0;bottom:0;z-index:3;right:min(560px,40%);flex-direction:row;flex-wrap:nowrap;gap:0;max-height:none;height:64px;padding:0;border:0;border-radius:0;background:var(--mso-navy);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.mso-dest2__layout .mso-dest2__tabs::-webkit-scrollbar{display:none}
.mso-dest2__layout .mso-dest2__tab{flex:none;width:auto;height:64px;padding:0 20px;border:0;border-radius:0;background:transparent;color:#fff;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;gap:8px}
.mso-dest2__layout .mso-dest2__tab img{display:none}
.mso-dest2__layout .mso-dest2__tab:hover{background:rgba(255,255,255,.08)}
.mso-dest2__layout .mso-dest2__tab.is-active{background:var(--mso-orange);color:#fff}
.mso-dest2__layout .mso-dest2__tab.is-hot:not(.is-active){background:transparent}
.mso-dest2__layout .mso-dest2__tab .mso-hot{background:#fff;color:var(--mso-orange-dark) !important;font-size:9px;padding:2px 6px}
.mso-dest2__layout .mso-dest2__tab.is-active .mso-hot{color:var(--mso-orange) !important}
.mso-dest2 .mso-ribbon{top:26px;left:-46px}
@media (max-width:1199px){.mso-dest2__layout .mso-dest2__body{width:46%}.mso-dest2__layout .mso-dest2__tabs{right:46%}}
@media (max-width:991px){
  .mso-dest2__layout .mso-dest2__tabs{position:static;height:52px;margin-bottom:0;border-radius:16px 16px 0 0}
  .mso-dest2__layout .mso-dest2__tab{height:52px;padding:0 16px}
  .mso-dest2__layout .mso-dest2__card{height:auto;background:#fff}
  .mso-dest2__layout .mso-dest2__media{position:relative;height:280px;border-radius:0}
  .mso-dest2__layout .mso-dest2__body{position:static;width:auto;padding:24px 20px 84px;border:1px solid var(--mso-line);border-top:0;border-radius:0 0 16px 16px;position:relative}
  .mso-dest2__layout .mso-dest2__pager{left:20px;right:20px}
}

/* ---------- Destinations v5: auto-sliding photo, floating card left, small arrows, timeline tabs underneath ---------- */
.mso-dest2__layout{display:flex;flex-direction:column-reverse}
.mso-dest2__layout .mso-dest2__stage{position:relative}
.mso-dest2__layout .mso-dest2__card{height:560px;border-radius:24px;overflow:hidden}
.mso-dest2__layout .mso-dest2__media img{transform:scale(1.06);transition:transform 7s linear}
.mso-dest2__layout .mso-dest2__card.is-active .mso-dest2__media img{transform:scale(1)}
.mso-dest2__layout .mso-dest2__body{left:28px;right:auto;bottom:28px;width:min(440px,calc(100% - 56px));padding:28px 30px 26px;border-radius:20px;background:#fff;box-shadow:0 20px 40px -24px rgba(17,0,83,.45)}
.mso-dest2__layout .mso-dest2__desc{margin-bottom:20px}
.mso-dest2__layout .mso-dest2__pager{position:absolute;top:22px;right:22px;left:auto;bottom:auto;width:auto;height:auto;gap:8px;padding:0;margin:0;border:0;z-index:3}
.mso-dest2__layout .mso-dest2__pager span{display:none}
.mso-dest2__layout .mso-dest2__card .mso-dest2__pager{display:none}
.mso-dest2__arrows{position:absolute;top:22px;right:22px;z-index:4;display:flex;gap:8px}
.mso-dest2__arrows button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:var(--mso-navy);font-size:13px;cursor:pointer;transition:background .2s,color .2s}
.mso-dest2__arrows button:hover{background:var(--mso-navy);color:#fff}
.mso-dest2__layout .mso-dest2__tabs{position:static;right:auto;height:auto;margin-top:18px;background:none;gap:4px 26px;flex-wrap:wrap;overflow:visible}
.mso-dest2__layout .mso-dest2__tab{position:relative;height:auto;padding:10px 0 12px;color:var(--mso-muted);font-size:12.5px;letter-spacing:.08em;background:none !important}
.mso-dest2__layout .mso-dest2__tab::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--mso-line)}
.mso-dest2__layout .mso-dest2__tab::before{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--mso-orange);z-index:1}
.mso-dest2__layout .mso-dest2__tab:hover{color:var(--mso-navy)}
.mso-dest2__layout .mso-dest2__tab.is-active{color:var(--mso-navy)}
.mso-dest2__layout .mso-dest2__tab.is-active::before{width:100%}
.mso-dest2.is-auto .mso-dest2__tab.is-active::before{width:0;animation:msoDestBar var(--dest-dur,5500ms) linear forwards}
.mso-dest2.is-paused .mso-dest2__tab.is-active::before{animation-play-state:paused}
@keyframes msoDestBar{to{width:100%}}
.mso-dest2__layout .mso-dest2__tab .mso-hot{background:var(--mso-orange);color:#fff !important}
@media (max-width:991px){
  .mso-dest2__layout .mso-dest2__tabs{flex-wrap:nowrap;overflow-x:auto;gap:0 20px;margin-top:12px}
  .mso-dest2__layout .mso-dest2__tab{flex:none}
  .mso-dest2__layout .mso-dest2__card{height:auto;border-radius:20px;border:1px solid var(--mso-line);background:#fff}
  .mso-dest2__layout .mso-dest2__body{position:static;width:auto;box-shadow:none;border:0;border-radius:0;padding:22px 20px 24px}
}
@media (prefers-reduced-motion:reduce){.mso-dest2__layout .mso-dest2__media img{transition:none;transform:none}}
.mso-dest2__tabs{flex-wrap:nowrap !important;overflow-x:auto !important;scrollbar-width:none}.mso-dest2__layout .mso-dest2__tab{flex:none}
/* Blue stripe: balanced widths — text 40%, three equal number columns */
@media (min-width:1200px){
  .mso-usp3__panel{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px}
  .mso-usp3__list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mso-usp3__list>div{padding:4px 0 4px 28px}
  .mso-usp3__list dd{font-size:clamp(26px,2.1vw,32px)}
  .mso-usp3__list dt{white-space:nowrap}
}
@media (min-width:1200px){.mso-usp3__list dt{white-space:normal;padding-right:12px}}
/* Blue stripe v2: numbers centred in three equal columns that fill the right side */
@media (min-width:992px){
  .mso-usp3__panel{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:32px;padding:40px 0 40px 48px}
  .mso-usp3__list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mso-usp3__list>div,.mso-usp3__list>div:nth-child(odd){align-items:center;text-align:center;padding:6px 16px;border-left:1px solid rgba(255,255,255,.16)}
  .mso-usp3__list dt{white-space:nowrap;padding:0}
}
/* Awards strip: real award photos */
.mso-award{flex:0 0 240px;padding:0 0 16px;overflow:hidden}
.mso-award__pic{display:block;width:100%;height:auto;aspect-ratio:4/3;margin:0 0 12px;border-radius:0;background:#f6f5f2}
.mso-award__pic img{width:100%;height:100%;object-fit:cover}
.mso-award b,.mso-award small{padding:0 16px}
/* Destinations: both buttons on one line */
@media (min-width:992px){
  .mso-dest2__layout .mso-dest2__body{width:min(560px,calc(100% - 56px))}
  .mso-dest2__actions{flex-wrap:nowrap;gap:12px}
  .mso-dest2__actions .mso-btn,.mso-dest2__actions .mso-textlink{white-space:nowrap}
  .mso-dest2__actions .mso-btn{padding:13px 20px}
  .mso-dest2__actions .mso-textlink{display:inline-flex;align-items:center;padding:12px 18px;border:1.5px solid var(--mso-navy);border-radius:8px}
}
.mso-dest2__layout .mso-dest2__tab .mso-hot,.mso-dest2__layout .mso-dest2__tab.is-active .mso-hot{background:var(--mso-orange) !important;color:#fff !important}
/* Destinations: country-name strip sits on the photo itself (bottom edge) */
@media (min-width:992px){
  .mso-dest2__layout{position:relative;display:block}
  .mso-dest2__layout .mso-dest2__tabs{position:absolute;left:0;right:0;bottom:0;z-index:4;margin:0;padding:0 24px;gap:0 26px;flex-wrap:nowrap !important;overflow-x:auto;background:rgba(17,0,83,.82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:0 0 24px 24px}
  .mso-dest2__layout .mso-dest2__tab{padding:16px 0 15px;color:rgba(255,255,255,.72)}
  .mso-dest2__layout .mso-dest2__tab::after{background:rgba(255,255,255,.16)}
  .mso-dest2__layout .mso-dest2__tab:hover,.mso-dest2__layout .mso-dest2__tab.is-active{color:#fff}
  .mso-dest2__layout .mso-dest2__body{bottom:80px}
}
/* Footer bottom: GEA logo left + Follow us right; copyright on its own centred line below */
footer .bottom-social-links{display:flex !important;flex-wrap:wrap;align-items:center;justify-content:space-between;row-gap:0}
footer .bottom-social-links>.col-md-6{width:auto;flex:0 1 auto;max-width:none}
footer .bottom-social-links>.col-md-6:first-child{display:contents}
footer .bottom-social-links .mso-foot-gea{order:1;margin:0 !important}
footer .bottom-social-links>.col-md-6:last-child{order:2}
footer .bottom-social-links>.col-md-6:first-child>.footer-widget,footer .bottom-social-links>.col-md-6:first-child>.widget{order:3;flex:0 0 100%;margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);text-align:center}
footer .bottom-social-links .copyright{text-align:center !important;font-size:12.5px !important;color:rgba(255,255,255,.55) !important}
@media (max-width:767px){footer .bottom-social-links{justify-content:flex-start;gap:16px}footer .bottom-social-links>.col-md-6:last-child>div{margin-top:0 !important}}

/* Hero cut-out (graduate + landmarks): fit the whole image inside the panel, sitting on the bottom edge, nothing cropped */
.mso-hero__visual:not(.is-photo){align-self:stretch;min-height:520px}
.mso-hero__visual:not(.is-photo) .mso-hero__img{left:50%;bottom:0;width:auto;max-width:100%;height:auto;max-height:calc(100% - 24px);transform:translateX(-50%) scale(.98);object-fit:contain;object-position:bottom}
.mso-hero__visual:not(.is-photo) .mso-hero__img.is-active{transform:translateX(-50%)}
@media (max-width:991px){.mso-hero__visual:not(.is-photo){min-height:0;aspect-ratio:1100/1164}}
/* Phones: keep the landmarks and her face clear. "1,700+" already shows in the blue stripe below, so hide that chip; drop the other to the bottom corner */
@media (max-width:991px){
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--1{display:none}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--3{top:auto;bottom:12px;right:8px;left:auto}
}
/* Hero cut-out: bigger image; circle sits lower, behind her and the buildings' bases */
.mso-hero__visual:not(.is-photo){min-height:600px}
.mso-hero__visual:not(.is-photo) .mso-hero__img{max-height:100%;max-width:112%}
.mso-hero__visual:not(.is-photo) .mso-hero__shape{top:auto;bottom:-140px;right:50%;transform:translateX(50%);width:560px;height:560px}
@media (max-width:991px){.mso-hero__visual:not(.is-photo){min-height:0}.mso-hero__visual:not(.is-photo) .mso-hero__img{max-width:100%}.mso-hero__visual:not(.is-photo) .mso-hero__shape{width:340px;height:340px;bottom:-110px}}
@media (max-width:991px){.mso-hero__visual:not(.is-photo){align-self:end;margin-bottom:0}}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__img{bottom:-32px}}
/* Desktop: shift the hero image, circle and the 3 badges a little to the left */
@media (min-width:992px){.mso-hero__visual:not(.is-photo){left:-60px}}
/* Desktop: larger circle so it spans the full width of the image */
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__shape{width:680px;height:680px;bottom:-210px;transform:translateX(calc(50% + 30px))}}
/* Desktop: larger image without changing the hero height; it rises into the panel's top padding */
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__img{max-height:calc(100% + 70px);max-width:130%}}

/* Hero cut-out backdrop: GEA-inspired mark (pin-shaped ring + needle) as a light overlay instead of the circle */
.mso-hero__visual:not(.is-photo) .mso-hero__shape{display:none}
.mso-hero__mark{position:absolute;left:50%;bottom:4%;width:min(92%,560px);height:auto;transform:translateX(-50%) rotate(-8deg);z-index:0;pointer-events:none}
.mso-hero__mark-ring{fill:#f08000;opacity:.16}
.mso-hero__mark-needle{fill:#110053;opacity:.07}
.mso-hero__visual:not(.is-photo) .mso-hero__img{z-index:1}
@media (max-width:991px){.mso-hero__mark{width:86%;bottom:6%}}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__img{max-height:calc(100% - 20px)}}
/* Bigger GEA-style mark behind the new cut-out */
.mso-hero__mark{width:min(108%,630px);bottom:2%}
@media (max-width:991px){.mso-hero__mark{width:100%}}
.mso-hero__mark{transform:translateX(-50%)} /* upright, same orientation as the GEA logo */
/* Blue stripe: "Why students choose MSO" as the heading, sized to match the numbers */
.mso-usp3 .mso-usp3__lead .mso-usp3__title{font-size:clamp(26px,2.6vw,36px) !important;font-weight:700 !important;line-height:1.15;max-width:none}

/* Upcoming events: next event as a large feature card + 2x2 grid; scrolls sideways on phones */
.mso-events{padding:clamp(56px,7vw,88px) 0}
.mso-events__grid{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-auto-rows:auto;gap:20px}
.mso-event{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(17,0,83,.08);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px -20px rgba(17,0,83,.4);transition:transform .35s var(--mso-ease),box-shadow .35s}
.mso-event:hover{transform:translateY(-4px);box-shadow:0 20px 40px -22px rgba(17,0,83,.5)}
.mso-event.is-featured{grid-row:span 2}
.mso-event__media{position:relative;margin:0;aspect-ratio:16/9;background:#eef0f6;overflow:hidden}
.mso-event.is-featured .mso-event__media{aspect-ratio:auto;flex:1;min-height:300px}
.mso-event__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--mso-ease)}
.mso-event:hover .mso-event__media img{transform:scale(1.05)}
.mso-event__day{position:absolute;right:12px;top:12px;display:flex;flex-direction:column;align-items:center;min-width:54px;padding:7px 8px 6px;border-radius:12px;background:#110053;color:#fff;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1}
.mso-event__day b{font-size:22px;font-weight:800;letter-spacing:0;margin-bottom:3px;color:#fff}
.mso-event__mode{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;gap:5px;padding:6px 11px;border-radius:99px;background:rgba(255,255,255,.95);color:#110053;font-size:12px;font-weight:600;line-height:1}
.mso-event__mode .mso-icon{width:13px;height:13px;color:#f08000}
.mso-event__body{display:flex;flex-direction:column;gap:7px;padding:16px 18px 18px}
.mso-event.is-featured .mso-event__body{padding:22px 24px 24px;gap:9px}
.mso-event__date{margin:0;display:flex;align-items:center;gap:6px;color:#f08000;font-weight:700;font-size:13.5px}
.mso-event__date .mso-icon{width:16px;height:16px}
.mso-event__title{margin:0;color:#110053;font-size:17px;line-height:1.3;font-weight:700}
.mso-event__title span{color:#6b6888;font-weight:600}
.mso-event.is-featured .mso-event__title{font-size:clamp(20px,1.8vw,24px)}
.mso-event__text{margin:0;color:#55526d;font-size:14px;line-height:1.5}
.mso-event.is-featured .mso-event__text{font-size:15.5px}
.mso-event__btn{align-self:flex-start;margin-top:6px;display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:10px;background:#110053;color:#fff !important;font-weight:600;font-size:14px;text-decoration:none;transition:background .25s}
.mso-event__btn:hover{background:#f08000}
.mso-event__btn .mso-icon{width:14px;height:14px}
@media (max-width:1199px){.mso-events__grid{grid-template-columns:1fr 1fr}.mso-event.is-featured{grid-row:auto;grid-column:span 2}.mso-event.is-featured .mso-event__media{aspect-ratio:21/9;flex:none;min-height:0}}
@media (max-width:767px){.mso-events__grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-right:-16px;padding:0 16px 12px 0}.mso-event,.mso-event.is-featured{flex:0 0 82%;scroll-snap-align:start}.mso-event.is-featured .mso-event__media{aspect-ratio:16/9}}
/* Events: all cards the same size (3 per row, last row centred) */
.mso-events__grid{display:flex;flex-wrap:wrap;justify-content:center}
.mso-events__grid .mso-event,.mso-events__grid .mso-event.is-featured{flex:0 0 calc((100% - 40px)/3);grid-row:auto;grid-column:auto}
.mso-event.is-featured .mso-event__media{aspect-ratio:16/9;flex:none;min-height:0}
.mso-event.is-featured .mso-event__body{padding:16px 18px 18px;gap:7px}
.mso-event.is-featured .mso-event__title{font-size:17px}
.mso-event.is-featured .mso-event__text{font-size:14px}
@media (max-width:1199px){.mso-events__grid .mso-event,.mso-events__grid .mso-event.is-featured{flex-basis:calc((100% - 20px)/2)}}
@media (max-width:767px){.mso-events__grid{flex-wrap:nowrap;justify-content:flex-start}.mso-events__grid .mso-event,.mso-events__grid .mso-event.is-featured{flex:0 0 82%}}
/* Events: smaller cards (all 5 in one row on desktop) and tighter section spacing */
.mso-events{padding:clamp(36px,4vw,52px) 0}
.mso-events .mso-events__grid{margin-top:22px;gap:16px}
.mso-events__grid .mso-event,.mso-events__grid .mso-event.is-featured{flex:0 0 calc((100% - 64px)/5)}
.mso-events .mso-event__body,.mso-events .mso-event.is-featured .mso-event__body{padding:12px 14px 14px;gap:5px}
.mso-events .mso-event__title,.mso-events .mso-event.is-featured .mso-event__title{font-size:15.5px}
.mso-events .mso-event__text,.mso-events .mso-event.is-featured .mso-event__text{font-size:13px;line-height:1.45}
.mso-events .mso-event__date{font-size:12.5px}
.mso-events .mso-event__btn{padding:7px 12px;font-size:13px;margin-top:4px}
.mso-events .mso-event__day{min-width:44px;padding:5px 6px 4px;font-size:10px;right:8px;top:8px}
.mso-events .mso-event__day b{font-size:18px}
.mso-events .mso-event__mode{left:8px;top:8px;font-size:11px;padding:5px 9px}
@media (max-width:1199px){.mso-events__grid .mso-event,.mso-events__grid .mso-event.is-featured{flex-basis:calc((100% - 32px)/3)}}
@media (max-width:767px){.mso-events__grid .mso-event,.mso-events__grid .mso-event.is-featured{flex:0 0 72%}}
.mso-events .mso-event__body{flex:1}.mso-events .mso-event__btn{margin-top:auto}.mso-events .mso-event__text{margin-bottom:6px}

/* Hero cut-out backdrop v2 (client reference): flat pixel-block mosaic + thick orange arc behind her head */
.mso-hero__blocks{position:absolute;right:0;bottom:0;width:min(100%,600px);height:auto;aspect-ratio:1;z-index:0;pointer-events:none}
.mso-hero__visual:not(.is-photo) .mso-hero__img{z-index:1}
@media (max-width:991px){.mso-hero__blocks{width:100%;right:auto;left:0}}

/* Hero graphic v2 (client reference): navy pixel cluster + orange arc fill the picture area; badges hidden for a clean poster look */
.mso-hero__blocks{width:min(100%,620px)}
.mso-events{overflow-x:clip}
.mso-hero__blocks{overflow:visible}

/* Hero badges back, styled to suit the pixel graphic: crisp white cards, square navy icon tiles */
.mso-hero__visual:not(.is-photo) .mso-hero__chip{display:flex;z-index:2;border-radius:8px;box-shadow:0 14px 30px -16px rgba(17,0,83,.45)}
.mso-hero__visual:not(.is-photo) .mso-hero__chip-icon{border-radius:4px;background:#110053}
/* Hero graphic fills the picture area to the panel's top and right edges (the visual sits 64px below the panel top and is shifted 60px left) */
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__blocks{top:-64px;right:-60px;bottom:-40px;width:calc(100% + 60px);height:auto;aspect-ratio:auto}}
/* Hero photo nudged 40px right on desktop (the arc in the graphic is offset to match) */
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__img,.mso-hero__visual:not(.is-photo) .mso-hero__img.is-active{transform:translateX(calc(-50% + 40px))}}
/* Hero photo 10% larger on desktop; same section height (the arc is scaled to match) */
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__img{max-height:calc(100% + 38px)}}
/* Events v3: photos at their natural 3:2 shape; date tile on the photo; title, place and one-liner once each */
.mso-events .mso-event__media{aspect-ratio:3/2}
.mso-events .mso-event__day{left:auto;right:10px;top:10px;min-width:0;padding:6px 10px 5px;border-radius:10px;font-size:10.5px;letter-spacing:.08em}
.mso-events .mso-event__day b{font-size:17px;white-space:nowrap}
.mso-event__where{margin:0;display:flex;align-items:center;gap:6px;color:#55526d;font-size:13px;font-weight:600}
.mso-event__where .mso-icon{width:15px;height:15px;color:#f08000;flex:none}
.mso-events .mso-event__title{margin-bottom:1px}
/* Events: one-liners always take exactly two lines so every card body is the same */
.mso-events .mso-event__text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(2 * 1.45em)}
.mso-events .mso-event__title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Events: tighter corners */
.mso-events .mso-event{border-radius:10px}
.mso-events .mso-event__day{border-radius:6px}
.mso-events .mso-event__btn{border-radius:6px}
/* Section intro text sits flush with the right edge of the content (in line with the cards below), not floating mid-row */
@media (min-width:992px){.mso-head .mso-head__text{justify-self:end;max-width:42ch}}
@media (max-width:991px){.mso-head .mso-head__text{justify-self:start;max-width:none}}
/* Events: no card shadow (flat cards with a thin border); hover lifts without a shadow */
.mso-events .mso-event,.mso-events .mso-event:hover{box-shadow:none}
.mso-events .mso-event{border-color:rgba(17,0,83,.1)}

/* ===== About page v4 (light page, homepage tokens; one radius scale: 16px panels/cards, 10px photos) ===== */
.ab3 section{scroll-margin-top:90px}
.ab3 .mso-h2{margin:0}
/* hero */
.ab3-hero{padding:28px 0 clamp(48px,6vw,80px)}
.ab3-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,80px);align-items:center}
.ab3-hero__title{margin:10px 0 18px;color:#110053;font-size:clamp(32px,3.1vw,48px);line-height:1.08;font-weight:800;letter-spacing:-.025em;max-width:17ch}
.ab3-hero__text{margin:0;max-width:52ch;color:#55526d;font-size:18px;line-height:1.65}
.ab3-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:30px}
.ab3-hero__media{position:relative;margin:0}
.ab3-hero__media img{position:relative;z-index:1;display:block;width:100%;height:clamp(380px,38vw,540px);object-fit:cover;border-radius:16px}
.ab3-hero__px{position:absolute;inset:0;pointer-events:none}
.ab3-hero__px i{position:absolute;width:72px;height:72px;z-index:2}
.ab3-hero__px i:nth-child(1){left:-36px;bottom:56px;background:#f08000}
.ab3-hero__px i:nth-child(2){left:36px;bottom:-36px;background:#110053}
.ab3-hero__px i:nth-child(3){right:-28px;top:-28px;width:56px;height:56px;background:#e4e0f5;z-index:0}
/* story */
.ab3-story{padding:clamp(48px,5vw,72px) 0}
.ab3-story__grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(32px,5vw,72px);align-items:center}
.ab3-story__img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px}
.ab3-story__text{margin:18px 0 0;max-width:52ch;color:#2a2747;font-size:clamp(18px,1.5vw,21px);line-height:1.65}
/* founder's message */
.ab3-founder{padding:0 0 clamp(56px,6vw,88px)}
.ab3-founder__inner{position:relative;margin:0;padding:clamp(40px,6vw,80px) clamp(24px,8vw,140px);border-radius:16px;background:#110053;text-align:center;overflow:hidden}
.ab3-founder__inner::before,.ab3-founder__inner::after{content:"";position:absolute;width:64px;height:64px}
.ab3-founder__inner::before{left:0;top:0;background:#f08000}
.ab3-founder__inner::after{right:0;bottom:0;background:#2a1690}
.ab3-founder .mso-eyebrow{justify-content:center;color:#cfc9ef;margin:0}
.ab3-founder__mark{display:block;margin:22px auto 8px;color:#f08000}.ab3-founder__mark .mso-icon{width:48px;height:48px}
.ab3-founder__text{margin:0 auto;max-width:880px}
.ab3-founder__text p{margin:0;color:#fff;font-size:clamp(22px,2.2vw,32px);line-height:1.45;font-weight:600;letter-spacing:-.01em;min-height:calc(3 * 1.45em)}
.ab3-founder__by{display:inline-flex;align-items:center;gap:16px;margin-top:36px;text-align:left;color:rgba(255,255,255,.72);font-size:15px;line-height:1.4}
.ab3-founder__by img{width:72px;height:72px;border-radius:50%;object-fit:cover;object-position:top;border:3px solid rgba(255,255,255,.18)}
.ab3-founder__by b{display:block;color:#fff;font-size:18px}
/* journey: vertical timeline */
.ab3-journey{padding:clamp(56px,6vw,88px) 0;background:#f6f5fa}
.ab3-journey__head{text-align:center;max-width:640px;margin:0 auto clamp(40px,5vw,64px)}
.ab3-journey__head p{margin:14px 0 0;color:#55526d;font-size:17px;line-height:1.6}
.ab3-tl{position:relative;list-style:none;margin:0 auto;padding:0;max-width:1080px}
.ab3-tl__line{position:absolute;left:50%;top:8px;bottom:8px;width:2px;margin-left:-1px;background:rgba(17,0,83,.14)}
.ab3-tl__line span{position:absolute;inset:0;background:#f08000;transform:scaleY(0);transform-origin:top;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.ab3-tl__item{position:relative;display:grid;grid-template-columns:1fr 64px 1fr;align-items:start;padding-bottom:40px}
.ab3-tl__item:last-child{padding-bottom:0}
.ab3-tl__year{grid-column:1;justify-self:end;text-align:right;padding-top:2px}
.ab3-tl__year b{display:block;color:#110053;font-size:clamp(30px,2.8vw,42px);font-weight:800;line-height:1;letter-spacing:-.02em}
.ab3-tl__year span{display:block;margin-top:8px;color:#55526d;font-size:16px;font-weight:600}
.ab3-tl__dot{grid-column:2;justify-self:center;position:relative;z-index:1;width:18px;height:18px;margin-top:12px;border-radius:50%;background:#fff;border:3px solid rgba(17,0,83,.28);transition:background .3s,border-color .3s,transform .3s}
.ab3-tl__card{grid-column:3;padding:20px 24px;border-radius:16px;background:#fff;border:1px solid rgba(17,0,83,.08)}
.ab3-tl__card p{margin:0;color:#2a2747;font-size:15px;line-height:1.6}
.ab3-tl__card ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.ab3-tl__card li{position:relative;padding-left:18px;color:#2a2747;font-size:15px;line-height:1.55}
.ab3-tl__card li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;background:#f08000}
.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__year{grid-column:3;grid-row:1;justify-self:start;text-align:left}
.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__card{grid-column:1;grid-row:1}
.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__dot{grid-row:1}
.ab3-tl__item.is-on .ab3-tl__dot{background:#f08000;border-color:#f08000;transform:scale(1.1)}
.ab3-tl__item.is-now .ab3-tl__year b{color:#f08000}
.ab3-tl__item.is-now .ab3-tl__card{background:#110053;border-color:#110053}
.ab3-tl__item.is-now .ab3-tl__card li,.ab3-tl__item.is-now .ab3-tl__card p{color:#fff}
/* glance: tile grid */
.ab3-glance{padding:clamp(56px,6vw,88px) 0}
.ab3-glance__grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);grid-template-rows:auto auto;gap:16px}
.ab3-glance__intro{grid-row:span 2;display:flex;flex-direction:column;justify-content:flex-end;padding:32px;border-radius:16px;background:#110053;min-height:300px}
.ab3-glance__intro h2{margin:0;color:#fff;font-size:clamp(30px,2.8vw,42px);font-weight:800;line-height:1.05;letter-spacing:-.02em}
.ab3-glance__intro p{margin:12px 0 0;color:rgba(255,255,255,.72);font-size:15.5px;line-height:1.5}
.ab3-glance__tile{display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:24px;border-radius:16px;background:#f6f5fa;min-height:142px}
.ab3-glance__tile b{color:#110053;font-size:clamp(30px,2.8vw,44px);font-weight:800;line-height:1;letter-spacing:-.02em}
.ab3-glance__tile span{color:#55526d;font-size:14.5px;line-height:1.4}
.ab3-glance__tile.is-2{background:#f08000}.ab3-glance__tile.is-2 b,.ab3-glance__tile.is-2 span{color:#110053}
.ab3-glance__tile.is-3{background:#e4e0f5}
.ab3-glance__tile.is-5{background:#fef1e3}
/* leadership: hierarchy */
.ab3-leaders{padding:clamp(40px,5vw,64px) 0 clamp(20px,2.5vw,32px)}
.ab3-leaders__title{margin-bottom:36px !important}
.ab3-lead{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ab3-lead__card{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;padding:20px;border-radius:16px;border:1px solid rgba(17,0,83,.1);background:#fff}
.ab3-lead__photo{width:96px;height:96px;border-radius:10px;object-fit:cover;object-position:center 15%;background:#ececf2}
.ab3-lead__body h3{margin:4px 0 2px;color:#110053;font-size:18px;font-weight:700}
.ab3-lead__role{margin:0;color:#55526d;font-size:14px;line-height:1.4}
.ab3-lead__bio{margin:14px 0 0;color:#2a2747;font-size:16px;line-height:1.6;max-width:56ch}
.ab3-lead__quote{margin:16px 0 0;padding-left:18px;border-left:3px solid #f08000}
.ab3-lead__quote p{margin:0;color:#110053;font-size:clamp(17px,1.4vw,20px);font-weight:600;line-height:1.5}
.ab3-lead__card.is-founder,.ab3-lead__card.is-md{grid-column:1/-1;padding:28px;gap:32px}
.ab3-lead__card.is-founder .ab3-lead__photo,.ab3-lead__card.is-md .ab3-lead__photo{width:160px;height:160px}
.ab3-lead__card.is-founder h3,.ab3-lead__card.is-md h3{font-size:clamp(22px,2vw,28px)}
.ab3-lead__card.is-founder{background:#f6f5fa;border-color:transparent}
/* map */
.ab3-offices{padding:0 0 clamp(56px,6vw,88px)}
.ab3-map{padding:clamp(28px,4vw,48px);border-radius:16px;background:#fff;border:1px solid rgba(17,0,83,.1)}
.ab3-map__head{text-align:center;max-width:620px;margin:0 auto 28px}
.ab3-map__head p{margin:12px 0 0;color:#55526d;font-size:16px;line-height:1.6}
.ab3-map img{display:block;width:100%;max-width:900px;height:auto;margin:0 auto}
.ab3-map__legend{list-style:none;margin:24px 0 0;padding:0;display:flex;justify-content:center;flex-wrap:wrap;gap:12px 32px;font-size:14px;font-weight:600;color:#110053}
.ab3-map__legend li{display:flex;align-items:center;gap:8px}
.ab3-map__legend i{width:14px;height:14px;border-radius:50%}
.ab3-map__legend .is-office{background:#cfd2ea}.ab3-map__legend .is-team{background:#e8742c}.ab3-map__legend .is-hq{background:#f0c25a}
/* responsive */
@media (max-width:1199px){.ab3-glance__grid{grid-template-columns:repeat(3,1fr)}.ab3-glance__intro{grid-column:1/-1;grid-row:auto;min-height:0}}
@media (max-width:991px){
  .ab3-hero__grid,.ab3-story__grid{grid-template-columns:1fr}
  .ab3-hero__px i:nth-child(1){left:-12px}
  .ab3-tl__line{left:9px;margin-left:0}
  .ab3-tl__item,.ab3-tl__item:nth-child(odd of .ab3-tl__item){grid-template-columns:20px 1fr;column-gap:20px;row-gap:12px}
  .ab3-tl__item .ab3-tl__dot,.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__dot{grid-column:1;grid-row:1;margin-top:8px}
  .ab3-tl__item .ab3-tl__year,.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__year{grid-column:2;grid-row:1;justify-self:start;text-align:left}
  .ab3-tl__item .ab3-tl__card,.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__card{grid-column:2;grid-row:2}
  .ab3-lead{grid-template-columns:1fr}
}
@media (max-width:767px){
  .ab3-hero{padding-top:12px}.ab3-hero__text{font-size:16.5px}.ab3-hero__media img{height:auto;aspect-ratio:4/3}
  .ab3-hero__px i{width:44px;height:44px}.ab3-hero__px i:nth-child(2){left:24px;bottom:-22px}.ab3-hero__px i:nth-child(3){display:none}
  .ab3-founder__inner::before,.ab3-founder__inner::after{width:36px;height:36px}
  .ab3-founder__by{flex-direction:column;text-align:center}
  .ab3-glance__grid{grid-template-columns:1fr 1fr}
  .ab3-lead__card,.ab3-lead__card.is-founder,.ab3-lead__card.is-md{grid-template-columns:1fr;padding:20px}
  .ab3-lead__card.is-team{grid-template-columns:auto 1fr}
  .ab3-map{padding:22px 12px}
}
@media (prefers-reduced-motion:reduce){.ab3-tl__line span,.ab3-tl__dot{transition:none}}

/* About v4.1: text-only story, big Founder portrait, brand-only glance tiles, portrait-row leadership */
.ab3-story{padding:clamp(40px,5vw,64px) 0 clamp(48px,5vw,72px)}
.ab3-story__inner{max-width:860px;margin:0 auto;text-align:center}
.ab3-story__inner .ab3-story__text{margin:18px auto 0;max-width:none;font-size:clamp(19px,1.7vw,24px);line-height:1.6;color:#2a2747}
.ab3-founder__inner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:0;padding:0;text-align:left}
.ab3-founder__photo{display:block;width:100%;height:100%;min-height:440px;object-fit:cover;object-position:center 20%}
.ab3-founder__copy{position:relative;z-index:1;align-self:center;padding:clamp(36px,5vw,72px)}
.ab3-founder .mso-eyebrow{justify-content:flex-start}
.ab3-founder__mark{margin:20px 0 10px}
.ab3-founder__text{margin:0;max-width:none}
.ab3-founder__text p{font-size:clamp(20px,1.9vw,28px)}
.ab3-founder__by{display:block;margin-top:28px;color:rgba(255,255,255,.72);font-size:15px}
.ab3-founder__by b{display:block;color:#fff;font-size:20px;margin-bottom:2px}
.ab3-founder__inner::before{left:auto;right:0;top:0}
.ab3-founder__inner::after{right:0;bottom:0}
.ab3-glance__tile{background:#fff;border:1px solid rgba(17,0,83,.14)}
.ab3-glance__tile.is-2{background:#f08000;border-color:#f08000}
.ab3-glance__tile.is-3,.ab3-glance__tile.is-4,.ab3-glance__tile.is-6{background:#fff}
.ab3-glance__tile.is-5{background:#110053;border-color:#110053}.ab3-glance__tile.is-5 b,.ab3-glance__tile.is-5 span{color:#fff}
.ab3-leaders__title{text-align:center}
.ab3-people{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,40px)}
.ab3-person{display:flex;flex-direction:column;align-items:center;text-align:center}
.ab3-person__photo{display:block;width:clamp(150px,13vw,190px);aspect-ratio:1;border-radius:50%;overflow:hidden;background:#ececf2;border:4px solid #fff;box-shadow:0 0 0 2px rgba(17,0,83,.14)}
.ab3-person__photo img{width:100%;height:100%;object-fit:cover;object-position:center 18%}
.ab3-person.is-lead .ab3-person__photo{box-shadow:0 0 0 2px rgba(17,0,83,.14) !important}
.ab3-person__name{margin-top:18px;color:#110053;font-size:18px}
.ab3-person__role{margin-top:4px;max-width:24ch;color:#55526d;font-size:14px;line-height:1.4}
.ab3-mdq{position:relative;margin:clamp(20px,2.5vw,32px) auto 0;max-width:900px;padding:clamp(16px,2vw,24px) clamp(20px,4vw,48px) 0;border-top:1px solid rgba(17,0,83,.12);border-bottom:none;text-align:center}
.ab3-mdq__mark{color:#f08000}.ab3-mdq__mark .mso-icon{width:40px;height:40px}
.ab3-mdq blockquote{margin:8px 0 0}.ab3-mdq blockquote p{margin:0;color:#110053;font-size:clamp(20px,2vw,28px);font-weight:600;line-height:1.45}
.ab3-mdq figcaption{margin-top:12px;color:#55526d;font-size:15px}.ab3-mdq figcaption b{color:#110053}
@media (max-width:991px){.ab3-founder__inner{grid-template-columns:1fr}.ab3-founder__photo{min-height:0;aspect-ratio:4/3}.ab3-people{grid-template-columns:1fr 1fr;row-gap:36px}}

/* One font across the site: Montserrat for body text too (Quicksand retired) */
body,button,input,select,textarea{font-family:'Montserrat',sans-serif !important}

/* Journey v2: paired year card + details card per milestone (after GEA's Our Story), square markers,
   year cards turn navy as the line reaches them; 2026 is orange */
.ab3-tl__item{grid-template-columns:1fr 72px 1fr;align-items:stretch;padding-bottom:28px}
.ab3-tl__year{display:flex;flex-direction:column;justify-content:center;align-self:stretch;min-width:min(100%,300px);padding:22px 26px;border-radius:16px;background:#fff;border:1px solid rgba(17,0,83,.12);transition:background .4s,border-color .4s}
.ab3-tl__year b{font-size:clamp(28px,2.6vw,38px)}
.ab3-tl__year span{margin-top:6px;font-size:15.5px;color:#110053;transition:color .4s}
.ab3-tl__item.is-on .ab3-tl__year{background:#110053;border-color:#110053}
.ab3-tl__item.is-on .ab3-tl__year b,.ab3-tl__item.is-on .ab3-tl__year span{color:#fff}
.ab3-tl__item.is-now .ab3-tl__year{background:#f08000;border-color:#f08000}
.ab3-tl__item.is-now .ab3-tl__year b,.ab3-tl__item.is-now .ab3-tl__year span{color:#110053}
.ab3-tl__item.is-now .ab3-tl__card{background:#fff;border-color:#f08000;border-width:2px}
.ab3-tl__item.is-now .ab3-tl__card li,.ab3-tl__item.is-now .ab3-tl__card p{color:#2a2747}
.ab3-tl__dot{align-self:center;margin-top:0;width:16px;height:16px;border-radius:2px;border-width:3px;transform:rotate(45deg)}
.ab3-tl__item.is-on .ab3-tl__dot{transform:rotate(45deg) scale(1.15)}
.ab3-tl__card{align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.ab3-tl__item::before,.ab3-tl__item::after{content:"";position:absolute;top:50%;height:2px;width:20px;background:rgba(17,0,83,.14)}
.ab3-tl__item::before{left:calc(50% - 36px)}.ab3-tl__item::after{left:calc(50% + 16px)}
.ab3-tl__item.is-on::before,.ab3-tl__item.is-on::after{background:#f08000}
.ab3-tl__year{justify-self:stretch}
.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__year{justify-self:stretch;text-align:left}
.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__year{text-align:right}
@media (max-width:991px){
  .ab3-tl__item,.ab3-tl__item:nth-child(odd of .ab3-tl__item){grid-template-columns:20px 1fr;padding-bottom:28px}
  .ab3-tl__item::before,.ab3-tl__item::after{display:none}
  .ab3-tl__item .ab3-tl__year,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__year{text-align:left;padding:16px 20px}
  .ab3-tl__dot,.ab3-tl__item .ab3-tl__dot{align-self:start;margin-top:26px}
}
.ab3-tl__item::before,.ab3-tl__item::after{top:calc(50% - 15px)}.ab3-tl__item:last-child::before,.ab3-tl__item:last-child::after{top:calc(50% - 1px)}

/* About: lighter weights, matching the homepage (headings 700, quotes 500, body 400) */
.ab3{font-weight:400}
.ab3-hero__title,.ab3-tl__year b,.ab3-glance__tile b,.ab3-glance__intro h2{font-weight:700}
.ab3-founder__text p,.ab3-mdq blockquote p{font-weight:500}
.ab3-tl__year span,.ab3-person__name,.ab3-founder__by b{font-weight:600}
.ab3-story__inner .ab3-story__text,.ab3-tl__card li,.ab3-tl__card p{font-weight:400}

/* Journey graphics: milestone icons + brand square accents in the section corners */
.ab3-journey{position:relative;overflow:hidden}
.ab3-journey__px{position:absolute;width:168px;height:112px;pointer-events:none}
.ab3-journey__px i{position:absolute;width:56px;height:56px}
.ab3-journey__px.is-a{left:0;top:0}
.ab3-journey__px.is-a i:nth-child(1){left:0;top:0;background:#110053}.ab3-journey__px.is-a i:nth-child(2){left:56px;top:0;background:#f08000}.ab3-journey__px.is-a i:nth-child(3){left:0;top:56px;background:#fff}
.ab3-journey__px.is-b{right:0;bottom:0}
.ab3-journey__px.is-b i:nth-child(1){right:0;bottom:0;background:#110053}.ab3-journey__px.is-b i:nth-child(2){right:56px;bottom:0;background:#fff}.ab3-journey__px.is-b i:nth-child(3){right:0;bottom:56px;background:#f08000}
.ab3-tl__icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:12px;border-radius:10px;background:#fef1e3;color:#f08000;transition:background .4s,color .4s}
.ab3-tl__icon .mso-icon{width:22px;height:22px}
.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__icon{margin-left:auto}
.ab3-tl__item.is-on .ab3-tl__icon{background:#f08000;color:#fff}
.ab3-tl__item.is-now .ab3-tl__icon{background:#110053;color:#fff}
@media (max-width:991px){.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__icon{margin-left:0}.ab3-journey__px{transform:scale(.6)}.ab3-journey__px.is-a{transform-origin:top left}.ab3-journey__px.is-b{transform-origin:bottom right}}
.ab3-tl__year .ab3-tl__icon{display:grid;place-items:center;margin:0 0 14px;font-size:0}.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__year .ab3-tl__icon{margin-left:auto}@media (max-width:991px){.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__year .ab3-tl__icon{margin-left:0}}

/* Journey v3 (after topuniversities.com): ONE card per milestone (year + title + points) on alternating sides,
   a large icon tile on the opposite side, square marker on the centre line */
.ab3-tl__item,.ab3-tl__item:nth-child(odd of .ab3-tl__item){grid-template-columns:1fr 72px 1fr;align-items:center;padding-bottom:36px}
.ab3-tl__box{grid-row:1;padding:28px 30px;border-radius:16px;background:#fff;border:1px solid rgba(17,0,83,.1);transition:border-color .4s}
.ab3-tl__dot{grid-column:2;grid-row:1}
.ab3-tl__art{grid-row:1;display:flex}
.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__box{grid-column:1}
.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__art{grid-column:3;justify-content:flex-start}
.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__box{grid-column:3}
.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__art{grid-column:1;justify-content:flex-end}
.ab3-tl__when{display:inline-block;color:#110053;font-size:clamp(26px,2.4vw,34px);font-weight:700;line-height:1;letter-spacing:-.02em;transition:color .4s}
.ab3-tl__title{margin:8px 0 14px;color:#110053;font-size:18px;font-weight:600}
.ab3-tl__box ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.ab3-tl__box li{position:relative;padding-left:18px;color:#2a2747;font-size:15px;line-height:1.55}
.ab3-tl__box li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;background:#f08000}
.ab3-tl__box p{margin:0;color:#2a2747;font-size:15px;line-height:1.6}
.ab3-tl__art span{display:grid;place-items:center;width:120px;height:120px;border-radius:16px;background:#fff;border:1px solid rgba(17,0,83,.1);color:#110053;transition:background .4s,color .4s,border-color .4s}
.ab3-tl__art .mso-icon{width:52px;height:52px}
.ab3-tl__item.is-on .ab3-tl__when{color:#f08000}
.ab3-tl__item.is-on .ab3-tl__box{border-color:rgba(240,128,0,.5)}
.ab3-tl__item.is-on .ab3-tl__art span{background:#110053;border-color:#110053;color:#fff}
.ab3-tl__item.is-now .ab3-tl__box{background:#110053;border-color:#110053}
.ab3-tl__item.is-now .ab3-tl__when{color:#f08000}
.ab3-tl__item.is-now .ab3-tl__title,.ab3-tl__item.is-now .ab3-tl__box li,.ab3-tl__item.is-now .ab3-tl__box p{color:#fff}
.ab3-tl__item.is-now .ab3-tl__art span{background:#f08000;border-color:#f08000;color:#fff}
.ab3-tl__item::before,.ab3-tl__item::after,.ab3-tl__item:last-child::before,.ab3-tl__item:last-child::after{top:calc(50% - 19px)}
.ab3-tl__item:last-child::before,.ab3-tl__item:last-child::after{top:calc(50% - 1px)}
@media (max-width:991px){
  .ab3-tl__item,.ab3-tl__item:nth-child(odd of .ab3-tl__item){grid-template-columns:20px 1fr;column-gap:20px;align-items:start;padding-bottom:24px}
  .ab3-tl__item .ab3-tl__box,.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__box,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__box{grid-column:2;padding:22px 20px}
  .ab3-tl__dot{grid-column:1;margin-top:28px}
  .ab3-tl__art{display:none}
}

/* Journey: a stock photo opposite each milestone card (replaces the icon tiles) */
.ab3-tl__art{margin:0;display:block;align-self:stretch}
.ab3-tl__art img{display:block;width:100%;height:100%;min-height:200px;max-height:300px;object-fit:cover;border-radius:16px;filter:grayscale(.35);transition:filter .5s}
.ab3-tl__item.is-on .ab3-tl__art img{filter:none}
/* GEA at a Glance: tighter tiles (number and label sit together) */
.ab3-glance__tile{justify-content:flex-end;gap:8px;min-height:0;padding:22px 24px}
.ab3-glance__intro{min-height:0;padding:28px 30px}
.ab3-tl__art{align-self:center}.ab3-tl__art img{height:auto;min-height:0;max-height:none;aspect-ratio:16/10;max-width:480px}.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__art img{margin-left:auto}
.ab3-tl__art img{max-width:400px}
/* Journey: connector only on the card side (none towards the photo) */
.ab3-tl__item:nth-child(odd of .ab3-tl__item)::after,.ab3-tl__item:nth-child(even of .ab3-tl__item)::before{display:none}

/* No decorative squares on the About page */
.ab3-hero__px,.ab3-journey__px{display:none}
.ab3-founder__inner::before,.ab3-founder__inner::after{display:none}
/* Story: editorial split (headline left, large statement right with key facts highlighted) */
.ab3-story{padding:clamp(56px,6vw,88px) 0}
.ab3-story__inner{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(28px,5vw,80px);align-items:start;max-width:none;text-align:left;padding-top:32px;border-top:2px solid #110053}
.ab3-story__inner .mso-h2{font-size:clamp(28px,2.6vw,38px);max-width:12ch}
.ab3-story__inner .ab3-story__text{margin:0;font-size:clamp(22px,2.1vw,30px);line-height:1.45;font-weight:500;color:#110053;letter-spacing:-.01em}
.ab3-story__text em{font-style:normal;color:#f08000;font-weight:600}
@media (max-width:991px){.ab3-story__inner{grid-template-columns:1fr;gap:18px}.ab3-story__inner .mso-h2{max-width:none}}
.ab3-story{padding-top:8px}
.ab3-story__inner .ab3-story__text{font-size:clamp(19px,1.7vw,24px)}
.ab3-story__inner .mso-h2{font-size:clamp(26px,2.3vw,34px)}
.ab3-tl__art img{max-width:480px}

/* Footer Contact Us: same rhythm as the other columns; icons for email / phone / head office; sentence-case labels */
.mso-foot-contact__list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.mso-foot-contact__list a,.mso-foot-contact__hq{display:flex !important;align-items:center;gap:10px;margin:0 !important;font-size:16px;line-height:1.4;color:rgba(255,255,255,.75) !important}
.mso-foot-contact__list .mso-icon,.mso-foot-contact__hq .mso-icon{flex:none;width:18px;height:18px;color:#f08000}
.mso-foot-contact__group{margin-top:24px}
.mso-foot-contact__label{margin:0 0 10px !important;font-size:13px !important;font-weight:600 !important;letter-spacing:0;text-transform:none;color:rgba(255,255,255,.5) !important}
.mso-foot-contact .mso-foot-offices{margin:0 !important}
.mso-foot-contact__list{gap:0}.mso-foot-contact__list li{margin:0 0 13px !important;line-height:24px}.mso-foot-contact__list li:last-child{margin-bottom:0 !important}.mso-foot-contact__hq{align-items:flex-start !important}.mso-foot-contact__hq .mso-icon{margin-top:2px}.mso-foot-contact__group{margin-top:22px}

/* About hero v5: full-width photo banner with a flat navy tint (no gradient); no breadcrumb */
.ab3-banner2{padding:20px 0 clamp(40px,5vw,64px)}
.ab3-banner2__panel{position:relative;display:flex;align-items:flex-end;min-height:clamp(460px,44vw,600px);border-radius:16px;overflow:hidden;background:#110053}
.ab3-banner2__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.ab3-banner2__panel::after{content:"";position:absolute;inset:0;background:rgba(17,0,83,.62)}
.ab3-banner2__copy{position:relative;z-index:1;max-width:720px;padding:clamp(28px,5vw,64px)}
.ab3-banner2 .mso-eyebrow{color:#fff}
.ab3-banner2__title{margin:12px 0 16px;color:#fff;font-size:clamp(32px,3.6vw,52px);line-height:1.08;font-weight:700;letter-spacing:-.025em}
.ab3-banner2__text{margin:0;max-width:56ch;color:rgba(255,255,255,.88);font-size:18px;line-height:1.6}
.ab3-banner2__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:28px}
.ab3-banner2 .mso-btn{background:#f08000;border-color:#f08000;color:#110053}
.ab3-banner2 .mso-btn:hover{background:#fff;border-color:#fff;color:#110053}
.ab3-banner2 .mso-textlink{color:#fff}
@media (max-width:767px){.ab3-banner2{padding-top:8px}.ab3-banner2__panel{min-height:520px;border-radius:12px}.ab3-banner2__text{font-size:16px}}
.ab3-banner2 .mso-textlink,.ab3-banner2 .mso-textlink .mso-icon{color:#fff !important;border-color:rgba(255,255,255,.6) !important}

/* About hero v6: full-bleed banner (edge to edge, no side margins or rounding), navy gradient from the left for legibility */
.ab3-banner2{padding:0 0 clamp(40px,5vw,64px)}
.ab3-banner2>.container{max-width:none !important;width:100% !important;padding:0 !important;margin:0 !important}
.ab3-banner2__panel{border-radius:0;min-height:clamp(480px,42vw,620px);align-items:center}
.ab3-banner2__bg{object-position:right center}
.ab3-banner2__panel::after{background:linear-gradient(90deg,rgba(17,0,83,.94) 0%,rgba(17,0,83,.82) 32%,rgba(17,0,83,.35) 58%,rgba(17,0,83,0) 78%)}
.ab3-banner2__copy{width:100%;max-width:1320px;margin:0 auto;padding:48px max(24px,calc((100vw - 1320px) / 2 + 12px))}
.ab3-banner2__copy>*{max-width:620px}
@media (max-width:767px){.ab3-banner2__panel{min-height:560px;align-items:flex-end;border-radius:0}.ab3-banner2__bg{object-position:72% center}.ab3-banner2__panel::after{background:linear-gradient(0deg,rgba(17,0,83,.95) 0%,rgba(17,0,83,.8) 45%,rgba(17,0,83,.15) 80%)}.ab3-banner2__copy{padding:28px 20px}}
/* About hero v7 (after topuniversities.com): solid navy left, photo on the right half blending into it */
.ab3-banner2__bg{left:auto;right:0;width:55%;object-position:center 25%}
.ab3-banner2__panel::after{background:linear-gradient(90deg,#110053 0%,#110053 45%,rgba(17,0,83,.55) 55%,rgba(17,0,83,0) 70%)}
@media (max-width:767px){.ab3-banner2__bg{width:100%}.ab3-banner2__panel::after{background:linear-gradient(0deg,#110053 0%,rgba(17,0,83,.85) 45%,rgba(17,0,83,0) 75%)}}
.ab3-banner2__copy{padding-left:max(24px,calc((100vw - 1320px) / 2 - 60px))}
/* About hero v8: wide campus photo across the full banner, navy fading in from the left behind the text */
.ab3-banner2__bg{left:0;right:0;width:100%;object-position:right 30%}
.ab3-banner2__panel::after{background:linear-gradient(90deg,#110053 0%,rgba(17,0,83,.92) 30%,rgba(17,0,83,.55) 48%,rgba(17,0,83,0) 64%)}
@media (max-width:767px){.ab3-banner2__bg{object-position:78% center}}
@media (min-width:768px){.ab3-banner2__panel{min-height:0;aspect-ratio:2000/1124;max-height:none}}
/* About hero: shorter banner; the photo is shown whole (not cropped) at full height on the right, navy fills and fades in from the left */
@media (min-width:768px){
  .ab3-banner2__panel{aspect-ratio:auto;min-height:0;height:clamp(460px,38vw,580px)}
  .ab3-banner2__bg{left:auto;right:0;width:auto;height:100%;max-width:none;object-fit:contain}
  .ab3-banner2__panel::after{background:linear-gradient(90deg,#110053 0%,#110053 34%,rgba(17,0,83,.6) 46%,rgba(17,0,83,0) 60%)}
}
@media (min-width:768px){.ab3-banner2__panel::after{background:linear-gradient(90deg,#110053 0%,#110053 42%,rgba(17,0,83,.7) 54%,rgba(17,0,83,.25) 64%,rgba(17,0,83,0) 72%)}}
@media (min-width:768px){.ab3-banner2__panel::after{background:linear-gradient(90deg,#110053 0%,#110053 48%,rgba(17,0,83,.75) 60%,rgba(17,0,83,.3) 70%,rgba(17,0,83,0) 78%)}}
.ab3-founder__logo{display:block;height:44px;width:auto;margin-top:28px;opacity:.95}
.ab3-founder__by{margin-top:18px}
.ab3-founder__sign{display:flex;align-items:center;gap:20px;margin-top:30px}.ab3-founder__sign .ab3-founder__logo{margin:0;padding-right:20px;border-right:1px solid rgba(255,255,255,.25);height:48px}.ab3-founder__sign .ab3-founder__by{margin:0}
/* Journey: every card and photo the same size (desktop) */
@media (min-width:992px){
  .ab3-tl__box{height:290px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
  .ab3-tl__art{align-self:stretch}
  .ab3-tl__art img,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__art img{width:100%;max-width:none;height:290px;aspect-ratio:auto;margin:0}
}

/* About banner v9: one headline only, shorter */
@media (min-width:768px){.ab3-banner2__panel{height:clamp(340px,28vw,420px)}}
.ab3-banner2__title{margin:0;max-width:16ch;font-size:clamp(32px,3.4vw,50px)}
/* Journey with GEA's exact copy: card and photo share the row height (text lengths differ by year) */
@media (min-width:992px){
  .ab3-tl__box{height:auto;min-height:260px;overflow:visible}
  .ab3-tl__art img,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__art img{height:100%;min-height:260px}
  .ab3-tl__item{align-items:stretch}
  .ab3-tl__title{font-size:17px}
  .ab3-tl__box li{font-size:14.5px}
}
/* Global presence: region grid instead of a picture map */
.ab3-geo{padding:clamp(28px,4vw,48px);border-radius:16px;background:#fff;border:1px solid rgba(17,0,83,.1)}
.ab3-geo__head{text-align:center;max-width:640px;margin:0 auto 32px}
.ab3-geo__head p{margin:12px 0 0;color:#55526d;font-size:16px;line-height:1.6}
.ab3-geo__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ab3-geo__hq{display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:24px;border-radius:12px;background:#110053;color:rgba(255,255,255,.75);font-size:14px}
.ab3-geo__hq-label{display:inline-block;align-self:flex-start;margin-bottom:auto;padding:4px 10px;border-radius:99px;background:#f08000;color:#110053;font-size:12px;font-weight:700}
.ab3-geo__hq b{color:#fff;font-size:28px;font-weight:700;margin-top:28px}
.ab3-geo__region{padding:22px 24px;border-radius:12px;background:#f6f5fa}
.ab3-geo__region.is-asia{grid-column:span 2;grid-row:span 2}
.ab3-geo__region h3{display:flex;align-items:center;gap:8px;margin:0 0 14px;color:#110053;font-size:18px;font-weight:700}
.ab3-geo__region h3 small{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:99px;background:#110053;color:#fff;font-size:12px;font-weight:600}
.ab3-geo__region ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ab3-geo__region li{padding:7px 12px;border-radius:8px;font-size:14px;font-weight:500;line-height:1.2}
.ab3-geo__region li.is-office{background:#fff;color:#110053;border:1px solid rgba(17,0,83,.15)}
.ab3-geo__region li.is-team{background:#fef1e3;color:#110053;border:1px solid #f08000}
.ab3-map__legend .is-office{background:#fff;border:1px solid rgba(17,0,83,.3)}.ab3-map__legend .is-team{background:#fef1e3;border:1px solid #f08000}.ab3-map__legend .is-hq{background:#110053}
@media (max-width:991px){.ab3-geo__grid{grid-template-columns:1fr 1fr}.ab3-geo__region.is-asia{grid-column:1/-1;grid-row:auto}}
@media (max-width:575px){.ab3-geo__grid{grid-template-columns:1fr}}

/* Homepage hero: no pixel squares (just the orange circle) and a smaller photo */
.mso-hero__blocks rect{display:none}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__img{max-height:calc(100% - 50px)}}
/* Homepage hero v3: one clean orange ring framing her head (replaces the arc + squares graphic) */
.mso-hero__visual:not(.is-photo) .mso-hero__blocks{display:none}
@media (min-width:992px){
  .mso-hero__visual:not(.is-photo) .mso-hero__shape{display:block !important;left:168px;right:auto;top:60px;bottom:auto;width:440px;height:440px;transform:none;border-radius:50%;background:none;border:44px solid #f08000;z-index:0}
}
@media (max-width:991px){.mso-hero__visual:not(.is-photo) .mso-hero__shape{display:block !important;left:50%;top:6%;bottom:auto;right:auto;width:66%;height:auto;aspect-ratio:1;transform:translateX(-42%);background:none;border:28px solid #f08000;border-radius:50%}}
@media (min-width:768px){.ab3-banner2__panel::after{background:linear-gradient(90deg,#110053 0%,#110053 56%,rgba(17,0,83,.7) 65%,rgba(17,0,83,.25) 74%,rgba(17,0,83,0) 82%)}}
.ab3-geo__region.is-asia{grid-row:auto}

/* About banner v10: GEA legacy headline + Freeman's message; compact, photo on the right */
.ab3-fban{background:#110053;overflow:hidden}
.ab3-fban__inner{position:relative;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;max-width:1320px;margin:0 auto;padding:0 12px;min-height:clamp(340px,30vw,430px)}
.ab3-fban__copy{position:relative;z-index:1;padding:48px 40px 48px 0}
.ab3-fban__title{margin:0;color:#fff;font-size:clamp(30px,3vw,44px);line-height:1.12;font-weight:700;letter-spacing:-.02em;max-width:18ch}
.ab3-fban__quote{margin:26px 0 0;padding-left:20px;border-left:3px solid #f08000;max-width:56ch}
.ab3-fban__quote blockquote{margin:0}.ab3-fban__quote p{margin:0;color:rgba(255,255,255,.9);font-size:17px;line-height:1.55;font-weight:500}
.ab3-fban__quote figcaption{margin-top:10px;color:rgba(255,255,255,.65);font-size:14px}.ab3-fban__quote figcaption b{color:#fff;margin-right:8px;font-weight:600}
.ab3-fban__photo{align-self:stretch;width:100%;height:100%;max-height:430px;object-fit:cover;object-position:center 20%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%);mask-image:linear-gradient(90deg,transparent 0,#000 30%)}
@media (max-width:991px){.ab3-fban__inner{grid-template-columns:1fr;padding:0 20px}.ab3-fban__copy{padding:40px 0 8px;order:1}.ab3-fban__photo{order:0;height:280px;margin:0 -20px;width:calc(100% + 40px);-webkit-mask-image:linear-gradient(0deg,transparent 0,#000 35%);mask-image:linear-gradient(0deg,transparent 0,#000 35%)}}
/* Global presence v3: dotted map with pins + list by region */
.ab3-geo2{padding:clamp(28px,4vw,48px);border-radius:16px;background:#fff;border:1px solid rgba(17,0,83,.1)}
.ab3-geo2__map{position:relative;margin:8px auto 0;max-width:1100px}
.ab3-geo2__stage{position:relative;width:100%}
.ab3-geo2__map>img,.ab3-geo2__stage>img{display:block;width:100%;height:auto}
.ab3-pin{position:absolute;transform:translate(-50%,-50%);cursor:default;outline:0}
.ab3-pin i{display:block;width:10px;height:10px;border-radius:50%;background:#110053;border:2px solid #fff;box-shadow:0 0 0 1px rgba(17,0,83,.25)}
.ab3-pin.is-team i{background:#f08000}
.ab3-pin.is-hq i{width:18px;height:18px;background:#f08000;box-shadow:0 0 0 5px rgba(240,128,0,.25),0 0 0 10px rgba(240,128,0,.12)}
.ab3-pin em{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);white-space:nowrap;padding:4px 8px;border-radius:6px;background:#110053;color:#fff;font-style:normal;font-size:12px;font-weight:600;opacity:0;pointer-events:none;transition:opacity .15s}
.ab3-pin:hover em,.ab3-pin:focus em,.ab3-pin.is-hq em,.ab3-pin.is-active-pin em{opacity:1;pointer-events:auto}
.ab3-pin.is-hq em{background:#f08000;color:#fff;font-weight:700}
.ab3-pin:hover,.ab3-pin:focus,.ab3-pin.is-active-pin{z-index:99 !important}
.ab3-map__legend .is-hq{background:#f08000}.ab3-map__legend .is-office{background:#110053;border:0}.ab3-map__legend .is-team{background:#f08000;opacity:.6;border:0}
.ab3-geo2__list{display:grid;gap:10px;margin-top:28px;padding-top:24px;border-top:1px solid rgba(17,0,83,.1)}
.ab3-geo2__row{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:baseline}
.ab3-geo2__row b{color:#110053;font-size:15px}
.ab3-geo2__row ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px}
.ab3-geo2__row li{position:relative;padding-left:14px;color:#2a2747;font-size:14.5px}
.ab3-geo2__row li::before{content:"";position:absolute;left:0;top:.45em;width:8px;height:8px;border-radius:50%;background:#110053}
.ab3-geo2__row li.is-team::before{background:#f08000}
@media (max-width:767px){.ab3-pin i{width:7px;height:7px;border-width:1px}.ab3-pin.is-hq i{width:12px;height:12px}.ab3-geo2__row{grid-template-columns:1fr;gap:6px}}
@media (min-width:992px){
  .ab3-fban{position:relative}
  .ab3-fban__inner{grid-template-columns:1fr;position:static}
  .ab3-fban__copy{max-width:58%;padding:56px 0}
  .ab3-fban__title{max-width:22ch}
  .ab3-fban__photo{position:absolute;right:0;top:0;bottom:0;width:44%;height:100%;max-height:none;object-position:center 22%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 35%);mask-image:linear-gradient(90deg,transparent 0,#000 35%)}
}
.ab3-story{padding-top:clamp(48px,5vw,72px)}
/* Map labels: always visible for spread-out locations (dense SE Asia shows on hover + in the list) */
.ab3-pin.has-label em{opacity:1;background:#fff;color:#110053;border:1px solid rgba(17,0,83,.15);font-weight:600;font-size:11.5px;padding:3px 7px;bottom:auto;top:50%;transform:translateY(-50%)}
.ab3-pin.has-label.lab-r em{left:calc(100% + 6px)}
.ab3-pin.has-label.lab-l em{left:auto;right:calc(100% + 6px)}
.ab3-pin.has-label.lab-t em{top:auto;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%)}
.ab3-pin.is-team.has-label em{border-color:#f08000}
@media (max-width:767px){.ab3-pin.has-label:not(.is-india) em{opacity:0}.ab3-pin.has-label:hover em,.ab3-pin.has-label:focus em{opacity:1}}
.ab3-pin.has-label.lab-b em{top:calc(100% + 6px);left:50%;transform:translateX(-50%)}
@media (min-width:992px){.ab3-tl__art{position:relative;align-self:stretch;min-height:240px}.ab3-tl__art img,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__art img{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-width:none}}
.ab3-banner2{padding-bottom:0}.ab3-banner2__title{max-width:22ch}
@media (min-width:992px){.ab3-fban__photo{width:52%;object-position:right 30%}}
/* Homepage hero v4 (client: less congested): no info badges; girl centred in a complete ring */
.mso-hero__visual:not(.is-photo) .mso-hero__chip{display:none !important}
@media (min-width:992px){
  .mso-hero__visual:not(.is-photo) .mso-hero__img,.mso-hero__visual:not(.is-photo) .mso-hero__img.is-active{left:50% !important;transform:translateX(-50%) !important;max-height:calc(100% - 40px) !important;max-width:100% !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__shape{left:50% !important;top:auto !important;bottom:110px !important;width:400px !important;height:400px !important;transform:translateX(-50%) !important;border-width:34px !important}
}
/* Hero v5: badges back; casual-clothes photo inside the ring; a soft solid peach disc fills the ring for depth */
.mso-hero__visual:not(.is-photo) .mso-hero__chip{display:flex !important}
@media (min-width:992px){
  .mso-hero__visual:not(.is-photo) .mso-hero__shape{background:#fde7cf !important;width:420px !important;height:420px !important;bottom:90px !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__img,.mso-hero__visual:not(.is-photo) .mso-hero__img.is-active{max-height:calc(100% - 20px) !important}
}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__chip--3{right:auto !important;left:-10px !important;bottom:110px !important;top:auto !important}}
/* Hero v6: faded GEA mark behind her (no orange ring); photo a little larger and further right */
@media (min-width:992px){
  .mso-hero__visual:not(.is-photo) .mso-hero__shape{border:0 !important;border-radius:0 !important;background:url(../../assets/img/gea-mark.svg) center/contain no-repeat !important;width:500px !important;height:500px !important;left:calc(50% + 50px) !important;bottom:70px !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__img,.mso-hero__visual:not(.is-photo) .mso-hero__img.is-active{transform:translateX(calc(-50% + 50px)) !important;max-height:calc(100% + 10px) !important;max-width:110% !important}
}
@media (max-width:991px){.mso-hero__visual:not(.is-photo) .mso-hero__shape{border:0 !important;border-radius:0 !important;background:url(../../assets/img/gea-mark.svg) center/contain no-repeat !important}}
/* Hero: larger GEA mark (fully visible behind her); Free 1:1 badge on the right, mid-height */
@media (min-width:992px){
  .mso-hero__visual:not(.is-photo) .mso-hero__shape{width:640px !important;height:640px !important;bottom:20px !important;left:calc(50% + 40px) !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--3{left:auto !important;right:-24px !important;top:auto !important;bottom:230px !important}
}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__shape{width:540px !important;height:540px !important;bottom:60px !important}}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__shape{width:440px !important;height:440px !important;left:calc(50% - 150px) !important;top:20px !important;bottom:auto !important}}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__shape{width:520px !important;height:520px !important;left:calc(50% - 60px) !important;top:10px !important}}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__shape{width:570px !important;height:570px !important;left:calc(50% - 10px) !important;top:0 !important}}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__chip--3{bottom:140px !important}}
/* Hero v7: globe-and-orbit graphic behind her (replaces the GEA mark) */
.mso-hero__visual:not(.is-photo) .mso-hero__shape{background:url(../../assets/img/hero-orbit.svg) center/contain no-repeat !important}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__shape{width:580px !important;height:650px !important;left:calc(50% + 22px) !important;top:auto !important;bottom:0 !important}}
/* Hero (Oct 2026): the original block graphic behind the cut-out; no arch or logo. */
.mso-hero__visual:not(.is-photo) .mso-hero__shape{display:none !important}
.mso-hero__visual:not(.is-photo) .mso-hero__blocks{display:block !important;opacity:.3}
.mso-hero__visual:not(.is-photo) .mso-hero__blocks rect{display:inline !important}
/* Hero (Oct 2026): nothing behind the cut-out, no blocks, shape or gradient (requested by client). */
.mso-hero__visual:not(.is-photo) .mso-hero__blocks,.mso-hero__visual:not(.is-photo) .mso-hero__shape{display:none !important}
@media (min-width:992px){.mso-hero__visual:not(.is-photo) .mso-hero__img,.mso-hero__visual:not(.is-photo) .mso-hero__img.is-active{max-height:calc(100% + 50px) !important}}

/* ===== Responsive pass (Oct 2026): phones 320–430px, tablets 600–991px ===== */
html,body{overflow-x:clip}
@media (max-width:991px){
  /* Journey: one column, rail on the left, photo on top of each card */
  .ab3-tl__line{left:9px !important;margin-left:0 !important}
  .ab3-tl__item,.ab3-tl__item:nth-child(odd of .ab3-tl__item),.ab3-tl__item:nth-child(even of .ab3-tl__item){display:grid !important;grid-template-columns:20px minmax(0,1fr) !important;column-gap:16px !important;row-gap:0 !important;align-items:start !important;padding-bottom:28px !important}
  .ab3-tl__item::before,.ab3-tl__item::after{display:none !important}
  .ab3-tl__item .ab3-tl__dot{grid-column:1 !important;grid-row:1 !important;align-self:start !important;margin-top:18px !important}
  .ab3-tl__item .ab3-tl__art,.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__art,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__art{display:block !important;grid-column:2 !important;grid-row:1 !important;position:relative !important;min-height:0 !important;margin:0 !important;align-self:start !important}
  .ab3-tl__item .ab3-tl__art img,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__art img{position:static !important;width:100% !important;max-width:none !important;height:auto !important;min-height:0 !important;max-height:none !important;aspect-ratio:16/9 !important;object-fit:cover;border-radius:14px 14px 0 0 !important;margin:0 !important;filter:none !important}
  .ab3-tl__item .ab3-tl__box,.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__box,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__box{grid-column:2 !important;grid-row:2 !important;height:auto !important;min-height:0 !important;overflow:visible !important;padding:18px 18px 20px !important;border-radius:0 0 14px 14px !important;border-top:0 !important}
  .ab3-tl__when{font-size:26px !important}
  .ab3-tl__title{font-size:17px !important;margin:6px 0 10px !important}
  .ab3-tl__box li,.ab3-tl__box p{font-size:14.5px !important}
}
@media (min-width:600px) and (max-width:991px){
  .ab3-tl{max-width:640px !important}
}
@media (max-width:991px){
  .ab3-glance__grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .ab3-glance__tile,.ab3-glance__intro{min-width:0 !important}
  .ab3-people{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .ab3-person{min-width:0}
  .ab3-person__photo{width:min(100%,170px) !important}
  .ab3-geo2__map{overflow:hidden}
  .ab3-fban{padding-top:0 !important}
}
@media (min-width:600px) and (max-width:991px){
  .ab3-glance__grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
  .ab3-glance__intro{grid-column:1/-1 !important}
  .ab3-people{grid-template-columns:repeat(4,minmax(0,1fr)) !important;column-gap:16px !important}
}
@media (max-width:400px){
  .ab3-glance__tile{padding:18px 16px !important}
  .ab3-glance__tile b{font-size:26px !important}
  .ab3-person__name{font-size:15px !important}
  .ab3-person__role{font-size:12.5px !important}
  .mso-dock{padding-left:8px !important;padding-right:8px !important}
  .mso-dock__cta{margin-right:6px !important;padding:0 12px !important;font-size:13px !important;flex:1 1 auto;justify-content:center;min-width:0}
  .mso-dock__wa{padding:0 12px !important;flex:0 0 auto}
}
@media (max-width:350px){.mso-dock__wa-label{display:none !important}.mso-dock__wa{width:48px !important;padding:0 !important}}
/* Homepage hero on phones and tablets: full photo, badges tidy at the edges */
@media (max-width:991px){
  .mso-hero__visual:not(.is-photo){position:relative !important;width:auto !important;max-width:100% !important;justify-self:stretch !important;align-self:stretch !important;margin-left:0 !important;margin-right:20px !important;left:auto !important;right:auto !important;height:clamp(380px,105vw,560px) !important;min-height:0 !important;margin-top:24px !important;overflow:hidden !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__img,.mso-hero__visual:not(.is-photo) .mso-hero__img.is-active{position:absolute !important;left:50% !important;bottom:0 !important;top:auto !important;transform:translateX(-50%) !important;height:100% !important;width:auto !important;max-height:100% !important;max-width:none !important;object-fit:contain}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip{display:flex !important;position:absolute !important;transform:none !important;padding:8px 10px !important;gap:8px !important;max-width:62%}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--1{left:8px !important;right:auto !important;top:2% !important;bottom:auto !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--2{right:8px !important;left:auto !important;top:auto !important;bottom:26% !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--3{left:8px !important;right:auto !important;bottom:14px !important;top:auto !important}
  .mso-hero__chip b,.mso-hero__chip strong{font-size:13px !important;line-height:1.2 !important}
  .mso-hero__chip small,.mso-hero__chip em{font-size:11px !important;line-height:1.3 !important}
  .mso-hero__chip svg,.mso-hero__chip .mso-icon{width:16px !important;height:16px !important}
  .mso-hero__chip > span:first-child{width:30px !important;height:30px !important;flex:0 0 30px !important}
}
@media (max-width:400px){
  .mso-hero .mso-btn,.mso-hero__copy a[class*="btn"]{padding:14px 20px !important;font-size:15px !important;white-space:nowrap}
  .mso-hero__chip small,.mso-hero__chip em{display:none !important}
}
@media (min-width:600px) and (max-width:991px){
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--1{left:12% !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--2{right:12% !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--3{left:14% !important}
}
@media (min-width:992px) and (max-width:1199px){
  .mso-usp3__panel{padding-left:32px !important;padding-right:32px !important;gap:20px !important}
  .mso-usp3__list dd{font-size:24px !important}
  .mso-usp3__list dt{font-size:12.5px !important}
  .mso-usp3__list>div{padding-left:16px !important;padding-right:16px !important;min-width:0}
}
/* Footer: tablets get a 2×2 grid, phones get padded accordions (nothing touches the screen edge) */
@media (min-width:768px) and (max-width:991px){
  footer .footer_links.d-md-flex{row-gap:32px;text-align:left}
  footer .footer_links.d-md-flex>.col-md-3{flex:0 0 50% !important;max-width:50% !important;padding-left:20px !important;padding-right:20px !important}
  footer .mso-foot-contact__list a{word-break:break-word;overflow-wrap:anywhere}
}
@media (max-width:767px){
  footer>.container{padding-left:20px !important;padding-right:20px !important}
  footer .footer_links.d-md-none .accordion-button{padding:16px 4px !important;font-size:15px !important}
  footer .footer_links.d-md-none .accordion-body{padding:4px 4px 16px !important;text-align:left}
  footer .footer_links.d-md-none .accordion-body a{display:inline-block;padding:6px 0;overflow-wrap:anywhere}
  footer .bottom-social-links{text-align:left}
  footer .bottom-social-links p{overflow-wrap:anywhere}
}
@media (max-width:767px){
  footer .footer_links.d-md-none,footer .bottom-social-links{margin-left:0 !important;margin-right:0 !important;padding-left:12px !important;padding-right:12px !important}
  footer .bottom-social-links>[class*="col"]{padding-left:0 !important;padding-right:0 !important}
  footer .bottom-social-links .d-flex{justify-content:flex-start !important;padding-left:0 !important;padding-right:0 !important}
}
/* Bottom contact bar: slides away on phones when the footer is on screen */
.mso-dock{transition:transform .3s ease,opacity .3s ease}
@media (max-width:767px){.mso-dock.is-hidden{transform:translateY(110%);opacity:0;pointer-events:none}}
/* No blank strip under the footer: the bottom bar hides at the footer, so the page needs no extra space for it */
@media (max-width:767px){body{padding-bottom:0 !important}}
/* Room under the copyright line so it never sits on the screen edge (tablets, phones with a home bar) */
footer{padding-bottom:calc(28px + env(safe-area-inset-bottom)) !important}
@media (max-width:767px){footer .bottom-social-links{padding-bottom:0 !important}}
/* Instagram cards on phones: smaller header text, no overlap with the Instagram icon, one-line footer */
@media (max-width:767px){
  .mso-reels .mso-reel,.mso-reels.is-embed .mso-reel{width:200px}
  .mso-reel__head{height:48px !important;gap:8px !important;padding:0 10px !important}
  .mso-reel__avatar{flex:0 0 26px;width:26px;height:26px}
  .mso-reel__who{flex:1 1 auto;min-width:0}
  .mso-reel__who b,.mso-reel__who small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mso-reel__who b{font-size:12.5px !important}
  .mso-reel__who small{font-size:10.5px !important}
  .mso-reel__head .mso-reel__ig{flex:0 0 auto;margin-left:4px !important;font-size:16px !important}
  .mso-reel__foot{height:44px !important;padding:0 12px !important;font-size:12.5px !important;white-space:nowrap}
}
/* Leadership on phones: every name gets the same two-line slot, so names and roles line up across the row */
@media (max-width:599px){
  .ab3-people{align-items:start}
  .ab3-person__name{display:flex !important;align-items:center;justify-content:center;min-height:2.6em;line-height:1.3 !important;font-size:15px !important}
  .ab3-person__role{display:block;margin-top:6px !important;line-height:1.45 !important}
}
/* Journey on phones/tablets: full-width cards; the timeline runs down the centre, visible in the gaps between cards,
   with each year's diamond sitting on the top edge of its card */
@media (max-width:991px){
  .ab3-tl__line{left:50% !important;margin-left:-1px !important;z-index:0}
  .ab3-tl__item,.ab3-tl__item:nth-child(odd of .ab3-tl__item),.ab3-tl__item:nth-child(even of .ab3-tl__item){grid-template-columns:minmax(0,1fr) !important;column-gap:0 !important;padding-bottom:48px !important;position:relative;z-index:1}
  .ab3-tl__item:last-child{padding-bottom:0 !important}
  .ab3-tl__item .ab3-tl__art,.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__art,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__art{grid-column:1 !important}
  .ab3-tl__item .ab3-tl__box,.ab3-tl__item:nth-child(odd of .ab3-tl__item) .ab3-tl__box,.ab3-tl__item:nth-child(even of .ab3-tl__item) .ab3-tl__box{grid-column:1 !important}
  .ab3-tl__item .ab3-tl__dot{position:absolute !important;left:50% !important;top:0 !important;margin:0 !important;z-index:3;transform:translate(-50%,-50%) rotate(45deg) !important;background:#fff}
  .ab3-tl__item.is-on .ab3-tl__dot{transform:translate(-50%,-50%) rotate(45deg) scale(1.15) !important}
}
/* Hero on tablets (768–991px, e.g. iPad portrait, Surface Pro): same side-by-side layout as desktop, scaled down */
@media (min-width:768px) and (max-width:991px){
  .mso-hero__panel{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;align-items:end !important;gap:8px !important;padding:44px 0 0 32px !important;min-height:0 !important}
  .mso-hero__copy{align-self:center;padding-bottom:44px !important}
  .mso-hero__title{font-size:clamp(32px,4.4vw,40px) !important}
  .mso-hero__text{font-size:16px !important}
  .mso-hero__visual:not(.is-photo){margin:0 !important;height:clamp(400px,52vw,480px) !important;align-self:end !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--1{left:0 !important;top:6% !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--2{right:10px !important;bottom:34% !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--3{left:0 !important;bottom:16px !important}
}
@media (min-width:768px) and (max-width:991px){.mso-hero__visual:not(.is-photo){overflow:visible !important}.mso-hero__visual:not(.is-photo) .mso-hero__img,.mso-hero__visual:not(.is-photo) .mso-hero__img.is-active{left:56% !important}}
/* MD quote: name on its own line, role underneath (all screen sizes) */
.ab3-mdq figcaption b{display:block;margin-bottom:4px}
.ab3-mdq figcaption span{display:block}
/* Map on tablets: country labels collide at this size, so show only the Hong Kong HQ label; others appear on tap/hover */
@media (max-width:991px){.ab3-pin.has-label:not(.is-hq):not(.is-india) em{opacity:0 !important}.ab3-pin.has-label:not(.is-hq):not(.is-india):hover em,.ab3-pin.has-label:not(.is-hq):not(.is-india):focus em{opacity:1 !important;z-index:5}}
/* Small laptops and big tablets in landscape (992–1199px, e.g. iPad Pro 13"): one-line menu, less empty space at the top of the hero */
@media (min-width:992px) and (max-width:1199px){
  .navbar .navbar-brand img{max-width:120px;height:auto}
  .navbar .navbar-nav .nav-link{white-space:nowrap;font-size:12px !important;padding-left:6px !important;padding-right:6px !important;letter-spacing:0 !important}
  .navbar .navbar-nav .login_btn{padding:8px 12px !important}
  .mso-hero__panel{padding-top:36px !important;min-height:0 !important}
  .mso-hero__copy{padding-bottom:36px}
}
@media (min-width:992px) and (max-width:1199px){.navbar>.container{max-width:100% !important;padding-left:16px !important;padding-right:16px !important}.navbar .navbar-nav .nav-link{font-size:11.5px !important;padding-left:5px !important;padding-right:5px !important}.navbar .mso-global .nav-link{padding-right:0 !important}}
@media (max-width:767px){
  /* Footer bottom: social icons first, GEA logo underneath */
  footer .bottom-social-links{display:flex !important;flex-direction:column}
  footer .bottom-social-links>.col-md-6:first-child{order:2;margin-top:18px}
  footer .bottom-social-links>.col-md-6:last-child{order:1}
  footer .bottom-social-links .d-flex.mt-3{margin-top:0 !important}
  /* Homepage hero: button no louder than the headline */
  .mso-hero__copy .mso-btn,.mso-hero__copy a[class*="btn"]{padding:12px 20px !important;font-size:15px !important;min-height:0 !important}
  /* About banner headline: three lines on phones */
  .ab3-fban__title{max-width:none !important;font-size:clamp(19px,6.2vw,30px) !important;line-height:1.15 !important;letter-spacing:-.02em}
}
@media (max-width:767px){footer .bottom-social-links .mso-foot-gea{order:2 !important;margin-top:18px !important}footer .bottom-social-links>.col-md-6:last-child{order:1 !important}footer .bottom-social-links>.col-md-6:first-child>*:not(.mso-foot-gea){order:3 !important}footer .bottom-social-links .mso-foot-follow{margin-right:12px !important}footer .bottom-social-links .d-flex.mt-3{justify-content:flex-start !important}footer .footer_links.d-md-none .accordion-body .mso-foot-offices a{display:inline-flex;padding:6px 12px !important}}
@media (max-width:767px){footer .bottom-social-links{align-items:stretch !important}footer .bottom-social-links>.col-md-6:last-child{width:100% !important}footer .bottom-social-links .col-12.d-flex{justify-content:flex-start !important;padding:0 !important}}
/* Phones: Contact us is always open (like desktop), not a collapsible accordion */
@media (max-width:767px){footer #collapseFour{display:block !important;height:auto !important;visibility:visible !important}footer [data-bs-target="#collapseFour"]{pointer-events:none}footer [data-bs-target="#collapseFour"]::after{display:none !important}}
/* Phones: GEA logo centred, its line of text underneath */
@media (max-width:767px){footer .bottom-social-links .mso-foot-gea{flex-direction:column !important;align-items:center !important;justify-content:center !important;text-align:center !important;gap:8px !important;margin-top:24px !important}}
/* Phones: whole footer bottom area centred, with more space between the social icons and the GEA logo */
@media (max-width:767px){footer .bottom-social-links .col-12.d-flex{justify-content:center !important}footer .bottom-social-links .mso-foot-gea{margin-top:32px !important}}
@media (max-width:767px){footer .bottom-social-links>.col-md-6:last-child>div.col-12{justify-content:center !important}footer .bottom-social-links>.col-md-6:first-child>p.mso-foot-gea{margin:32px 0 0 !important}}
@media (max-width:767px){footer .bottom-social-links>.col-md-6:first-child>p.mso-foot-gea{margin-top:18px !important}}
/* Phones: GEA logo first, then Follow us (centred) with slightly larger icons */
@media (max-width:767px){footer .bottom-social-links>.col-md-6:first-child>p.mso-foot-gea{order:1 !important;margin:0 !important}footer .bottom-social-links>.col-md-6:last-child{order:2 !important;margin-top:18px !important}footer .mso-foot-social a{width:42px !important;height:42px !important;font-size:19px !important}footer .mso-foot-social a .mso-icon,footer .mso-foot-social a svg{width:19px !important;height:19px !important}}
/* ===== Homepage hero + "Why students choose MSO" on phones (≤767px only) ===== */
@media (max-width:767px){
  .mso-hero__title{font-size:clamp(34px,10.4vw,42px) !important;line-height:1.08 !important}
  .mso-hero__eyebrow{font-size:11px !important;padding:6px 12px !important;line-height:1.35 !important}
  .mso-hero__text{text-wrap:balance}
  /* full photo, no side crop, centred */
  .mso-hero__visual:not(.is-photo){height:auto !important;margin-right:0 !important;margin-left:0 !important;width:100% !important;aspect-ratio:1000/1073}
  .mso-hero__visual:not(.is-photo) .mso-hero__img,.mso-hero__visual:not(.is-photo) .mso-hero__img.is-active{left:0 !important;right:0 !important;transform:none !important;width:100% !important;height:auto !important;max-width:100% !important;max-height:none !important;margin:0 auto !important}
  /* USP card: title on one line, stats as 2 + 1 */
  .mso-usp3__panel{padding:24px 18px !important}
  .mso-usp3__title{white-space:nowrap;font-size:clamp(19px,5.9vw,24px) !important;margin-bottom:16px !important}
  .mso-usp3__list{display:grid !important;grid-template-columns:1fr 1fr !important;gap:16px 12px !important}
  .mso-usp3__list>div{padding:0 !important;border:0 !important;min-width:0;text-align:center}
  .mso-usp3__list>div:nth-child(3){grid-column:1/-1}
  .mso-usp3__list dd{font-size:22px !important;margin:0 0 2px !important}
  .mso-usp3__list dt{font-size:12.5px !important}
}
@media (max-width:767px){.mso-hero__eyebrow,.mso-hero__eyebrow *{font-size:10.5px !important;letter-spacing:0 !important}.mso-hero__eyebrow{white-space:nowrap}.mso-hero__text{text-wrap:wrap !important;max-width:16.4em !important;font-size:16px !important}}
@media (max-width:767px){.mso-usp3 .mso-usp3__panel{grid-template-columns:minmax(0,1fr) !important}.mso-usp3 h2.mso-usp3__title{font-size:clamp(18px,5.6vw,24px) !important;white-space:nowrap;text-align:center}}
@media (max-width:767px){.mso-usp3 .mso-usp3__lead h2.mso-usp3__title{font-size:clamp(18px,5.6vw,24px) !important;white-space:nowrap;text-align:center}}
/* Phones (client review): headline in 3 lines, badges moved, "A Legacy Built Since 2004" paragraph justified */
@media (max-width:767px){
  .mso-hero__title{font-size:clamp(28px,8.9vw,36px) !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--1{top:-4px !important}
  .mso-hero__visual:not(.is-photo) .mso-hero__chip--2{bottom:auto !important;top:50% !important}
  .mso-intro p{text-align:justify;hyphens:none}
}
@media (max-width:767px){.mso-hero__visual:not(.is-photo){overflow:visible !important}.mso-hero__visual:not(.is-photo) .mso-hero__chip--1{top:-34px !important}}
/* About banner on phones: student centred in the photo, bigger headline (still 3 lines), quote justified */
@media (max-width:767px){
  .ab3-fban__photo{height:360px !important;object-position:98% 20% !important}
  .ab3-fban__title{font-size:clamp(21px,6.9vw,32px) !important}
}
@media (max-width:767px){.mso-intro>.container,.mso-intro .container{padding-left:24px !important;padding-right:24px !important}.mso-hero__visual:not(.is-photo) .mso-hero__chip--1{top:-20px !important}.mso-hero__visual:not(.is-photo) .mso-hero__chip--2{top:54% !important}}
/* Phones (client review): tighter hero spacing, story paragraph justified, smaller bottom-bar buttons */
@media (max-width:767px){
  .mso-hero__eyebrow{margin-bottom:14px !important}
  .mso-hero__title{margin-bottom:10px !important}
  .mso-hero__text{margin-bottom:18px !important}
  .ab3-story__inner .ab3-story__text,
  .ab3-story__text{font-size:15.5px !important;line-height:1.65 !important;text-align:left !important;letter-spacing:normal !important;word-spacing:normal !important;hyphens:none !important}
  .ab3-geo2{padding:20px 8px 24px !important;overflow:visible !important}
  .ab3-geo2__head{margin-bottom:18px !important}
  .ab3-geo2__map{position:relative;overflow:visible !important;width:100% !important;max-width:none !important;padding:44px 0 10px !important;margin:8px 0 0 !important}
  .ab3-geo2__stage{position:relative;width:100% !important;min-width:0 !important}
  .ab3-geo2__stage>img,.ab3-geo2__map>img{display:block;width:100%;height:auto}
  
  /* Hong Kong callout: right-angle elbow leader line (matching infographic style) */
  .ab3-pin.is-hq::after{content:"";position:absolute;left:50%;bottom:50%;width:14px;height:28px;border-bottom:1.5px solid #f08000;border-right:1.5px solid #f08000;pointer-events:none;z-index:5}
  .ab3-pin.is-hq em{opacity:1 !important;pointer-events:auto !important;position:absolute !important;right:calc(100% - 20px) !important;bottom:calc(50% + 28px) !important;left:auto !important;top:auto !important;transform:none !important;background:#f08000 !important;color:#110053 !important;font-weight:700 !important;font-size:11px !important;padding:3px 8px !important;border-radius:5px !important;white-space:nowrap !important;box-shadow:0 3px 10px rgba(240,128,0,0.35) !important;z-index:6 !important}

  /* India callout: right-angle elbow leader line extending left and up */
  .ab3-pin.is-india::after{content:"";position:absolute;right:50%;bottom:50%;width:18px;height:28px;border-bottom:1.5px solid #110053;border-left:1.5px solid #110053;pointer-events:none;z-index:5}
  .ab3-pin.is-india em{opacity:1 !important;pointer-events:auto !important;position:absolute !important;right:calc(50% + 18px) !important;bottom:calc(50% + 28px) !important;left:auto !important;top:auto !important;transform:none !important;background:#110053 !important;color:#fff !important;border:1px solid rgba(255,255,255,0.4) !important;font-weight:700 !important;font-size:11px !important;padding:3px 8px !important;border-radius:5px !important;white-space:nowrap !important;box-shadow:0 3px 10px rgba(17,0,83,0.3) !important;z-index:6 !important}
  .mso-dock{padding-top:8px !important;padding-bottom:calc(8px + env(safe-area-inset-bottom)) !important}
  .mso-dock a{height:40px !important;font-size:13px !important}
  .mso-dock a svg,.mso-dock a .mso-icon{width:17px !important;height:17px !important}
}
/* Desktop (client review): stat labels no longer run into the dividers; less empty space between universities and services */
@media (min-width:992px){
  .mso-usp3__list>div{padding-left:26px !important;padding-right:26px !important}
  .mso-usp3__list dt{font-size:13px !important;line-height:1.35 !important}
  .uni-partners{padding-bottom:40px !important}
  .mso-svc.mso-svc2{padding-top:40px !important}
}
/* About banner: MSO tagline (short) above Freeman's message */
.ab3-fban__eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px !important;color:#f08000 !important;font-size:13px !important;font-weight:700 !important;letter-spacing:.12em;text-transform:uppercase}
.ab3-fban__eyebrow::before{content:"";width:22px;height:2px;background:#f08000}
.ab3-fban__title{font-size:clamp(34px,4vw,56px) !important;line-height:1.08 !important;margin-bottom:28px !important}
@media (max-width:767px){.ab3-fban__title{font-size:clamp(30px,9vw,38px) !important;margin-bottom:20px !important}.ab3-fban__eyebrow{font-size:12px !important;margin-bottom:10px !important}}
/* ===== About banner v5: quote-led, signed off with MSO's own mark and tagline ===== */
.ab3-qban__h1{position:absolute !important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ab3-qban__figure{position:relative;margin:0;max-width:30ch}
.ab3-qban__mark{display:block;height:.62em;margin:0 0 6px -4px;color:#f08000;font-size:clamp(96px,8vw,128px);line-height:1;font-weight:800}
.ab3-qban__quote{margin:0}
.ab3-qban__quote p{margin:0;color:#fff;font-size:clamp(26px,2.5vw,38px);line-height:1.22;font-weight:700;letter-spacing:-.015em}
.ab3-qban__by{display:flex;align-items:center;gap:14px;margin-top:26px}
.ab3-qban__by img{flex:none;width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid #f08000}
.ab3-qban__by span{display:flex;flex-direction:column;gap:2px}
.ab3-qban__by b{color:#fff;font-size:16px;font-weight:700}
.ab3-qban__by small{color:rgba(255,255,255,.7);font-size:14px}
.ab3-qban__brand{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:36px 0 0 !important;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);max-width:52ch}
.ab3-qban__mso{display:inline-grid;place-items:center;height:34px;padding:0 12px 2px;border-radius:999px;background:#f08000;color:#110053;font-size:20px;font-weight:800;letter-spacing:-.04em;line-height:1}
.ab3-qban__tag{color:#fff;font-size:15px;font-weight:700;letter-spacing:.02em}
.ab3-qban__gea{color:rgba(255,255,255,.6);font-size:13.5px}
.ab3-qban__gea::before{content:"";display:inline-block;width:4px;height:4px;margin:0 12px 3px 0;border-radius:50%;background:rgba(255,255,255,.4)}
@media (max-width:767px){
  .ab3-qban__figure{max-width:none}
  .ab3-qban__mark{font-size:84px}
  .ab3-qban__quote p{font-size:clamp(22px,6.6vw,28px)}
  .ab3-qban__by{margin-top:20px}.ab3-qban__by img{width:48px;height:48px}.ab3-qban__by small{font-size:13px}
  .ab3-qban__brand{margin-top:26px !important;padding-top:18px}
  .ab3-qban__gea{flex-basis:100%}.ab3-qban__gea::before{display:none}
}
@media (min-width:768px){.ab3-qban__figure{max-width:640px}.ab3-qban__quote p{font-size:clamp(24px,2.2vw,32px)}.ab3-qban__brand{max-width:640px;flex-wrap:nowrap}.ab3-qban__by small{white-space:nowrap}.ab3-qban__mark{font-size:96px}}
/* About banner: quote a touch smaller */
.ab3-qban__quote p{font-size:clamp(21px,1.9vw,27px) !important}.ab3-qban__mark{font-size:80px !important}
@media (max-width:767px){.ab3-qban__quote p{font-size:clamp(19px,5.6vw,23px) !important}.ab3-qban__mark{font-size:68px !important}}
/* About banner (desktop/tablet): longer navy fade into the photo */
@media (min-width:768px){.ab3-fban__photo{-webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.35) 25%,#000 55%) !important;mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.35) 25%,#000 55%) !important}}
@media (min-width:768px){.ab3-fban__photo{-webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.15) 20%,rgba(0,0,0,.5) 45%,#000 75%) !important;mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.15) 20%,rgba(0,0,0,.5) 45%,#000 75%) !important}}
/* ===== Header menu v3 (Laptops & Desktops: No line breaks, robust single row) ===== */
.navbar .mso-nav-container,
.navbar > .container {
  max-width: 1440px !important;
  width: 100% !important;
  padding-left: clamp(16px, 2.5vw, 36px) !important;
  padding-right: clamp(16px, 2.5vw, 36px) !important;
}

#menu-header-menu > li > .nav-link,
.navbar .navbar-nav .nav-link,
.navbar .login_btn,
.navbar .flag_dropdown .nav-link,
.navbar .current-lang {
  white-space: nowrap !important;
  word-break: keep-all !important;
}

@media (min-width:992px){
  .navbar{border-bottom:1px solid rgba(17,0,83,.08);position:relative;z-index:1050;padding-top:10px;padding-bottom:10px}
  .navbar>.container,.navbar .mso-nav-container{position:relative !important}
  .navbar .navbar-collapse{display:flex !important;align-items:center !important;justify-content:flex-end !important;flex-wrap:nowrap !important}
  #menu-header-menu{position:absolute !important;left:50% !important;top:50% !important;transform:translate(-50%,-50%) !important;display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;align-items:center !important;margin:0 !important;padding:0 !important;gap:2px !important;z-index:10}
  #menu-header-menu>li{position:relative;flex-shrink:0}
  #menu-header-menu>li>.nav-link{display:inline-flex !important;align-items:center;gap:4px;padding:8px 8px !important;font-size:13.5px !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important;color:#110053 !important;border-radius:8px;white-space:nowrap !important;transition:color .2s,background .2s}
  #menu-header-menu>li>.nav-link::after{content:"" !important;position:absolute !important;left:8px !important;right:8px !important;bottom:3px !important;top:auto !important;width:auto !important;height:2px !important;margin:0 !important;border-radius:2px;background:#f08000 !important;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
  #menu-header-menu>li:hover>.nav-link,#menu-header-menu>li>.nav-link:focus-visible{color:#f08000 !important}
  #menu-header-menu>li:hover>.nav-link::after,#menu-header-menu>li>.nav-link:focus-visible::after{transform:scaleX(1)}
  /* Active page link does NOT stay permanently orange or show bottom line */
  #menu-header-menu>li>.nav-link.active,
  #menu-header-menu>li.current-menu-item>.nav-link,
  #menu-header-menu>li.current_page_item>.nav-link{color:#110053 !important}
  #menu-header-menu>li>.nav-link.active::after,
  #menu-header-menu>li.current-menu-item>.nav-link::after,
  #menu-header-menu>li.current_page_item>.nav-link::after{transform:scaleX(0) !important}
  #menu-header-menu>li:hover>.nav-link.active,
  #menu-header-menu>li.current-menu-item:hover>.nav-link,
  #menu-header-menu>li.current_page_item:hover>.nav-link{color:#f08000 !important}
  #menu-header-menu>li:hover>.nav-link.active::after,
  #menu-header-menu>li.current-menu-item:hover>.nav-link::after,
  #menu-header-menu>li.current_page_item:hover>.nav-link::after{transform:scaleX(1) !important}
  #menu-header-menu>li.menu-item-has-children>.nav-link::before{display:none !important}
  /* dropdown card */
  #menu-header-menu .menu-item .sub-menu{display:flex !important;flex-direction:column !important;position:absolute;top:calc(100% + 10px);left:0;min-width:250px;width:max-content;max-width:440px;margin:0;padding:8px !important;list-style:none;background:#fff;border:1px solid rgba(17,0,83,.08);border-radius:14px !important;box-shadow:0 22px 48px -18px rgba(17,0,83,.35) !important;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility 0s .2s;z-index:1000}
  #menu-header-menu .menu-item .sub-menu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
  #menu-header-menu .menu-item:hover>.sub-menu,#menu-header-menu .menu-item:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none;transition:opacity .2s ease,transform .2s ease,visibility 0s}
  #menu-header-menu .sub-menu li{margin:0;width:100%}
  #menu-header-menu .sub-menu .nav-link{display:flex !important;align-items:center;padding:9px 14px !important;border-radius:9px;font-size:14px !important;font-weight:500 !important;text-transform:none !important;color:#2a2747 !important;white-space:nowrap !important;transition:background .15s,color .15s,padding .15s}
  #menu-header-menu .sub-menu .nav-link::after{display:none !important}
  #menu-header-menu .sub-menu .nav-link:hover,#menu-header-menu .sub-menu .nav-link:focus-visible{background:#fef1e3;color:#110053 !important;padding-left:18px !important}
  /* Destinations dropdown: 2 columns */
  #menu-header-menu > li.mso-dest-dropdown > .sub-menu,
  #menu-header-menu > li.menu-item-has-children > a[href*="destination" i] + .sub-menu,
  #menu-header-menu > li.menu-item-has-children:has(> a[href*="destination" i]) > .sub-menu,
  #menu-header-menu > li.menu-item-has-children:hover > .sub-menu:has(> li:nth-child(6)),
  #menu-header-menu .sub-menu.mso-2col {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(160px, 1fr)) !important;
    column-gap: 12px !important;
    row-gap: 2px !important;
    min-width: 360px !important;
    max-width: 520px !important;
    width: max-content !important;
  }
  #menu-header-menu > li.mso-dest-dropdown > .sub-menu .nav-link,
  #menu-header-menu > li.menu-item-has-children > a[href*="destination" i] + .sub-menu .nav-link,
  #menu-header-menu .sub-menu.mso-2col .nav-link {
    white-space: normal !important;
    padding: 8px 12px !important;
  }
  /* Contact button & actions */
  .navbar .mso-header-actions{display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;align-items:center !important;margin:0 0 0 auto !important;gap:8px !important;flex-shrink:0 !important;position:relative !important;z-index:20}
  .navbar .navbar-nav .nav-link.login_btn{border-radius:999px !important;padding:9px 18px !important;box-shadow:none !important;font-size:13px !important;font-weight:600 !important;text-transform:none !important;letter-spacing:0 !important;white-space:nowrap !important;transition:background .2s,transform .2s}
  .navbar .navbar-nav .nav-link.login_btn:hover{background:#110053 !important;transform:translateY(-1px)}
  .navbar .mso-global .nav-link{border-radius:999px !important;padding:7px 12px !important;font-size:13px !important;white-space:nowrap !important}
}
/* Laptop screens (992px to 1219px): small laptops / tablets landscape */
@media (min-width:992px) and (max-width:1219px){
  .navbar .navbar-brand img{width:130px !important;height:auto !important}
  #menu-header-menu{gap:1px !important}
  #menu-header-menu>li>.nav-link{font-size:12px !important;padding:6px 5px !important;gap:2px}
  #menu-header-menu>li>.nav-link::after{left:5px !important;right:5px !important;bottom:2px !important}
  .navbar .mso-header-actions{margin-left:auto !important;gap:6px !important}
  .navbar .navbar-nav .nav-link.login_btn{padding:7px 13px !important;font-size:11.5px !important}
  .navbar .mso-global .nav-link{padding:5px 9px !important;font-size:11.5px !important}
}
/* Medium laptop screens (1220px to 1399px): standard 1366px laptops & 1080p scaled */
@media (min-width:1220px) and (max-width:1399px){
  .navbar .navbar-brand img{width:150px !important;height:auto !important}
  #menu-header-menu{gap:2px !important}
  #menu-header-menu>li>.nav-link{font-size:13px !important;padding:7px 7px !important}
  #menu-header-menu>li>.nav-link::after{left:7px !important;right:7px !important}
  .navbar .mso-header-actions{margin-left:auto !important;gap:8px !important}
  .navbar .navbar-nav .nav-link.login_btn{padding:8px 16px !important;font-size:12.5px !important}
  .navbar .mso-global .nav-link{padding:6px 11px !important;font-size:12.5px !important}
}
/* Large desktop screens (>=1400px) */
@media (min-width:1400px){
  .navbar .navbar-brand img{width:170px !important}
  #menu-header-menu{gap:2px !important}
  #menu-header-menu>li>.nav-link{font-size:13.5px !important;padding:8px 9px !important}
  #menu-header-menu>li>.nav-link::after{left:9px !important;right:9px !important}
  .navbar .navbar-nav .nav-link.login_btn{padding:9px 20px !important;font-size:13px !important}
}
@media (min-width:992px){nav.navbar{position:relative;z-index:1050}}
/* Header menu on phones/tablets: tidy panel, tap-to-open sub-menus */
.mso-sub-toggle{display:none}
@media (max-width:991px){
  .navbar .navbar-collapse{margin:10px -4px 4px;padding:8px 14px 16px;background:#fff;border:1px solid rgba(17,0,83,.08);border-radius:16px;box-shadow:0 18px 40px -20px rgba(17,0,83,.35);max-height:calc(100vh - 90px);overflow-y:auto}
  #menu-header-menu{margin:0 !important;padding:0}
  #menu-header-menu>li{position:relative;border-bottom:1px solid rgba(17,0,83,.08)}
  #menu-header-menu>li>.nav-link{display:block !important;padding:14px 48px 14px 4px !important;font-size:16px !important;font-weight:600 !important;text-transform:none !important;color:#110053 !important}
  #menu-header-menu>li>.nav-link::after{display:none !important}
  .mso-sub-toggle{display:grid;place-items:center;position:absolute;right:0;top:6px;width:40px;height:40px;border:0;border-radius:10px;background:#fef1e3;cursor:pointer}
  .mso-sub-toggle::before{content:"";width:8px;height:8px;margin-top:-4px;border-right:2px solid #f08000;border-bottom:2px solid #f08000;transform:rotate(45deg);transition:transform .25s,margin .25s}
  li.is-open>.mso-sub-toggle::before{transform:rotate(-135deg);margin-top:4px}
  #menu-header-menu .menu-item .sub-menu{display:none !important;position:static !important;box-shadow:none !important;border:0 !important;padding:0 0 10px 4px !important;margin:0;background:none !important;min-width:0 !important;opacity:1 !important;visibility:visible !important;transform:none !important;list-style:none}
  #menu-header-menu li.is-open>.sub-menu{display:flex !important;flex-direction:column !important;gap:2px}
  #menu-header-menu li.is-open>a[href*="destination"]+.sub-menu{display:grid !important;grid-template-columns:1fr 1fr !important;gap:0 12px}
  #menu-header-menu .sub-menu .nav-link{display:block !important;padding:8px 0 !important;font-size:14.5px !important;font-weight:500 !important;text-transform:none !important;color:#55526d !important}
  #menu-header-menu .sub-menu .nav-link::after{display:none !important}
  .navbar .navbar-collapse>.navbar-nav:last-child{flex-direction:row;align-items:center;gap:10px;margin-top:14px}
  .navbar .navbar-nav .nav-link.login_btn{display:block;text-align:center;border-radius:999px !important;padding:12px 20px !important;font-size:15px !important;text-transform:none !important;box-shadow:none !important}
  .navbar .navbar-collapse>.navbar-nav:last-child>li:first-child{flex:1}
  .navbar .mso-global .nav-link{margin:0 !important;border-radius:999px !important;padding:10px 14px !important}
}
/* Phone menu v2: no arrow buttons; tap the item itself to open its sub-pages */
.mso-sub-overview{display:none}
@media (max-width:991px){
  .mso-sub-toggle{display:none !important}
  #menu-header-menu>li>.nav-link{padding-right:4px !important}
  #menu-header-menu>li.is-open>.nav-link{color:#f08000 !important}
  .mso-sub-overview{display:block}
  #menu-header-menu .mso-sub-overview{grid-column:1/-1}
  #menu-header-menu .mso-sub-overview .nav-link{color:#110053 !important;font-weight:600 !important}
}
/* Phone menu: closed panel takes no space (keeps the theme open/close animation) */
@media (max-width:991px){.navbar .navbar-collapse.collapse:not(.show){max-height:0 !important;margin:0 !important;padding-top:0 !important;padding-bottom:0 !important;border-width:0 !important;box-shadow:none !important}.navbar .navbar-collapse.collapse.show{max-height:calc(100vh - 90px) !important;opacity:1}}
/* ===== About banner v6: no photo. Dotted world map with routes from India to study destinations ===== */
.ab3-qban .ab3-fban__inner{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) !important;min-height:clamp(420px,34vw,520px) !important}
.ab3-qban__art{position:relative;align-self:stretch;min-height:320px}
.ab3-qban__map{position:absolute;inset:8% -6% 8% 0;background:rgba(255,255,255,.26);-webkit-mask:var(--map) center/contain no-repeat;mask:var(--map) center/contain no-repeat}
.ab3-qban__routes{position:absolute;inset:8% -6% 8% 0;width:106%;height:84%;overflow:visible}
.ab3-route{fill:none;stroke:#f08000;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:4 6;opacity:.9;animation:ab3Dash 1.2s linear infinite}
.ab3-dest{fill:#110053;stroke:#f08000;stroke-width:2.2}
.ab3-home{fill:#f08000;stroke:#fff;stroke-width:2}
.ab3-home-pulse{fill:#f08000;opacity:.35;transform-box:fill-box;transform-origin:center;animation:ab3Pulse 2.4s ease-out infinite}
.ab3-qban__ring{position:absolute;right:-120px;top:50%;width:520px;height:520px;margin-top:-260px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.02);pointer-events:none}
@keyframes ab3Dash{to{stroke-dashoffset:-20}}
@keyframes ab3Pulse{0%{transform:scale(1);opacity:.45}100%{transform:scale(3.2);opacity:0}}
@media (prefers-reduced-motion:reduce){.ab3-route,.ab3-home-pulse{animation:none}}
@media (max-width:991px){
  .ab3-qban .ab3-fban__inner{grid-template-columns:1fr !important}
  .ab3-qban__art{order:-1;min-height:0;height:clamp(190px,52vw,320px);margin:0 -12px}
  .ab3-qban__map,.ab3-qban__routes{inset:10% 2% 4% 2%;width:96%;height:86%}
  .ab3-qban__ring{display:none}
}
.ab3-qban .ab3-fban__inner{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) !important}.ab3-qban__map{background:rgba(255,255,255,.34) !important}
@media (min-width:992px){.ab3-qban__map,.ab3-qban__routes{inset:2% -16% 2% -10% !important;width:126% !important;height:96% !important}.ab3-qban__map{background:rgba(255,255,255,.42) !important}.ab3-route{stroke-width:2 !important}.ab3-dest{r:5}.ab3-qban__brand{max-width:none !important}.ab3-qban__gea{white-space:nowrap}}
.ab3-qban__tag{white-space:nowrap}@media (min-width:992px){.ab3-qban__brand{flex-wrap:wrap !important}}
@media (max-width:991px){.ab3-qban .ab3-fban__inner{grid-template-columns:minmax(0,1fr) !important;min-height:0 !important}.ab3-qban .ab3-fban__copy{padding:8px 0 40px !important}}
/* About banner map: brighter, larger, pulled left to fill the middle; shorter banner */
@media (min-width:992px){.ab3-qban .ab3-fban__inner{min-height:clamp(380px,28vw,440px) !important}.ab3-qban .ab3-fban__copy{padding-top:36px !important;padding-bottom:36px !important}.ab3-qban__map,.ab3-qban__routes{inset:0 -6% 0 -30% !important;width:136% !important;height:100% !important}.ab3-qban__map{background:rgba(255,255,255,.62) !important}.ab3-route{stroke-width:2.4 !important;opacity:1 !important}.ab3-dest{stroke-width:2.6 !important}}
.ab3-qban__map{background:#fff !important}
/* About banner: quote on three lines (wider copy column); MSO mark as plain wordmark, no pill */
@media (min-width:992px){.ab3-qban .ab3-fban__inner{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr) !important}.ab3-qban__figure{max-width:680px !important}.ab3-qban__map,.ab3-qban__routes{inset:0 -6% 0 -60% !important;width:166% !important}}
.ab3-qban__mso{height:auto !important;padding:0 14px 0 0 !important;border-radius:0 !important;background:none !important;color:#fff !important;font-size:26px !important;border-right:1px solid rgba(255,255,255,.25)}
@media (min-width:992px){.ab3-qban .ab3-fban__copy{max-width:none !important}}
@media (min-width:992px){.ab3-qban__map,.ab3-qban__routes{inset:4% -6% 4% -34% !important;width:140% !important;height:92% !important}.ab3-qban__brand{border-top-color:rgba(255,255,255,.14);max-width:640px !important}}
/* Quote: sentence per line on desktop, longer sentence balanced over two lines */
@media (min-width:992px){.ab3-qban__s{display:block;text-wrap:balance}}
/* Journey (desktop): connector lines run right into the diamond, no gap */
@media (min-width:992px){.ab3-tl__item::before{left:calc(50% - 36px) !important;width:30px !important}.ab3-tl__item::after{left:calc(50% + 6px) !important;width:30px !important}.ab3-tl__dot{position:relative;z-index:2}}
@media (min-width:992px){.ab3-tl__item:last-child::before,.ab3-tl__item:last-child::after{top:calc(50% - 19px) !important}}
/* ===== About banner v7: centred quote, shorter, soft line graphics behind (no MSO wordmark) ===== */
.ab3-qban.is-centered{position:relative;overflow:hidden}
.ab3-qban.is-centered .ab3-fban__inner{display:block !important;min-height:0 !important;padding:clamp(56px,6vw,84px) 20px !important;text-align:center;position:relative;z-index:1}
.ab3-qban.is-centered .ab3-fban__copy{max-width:780px !important;margin:0 auto;padding:0 !important}
.ab3-qban.is-centered .ab3-qban__figure{max-width:none !important;margin:0 auto}
.ab3-qban.is-centered .ab3-qban__mark{margin:0 auto 4px !important;height:.6em;font-size:76px !important}
.ab3-qban.is-centered .ab3-qban__quote p{font-size:clamp(22px,2.3vw,32px) !important;text-wrap:balance}
.ab3-qban.is-centered .ab3-qban__by{justify-content:center;margin-top:24px;text-align:left}
.ab3-qban__deco{position:absolute;inset:0;pointer-events:none;z-index:0}
.ab3-qban__deco i{position:absolute;display:block;border-radius:50%}
.ab3-qban__deco .d1{width:520px;height:520px;left:-300px;top:-60px;border:1.5px solid rgba(240,128,0,.55)}
.ab3-qban__deco .d2{width:640px;height:640px;right:-380px;top:-180px;border:1.5px solid rgba(240,128,0,.45)}
.ab3-qban__deco .d3{width:340px;height:340px;right:-140px;bottom:-230px;border:1px solid rgba(255,255,255,.22)}
.ab3-qban__deco .d4{width:260px;height:260px;left:-60px;bottom:-200px;background:radial-gradient(rgba(255,255,255,.22) 1.3px,transparent 1.6px) 0 0/18px 18px;border-radius:50%}
@media (max-width:767px){
  .ab3-qban.is-centered .ab3-fban__inner{padding:48px 20px !important}
  .ab3-qban.is-centered .ab3-qban__quote p{font-size:clamp(19px,5.4vw,23px) !important}
  .ab3-qban__deco .d1{width:300px;height:300px;left:-210px}.ab3-qban__deco .d2{width:340px;height:340px;right:-250px;top:-120px}.ab3-qban__deco .d3,.ab3-qban__deco .d4{display:none}
}
.ab3-qban.is-centered .ab3-fban__inner{padding:clamp(40px,4vw,56px) 20px !important}.ab3-qban.is-centered .ab3-qban__mark{font-size:64px !important}.ab3-qban.is-centered .ab3-qban__by{margin-top:18px}
/* About banner: meaningful backdrop. Faint dotted world map with routes from India to every study destination */
.ab3-qban__bgmap,.ab3-qban.is-centered .ab3-qban__routes{position:absolute;left:50%;top:50%;width:min(1180px,120%);height:auto;aspect-ratio:1000/377.8;transform:translate(-50%,-50%)}
.ab3-qban__bgmap{background:#fff;opacity:.55;-webkit-mask:var(--map) center/contain no-repeat;mask:var(--map) center/contain no-repeat}
.ab3-qban.is-centered .ab3-qban__routes{inset:auto;opacity:.75}
.ab3-qban.is-centered .ab3-route{stroke-width:1.6;opacity:.8}
.ab3-qban.is-centered::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 48% 60% at 50% 50%,rgba(17,0,83,.85),rgba(17,0,83,0) 75%)}
.ab3-qban__deco .d1{opacity:.7}.ab3-qban__deco .d2{opacity:.7}
@media (max-width:767px){.ab3-qban__bgmap,.ab3-qban.is-centered .ab3-qban__routes{width:190%}}
.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__routes,.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__bgmap{position:absolute !important;inset:auto !important;left:50% !important;top:50% !important;width:min(1180px,120%) !important;height:auto !important;aspect-ratio:1000/377.8;transform:translate(-50%,-50%) !important}@media (max-width:767px){.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__routes,.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__bgmap{width:190% !important}}
.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__routes{opacity:.38 !important}.ab3-qban.is-centered .ab3-qban__deco .ab3-route{stroke-width:1.2 !important}
/* About banner: map only (smaller), with location circles; no route lines */
.ab3-qban.is-centered .ab3-qban__deco .ab3-route{display:none !important}
.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__routes{opacity:.85 !important}
.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__routes,.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__bgmap{width:min(900px,94%) !important}
@media (max-width:767px){.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__routes,.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__bgmap{width:150% !important}}
.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__routes{opacity:.55 !important}
/* About banner: map only (no circles) + opening animation */
.ab3-qban.is-centered .ab3-qban__deco .ab3-qban__routes{display:none !important}
.ab3-qban.is-centered .ab3-qban__bgmap{animation:abqMap 1.4s cubic-bezier(.2,.7,.2,1) both}
.ab3-qban.is-centered .ab3-qban__deco .d1{animation:abqArcL 1.2s cubic-bezier(.2,.7,.2,1) .1s both}
.ab3-qban.is-centered .ab3-qban__deco .d2{animation:abqArcR 1.2s cubic-bezier(.2,.7,.2,1) .1s both}
.ab3-qban.is-centered .ab3-qban__mark{animation:abqPop .6s cubic-bezier(.2,.9,.3,1.4) .35s both}
.ab3-qban.is-centered .ab3-qban__s{animation:abqUp .7s cubic-bezier(.2,.7,.2,1) both}
.ab3-qban.is-centered .ab3-qban__s:nth-child(1){animation-delay:.5s}.ab3-qban.is-centered .ab3-qban__s:nth-child(2){animation-delay:.68s}
.ab3-qban.is-centered .ab3-qban__by{animation:abqUp .7s cubic-bezier(.2,.7,.2,1) .9s both}
@keyframes abqMap{from{opacity:0;transform:translate(-50%,-50%) scale(1.08)}to{opacity:.55;transform:translate(-50%,-50%) scale(1)}}
@keyframes abqArcL{from{opacity:0;transform:translateX(-60px)}}
@keyframes abqArcR{from{opacity:0;transform:translateX(60px)}}
@keyframes abqPop{from{opacity:0;transform:scale(.4)}}
@keyframes abqUp{from{opacity:0;transform:translateY(18px)}}
@media (min-width:992px){.ab3-qban.is-centered .ab3-qban__s{display:block}}
@media (prefers-reduced-motion:reduce){.ab3-qban.is-centered .ab3-qban__bgmap,.ab3-qban.is-centered .ab3-qban__deco i,.ab3-qban.is-centered .ab3-qban__mark,.ab3-qban.is-centered .ab3-qban__s,.ab3-qban.is-centered .ab3-qban__by{animation:none}}
/* ===== About: Our values (four cards above the journey) ===== */
.ab3-values{padding:clamp(56px,6vw,88px) 0;background:#fff}
.ab3-values__head{display:flex;flex-direction:column;align-items:center;text-align:center;margin:0 auto clamp(32px,4vw,52px)}
.ab3-values__head .mso-eyebrow{justify-content:center}
.ab3-values__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ab3-value{position:relative;display:flex;flex-direction:column;gap:12px;padding:30px 26px 28px;border-radius:18px;background:#f6f5fa;border:1px solid rgba(17,0,83,.06);overflow:hidden;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,background .3s}
.ab3-value::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:#f08000;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.ab3-value:hover{transform:translateY(-6px);background:#fff;box-shadow:0 24px 48px -26px rgba(17,0,83,.35)}
.ab3-value:hover::before{transform:scaleX(1)}
.ab3-value__no{position:absolute;right:22px;top:18px;font-size:44px;font-weight:800;line-height:1;color:rgba(17,0,83,.07);letter-spacing:-.04em}
.ab3-value__icon{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background:#110053;color:#fff;margin-bottom:6px;transition:background .3s}
.ab3-value__icon .mso-icon{width:28px;height:28px}
.ab3-value:hover .ab3-value__icon{background:#f08000}
.ab3-value__title{margin:0;color:#110053;font-size:19px;font-weight:700;line-height:1.3}
.ab3-value__text{margin:0;color:#55526d;font-size:15px;line-height:1.6}
.ab3-value:nth-child(2) .ab3-value__icon{background:#f08000}.ab3-value:nth-child(2):hover .ab3-value__icon{background:#110053}
.ab3-value:nth-child(4) .ab3-value__icon{background:#f08000}.ab3-value:nth-child(4):hover .ab3-value__icon{background:#110053}
@media (max-width:991px){.ab3-values__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media (max-width:575px){.ab3-values__grid{grid-template-columns:1fr;gap:12px}.ab3-value{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:14px;padding:20px 18px}.ab3-value__icon{width:46px;height:46px;margin:0}.ab3-value__icon .mso-icon{width:22px;height:22px}.ab3-value__title{flex:1;font-size:17px}.ab3-value__text{flex-basis:100%;font-size:14.5px}.ab3-value__no{font-size:34px;top:14px}}
.ab3-values{padding-top:clamp(16px,2vw,28px) !important}
/* ===== Values cards v2: navy cards, orange corner shape, outline numbers, dot texture ===== */
.ab3-value{min-height:260px;padding:30px 26px 26px !important;border:0 !important;border-radius:22px !important;background:#110053 !important;color:#fff;box-shadow:0 20px 44px -28px rgba(17,0,83,.6)}
.ab3-value::before{display:none !important}
.ab3-value::after{content:"";position:absolute;right:-46px;top:-46px;width:130px;height:130px;border-radius:50%;background:#f08000;opacity:.95;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.ab3-value:nth-child(2)::after{background:#fff;opacity:.12}
.ab3-value:nth-child(3)::after{border-radius:22px;transform:rotate(18deg);background:#f08000}
.ab3-value:nth-child(4)::after{background:none;border:14px solid #f08000;opacity:.9}
.ab3-value:hover{transform:translateY(-8px) !important;background:#1b0a6e !important;box-shadow:0 30px 60px -30px rgba(17,0,83,.75) !important}
.ab3-value:hover::after{transform:scale(1.25)}
.ab3-value:nth-child(3):hover::after{transform:rotate(30deg) scale(1.2)}
.ab3-value__no{right:auto !important;left:26px;top:auto !important;bottom:14px;font-size:72px !important;color:transparent !important;-webkit-text-stroke:1.5px rgba(255,255,255,.18);z-index:0}
.ab3-value__icon,.ab3-value:nth-child(2) .ab3-value__icon,.ab3-value:nth-child(4) .ab3-value__icon{position:relative;z-index:1;width:58px !important;height:58px !important;border-radius:50% !important;background:#fff !important;color:#110053 !important;box-shadow:0 0 0 8px rgba(255,255,255,.08)}
.ab3-value:hover .ab3-value__icon{background:#f08000 !important;color:#fff !important}
.ab3-value__title{position:relative;z-index:1;color:#fff !important;font-size:20px !important;margin-top:8px !important}
.ab3-value__text{position:relative;z-index:1;color:rgba(255,255,255,.75) !important}
.ab3-value__title::after{content:"";display:block;width:28px;height:3px;margin-top:12px;border-radius:2px;background:#f08000;transition:width .35s}
.ab3-value:hover .ab3-value__title::after{width:56px}
.ab3-values__grid{gap:22px !important}
@media (max-width:575px){.ab3-value{min-height:0}.ab3-value__no{font-size:52px !important;bottom:8px}.ab3-value::after{width:96px;height:96px;right:-36px;top:-36px}.ab3-value__title::after{display:none}}
.ab3-value__no{left:auto !important;right:22px !important;bottom:12px !important;font-size:58px !important}.ab3-value{padding-bottom:70px !important}@media (max-width:575px){.ab3-value{padding-bottom:56px !important}.ab3-value__no{font-size:44px !important}}
/* Values cards v3: brand colours only, clean numbers, calm hover */
.ab3-value:nth-child(2)::after{background:#f08000 !important;opacity:.95 !important}
.ab3-value__no{position:relative !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;order:-1;z-index:1;font-size:13px !important;font-weight:700 !important;letter-spacing:.18em;color:#f08000 !important;-webkit-text-stroke:0 !important;margin:0 0 2px}
.ab3-value{padding-bottom:28px !important;transition:transform .25s ease,box-shadow .25s ease !important}
.ab3-value:hover{transform:translateY(-4px) !important;background:#110053 !important}
.ab3-value:hover::after,.ab3-value:nth-child(3):hover::after{transform:none}
.ab3-value:nth-child(3):hover::after{transform:rotate(18deg)}
.ab3-value:hover .ab3-value__icon{background:#fff !important;color:#110053 !important}
.ab3-value:hover .ab3-value__title::after{width:28px}
@media (max-width:575px){.ab3-value__no{flex-basis:100%;font-size:12px !important}.ab3-value{padding-bottom:20px !important}}
/* Journey 2026: show the whole team photo (no side cropping) */
@media (min-width:992px){.ab3-tl__item.is-now .ab3-tl__art{align-self:center !important;min-height:0 !important}.ab3-tl__item.is-now .ab3-tl__art img,.ab3-tl__item.is-now:nth-child(even of .ab3-tl__item) .ab3-tl__art img{position:static !important;width:100% !important;height:auto !important;aspect-ratio:4/3 !important;object-fit:cover}}
@media (max-width:991px){.ab3-tl__item.is-now .ab3-tl__art img{aspect-ratio:4/3 !important}}
/* Journey: 2025 and 2026 photos shown larger (square), whole picture visible */
@media (min-width:992px){
  .ab3-tl__item:nth-last-child(2) .ab3-tl__art,.ab3-tl__item.is-now .ab3-tl__art{align-self:center !important;min-height:0 !important}
  .ab3-tl__item:nth-last-child(2) .ab3-tl__art img,.ab3-tl__item.is-now .ab3-tl__art img,.ab3-tl__item:nth-last-child(2):nth-child(even of .ab3-tl__item) .ab3-tl__art img,.ab3-tl__item.is-now:nth-child(even of .ab3-tl__item) .ab3-tl__art img{position:static !important;width:100% !important;height:auto !important;aspect-ratio:1/1 !important;object-fit:cover}
}
@media (max-width:991px){.ab3-tl__item:nth-last-child(2) .ab3-tl__art img,.ab3-tl__item.is-now .ab3-tl__art img{aspect-ratio:1/1 !important}}

/* ===== Values cards v4: minimal & bright. White cards, soft border, orange accents, no shapes ===== */
.ab3-value{min-height:0 !important;padding:28px 26px !important;background:#fff !important;color:#110053;border:1px solid rgba(17,0,83,.1) !important;border-radius:14px !important;box-shadow:0 1px 2px rgba(17,0,83,.04) !important;transition:border-color .2s ease,transform .2s ease !important}
.ab3-value::after,.ab3-value::before{display:none !important}
.ab3-value:hover{transform:translateY(-3px) !important;background:#fff !important;border-color:rgba(240,128,0,.6) !important;box-shadow:0 1px 2px rgba(17,0,83,.04) !important}
.ab3-value__icon,.ab3-value:nth-child(n) .ab3-value__icon,.ab3-value:hover .ab3-value__icon{width:52px !important;height:52px !important;border-radius:12px !important;background:#fef1e3 !important;color:#f08000 !important;box-shadow:none !important}
.ab3-value__title{color:#110053 !important;font-size:19px !important;margin-top:4px !important}
.ab3-value__title::after{display:none !important}
.ab3-value__text{color:#55526d !important}
.ab3-value__no{color:#f08000 !important}
.ab3-values{background:#fff}
/* Journey 2026: MSO India launch highlighted */
.ab3-tl__box li.is-key{margin:2px 0 6px;padding:12px 14px 12px 40px !important;border-radius:10px;background:#f08000;color:#110053 !important;font-weight:700}
.ab3-tl__box li.is-key::before{left:16px !important;top:50% !important;margin-top:-4px;background:#110053 !important}
/* Journey 2021: square photo so the Twin Towers and the group both show */
@media (min-width:992px){.ab3-tl__item:nth-child(10 of .ab3-tl__item) .ab3-tl__art{align-self:center !important;min-height:0 !important}.ab3-tl__item:nth-child(10 of .ab3-tl__item) .ab3-tl__art img{position:static !important;width:100% !important;height:auto !important;aspect-ratio:1/1 !important}}
@media (max-width:991px){.ab3-tl__item:nth-child(10 of .ab3-tl__item) .ab3-tl__art img{aspect-ratio:1/1 !important}}
/* 2026 MSO line: subtle highlight (orange bold text, no box) */
.ab3-tl__box li.is-key{margin:0 !important;padding:0 0 0 18px !important;background:none !important;border-radius:0;color:#f08000 !important;font-weight:700}
.ab3-tl__box li.is-key::before{left:0 !important;top:.62em !important;margin-top:0;background:#f08000 !important}

/* ===== Site-wide cleanup (Oct 2026): no red treatment, no flight animations ===== */
/* Remove flying-plane / flight SVG animations anywhere they remain */
.svg-animation,.svg-animation2,svg.free-consult-svg,.free-consult-svg,
[id^="planeMotion"],[id^="motionPath"],[id^="planeFlip"]{display:none !important}
/* Remove old red CTA abstract backgrounds (keeps the new navy form band untouched) */
.free_consultation:not(.mso-cta)::before,.free_consultation:not(.mso-cta)::after{content:none !important;background:none !important}

/* Required-field asterisks: brand orange, never red (ActiveCampaign + any form) */
.free_consultation ._required,._form ._required,._form_element ._required,form ._required,
.mso-cta ._required,._required,.required-asterisk,label .required{color:var(--mso-orange) !important}

/* ===== Global Presence map: four clearly distinct pin + legend styles (HQ / MSO India / Office / Team) ===== */
/* Pins on the map — each category reads differently using only brand navy + orange */
.ab3-geo2 .ab3-pin.is-hq{z-index:30}.ab3-geo2 .ab3-pin.is-india{z-index:20}
.ab3-geo2 .ab3-pin.is-india i{width:13px;height:13px;background:#110053;box-shadow:0 0 0 3px rgba(240,128,0,.35),0 0 0 7px rgba(240,128,0,.14)}
.ab3-geo2 .ab3-pin.is-team i{background:#fff;border:2px solid #f08000;box-shadow:0 0 0 1px rgba(240,128,0,.35)}
.ab3-pin.is-india.has-label em{background:#110053;color:#fff;border-color:#110053;font-weight:700}
/* Legend swatches — four distinct keys, MSO India highlighted like HQ */
.ab3-geo2 .ab3-map__legend{gap:12px 24px}
.ab3-geo2 .ab3-map__legend .is-hq{background:#f08000;border:0;opacity:1}
.ab3-geo2 .ab3-map__legend .is-india{background:#110053;border:0;opacity:1;box-shadow:0 0 0 2px #f08000}
.ab3-geo2 .ab3-map__legend .is-office{background:#110053;border:0;opacity:1}
.ab3-geo2 .ab3-map__legend .is-team{background:#fff;border:2px solid #f08000;opacity:1}

/* ===== Global Presence map on phones: pins only on the map, the four-key legend reads below (no overlapping labels) ===== */
@media (max-width:767px){
  .ab3-geo2{padding:22px 14px 22px !important}
  .ab3-geo2__map{padding:6px 0 0 !important;margin:14px 0 0 !important;overflow:hidden !important}
  .ab3-geo2 .ab3-pin em,.ab3-geo2 .ab3-pin.is-hq em,.ab3-geo2 .ab3-pin.is-india em{display:none !important}
  .ab3-geo2 .ab3-pin.is-hq::after,.ab3-geo2 .ab3-pin.is-india::after{display:none !important}
  .ab3-geo2 .ab3-pin.is-india i{width:11px;height:11px}
  .ab3-geo2 .ab3-map__legend{display:flex !important;flex-wrap:wrap;justify-content:center;gap:10px 16px !important;margin:16px 0 0 !important;padding:14px 0 0 !important;border-top:1px solid rgba(17,0,83,.08)}
  .ab3-geo2 .ab3-map__legend li{font-size:12.5px !important;gap:7px !important}
  .ab3-geo2 .ab3-map__legend i{width:10px !important;height:10px !important;flex:none}
}

/* ===== Awards & Recognitions page (page-templates/awards.php) ===== */
.aw-page{background:#fff;color:var(--mso-ink)}
.aw-hero{background:var(--mso-navy);color:#fff;padding:56px 0 64px;position:relative;overflow:hidden}
.aw-hero .container{position:relative;z-index:1}
.aw-crumbs{display:flex;gap:8px;font-size:13px;color:rgba(255,255,255,.65);margin:0 0 28px}
.aw-crumbs a{color:rgba(255,255,255,.85);text-decoration:none}.aw-crumbs a:hover{color:#fff;text-decoration:underline}
.aw-hero__eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mso-orange)}
.aw-hero__eyebrow .mso-icon{font-size:18px}
.aw-hero__title{font-size:clamp(30px,4.4vw,48px);line-height:1.12;font-weight:800;color:#fff;margin:0 0 16px;max-width:760px}
.aw-hero__text{font-size:17px;line-height:1.65;color:rgba(255,255,255,.82);max-width:680px;margin:0}
.aw-stats{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(255,255,255,.14)}
.aw-stats li{padding:22px 20px 0 0}
.aw-stats li+li{padding-left:24px;border-left:1px solid rgba(255,255,255,.14)}
.aw-stats b{display:block;font-size:clamp(28px,3.2vw,40px);font-weight:800;line-height:1;color:var(--mso-orange)}
.aw-stats span{display:block;margin-top:8px;font-size:14px;color:rgba(255,255,255,.75)}

.aw-list{padding:72px 0 40px}
.aw-list__head{text-align:center;max-width:680px;margin:0 auto 28px}
.aw-list__head p{color:var(--mso-muted);font-size:16px;line-height:1.6;margin:8px 0 0}
.aw-filter{position:sticky;top:76px;z-index:20;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:12px 0;margin:0 0 12px;background:rgba(255,255,255,.96);backdrop-filter:blur(6px)}
.aw-filter button{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:1px solid var(--mso-line);background:#fff;color:var(--mso-navy);font:600 14px/1 Montserrat,sans-serif;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.aw-filter button span{font-size:12px;font-weight:700;color:var(--mso-muted)}
.aw-filter button:hover{border-color:var(--mso-navy)}
.aw-filter button.is-on{background:var(--mso-navy);border-color:var(--mso-navy);color:#fff}
.aw-filter button.is-on span{color:var(--mso-orange)}
.aw-filter button:focus-visible{outline:2px solid var(--mso-orange);outline-offset:2px}
.aw-group{padding:28px 0 8px;scroll-margin-top:140px}
.aw-group[hidden]{display:none}
.aw-group__title{display:flex;align-items:baseline;gap:12px;font-size:22px;font-weight:800;color:var(--mso-navy);margin:0 0 18px;padding-bottom:12px;border-bottom:1px solid var(--mso-line)}
.aw-group__title span{font-size:13px;font-weight:600;color:var(--mso-muted)}
.aw-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.aw-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--mso-line);border-radius:14px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.aw-card:hover{border-color:rgba(17,0,83,.25);box-shadow:0 10px 24px rgba(17,0,83,.07)}
.aw-card__pic{display:block;aspect-ratio:4/3;background:var(--mso-tint);overflow:hidden}
.aw-card__pic img{width:100%;height:100%;object-fit:cover;display:block}
.aw-card__body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
.aw-card__icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:var(--mso-cream);color:var(--mso-orange);font-size:20px;margin-bottom:6px}
.aw-card.has-pic .aw-card__icon{display:none}
.aw-card__award{font-size:16px;line-height:1.35;font-weight:700;color:var(--mso-navy);margin:0}
.aw-card__by{font-size:14px;line-height:1.45;color:var(--mso-muted);margin:0}

.aw-quotes{padding:72px 0 80px;background:var(--mso-tint)}
.aw-quotes__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:12px}
.aw-quote{position:relative;margin:0;background:#fff;border:1px solid var(--mso-line);border-radius:18px;padding:30px 30px 26px;display:flex;flex-direction:column}
.aw-quote.is-lead{grid-row:span 2;background:var(--mso-navy);border-color:var(--mso-navy);color:#fff;padding:40px}
.aw-quote__mark{font-size:34px;color:var(--mso-orange);margin-bottom:10px}
.aw-quote blockquote{margin:0 0 22px;flex:1}
.aw-quote blockquote p{margin:0;font-size:16px;line-height:1.7;color:var(--mso-ink)}
.aw-quote.is-lead blockquote p{font-size:clamp(18px,1.8vw,22px);line-height:1.6;color:#fff;font-weight:500}
.aw-quote figcaption{display:flex;align-items:center;gap:12px;padding-top:18px;border-top:1px solid var(--mso-line)}
.aw-quote.is-lead figcaption{border-top-color:rgba(255,255,255,.18)}
.aw-quote__avatar{flex:none;width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--mso-cream);color:var(--mso-orange);font-weight:800;font-size:18px}
.aw-quote.is-lead .aw-quote__avatar{background:var(--mso-orange);color:#fff}
.aw-quote figcaption b{display:block;font-size:15px;color:var(--mso-navy)}
.aw-quote figcaption small{display:block;font-size:13px;line-height:1.45;color:var(--mso-muted)}
.aw-quote.is-lead figcaption b{color:#fff}.aw-quote.is-lead figcaption small{color:rgba(255,255,255,.75)}

@media (max-width:1199px){.aw-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:991px){.aw-grid{grid-template-columns:repeat(2,1fr)}.aw-quotes__grid{grid-template-columns:1fr}.aw-quote.is-lead{grid-row:auto}.aw-filter{top:64px}}
@media (max-width:767px){
  .aw-hero{padding:36px 0 44px}
  .aw-hero__text{font-size:15.5px}
  .aw-stats{grid-template-columns:repeat(2,1fr);margin-top:28px}
  .aw-stats li,.aw-stats li+li{padding:18px 12px 4px 0;border-left:0}
  .aw-stats li:nth-child(even){padding-left:16px;border-left:1px solid rgba(255,255,255,.14)}
  .aw-list{padding:48px 0 24px}
  .aw-filter{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px 8px;padding:10px 16px}
  .aw-filter::-webkit-scrollbar{display:none}
  .aw-filter button{flex:none;padding:8px 14px;font-size:13px}
  .aw-group__title{font-size:19px}
  .aw-grid{gap:12px}
  .aw-card__body{padding:14px 14px 16px}
  .aw-card__award{font-size:14.5px}.aw-card__by{font-size:13px}
  .aw-quotes{padding:48px 0 56px}
  .aw-quote,.aw-quote.is-lead{padding:24px 20px 20px}
}
@media (max-width:420px){.aw-grid{grid-template-columns:1fr}}
/* Awards page: compact uniform cards (photo as thumbnail, medal icon otherwise) */
.aw-grid{grid-template-columns:repeat(3,1fr);gap:14px}
.aw-card{flex-direction:row;align-items:center;gap:16px;padding:16px 18px;min-height:96px}
.aw-card__pic{flex:none;width:64px;height:64px;aspect-ratio:auto;border-radius:10px;border:1px solid var(--mso-line)}
.aw-card__body{padding:0;gap:4px}
.aw-card__icon{width:64px;height:64px;border-radius:10px;font-size:28px;margin:0;flex:none}
.aw-card:not(.has-pic) .aw-card__body{flex-direction:row;align-items:center;gap:16px}
.aw-card__text{display:flex;flex-direction:column;gap:4px}
.aw-filter{gap:6px}.aw-filter button{padding:8px 13px;font-size:13.5px}
@media (max-width:991px){.aw-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){.aw-grid{grid-template-columns:1fr;gap:10px}.aw-card{padding:12px 14px;min-height:0;gap:12px}.aw-card__pic,.aw-card__icon{width:52px;height:52px}.aw-card:not(.has-pic) .aw-card__body{gap:12px}}
.aw-filter{background:#fff;box-shadow:0 0 0 100vmax #fff;clip-path:inset(0 -100vmax)}
/* Awards page v2: the award photos lead (large, square, click to view full size) */
.aw-grid{grid-template-columns:repeat(3,1fr);gap:24px}
.aw-card{flex-direction:column;align-items:stretch;gap:0;padding:0;min-height:0;border-radius:16px}
.aw-card__pic{position:relative;display:block;width:100%;height:auto;aspect-ratio:1/1;padding:0;border:0;border-bottom:1px solid var(--mso-line);border-radius:0;background:var(--mso-tint);cursor:zoom-in;overflow:hidden}
.aw-card__pic img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--mso-ease)}
.aw-card:hover .aw-card__pic img{transform:scale(1.04)}
.aw-card__pic:focus-visible{outline:3px solid var(--mso-orange);outline-offset:-3px}
.aw-card__zoom{position:absolute;right:12px;bottom:12px;width:38px;height:38px;border-radius:50%;background:#fff;color:var(--mso-navy);display:inline-flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 4px 12px rgba(17,0,83,.18);opacity:0;transition:opacity .2s}
.aw-card:hover .aw-card__zoom,.aw-card__pic:focus-visible .aw-card__zoom{opacity:1}
.aw-card__body{padding:18px 20px 20px;gap:8px;flex-direction:column !important;align-items:flex-start !important}
.aw-card__award{font-size:17px;line-height:1.35}
.aw-card__by{display:flex;align-items:flex-start;gap:6px;font-size:14.5px;font-weight:600;color:var(--mso-muted)}
.aw-card__by .mso-icon{flex:none;font-size:16px;color:var(--mso-orange);margin-top:2px}
.aw-zoom{border:0;padding:0;border-radius:16px;max-width:min(92vw,960px);max-height:92vh;background:#fff;overflow:hidden}
.aw-zoom::backdrop{background:rgba(17,0,83,.82)}
.aw-zoom img{display:block;max-width:100%;max-height:calc(92vh - 60px);margin:0 auto;object-fit:contain}
.aw-zoom p{margin:0;padding:14px 56px 16px 18px;font-size:14.5px;font-weight:600;color:var(--mso-navy)}
.aw-zoom__close{position:absolute;right:10px;top:10px;width:40px;height:40px;border-radius:50%;border:0;background:#fff;color:var(--mso-navy);font-size:20px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.2)}
/* Testimonials with university logos */
.aw-quote.is-lead{background:#fff;border-color:var(--mso-line);border-top:4px solid var(--mso-orange);color:var(--mso-ink)}
.aw-quote.is-lead blockquote p{color:var(--mso-navy)}
.aw-quote.is-lead figcaption{border-top-color:var(--mso-line)}
.aw-quote.is-lead figcaption b{color:var(--mso-navy)}.aw-quote.is-lead figcaption small{color:var(--mso-muted)}
.aw-quote figcaption{justify-content:space-between;gap:20px}
.aw-quote__who{min-width:0}
.aw-quote__logo{flex:none;height:52px;width:auto;max-width:170px;object-fit:contain}
.aw-quote.is-lead .aw-quote__logo{height:60px;max-width:200px}
@media (max-width:991px){.aw-grid{grid-template-columns:repeat(2,1fr);gap:18px}}
@media (max-width:767px){.aw-grid{gap:14px}.aw-card__body{padding:14px 14px 16px}.aw-card__award{font-size:15px}.aw-card__by{font-size:13px}.aw-card__zoom{opacity:1;width:32px;height:32px;font-size:15px}
  .aw-quote figcaption{flex-direction:column-reverse;align-items:flex-start;gap:12px}.aw-quote__logo,.aw-quote.is-lead .aw-quote__logo{height:42px}}
@media (max-width:520px){.aw-grid{grid-template-columns:1fr}}
/* Awards page: show each photo in full (no cropping) on a soft panel */
.aw-card__pic{aspect-ratio:4/3;background:#f4f2fb}
.aw-card__pic img{object-fit:contain}
.aw-card__award+.aw-card__award{padding-top:8px;border-top:1px dashed var(--mso-line)}
/* Awards page v3: filter stays in place; each testimonial is its own full-width card (logo panel + quote) */
.aw-filter{position:static;box-shadow:none;clip-path:none;backdrop-filter:none}
.aw-quotes__grid{grid-template-columns:1fr;gap:28px;max-width:1080px;margin:16px auto 0}
.aw-quote,.aw-quote.is-lead{grid-row:auto;display:grid;grid-template-columns:300px 1fr;grid-template-areas:"side mark" "side quote";column-gap:0;padding:0;border:1px solid var(--mso-line);border-top:1px solid var(--mso-line);border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 14px 34px rgba(17,0,83,.06)}
.aw-quote figcaption{grid-area:side;flex-direction:column-reverse;justify-content:center;align-items:center;text-align:center;gap:18px;padding:36px 28px;border-top:0 !important;border-right:1px solid var(--mso-line);background:#faf9fd}
.aw-quote__logo,.aw-quote.is-lead .aw-quote__logo{height:74px;max-width:220px}
.aw-quote figcaption b,.aw-quote.is-lead figcaption b{font-size:17px;color:var(--mso-navy)}
.aw-quote figcaption small,.aw-quote.is-lead figcaption small{font-size:13.5px;margin-top:4px;color:var(--mso-muted)}
.aw-quote__who{padding-top:16px;border-top:2px solid var(--mso-orange)}
.aw-quote__mark{grid-area:mark;margin:36px 44px 0;font-size:40px}
.aw-quote blockquote{grid-area:quote;margin:10px 44px 40px;align-self:start}
.aw-quote blockquote p,.aw-quote.is-lead blockquote p{font-size:clamp(17px,1.6vw,20px);line-height:1.65;font-weight:500;color:var(--mso-navy)}
.aw-quote:nth-child(even){grid-template-columns:1fr 300px;grid-template-areas:"mark side" "quote side"}
.aw-quote:nth-child(even) figcaption{border-right:0;border-left:1px solid var(--mso-line)}
@media (max-width:767px){
  .aw-quote,.aw-quote.is-lead,.aw-quote:nth-child(even){grid-template-columns:1fr;grid-template-areas:"side" "mark" "quote"}
  .aw-quote figcaption,.aw-quote:nth-child(even) figcaption{flex-direction:column-reverse;align-items:center;padding:24px 20px;border:0;border-bottom:1px solid var(--mso-line)}
  .aw-quote__logo,.aw-quote.is-lead .aw-quote__logo{height:56px}
  .aw-quote__mark{margin:22px 22px 0;font-size:32px}.aw-quote blockquote{margin:6px 22px 26px}
  .aw-quote blockquote p,.aw-quote.is-lead blockquote p{font-size:16px}
}
.aw-quote figcaption{background:#fff}

/* ===== Events page (page-templates/events.php) ===== */
.evp-page{background:#fff}
.evp-points{list-style:none;padding:0;margin:28px 0 0;display:flex;flex-wrap:wrap;gap:10px 28px}
.evp-points li{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#fff}
.evp-points .mso-icon{font-size:20px;color:var(--mso-orange)}
.evp-list{padding:64px 0 48px}
.evp-list__head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 24px}
.evp-list__head .mso-h2{margin:0}
.evp-tabs{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:var(--mso-tint)}
.evp-tabs button{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:0;border-radius:999px;background:transparent;color:var(--mso-navy);font:600 14px/1 Montserrat,sans-serif;cursor:pointer}
.evp-tabs button span{font-size:12px;color:var(--mso-muted)}
.evp-tabs button.is-on{background:#fff;box-shadow:0 2px 8px rgba(17,0,83,.12)}
.evp-tabs button.is-on span{color:var(--mso-orange)}
.evp-tabs button:focus-visible{outline:2px solid var(--mso-orange);outline-offset:2px}
.evp-events{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:16px}
.evp-event{display:grid;grid-template-columns:88px 240px 1fr auto;align-items:center;gap:28px;padding:18px 28px 18px 18px;background:#fff;border:1px solid var(--mso-line);border-radius:18px;transition:border-color .2s,box-shadow .2s}
.evp-event[hidden]{display:none}
.evp-event:hover{border-color:rgba(17,0,83,.22);box-shadow:0 12px 28px rgba(17,0,83,.07)}
.evp-event__date{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 6px;border-radius:14px;background:var(--mso-navy);color:#fff;text-align:center;line-height:1}
.evp-event__date span{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mso-orange)}
.evp-event__date b{font-size:26px;font-weight:800;margin:6px 0 4px;white-space:nowrap}
.evp-event__date small{font-size:12px;color:rgba(255,255,255,.7)}
.evp-event__pic{display:block;aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:var(--mso-tint)}
.evp-event__pic img{width:100%;height:100%;object-fit:cover;display:block}
.evp-event__body{min-width:0}
.evp-event__tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--mso-cream);color:var(--mso-orange-dark);font-size:12px;font-weight:700;letter-spacing:.02em}
.evp-event__tag.is-online{background:var(--mso-tint);color:var(--mso-navy)}
.evp-event__tag .mso-icon{font-size:14px}
.evp-event__title{font-size:21px;font-weight:800;color:var(--mso-navy);margin:10px 0 6px;line-height:1.25}
.evp-event__meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 8px;font-size:14px;font-weight:600;color:var(--mso-muted)}
.evp-event__meta span{display:inline-flex;align-items:center;gap:6px}
.evp-event__meta .mso-icon{font-size:16px;color:var(--mso-orange)}
.evp-event__text{margin:0;font-size:15px;line-height:1.6;color:var(--mso-ink)}
.evp-event__btn{white-space:nowrap}
.evp-empty{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:48px 24px;border:1px dashed var(--mso-line);border-radius:18px}
.evp-empty>.mso-icon{font-size:36px;color:var(--mso-orange)}
.evp-empty p{margin:0;max-width:460px;color:var(--mso-muted)}
.evp-empty b{display:block;color:var(--mso-navy);font-size:18px;margin-bottom:4px}
.evp-help{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:28px 0 0;font-size:15px;color:var(--mso-muted)}
.evp-help .mso-icon{color:var(--mso-orange);font-size:18px}
.evp-help a{color:var(--mso-navy);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.evp-past{padding:8px 0 64px}
.evp-past__title{font-size:20px;font-weight:800;color:var(--mso-navy);margin:0 0 16px;padding-top:32px;border-top:1px solid var(--mso-line)}
.evp-past__grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.evp-past__grid li{padding:14px 18px;border-radius:12px;background:var(--mso-tint)}
.evp-past__grid b{display:block;font-size:15px;color:var(--mso-navy)}
.evp-past__grid span{font-size:13px;color:var(--mso-muted)}
@media (max-width:1199px){.evp-event{grid-template-columns:80px 200px 1fr;}.evp-event__cta{grid-column:3}}
@media (max-width:767px){
  .evp-list{padding:44px 0 36px}
  .evp-tabs{width:100%}.evp-tabs button{flex:1;justify-content:center;padding:9px 8px;font-size:13px}
  .evp-event{grid-template-columns:72px 1fr;gap:14px 16px;padding:14px}
  .evp-event__pic{grid-column:1/-1;grid-row:1;aspect-ratio:16/9}
  .evp-event__date{padding:10px 4px}.evp-event__date b{font-size:20px}
  .evp-event__body{grid-column:2}
  .evp-event__cta{grid-column:1/-1}.evp-event__btn{width:100%;justify-content:center}
  .evp-event__title{font-size:18px;margin-top:8px}
  .evp-past__grid{grid-template-columns:1fr}
}
.screen-reader-text{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Date tiles: "26 – 31" */
.mso-event__day b,.evp-event__date b{white-space:nowrap}
.evp-event{grid-template-columns:104px 240px 1fr auto}
.evp-event__date b{font-size:24px}
.evp-event__title a{color:inherit;text-decoration:none}.evp-event__title a:hover{color:var(--mso-orange-dark)}
@media (max-width:1199px){.evp-event{grid-template-columns:96px 200px 1fr}}
@media (max-width:767px){.evp-event{grid-template-columns:84px 1fr}.evp-event__date b{font-size:19px}}

/* ===== Single event page (single-mso_event.php) ===== */
.evs-hero{padding-bottom:56px}
.evs-hero__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.evs-hero .evp-event__tag{background:rgba(255,255,255,.12);color:#fff}
.evs-hero .evp-event__tag .mso-icon{color:var(--mso-orange)}
.evs-hero__title{margin-top:14px}
.evs-facts{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-wrap:wrap;gap:10px 24px}
.evs-facts li{display:inline-flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#fff}
.evs-facts .mso-icon{font-size:20px;color:var(--mso-orange)}
.evs-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:28px}
.evs-register{background:var(--mso-orange) !important;border-color:var(--mso-orange) !important;color:#fff !important;font-size:16px;padding:14px 28px}
.evs-register:hover{background:#d97300 !important}
.evs-cal{display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.evs-cal:hover{color:var(--mso-orange)}
.evs-ended{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;margin:24px 0 0;padding:12px 16px;border-radius:12px;background:rgba(255,255,255,.1);color:#fff;font-weight:600}
.evs-ended a{color:var(--mso-orange)}
.evs-hero__pic{margin:0;border-radius:20px;overflow:hidden;aspect-ratio:3/2;background:rgba(255,255,255,.08)}
.evs-hero__pic img{width:100%;height:100%;object-fit:cover;display:block}
.evs-body{padding:64px 0 32px}
.evs-body__grid{display:grid;grid-template-columns:1fr 360px;gap:56px;align-items:start}
.evs-h2{font-size:26px;font-weight:800;color:var(--mso-navy);margin:0 0 16px}
.evs-main .evs-h2+*{margin-bottom:36px}
.evs-about p{font-size:16.5px;line-height:1.75;color:var(--mso-ink);margin:0 0 14px}
.evs-points{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.evs-points li{display:flex;align-items:flex-start;gap:10px;padding:16px;border:1px solid var(--mso-line);border-radius:14px;font-size:15px;font-weight:600;line-height:1.45;color:var(--mso-navy)}
.evs-points .mso-icon{flex:none;font-size:20px;color:var(--mso-orange)}
.evs-card{position:sticky;top:100px;padding:26px;border:1px solid var(--mso-line);border-radius:18px;background:#fff;box-shadow:0 16px 40px rgba(17,0,83,.08)}
.evs-card__title{font-size:18px;font-weight:800;color:var(--mso-navy);margin:0 0 8px}
.evs-card dl{margin:0 0 20px}
.evs-card dl>div{padding:12px 0;border-bottom:1px solid var(--mso-line)}
.evs-card dt{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mso-muted);margin-bottom:4px}
.evs-card dd{margin:0;font-size:15px;font-weight:600;line-height:1.5;color:var(--mso-navy)}
.evs-map{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:14px;color:var(--mso-orange-dark)}
.evs-card__btn{width:100%;justify-content:center;background:var(--mso-orange) !important;border-color:var(--mso-orange) !important;color:#fff !important}
.evs-card__note{margin:12px 0 0;text-align:center;font-size:14px;color:var(--mso-muted)}
.evs-card__note a{color:var(--mso-navy);font-weight:700}
.evs-more{padding:32px 0 64px}
.evs-more__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-top:32px;border-top:1px solid var(--mso-line);margin-bottom:8px}
.evs-more__head a{display:inline-flex;align-items:center;gap:4px;font-weight:700;color:var(--mso-navy)}
.evs-more__grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.evs-mini a{display:block;height:100%;border:1px solid var(--mso-line);border-radius:16px;overflow:hidden;text-decoration:none;transition:box-shadow .2s,border-color .2s}
.evs-mini a:hover{border-color:rgba(17,0,83,.22);box-shadow:0 12px 28px rgba(17,0,83,.07)}
.evs-mini__pic{display:block;aspect-ratio:16/9;background:var(--mso-tint)}
.evs-mini__pic img{width:100%;height:100%;object-fit:cover;display:block}
.evs-mini__body{display:block;padding:14px 16px 16px}
.evs-mini__body small{display:block;font-size:13px;font-weight:600;color:var(--mso-orange-dark);margin-bottom:4px}
.evs-mini__body b{font-size:17px;color:var(--mso-navy)}
@media (max-width:991px){.evs-hero__grid,.evs-body__grid{grid-template-columns:1fr;gap:28px}.evs-hero__pic{order:-1}.evs-card{position:static}.evs-more__grid{grid-template-columns:1fr 1fr}}
@media (max-width:767px){.evs-points{grid-template-columns:1fr}.evs-more__grid{grid-template-columns:1fr}.evs-register{width:100%;justify-content:center}.evs-body{padding:44px 0 24px}.evs-h2{font-size:22px}}
/* Events hero: smaller student photo on the right, its left edge faded into the navy */
.evp-hero.has-photo{position:relative;overflow:hidden;display:flex;align-items:center;min-height:440px}
.evp-hero.has-photo::before{content:"";position:absolute;top:0;right:0;bottom:0;left:auto;width:60%;z-index:0;background:linear-gradient(90deg,rgba(17,0,83,.72),rgba(17,0,83,.4)),var(--evp-hero-img);background-size:cover,cover;background-position:center,50% 20%;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 72%);mask-image:linear-gradient(90deg,transparent 0,#000 72%)}
.evp-hero.has-photo .container{position:relative;z-index:1;width:100%}
.evp-hero.has-photo .aw-hero__text,.evp-hero.has-photo .aw-hero__title{max-width:620px}
@media (max-width:900px){.evp-hero.has-photo{min-height:0}.evp-hero.has-photo::before{width:100%;background-position:center,78% 16%;-webkit-mask-image:none;mask-image:none}.evp-hero.has-photo::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#110053 0,rgba(17,0,83,.9) 48%,rgba(17,0,83,.74) 100%)}.evp-hero.has-photo .container{z-index:1}}
@media (max-width:600px){.evp-hero.has-photo::after{background:rgba(17,0,83,.86)}}
/* Single event hero: minimal event graphic on the right (works for every event, no photo) */
.evs-hero.has-art{position:relative;overflow:hidden}
.evs-hero.has-art::before{content:"";position:absolute;inset:0;z-index:0;background:var(--mso-navy)}
.evs-hero__art{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:118%;max-width:none;height:auto;z-index:0;pointer-events:none}
.evs-hero.has-art .container{position:relative;z-index:1}
.evs-hero__inner{max-width:640px}
@media (max-width:991px){.evs-hero__art{width:160%;opacity:.7}.evs-hero__inner{max-width:none}}
@media (max-width:600px){.evs-hero__art{opacity:.55}}
.evs-hero__inner .evs-hero__title,.evs-hero__inner .aw-hero__text{max-width:none}

/* ===== Awards: compact partner reviews (Oct 2026) ===== */
.aw-quotes{padding:56px 0 64px}
.aw-reviews{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:18px}
.aw-review{flex:1 1 300px;max-width:calc((100% - 36px)/3)}
.aw-review figure{height:100%;margin:0;display:flex;flex-direction:column;gap:14px;padding:22px 22px 20px;background:#fff;border:1px solid var(--mso-line);border-radius:16px;transition:box-shadow .2s,transform .2s}
.aw-review figure:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(17,0,83,.08)}
.aw-review__top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px}
.aw-review__logo{height:36px;width:auto;max-width:150px;object-fit:contain}
.aw-review__org{font-size:14px;color:var(--mso-navy)}
.aw-review__mark{font:700 54px/0.6 Georgia,serif;color:var(--mso-orange);opacity:.85;height:24px}
.aw-review blockquote{margin:0;flex:1}
.aw-review blockquote p{margin:0;font-size:15.5px;line-height:1.6;font-style:italic;color:var(--mso-navy)}
.aw-review figcaption{font-size:14px;font-weight:700;color:var(--mso-navy)}
.aw-review figcaption span{display:block;margin-top:2px;font-size:12.5px;font-weight:500;color:var(--mso-muted)}
@media (max-width:991px){.aw-review{max-width:calc((100% - 18px)/2)}}
@media (max-width:640px){.aw-quotes{padding:44px 0 48px}.aw-reviews{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:4px 16px 8px}.aw-review{flex:0 0 82%;max-width:none;scroll-snap-align:start}}

.aw-quotes .aw-list__head{text-align:left;max-width:none;margin:0 0 28px}


/* Events: "Registration opening soon" — faded, non-clickable (Oct 2026) */
.evp-event__btn.is-soon,.mso-event__btn.is-soon{background:transparent;color:var(--mso-muted)!important;border:1px dashed var(--mso-line);box-shadow:none;cursor:default;opacity:.8;pointer-events:none;font-weight:600}
.evp-event__btn.is-soon .mso-icon,.mso-event__btn.is-soon .mso-icon{color:var(--mso-muted)}
.evp-event.is-soon{opacity:.82}
.evp-event.is-soon .evp-event__pic img{filter:grayscale(.35)}

/* ===== Awards testimonials: featured quote + list (Version B, Oct 2026) ===== */
.aw-quotes .aw-rb{display:grid;grid-template-columns:5fr 6fr;gap:20px;margin-top:8px}
.aw-rb__feature{position:relative;background:var(--mso-navy);color:#fff;border-radius:20px;padding:36px;min-height:0}
.aw-rb__slide{display:none;height:100%;flex-direction:column}
.aw-rb__slide.is-on{display:flex;animation:awrbIn .5s ease}
@keyframes awrbIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.aw-rb__mark{font:700 64px/.5 Georgia,serif;color:var(--mso-orange);height:30px}
.aw-rb__head{margin:10px 0 16px;flex:none;font-size:clamp(24px,2.6vw,32px);line-height:1.3;font-weight:800;color:var(--mso-orange)}
.aw-rb__quote{margin:0;font-size:clamp(19px,1.9vw,23px);line-height:1.6;color:rgba(255,255,255,.9)}
.aw-rb__foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:22px;border-top:1px solid rgba(255,255,255,.18);font-weight:700;font-size:15px}
.aw-rb__foot span{display:block;font-weight:500;font-size:13px;color:rgba(255,255,255,.7)}
.aw-rb__foot img{height:44px;max-width:150px;object-fit:contain;background:#fff;border-radius:8px;padding:6px 10px}
.aw-rb__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.aw-rb__list button{width:100%;display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center;text-align:left;padding:11px 16px;background:#fff;border:1px solid var(--mso-line);border-radius:14px;cursor:pointer;font:inherit;transition:.2s}
.aw-rb__list img{max-height:38px;max-width:96px;object-fit:contain}
.aw-rb__li-org{font-size:13px;color:var(--mso-navy)}
.aw-rb__list .aw-rb__li-quote{margin:0;font-size:14px;line-height:1.5;color:var(--mso-ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.aw-rb__list span>b{display:block;margin-top:4px;font-size:12.5px;color:var(--mso-navy);text-align:right}
.aw-rb__list button.is-on{border-color:var(--mso-orange);background:#fff8ee;box-shadow:inset 4px 0 0 var(--mso-orange)}
.aw-rb__list button:hover{border-color:var(--mso-navy)}
.aw-rb__list button:focus-visible{outline:2px solid var(--mso-orange);outline-offset:2px}
@media (max-width:860px){.aw-quotes .aw-rb{grid-template-columns:1fr}.aw-rb__feature{min-height:0}}

/* Home events: "View all events" button under the grid (Oct 2026) */
.mso-events__all{display:flex;justify-content:center;margin-top:36px}
.mso-event__btn.is-soon{white-space:nowrap}
/* Looping rows (v3.91): student voices and reels scroll like the awards strip — drift, drag, swipe */
.mso-voices__viewport.is-loop,.mso-reels.is-loop{overflow-x:auto !important;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab;user-select:none;-webkit-user-select:none}
.mso-voices__viewport.is-loop::-webkit-scrollbar,.mso-reels.is-loop::-webkit-scrollbar{display:none}
.is-loop.is-drag{cursor:grabbing}
.is-loop .mso-voices__list,.is-loop .mso-reels__track{animation:none !important;transform:none !important}
.mso-voices__viewport.is-loop .mso-voices__list,.mso-reels.is-loop .mso-reels__track{padding-left:0;padding-right:0}
.is-loop img{-webkit-user-drag:none}
.mso-award__link{display:flex;flex-direction:column;gap:6px;flex:1;color:inherit;text-decoration:none}
.mso-award__link:hover b{color:var(--mso-orange-dark)}
.mso-award__link:focus-visible .mso-award__pic{outline:2px solid var(--mso-orange);outline-offset:2px}
.mso-award__pic img{transition:transform .35s ease}.mso-award:hover .mso-award__pic img{transform:scale(1.05)}.mso-award:has(.mso-award__link):hover{border-color:var(--mso-orange)}
/* Event page optional sections (v3.91): schedule, speakers, universities attending */
.evs-agenda{list-style:none;margin:0 0 8px;padding:0;border:1px solid var(--mso-line);border-radius:16px;overflow:hidden;background:#fff}
.evs-agenda li{display:grid;grid-template-columns:210px minmax(0,1fr);gap:16px;padding:18px 22px;border-top:1px solid var(--mso-line)}
.evs-agenda li:first-child{border-top:0}
.evs-agenda__time{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--mso-orange-dark);white-space:nowrap}
.evs-agenda__time svg{width:16px;height:16px;flex:none}
.evs-agenda b{display:block;font-size:16px;color:var(--mso-navy)}
.evs-agenda p{margin:4px 0 0;font-size:14px;line-height:1.5;color:var(--mso-muted)}
.evs-speakers{padding:8px 0 56px}
.evs-speakers__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}
.evs-speaker{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:28px 18px;border:1px solid var(--mso-line);border-radius:16px;background:#fff}
.evs-speaker__pic{display:grid;place-items:center;width:104px;height:104px;margin-bottom:12px;border-radius:50%;overflow:hidden;background:#fef1e3;color:var(--mso-orange-dark);font-size:28px;font-weight:700}
.evs-speaker__pic img{width:100%;height:100%;object-fit:cover}
.evs-speaker b{font-size:16px;color:var(--mso-navy)}
.evs-speaker small{font-size:14px;line-height:1.4;color:var(--mso-muted)}
.evs-speaker .evs-speaker__org{font-weight:600;color:var(--mso-navy)}
.evs-unis{padding:8px 0 56px}
.evs-unis__viewport{overflow-x:auto;scrollbar-width:none;cursor:grab;user-select:none}
.evs-unis__viewport::-webkit-scrollbar{display:none}
.evs-unis__track{list-style:none;margin:0;padding:0;display:flex;gap:16px;width:max-content}
.evs-uni{display:grid;place-items:center;flex:0 0 190px;height:100px;padding:16px 22px;border:1px solid var(--mso-line);border-radius:14px;background:#fff}
.evs-uni img{max-width:100%;max-height:64px;object-fit:contain;-webkit-user-drag:none}
.evs-uni span{font-size:14px;font-weight:600;text-align:center;color:var(--mso-navy)}
@media (max-width:767px){.evs-agenda li{grid-template-columns:1fr;gap:6px;padding:16px}.evs-speakers__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.evs-speaker{padding:20px 10px}.evs-speaker__pic{width:80px;height:80px}.evs-uni{flex-basis:150px;height:84px}}
/* Speakers v2 (v3.91): photo beside name, role and a short bio; two per row, one speaker spans wider */
.evs-speakers__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.evs-speakers__grid.is-single{grid-template-columns:minmax(0,780px)}
.evs-speaker{flex-direction:row;align-items:flex-start;text-align:left;gap:24px;padding:28px;border-radius:20px}
.evs-speaker__pic{flex:none;width:132px;height:132px;margin:0;border-radius:16px;font-size:36px}
.evs-speaker__body{min-width:0}
.evs-speaker .evs-speaker__name{display:block;font-size:20px;line-height:1.3;color:var(--mso-navy)}
.evs-speaker__role{margin:6px 0 0;font-size:15px;line-height:1.45;color:var(--mso-muted)}
.evs-speaker__role .evs-speaker__org{font-weight:600;color:var(--mso-orange-dark)}
.evs-speaker__bio{margin:14px 0 0;padding-top:14px;border-top:1px solid var(--mso-line);font-size:15px;line-height:1.6;color:var(--mso-text,#3d3d4e)}
.evs-uni{flex-basis:240px;height:130px;padding:18px 26px}
.evs-uni img{max-height:92px}
@media (max-width:991px){.evs-speakers__grid{grid-template-columns:1fr}}
@media (max-width:575px){.evs-speaker{flex-direction:column;padding:22px}.evs-speaker__pic{width:96px;height:96px;font-size:28px}.evs-speakers__grid{grid-template-columns:1fr}.evs-uni{flex-basis:180px;height:104px}.evs-uni img{max-height:72px}}
.evs-uni{flex-basis:212px;height:110px;padding:9px 12px;border-radius:12px}
@media (max-width:575px){.evs-uni{flex-basis:162px;height:88px;padding:8px 10px}}
/* logo files carry their own white margin, so the image fills the box and the box stays tight */
.evs-uni{flex-basis:190px;height:92px;padding:6px 8px}
.evs-uni img{width:100%;height:100%;max-height:none;object-fit:contain}
@media (max-width:575px){.evs-uni{flex-basis:150px;height:74px;padding:5px 6px}}
/* logo strip: no vertical scrolling, and room so box borders aren't clipped */
.evs-unis__viewport{overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x pan-y}
.evs-unis__track{padding:4px 0}
.evs-unis__track{padding:14px 0}
.evs-unis__viewport{margin:-10px 0}
.evs-uni{display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}
.evs-uni img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
/* Event registration forms (e.g. ActiveCampaign form 53) have radio choices: show them as a neat row of pills */
.mso-cta ._form-fieldset{border:0;margin:0;padding:0;min-width:0}
.mso-cta ._form-fieldset legend._form-label{display:block;width:100%;margin:0 0 8px;padding:0;font-size:14px;font-weight:600;color:var(--mso-navy)}
.mso-cta ._form-fieldset{display:flex;flex-wrap:wrap;gap:10px}
.mso-cta ._form-fieldset legend{flex:0 0 100%}
.mso-cta ._row._checkbox-radio{position:relative;display:flex !important;align-items:center;gap:8px;width:auto !important;margin:0 !important;padding:10px 16px !important;border:1px solid var(--mso-line);border-radius:10px;background:#fff;cursor:pointer}
.mso-cta ._row._checkbox-radio input[type=radio]{appearance:auto;-webkit-appearance:radio;flex:none;width:18px !important;height:18px !important;min-height:0 !important;margin:0 !important;padding:0 !important;border:0 !important;box-shadow:none !important;accent-color:var(--mso-navy)}
.mso-cta ._row._checkbox-radio span,.mso-cta ._row._checkbox-radio label{margin:0 !important;padding:0 !important;font-size:15px;line-height:1.2;color:var(--mso-navy);cursor:pointer}
.mso-cta ._row._checkbox-radio:has(input:checked){border-color:var(--mso-navy);background:#f3f1fa}
.mso-cta ._form_element:has(._form-fieldset){grid-column:1/-1;width:100% !important;flex-basis:100% !important}
/* Event registration form: heading sits at the top beside the form (and follows it on scroll), a faint map fills the rest */
@media (min-width:992px){.mso-cta[data-btn] .mso-cta__grid{align-items:start}.mso-cta[data-btn] .mso-cta__head{position:sticky;top:130px}}
.mso-cta[data-btn] ._form-branding,.mso-cta[data-btn] ._form-thank-you + ._form-branding{display:none !important}
/* v3.99 fix: the form hides AC's default labels, but radio/checkbox OPTION labels (Delhi, Chandigarh, Virtual) must show */
.free_consultation ._checkbox-radio label,.free_consultation ._checkbox-radio span,
.mso-cta ._checkbox-radio label,.mso-cta ._checkbox-radio span{display:inline-block !important;width:auto !important;height:auto !important}
