/* BSA body addon only. No body, theme, header, footer or global Elementor overrides. */
.elementor .bsa-addon{--bsa-green:#0c6031;--bsa-blue:#064b70;--bsa-ink:#202124;--bsa-rule:#dce6df;--bsa-section-padding:52px;font-family:BSA Montserrat,Arial,sans-serif;font-size:15px;font-weight:400;line-height:1.65;color:var(--bsa-ink);background:#fff;min-width:0;isolation:isolate}
.bsa-addon *,.bsa-addon *::before,.bsa-addon *::after{box-sizing:border-box}
/* The existing child font sheet sets fonts directly on div/a/p/strong.
   Re-establish inheritance only inside this addon, leaving the shell intact. */
.elementor .bsa-addon :where(div,span,strong,h2,h3,h4,p,ul,li,a,time,button){font-family:inherit}
.elementor .bsa-addon :where(h2,h3,p,ul){color:inherit;margin:0;padding:0}
.elementor .bsa-addon a{color:inherit;text-decoration:none;font-family:inherit}
.elementor .bsa-addon a:hover{color:var(--bsa-green)}
.elementor .bsa-addon button{font-family:inherit;font-weight:600;line-height:1;border:1px solid var(--bsa-rule);padding:0;color:var(--bsa-blue);background:#fff;box-shadow:none;cursor:pointer}
.bsa-addon :where(a,button,[tabindex]):focus-visible{outline:2px solid var(--bsa-blue);outline-offset:4px}
.bsa-addon button:disabled{cursor:default;opacity:.4}
.bsa-addon img{display:block;max-width:100%;height:auto}
.bsa-addon .bsa-shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.bsa-addon :where(.bsa-program-menu-grid,.client-logo-grid){list-style:none}
.elementor .bsa-addon .bsa-unified-title{text-align:center;margin:0 auto 30px;max-width:850px}
.elementor .bsa-addon .section-title{font-size:clamp(30px,3vw,42px);line-height:1.2;font-weight:600;letter-spacing:-.025em;color:var(--bsa-blue)}
.elementor .bsa-addon .bsa-kicker{font-size:11px;font-weight:700;line-height:1.5;letter-spacing:.1em;color:var(--bsa-green);text-transform:uppercase;margin-bottom:10px}
.elementor .bsa-addon .bsa-title-note{font-size:14px;line-height:1.65;color:var(--bsa-ink);max-width:720px;margin:15px auto 0}
.bsa-page-heading{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:-1px}
.bsa-addon .bsa-track{--bsa-columns:4;display:flex;gap:24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;padding:0;margin:0}
.bsa-addon .bsa-track::-webkit-scrollbar{display:none}
.bsa-addon .bsa-track>*{flex:0 0 calc((100% - (var(--bsa-columns) - 1)*24px)/var(--bsa-columns));min-width:0;scroll-snap-align:start}
.bsa-addon .bsa-carousel-controls{display:flex;justify-content:center;gap:10px;margin-top:22px}
.elementor .bsa-addon .bsa-carousel-controls button{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-size:27px;transition:background-color 180ms cubic-bezier(.23,1,.32,1)}
.elementor .bsa-addon .bsa-carousel-controls button:hover:not(:disabled){background:var(--bsa-green);color:#fff;border-color:var(--bsa-green)}
.bsa-addon.bsa-banner-hero{padding:0}
.bsa-addon .bsa-hero-carousel{position:relative}
.bsa-addon .bsa-hero-carousel .bsa-track{gap:0;aspect-ratio:1672/941;--bsa-columns:1}
.bsa-addon .bsa-artwork-slide{height:100%;background:#fff}
.bsa-addon .bsa-hero-artwork{width:100%;height:100%;object-fit:contain}
.bsa-addon .bsa-hero-controls{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;border-radius:24px;padding:5px 10px;background:rgb(255 255 255 / 90%)}
.bsa-addon .bsa-hero-controls .bsa-carousel-controls{margin:0;gap:5px}
.elementor .bsa-addon .bsa-hero-controls .bsa-carousel-controls button{width:28px;height:28px;font-size:23px}
.bsa-addon .bsa-dots{display:flex;gap:8px}
.elementor .bsa-addon .bsa-dots button{width:9px;height:9px;border:0;border-radius:50%;background:#c7d5cd}
.elementor .bsa-addon .bsa-dots button[aria-current=true]{background:var(--bsa-green)}
.elementor .bsa-addon .bsa-pause{width:26px;height:26px;font-size:11px;background:transparent;border:0}
.bsa-addon.bsa-thirteen-features{padding:22px 0 26px}
.bsa-addon .invers-feature-wrapper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.bsa-addon .bsa-quick-link{display:flex;align-items:center;gap:16px;min-height:82px;padding:16px 22px;border:1px solid rgb(255 255 255 / 18%);border-radius:10px;background:var(--bsa-blue);color:#fff;box-shadow:0 10px 24px rgb(6 75 112 / 14%);transition:background-color 180ms cubic-bezier(.23,1,.32,1)}
.bsa-addon .bsa-quick-link:hover{background:var(--bsa-green)}
.bsa-addon .bsa-feature-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid rgb(255 255 255 / 24%);border-radius:50%;background:rgb(255 255 255 / 10%);font-size:24px;color:#fff}
.elementor .bsa-addon .card-title{color:#fff;font-size:17px;font-weight:700;line-height:1.4;letter-spacing:.015em}
.elementor .bsa-addon .bsa-quick-link-more{display:inline-block;margin-top:6px;color:#fff;font-size:13px;font-weight:600}
.bsa-addon.bsa-program-menu{padding:var(--bsa-section-padding) 0;border-block:1px solid var(--bsa-rule)}
.bsa-addon .bsa-program-menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:44px;row-gap:2px}
.bsa-addon .bsa-program-menu-item{display:flex;align-items:center;min-height:54px;gap:11px;padding:11px 0;border-bottom:1px solid #edf3f5;font-size:14px;font-weight:700;line-height:1.35}
.bsa-addon .bsa-program-menu-icon{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;color:var(--bsa-green);font-size:14px}
.bsa-addon.bsa-program-directory{padding:var(--bsa-section-padding) 0 28px}
.bsa-addon .bsa-expert-card{display:block;position:relative;overflow:hidden;background:#f3f5f4}
.bsa-addon .bsa-expert-photo{display:block;aspect-ratio:1.36/1;overflow:hidden}
.bsa-addon .bsa-expert-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;transition:transform 200ms cubic-bezier(.23,1,.32,1)}
.bsa-addon .bsa-expert-card:hover img{transform:scale(1.025)}
.bsa-addon .bsa-expert-name{display:flex;align-items:center;justify-content:center;min-height:76px;padding:14px 12px;background:var(--bsa-green);color:#fff;font-size:17px;font-weight:700;line-height:1.35;text-align:center}
.bsa-addon.bsa-program-directory .bsa-shell{max-width:1140px}
.bsa-addon .bsa-all-courses-carousel-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:1px solid var(--bsa-rule)}
.bsa-addon .bsa-all-courses-carousel-head>div:first-child{display:flex;align-items:center;gap:20px}
.bsa-addon .bsa-all-courses-eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.bsa-addon .bsa-all-courses-carousel-head strong{color:var(--bsa-green);font-size:17px;font-variant-numeric:tabular-nums}
.bsa-addon .bsa-all-courses-carousel-head strong span:last-child{color:var(--bsa-blue)}
.bsa-addon .bsa-all-courses-carousel-head .bsa-carousel-controls{margin:0}
.bsa-addon .bsa-all-courses-viewport{padding:20px 0 4px}
.bsa-addon .bsa-all-courses-footer{display:flex;align-items:center;gap:14px;color:var(--bsa-blue);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-top:18px}
.bsa-addon .bsa-all-courses-progress{display:block;flex:1;height:2px;background:var(--bsa-rule);overflow:hidden}
.bsa-addon .bsa-all-courses-progress i{display:block;width:12%;height:100%;background:var(--bsa-green)}
.bsa-addon.bsa-stats-section{padding:18px 0 34px}
.bsa-addon .bsa-stats-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--bsa-rule);padding:22px 0}
.bsa-addon .bsa-stat-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 12px;gap:5px}
.bsa-addon .bsa-stat-item+.bsa-stat-item{border-left:1px solid var(--bsa-rule)}
.bsa-addon .bsa-stat-icon{font-size:27px;line-height:1.2;color:var(--bsa-green)}
.bsa-addon .bsa-stat-value{font-size:36px;font-weight:700;line-height:1.2;color:var(--bsa-blue)}
.bsa-addon .bsa-stat-label{font-size:12px;font-weight:600;line-height:1.5}
.bsa-addon.bsa-client-sectors{padding:var(--bsa-section-padding) 0;background:#f7faf8}
.bsa-addon .client-sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:330px;gap:18px}
.bsa-addon .client-sector-group{display:grid;height:330px;grid-template-rows:62px minmax(0,1fr);border:1px solid #cfddd7;border-radius:17px;overflow:hidden;background:#fff;box-shadow:0 12px 28px rgb(4 43 59 / 6%)}
.bsa-addon .client-sector-group-head{display:grid;align-items:center;justify-items:center;padding:12px 18px;background:var(--bsa-blue)}
.elementor .bsa-addon .client-sector-group-head h3{color:#fff;font-size:16px;font-weight:700;line-height:1.25;text-align:center}
.bsa-addon .client-logo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:58px;align-content:center;column-gap:15px;row-gap:14px;margin:0;padding:18px 20px 21px;height:100%;background:#fff}
.bsa-addon .client-logo-item{display:grid;place-items:center;min-width:0;position:relative;padding:7px 3px 10px;background:#fff}
.bsa-addon .client-logo-item::after{content:'';position:absolute;right:20%;left:20%;bottom:0;height:2px;background:var(--bsa-green);opacity:0;transition:opacity 180ms cubic-bezier(.23,1,.32,1)}
.bsa-addon .client-logo-item:hover::after{opacity:1}
.bsa-addon .client-logo-item img{max-height:54px;max-width:100%;width:auto;height:auto;object-fit:contain}
.bsa-addon .client-sector-group-large .client-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:50px;gap:8px 10px;padding-inline:16px}
.bsa-addon .client-sector-group-large .client-logo-item img{max-height:42px}
.bsa-addon .bsa-clients-controls{display:none}
.bsa-addon.bsa-partner-testimonials{padding:44px 0;background:#fafbf9}
.bsa-addon .bsa-partner-slider-wrap{position:relative;padding-inline:44px}
.bsa-addon .bsa-partner-card{display:flex;flex-direction:column;padding:0 4px}
.bsa-addon .bsa-partner-profile{display:grid;grid-template-rows:80px 24px 32px 18px;align-items:center;justify-items:center;text-align:center;padding-bottom:8px}
.bsa-addon .bsa-partner-avatar{display:block;width:76px;height:76px;border:2px solid #fff;border-radius:50%;overflow:hidden;box-shadow:0 0 0 1px var(--bsa-rule)}
.bsa-addon .bsa-partner-avatar img{width:100%;height:100%;object-fit:cover;object-position:center}
.elementor .bsa-addon .bsa-partner-profile h3{color:var(--bsa-blue);font-size:16px;font-weight:700;line-height:1.3}
.bsa-addon .bsa-partner-profile :where(strong,span:not(.bsa-partner-avatar)){font-size:12px;line-height:1.5}
.bsa-addon .bsa-partner-rule{height:2px;background:var(--bsa-green);margin:0 0 14px;flex-shrink:0}
.elementor .bsa-addon .bsa-partner-card>p{font-size:14px;line-height:1.6;color:var(--bsa-ink)}
.bsa-addon .bsa-partner-slider-wrap>.bsa-carousel-controls{margin:0}
.elementor .bsa-addon .bsa-partner-slider-wrap>.bsa-carousel-controls button{position:absolute;top:158px;width:32px;height:32px;color:#fff;background:var(--bsa-green);border:0}
.bsa-addon .bsa-partner-slider-wrap [data-bsa-prev]{left:0}
.bsa-addon .bsa-partner-slider-wrap [data-bsa-next]{right:0}
.bsa-addon.bsa-news-section{padding:var(--bsa-section-padding) 0}
.bsa-addon .bsa-news-layout{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.bsa-addon .bsa-news-feature-image{display:block;aspect-ratio:16/10;overflow:hidden;background:#f3f5f4}
.bsa-addon .bsa-news-feature-image img{width:100%;height:100%;object-fit:cover}
.bsa-addon .bsa-news-copy time{display:block;font-size:12px;line-height:1.5;color:#59645e;margin:12px 0 8px}
.elementor .bsa-addon .bsa-news-feature h3{font-size:23px;font-weight:600;line-height:1.4}
.elementor .bsa-addon .bsa-news-read{display:inline-flex;gap:14px;color:var(--bsa-green);font-size:13px;font-weight:600;margin-top:18px}
.bsa-addon .bsa-news-list{display:flex;flex-direction:column;gap:14px}
.bsa-addon .bsa-news-item{display:grid;grid-template-columns:112px 1fr;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--bsa-rule)}
.bsa-addon .bsa-news-item-image{display:block;aspect-ratio:4/3;overflow:hidden;background:#f3f5f4}
.bsa-addon .bsa-news-item-image img{width:100%;height:100%;object-fit:cover}
.elementor .bsa-addon .bsa-news-item h3{font-size:14px;line-height:1.5;font-weight:600}
.bsa-addon .bsa-news-item time{margin:0 0 5px}
.elementor .bsa-addon .bsa-zalo-float{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(28px,env(safe-area-inset-bottom));z-index:1000;display:grid;place-items:center;width:56px;height:56px;padding:0;border:2px solid #fff;border-radius:50%;background:#0068ff;color:#fff;font-size:16px;font-weight:700;line-height:1;opacity:1;box-shadow:0 3px 12px rgb(0 104 255 / 20%)}
.bsa-addon.bsa-contact{height:0}
.bsa-addon.bsa-empty{padding:24px;border:1px dashed #a3b9ab}
@media(max-width:1024px){
 .bsa-addon .bsa-track{--bsa-columns:3}
 .bsa-addon .bsa-partner-slider-wrap .bsa-track{--bsa-columns:2}
 .bsa-addon .bsa-program-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:25px}
 .bsa-addon .client-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .bsa-addon .invers-feature-wrapper{gap:12px}
 .bsa-addon .bsa-quick-link{padding:15px;gap:12px}
 .elementor .bsa-addon .card-title{font-size:14px}
}
@media(max-width:767px){
 .elementor .bsa-addon{--bsa-section-padding:36px;font-size:14px}
 .bsa-addon .bsa-shell{width:calc(100% - 24px)}
 .elementor .bsa-addon .bsa-unified-title{margin-bottom:24px;text-align:center}
 .elementor .bsa-addon .section-title{font-size:29px;line-height:1.25;text-wrap:balance}
 .elementor .bsa-addon .bsa-title-note{font-size:13px}
 .bsa-addon .bsa-track{--bsa-columns:2;gap:14px}
 .bsa-addon .bsa-track>*{flex-basis:calc((100% - (var(--bsa-columns) - 1)*14px)/var(--bsa-columns))}
 .bsa-addon .bsa-partner-slider-wrap .bsa-track{--bsa-columns:1}
 .bsa-addon .bsa-hero-carousel .bsa-track{gap:0}
 .bsa-addon .bsa-hero-controls{bottom:5px;padding:3px 6px;gap:6px}
 .elementor .bsa-addon .bsa-hero-controls .bsa-carousel-controls button{width:24px;height:24px}
 .bsa-addon.bsa-thirteen-features{padding:16px 0 20px}
 .bsa-addon .invers-feature-wrapper{grid-template-columns:1fr;gap:12px}
 .bsa-addon .bsa-quick-link{min-height:72px;padding:13px 18px;gap:16px}
 .bsa-addon .bsa-feature-icon{width:40px;height:40px;flex-basis:40px;font-size:23px}
 .elementor .bsa-addon .card-title{font-size:15px}
 .bsa-addon .bsa-program-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}
 .bsa-addon .bsa-program-menu-item{min-height:50px;font-size:11px;gap:7px}
 .bsa-addon .bsa-program-menu-icon{width:20px;height:20px;flex-basis:20px;font-size:12px}
 .bsa-addon .bsa-expert-name{height:40px;min-height:0;padding:0 6px;font-size:12px;line-height:1;white-space:nowrap}
 .bsa-addon .bsa-all-courses-carousel-head>div:first-child{display:grid;gap:8px}
 .bsa-addon .bsa-all-courses-eyebrow{font-size:10px}
 .bsa-addon .bsa-all-courses-footer{font-size:10px}
 .bsa-addon .bsa-stats-strip{grid-template-columns:repeat(2,minmax(0,1fr));padding:0}
 .bsa-addon .bsa-stat-item{padding:16px 8px}
 .bsa-addon .bsa-stat-item:nth-child(3){border-left:0;border-top:1px solid var(--bsa-rule)}
 .bsa-addon .bsa-stat-item:nth-child(4){border-top:1px solid var(--bsa-rule)}
 .bsa-addon .bsa-stat-value{font-size:30px}
 .bsa-addon .bsa-stat-label{font-size:10px}
 .bsa-addon.bsa-stats-section{padding:8px 0 24px}
 .bsa-addon .client-sector-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;scrollbar-width:none;padding-bottom:14px}
 .bsa-addon .client-sector-group{flex:0 0 100%;min-width:0;scroll-snap-align:start}
 .bsa-addon .bsa-clients-carousel .client-sector-grid{overscroll-behavior-x:contain}
 .bsa-addon .bsa-clients-controls:not([hidden]){display:flex;align-items:center;justify-content:center;gap:10px;margin-top:2px}
 .bsa-addon .bsa-client-dots{display:flex;align-items:center;justify-content:center;gap:2px}
 .elementor .bsa-addon .bsa-client-dots button{display:grid;place-items:center;width:28px;height:32px;border:0;background:transparent;border-radius:16px}
 .bsa-addon .bsa-client-dots button span{display:block;width:7px;height:7px;border-radius:8px;background:#bacdc2;transition:width 200ms cubic-bezier(.23,1,.32,1),background-color 200ms cubic-bezier(.23,1,.32,1)}
 .bsa-addon .bsa-client-dots button[aria-current=true] span{width:21px;background:var(--bsa-green)}
 .elementor .bsa-addon .bsa-clients-pause{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1px solid var(--bsa-rule);background:#fff;color:var(--bsa-green);font-size:11px}
 .bsa-addon.bsa-partner-testimonials{padding:32px 0}
 .bsa-addon .bsa-partner-slider-wrap{padding-inline:32px}
 .bsa-addon .bsa-news-layout{grid-template-columns:1fr;gap:26px}
 .elementor .bsa-addon .bsa-news-feature h3{font-size:20px}
 .bsa-addon .bsa-news-item{grid-template-columns:98px 1fr;gap:12px}
 .elementor .bsa-addon .bsa-zalo-float{width:48px;height:48px;font-size:14px;right:14px;bottom:20px}
}
@media(prefers-reduced-motion:reduce){.bsa-addon .bsa-track{scroll-behavior:auto}.bsa-addon *{transition:none}}
