:root{
  --brand:#8b5e34;
  --brand-strong:#744b27;
  --brand-deep:#5b371c;
  --brand-soft:#f4ece3;
  --accent:#d88a4b;
  --dark:#2a1b12;
  --dark-2:#3a271a;
  --muted:#715d49;
  --bg:#fcf7f2;
  --line:rgba(16,24,40,.08);
  --shadow:0 18px 46px rgba(47,29,19,.08);
}

html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

*{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
}

h1,h2,h3,h4,h5,h6{
  font-family:Poppins,Inter,system-ui,sans-serif;
}

body{
  background:
    radial-gradient(circle at top left, rgba(139,94,52,.10), transparent 34%),
    radial-gradient(circle at top right, rgba(216,138,75,.08), transparent 26%),
    linear-gradient(180deg, #fcf7f2 0%, #fbfcfb 52%, #ffffff 100%);
  color:#21170f;
}

a,
.btn{
  transition:transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease;
}

.text-brand{color:var(--brand-strong)!important;}
.text-brand-contrast{color:#f8e9d7;}

.btn-brand{
  border:0;
  border-radius:999px;
  padding:.76rem 1.45rem;
  font-weight:700;
  background:linear-gradient(135deg, var(--brand) 0%, #b17645 100%);
  color:#fff;
  box-shadow:0 14px 28px rgba(139,94,52,.22);
}

.btn-brand:hover{
  color:#fff;
  transform:translateY(-1px);
  background:linear-gradient(135deg, var(--brand-strong) 0%, #86552f 100%);
}

.btn-outline-brand{
  border-radius:999px;
  border:1px solid rgba(139,94,52,.35);
  color:var(--brand-strong);
  background:rgba(255,255,255,.92);
}

.btn-outline-brand:hover,
.btn-outline-brand.active{
  background:var(--brand);
  border-color:var(--brand);
  color:#fff;
}

.topbar{
  background:linear-gradient(90deg, var(--brand-deep) 0%, #9d6538 100%);
  box-shadow:0 8px 18px rgba(91,55,28,.18);
  padding:.5rem 0;
}

.topbar .container{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:1.5rem;
  align-items:center;
}

.topbar-award{
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:.5rem;
  font-weight:600;
}

.topbar-contacts{
  display:grid;
  grid-template-columns:auto auto;
  gap:1.2rem;
  align-items:center;
}

.topbar-contact-item{
  display:flex;
  align-items:center;
  gap:.5rem;
  white-space:nowrap;
}

.topbar-contact-item a{
  color:#fff;
  text-decoration:none;
  transition:opacity .2s ease;
}

.topbar-contact-item a:hover{
  opacity:.85;
}

.topbar-phone{
  display:none;
}

@media (max-width: 1199.98px){
  .topbar .container{
    grid-template-columns:1fr;
    gap:.75rem;
  }
  .topbar-award{
    justify-self:flex-start;
  }
  .topbar-contacts{
    grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
    gap:1rem;
    width:100%;
  }
}

@media (max-width: 767.98px){
  .topbar-phone{
    display:none !important;
  }
  .topbar-location{
    display:none !important;
  }
  .topbar .container{
    grid-template-columns:1fr;
  }
  .topbar-contacts{
    grid-template-columns:1fr;
    gap:.5rem;
  }
}

.footer{
  background:#6a452c;
  color:#fff;
}

.glass{
  background:rgba(255,255,255,.8);
  border:1px solid rgba(255,255,255,.92);
  border-radius:28px;
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
  box-shadow:var(--shadow);
}

.glass-nav{
  background:rgba(255,255,255,.9);
  border:1px solid rgba(255,255,255,.88);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  box-shadow:0 12px 30px rgba(15,23,42,.08);
}

.navbar.glass-nav .container{
  padding-top:.25rem;
  padding-bottom:.25rem;
}

.navbar.glass-nav .navbar-brand span,
.navbar.glass-nav .nav-link{
  color:#3a2a1f;
  font-weight:500;
  opacity:1;
}

.navbar-brand img.site-logo{
  height:52px;
  width:auto;
  display:block;
}


.navbar .nav-link{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
}

.navbar .nav-link .nav-duotone{
  width:18px;
  height:18px;
  flex:0 0 auto;
  opacity:0;
  transform:translateY(1px);
  transition:opacity .18s ease;
}

.navbar .nav-link:hover .nav-duotone,
.navbar .nav-link:focus-visible .nav-duotone,
.navbar .nav-link.active .nav-duotone{
  opacity:1;
}

.footer img.site-logo{
  height:34px;
  width:auto;
  display:block;
  filter:sepia(.88) saturate(.72) hue-rotate(-18deg) brightness(1.14);
}

.footer h6{
  color:#ffe6d1;
}

.footer p,
.footer .opacity-75{
  color:rgba(255,244,235,.88) !important;
}

.footer .link-light{
  color:#fff3e8 !important;
}

.footer .link-light:hover{
  color:#ffd7bf !important;
}

.footer .form-control.form-control-sm{
  background:rgba(255,239,225,.95);
  border:1px solid rgba(255,215,191,.45);
  color:#3b2d22;
}

.footer .form-control.form-control-sm::placeholder{
  color:#7b5d45;
}

.footer .btn-outline-brand{
  background:linear-gradient(135deg, #b17645 0%, #8b5e34 100%);
  border:1px solid rgba(255,215,191,.42);
  color:#fff;
  box-shadow:0 10px 20px rgba(47,29,19,.26);
}

.footer .btn-outline-brand:hover,
.footer .btn-outline-brand:focus{
  background:linear-gradient(135deg, #8b5e34 0%, #744b27 100%);
  border-color:rgba(255,215,191,.6);
  color:#fff;
}

.footer-rotating-item{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}

.footer-rotating-pop{
  animation:footerRotatingPop .28s ease;
}

@keyframes footerRotatingPop{
  from{
    opacity:.15;
    transform:translateY(5px) scale(.98);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

.footer-rotating-popup{
  border-radius:999px;
  padding:.35rem .85rem;
  border:1px solid rgba(255,215,191,.68);
  background:linear-gradient(135deg, #ffe2cd 0%, #f7c9a7 100%);
  color:#5b371c;
  font-weight:700;
  line-height:1.2;
  box-shadow:0 8px 20px rgba(47,29,19,.2);
}

.footer-rotating-popup:hover,
.footer-rotating-popup:focus{
  border-color:rgba(255,231,214,.96);
  background:linear-gradient(135deg, #ffead9 0%, #f8d3b7 100%);
  color:#422714;
}

.navbar.glass-nav .nav-link:hover,
.navbar.glass-nav .nav-link.active{
  color:var(--brand-strong);
}

.navbar.scrolled{
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 14px 34px rgba(15,23,42,.1);
}

.navbar-toggler{
  border:0;
  box-shadow:none!important;
}

.topbar .container > *,
.topbar-contacts > *,
.navbar .container > *,
.navbar-collapse,
.navbar-nav,
.navbar-nav .nav-item,
.nav-lms-actions,
.page-hero-shell{
  min-width:0;
}

.home-nav-btn{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  border:0;
  border-radius:999px;
  background:#8b5e34;
  color:#fff;
  padding:.75rem 1.5rem;
  font-weight:600;
  box-shadow:0 12px 24px rgba(139,94,52,.22);
  white-space:normal;
  text-align:center;
}

.home-nav-btn i{
  font-size:1rem;
  line-height:1;
}

.nav-lms-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
}

.home-nav-btn-lite{
  background:rgba(255,255,255,.92);
  border:1px solid rgba(139,94,52,.35);
  color:#6d4b2e;
  box-shadow:0 8px 18px rgba(47,29,19,.12);
}

.home-nav-btn-lite:hover{
  background:#f4e5d8;
  color:#5b371c;
}

.home-nav-btn:hover{
  background:#744b27;
  color:#fff;
  transform:translateY(-1px);
}

.section-pill{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  padding:.85rem 1.35rem;
  border:1px solid rgba(139,94,52,.35);
  border-radius:999px;
  background:rgba(255,255,255,.88);
  color:#744b27;
  font-weight:600;
  letter-spacing:.01em;
  box-shadow:0 10px 20px rgba(139,94,52,.08);
}

.section-pill::before{
  content:"";
  width:9px;
  height:9px;
  border-radius:50%;
  background:#8b5e34;
}

.page-hero{
  position:relative;
  overflow:hidden;
  padding:100px 0 84px;
  background:transparent;
}

.page-hero + section:not(.featured-programs){
  margin-top:-80px;
  position:relative;
  z-index:2;
}

.page-hero::before{
  content:"";
  position:absolute;
  inset:48px 0 auto;
  height:400px;
  background:
    radial-gradient(circle at 16% 18%, rgba(177,118,69,.12), transparent 24%),
    radial-gradient(circle at 88% 12%, rgba(216,138,75,.10), transparent 24%),
    linear-gradient(180deg, rgba(237,250,240,.95) 0%, rgba(255,255,255,0) 100%);
  pointer-events:none;
}

.page-hero .container{
  position:relative;
  z-index:1;
}

.page-hero-shell{
  padding:2.2rem 2.4rem;
  border-radius:36px;
  background:rgba(255,255,255,.74);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:0 26px 64px rgba(47,29,19,.1);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
}

.page-hero h2{
  max-width:760px;
  margin:1.15rem 0 .9rem;
  font-size:clamp(2.55rem, 4.8vw, 4.45rem);
  line-height:1.02;
  letter-spacing:-.04em;
  color:#2a1b12;
}

.page-hero p{
  max-width:680px;
  margin:0;
  color:#6f5a46;
  font-size:1.06rem;
}

.page-hero-badges{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
  margin-top:1.45rem;
}

.info-chip{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  padding:.78rem 1rem;
  border-radius:999px;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(16,24,40,.06);
  color:#3b2d22;
  font-weight:600;
  box-shadow:0 12px 24px rgba(15,23,42,.05);
}

.info-chip i{
  color:var(--brand-strong);
}

.page-hero-panel{
  height:100%;
  padding:1.35rem 1.45rem;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(139,94,52,.12), rgba(255,255,255,.85));
  border:1px solid rgba(139,94,52,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
}

.hero-panel-label{
  margin-bottom:.35rem;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#6d4b2e;
}

.hero-panel-metric{
  display:flex;
  gap:.85rem;
  align-items:flex-start;
  padding:.95rem 0;
  border-top:1px solid rgba(16,24,40,.08);
}

.hero-panel-metric:first-of-type{
  padding-top:.35rem;
  border-top:0;
}

.hero-panel-metric strong{
  min-width:70px;
  font-size:1.9rem;
  line-height:1;
  color:#5b371c;
}

.hero-panel-metric span{
  color:#4d3c30;
  font-weight:600;
}

.hero-2{
  position:relative;
  min-height:86vh;
  padding-top:100px;
  margin-top:-80px;
  background:
    radial-gradient(900px 400px at 10% 10%, rgba(139,94,52,.25), transparent),
    radial-gradient(900px 400px at 90% 0%, rgba(139,94,52,.2), transparent),
    linear-gradient(180deg, #f1e7e1 0%, #fcf8f5 60%);
  overflow:hidden;
}

.hero-2 .hero-gradient{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(600px 300px at 30% 20%, rgba(255,255,255,.22), transparent);
}

#bg-circles{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.hero-card i{
  color:var(--brand-strong);
}

.stats-wrap .stat-card{
  border-radius:20px;
  padding:16px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.9);
}

.stats-wrap .stat{
  font-size:32px;
  font-weight:800;
  color:#5b371c;
}

.stats-wrap .stat-label{
  font-weight:600;
  color:#6f5a46;
}

.ach-card{
  background:#fff;
  border-radius:20px;
  padding:16px;
  box-shadow:var(--shadow);
  font-weight:600;
}

.ach-card i{
  color:var(--brand-strong);
  margin-right:8px;
}

.card-3d{
  border-radius:28px;
  border:1px solid rgba(255,255,255,.9);
  box-shadow:var(--shadow);
  transition:transform .2s ease, box-shadow .2s ease;
}

.card-3d:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 46px rgba(47,29,19,.14);
}

.card-3d i{
  color:var(--brand-strong);
}

.logo-track-wrapper{
  overflow:hidden;
  position:relative;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(255,255,255,.92);
  border-radius:28px;
  box-shadow:var(--shadow);
  padding:14px 0;
}

.logo-track{
  display:flex;
  gap:45px;
  padding:34px 0;
  width:max-content;
  animation:scroll 40s linear infinite;
}

.logo-track img{
  height:70px;
  width:auto;
  filter:grayscale(100%);
  opacity:.9;
  transition:all .3s ease;
}

.logo-track img:hover{
  filter:none;
  opacity:1;
  transform:scale(1.05);
}

@keyframes scroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}

.cta{
  background:linear-gradient(135deg, rgba(139,94,52,.13), rgba(216,138,75,.08));
  border:1px solid rgba(139,94,52,.12);
}

.home-cta{
  padding:0 0 4rem;
}

.home-cta .container{
  padding-left:12px;
  padding-right:12px;
}

.home-cta .cta-card{
  position:relative;
  overflow:hidden;
  padding:2.2rem 2.35rem;
  border-radius:36px;
  background-image:url('../img/skills-learning-personal-development-finance-competency-business-concept_161452-13546.avif');
  background-size:cover;
  background-position:center;
  border:3px solid #8b5e34;
  box-shadow:0 28px 60px rgba(91,55,28,.28);
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}

.home-cta .cta-card::before,
.home-cta .cta-card::after{
  content:"";
  position:absolute;
  border-radius:50%;
  background:rgba(255,255,255,.12);
}

.home-cta .cta-card::before{
  width:280px;
  height:280px;
  top:-110px;
  right:-60px;
}

.home-cta .cta-card::after{
  width:180px;
  height:180px;
  bottom:-70px;
  left:-40px;
}

.home-cta .cta-card > *{
  position:relative;
  z-index:1;
}

.home-cta h4{
  margin:0 0 .45rem;
  color:#fff;
  font-size:clamp(1.7rem, 3vw, 2.45rem);
}

.home-cta .cta-card p{
  max-width:650px;
  color:rgba(255,255,255,.86);
  font-size:1.02rem;
}

.home-cta .cta-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.85rem;
  width:100%;
}

.home-cta .cta-actions .btn{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  min-height:56px;
  padding:0 1.35rem;
  border-radius:999px;
  font-weight:700;
  text-align:center;
  white-space:normal;
}

.home-cta .btn-light{
  color:#5b371c;
  box-shadow:0 18px 30px rgba(8,17,12,.14);
}

.home-cta .btn-outline-light{
  background:rgba(255,255,255,.08);
}

.home-cta .btn-outline-light:hover{
  background:rgba(255,255,255,.96);
  border-color:#fff;
  color:#5b371c;
}

.footer .bi-arrow-up-circle{
  vertical-align:-2px;
  color:#ffd7bf;
}

.loader{
  position:fixed;
  inset:0;
  display:grid;
  place-items:center;
  background:#2f1d13;
  z-index:9999;
  color:#fff;
}

.spinner{
  width:56px;
  height:56px;
  border-radius:50%;
  border:4px solid rgba(255,255,255,.2);
  border-top-color:#fff;
  animation:spin 1s linear infinite;
  margin-bottom:12px;
}

.loader-text{
  font-weight:700;
  letter-spacing:.4px;
}

@keyframes spin{
  to{transform:rotate(360deg);}
}

.timeline{
  position:relative;
  margin-left:12px;
}

.timeline:before{
  content:"";
  position:absolute;
  left:10px;
  top:0;
  bottom:0;
  width:2px;
  background:rgba(139,94,52,.18);
}

.tl-item{
  position:relative;
  padding-left:28px;
  margin-bottom:16px;
}

.tl-dot{
  position:absolute;
  left:2px;
  top:6px;
  width:16px;
  height:16px;
  background:var(--brand);
  border-radius:50%;
  box-shadow:0 0 0 4px rgba(139,94,52,.14);
}

.tl-content h6{
  margin:0 0 6px;
}

.award-card{
  border-radius:24px;
}

.award-ico{
  color:var(--accent);
  font-size:28px;
  margin-bottom:8px;
  display:block;
}

.gal-item{
  display:block;
  overflow:hidden;
  border-radius:24px;
  box-shadow:var(--shadow);
}

.gal-item img{
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:cover;
  cursor:zoom-in;
  transition:transform .35s ease, filter .35s ease;
}

.gal-item:hover img{
  transform:scale(1.05);
  filter:saturate(1.04);
}

.modal.show #lightboxImg{
  animation:pop .2s ease-out;
}

@keyframes pop{
  from{transform:scale(.98); opacity:0;}
  to{transform:scale(1); opacity:1;}
}

.job-card{
  border-radius:24px;
  padding:18px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:var(--shadow);
}

.contact-office-stack{
  align-items:stretch;
}

.contact-office-card{
  display:flex;
  flex-direction:column;
  gap:.4rem;
}

.contact-office-map{
  margin-top:auto;
}

.job-card .meta{
  color:var(--muted);
  font-size:.92rem;
}

.blog-card{
  border-radius:24px;
  overflow:hidden;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:var(--shadow);
}

.blog-card .thumb{
  position:relative;
  height:170px;
  background:linear-gradient(135deg, rgba(139,94,52,.92), rgba(216,138,75,.92));
}

.blog-card .thumb::before{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.32);
}

.blog-card .content{
  padding:18px;
}

.blog-card .meta{
  color:var(--muted);
  font-size:.9rem;
}

.blog-card:hover{
  transform:none;
  box-shadow:var(--shadow);
}

.blog-card[data-cat="crt"] .thumb{
  background:linear-gradient(135deg, #8b5e34, #5b371c);
}

.blog-card[data-cat="success"] .thumb{
  background:linear-gradient(135deg, #b17645, #d88a4b);
}

/* Form validation styles */
.form-control.is-invalid,
.form-control.is-invalid:focus {
  border-color: #b17645;
  box-shadow: 0 0 0 0.2rem rgba(177, 118, 69, 0.25);
}

.form-control.is-invalid:focus {
  border-color: #b17645;
}

/* Toast container styles */
#toastContainer {
  z-index: 9999 !important;
}

.toast {
  min-width: 320px;
  animation: slideInUp 0.3s ease-out;
}

@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.blog-card[data-cat="lms"] .thumb{
  background:linear-gradient(135deg, #5b371c, #3a271a);
}

/* Media Cards */
.media-card{
  border-radius:24px;
  overflow:hidden;
  background:#fff;
  box-shadow:var(--shadow);
  transition:transform .3s ease, box-shadow .3s ease;
  cursor:pointer;
  height:100%;
  display:flex;
  flex-direction:column;
}

.media-card:hover{
  transform:translateY(-8px);
  box-shadow:0 24px 52px rgba(47,29,19,.16);
}

.media-thumbnail{
  position:relative;
  height:200px;
  background-size:cover;
  background-position:center;
  overflow:hidden;
}

.media-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(91,55,28,.3), rgba(139,94,52,.2));
  transition:all .3s ease;
}

.media-card:hover .media-overlay{
  background:linear-gradient(135deg, rgba(91,55,28,.5), rgba(139,94,52,.4));
}

.media-play-btn{
  position:absolute;
  inset:50%;
  transform:translate(-50%, -50%);
  width:70px;
  height:70px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--brand), #b17645);
  border:none;
  color:#fff;
  font-size:24px;
  display:grid;
  place-items:center;
  transition:all .3s ease;
  z-index:2;
  box-shadow:0 10px 30px rgba(139,94,52,.3);
}

.media-play-btn:hover{
  transform:translate(-50%, -50%) scale(1.1);
  box-shadow:0 14px 40px rgba(139,94,52,.5);
}

.media-badge{
  position:absolute;
  bottom:14px;
  left:14px;
  background:var(--brand);
  color:#fff;
  padding:.4rem .75rem;
  border-radius:999px;
  font-size:.85rem;
  font-weight:600;
  z-index:3;
}

.media-body{
  padding:18px;
  flex:1;
  display:flex;
  flex-direction:column;
}

.media-body h5{
  margin:0 0 .5rem;
  font-size:1.1rem;
  color:#2a1b12;
}

.media-body p{
  color:var(--muted);
  font-size:.95rem;
  margin:0 0 1rem;
  flex:1;
}

.media-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-top:.75rem;
  border-top:1px solid rgba(16,24,40,.08);
}

.media-footer small{
  color:var(--muted);
  font-size:.9rem;
}

.media-watch-link{
  color:var(--brand);
  text-decoration:none;
  font-weight:600;
  transition:all .2s ease;
}

.media-watch-link:hover{
  color:var(--brand-strong);
  transform:translateX(2px);
}

/* Single Media Card (for About section) */
.media-card-single{
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--shadow);
  transition:transform .3s ease, box-shadow .3s ease;
}

.media-card-single:hover{
  transform:translateY(-8px);
  box-shadow:0 24px 52px rgba(47,29,19,.16);
}

.media-thumbnail-single{
  position:relative;
  height:100%;
  min-height:420px;
  background-size:cover;
  background-position:center;
  overflow:hidden;
  aspect-ratio:16/9;
}

.media-overlay-single{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(91,55,28,.2), rgba(139,94,52,.15));
  transition:all .3s ease;
}

.media-card-single:hover .media-overlay-single{
  background:linear-gradient(135deg, rgba(91,55,28,.35), rgba(139,94,52,.25));
}

.media-play-btn-single{
  position:absolute;
  inset:50%;
  transform:translate(-50%, -50%);
  width:80px;
  height:80px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--brand), #b17645);
  border:none;
  color:#fff;
  font-size:32px;
  display:grid;
  place-items:center;
  transition:all .3s ease;
  z-index:2;
  box-shadow:0 10px 30px rgba(139,94,52,.3);
  cursor:pointer;
}

.media-play-btn-single:hover{
  transform:translate(-50%, -50%) scale(1.15);
  box-shadow:0 14px 40px rgba(139,94,52,.5);
}

.media-text-single{
  position:absolute;
  bottom:24px;
  left:50%;
  transform:translateX(-50%);
  color:#fff;
  font-weight:600;
  font-size:.95rem;
  text-align:center;
  z-index:3;
  white-space:nowrap;
  text-shadow:0 2px 8px rgba(0,0,0,.3);
}

.video-wrapper{
  position:relative;
  background:#000;
  aspect-ratio:16/9;
}

.team-avatar{
  width:80px;
  height:80px;
  margin:0 auto;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, var(--brand), #b17645);
  color:#fff;
  font-weight:800;
  letter-spacing:.08em;
}

/* MSME + Founder (shared; about page also inlines these for cache safety) */
.sse-msme{padding:.85rem 0 .35rem}
.sse-msme__card{
  display:flex;align-items:center;gap:1.15rem;padding:1rem 1.25rem;border-radius:18px;
  background:#fff;border:1px solid rgba(139,94,52,.14);box-shadow:0 12px 28px rgba(47,29,19,.07);
  max-width:860px;margin:0 auto
}
.sse-msme__mark{
  flex:0 0 auto;width:86px;height:64px;display:flex;align-items:center;justify-content:center;
  border-radius:14px;background:linear-gradient(180deg,#fffdf9,#f6efe7);
  border:1px solid rgba(139,94,52,.12);overflow:hidden
}
.sse-msme__mark img{width:70px!important;height:50px!important;object-fit:contain!important;display:block!important}
.sse-msme__body{flex:1 1 auto;min-width:0}
.sse-msme__label{
  display:inline-block;margin:0 0 .25rem;padding:.2rem .65rem;border-radius:999px;
  background:rgba(139,94,52,.12);color:#744b27;font-size:.7rem;font-weight:700;
  letter-spacing:.05em;text-transform:uppercase
}
.sse-msme__title{margin:0 0 .2rem;font-size:1.15rem;font-weight:700;color:#2a1b12;line-height:1.25}
.sse-msme__text{margin:0;color:#6f5a46;font-size:.92rem;line-height:1.45}
.sse-msme__text strong{color:#3b2d22}

.sse-founder{padding:1.5rem 0 2.5rem}
.sse-founder__panel{
  display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:2.5rem 3.5rem;align-items:center;
  padding:2.4rem 2.6rem;border-radius:32px;
  background:
    radial-gradient(circle at 12% 20%,rgba(139,94,52,.12),transparent 34%),
    radial-gradient(circle at 90% 10%,rgba(216,138,75,.1),transparent 28%),
    linear-gradient(145deg,#f3ebe2 0%,#faf6f1 48%,#fff 100%);
  border:1px solid rgba(139,94,52,.12);box-shadow:0 22px 50px rgba(47,29,19,.08);overflow:hidden
}
.sse-founder__photo-col{display:flex;justify-content:center;align-items:center}
.sse-founder__oval{
  position:relative;width:min(100%,280px);aspect-ratio:3/4;border-radius:999px;overflow:hidden;
  background:linear-gradient(165deg,#e8d7c4,#f4ebe1 55%,#efe2d3);
  box-shadow:0 0 0 10px rgba(255,255,255,.55),0 24px 48px rgba(47,29,19,.16)
}
.sse-founder__oval img{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 18%!important;display:block!important
}
.sse-founder__copy{min-width:0}
.sse-founder__mark{
  display:block;margin:0 0 .9rem;font-family:Georgia,"Times New Roman",serif;font-size:4.5rem;line-height:.65;
  font-weight:700;color:#8b5e34;user-select:none
}
.sse-founder__quote{
  margin:0 0 1.25rem;border:0;padding:0;color:#24170f;font-size:clamp(1.2rem,2.3vw,1.55rem);
  line-height:1.5;font-weight:500;max-width:36ch
}
.sse-founder__punch{margin:0 0 1.75rem;max-width:34ch}
.sse-founder__punch span{
  display:inline;padding:.14em .32em;background:#8b5e34;color:#fff;font-size:clamp(.95rem,1.7vw,1.12rem);
  font-weight:800;letter-spacing:.02em;line-height:1.75;box-decoration-break:clone;-webkit-box-decoration-break:clone
}
.sse-founder__who strong{
  display:block;margin:0 0 .2rem;color:#1a120c;font-family:Poppins,Inter,sans-serif;
  font-size:1.4rem;font-weight:800;letter-spacing:-.02em;line-height:1.2
}
.sse-founder__who span{display:block;color:#7a6550;font-size:1rem;font-weight:500}

@media (max-width: 991.98px){
  .sse-founder__panel{
    grid-template-columns:1fr;
    gap:1.75rem;
    padding:1.75rem 1.35rem;
    text-align:center
  }
  .sse-founder__copy{text-align:center}
  .sse-founder__quote,
  .sse-founder__punch{max-width:none;margin-left:auto;margin-right:auto}
  .sse-founder__oval{width:min(220px,58vw);margin:0 auto}
}
@media (max-width: 575.98px){
  .sse-msme__card{gap:.85rem;padding:.9rem}
  .sse-msme__mark{width:72px;height:56px}
  .sse-msme__title{font-size:1.02rem}
}

.what-we-do{
  background:#f6f7fb;
}

.what-we-do .card-3d{
  background:linear-gradient(135deg, #5b371c 0%, #4a2f1e 100%);
  border:none;
  box-shadow:0 16px 36px rgba(47,29,19,.22);
  color:#fff;
}

.what-we-do .card-3d i,
.what-we-do .card-3d h5{
  color:#fff;
}

.what-we-do .card-3d p{
  color:rgba(255,255,255,.82);
}

.form-control,
.form-select{
  min-height:54px;
  padding:.85rem 1rem;
  border-radius:18px;
  border:1px solid rgba(16,24,40,.08);
  background:rgba(255,255,255,.9);
}

textarea.form-control{
  min-height:140px;
}

.form-control:focus,
.form-select:focus{
  border-color:rgba(139,94,52,.42);
  box-shadow:0 0 0 .25rem rgba(139,94,52,.14);
}

.modal-content{
  border:0;
  border-radius:24px;
  box-shadow:0 30px 60px rgba(15,23,42,.18);
}

.modal-header,
.modal-footer{
  border-color:rgba(16,24,40,.08);
}

#postBody{
  line-height:1.8;
}

#postBody p:last-child{
  margin-bottom:0;
}

#postBody ol{
  padding-left:1.1rem;
}

@media (max-width: 1199.98px){
  .glass-nav{
    margin-top:0;
    border-radius:0 0 22px 22px;
  }

  .navbar .container{
    row-gap:.75rem;
  }

  .navbar-brand{
    max-width:calc(100% - 72px);
  }

  .navbar-toggler{
    margin-left:auto;
    flex-shrink:0;
  }

  .navbar .navbar-collapse{
    flex-basis:100%;
    padding:.75rem 0 .25rem;
  }

  .nav-lms-actions{
    margin-top:.75rem;
    width:100%;
  }

  .nav-lms-actions .btn{
    width:100%;
    justify-content:center;
  }

  .page-hero{
    padding-top:128px;
  }

  .page-hero-shell{
    padding:1.6rem;
    border-radius:28px;
  }
}

@media (max-width: 767.98px){
  .navbar-brand img.site-logo{
    height:40px;
  }

  .topbar-award{
    white-space:normal;
  }

  .topbar-contact-item{
    white-space:normal;
    overflow-wrap:anywhere;
  }

  .topbar-contact-item a{
    overflow-wrap:anywhere;
  }

  .page-hero{
    padding:80px 0 68px;
  }
  .page-hero + section:not(.featured-programs){
    margin-top:-60px;
  }

  .page-hero h2{
    font-size:clamp(2.15rem, 9vw, 3rem);
  }

  .page-hero p{
    font-size:1rem;
  }

  .page-hero-shell,
  .home-cta .cta-card,
  .glass{
    border-radius:24px;
  }

  .home-cta .cta-card{
    padding:1.75rem;
  }

  .logo-track{
    gap:38px;
    padding:26px 0;
  }

  .logo-track img{
    height:56px;
  }
}

@media (max-width: 1199.98px){
  /* Keep content visible on small devices even if AOS does not initialize. */
  [data-aos]{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }
}

@media (max-width: 575.98px){
  .footer .d-flex.flex-wrap.gap-2.justify-content-between.align-items-center.small{
    align-items:flex-start !important;
  }

  .footer-rotating-item{
    max-width:100%;
    white-space:normal;
    text-align:left;
  }

  .footer-rotating-popup{
    width:100%;
    max-width:260px;
  }

  .footer #newsletterForm{
    flex-direction:column;
    align-items:stretch;
  }

  .footer #newsletterForm .form-control,
  .footer #newsletterForm .btn{
    width:100%;
  }

  .toast{
    min-width:min(320px, calc(100vw - 2rem));
  }
}

/* Featured Card with Hover Reveal */
.featured-card.hover-reveal{
  display:flex;
  flex-direction:column;
  height:100%;
  border-radius:28px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
  transition:transform .3s ease, box-shadow .3s ease;
}

.featured-card.hover-reveal:hover{
  transform:translateY(-8px);
  box-shadow:0 24px 48px rgba(15,23,42,.15);
}

.featured-card-image-wrapper{
  position:relative;
  overflow:hidden;
  width:100%;
  aspect-ratio:16/12;
  background:#f0f0f0;
}

.featured-card-image{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .4s ease, filter .4s ease;
}

.featured-card.hover-reveal:hover .featured-card-image{
  transform:scale(1.08);
  filter:brightness(0.65);
}

.featured-card-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(91,55,28,.92), rgba(139,94,52,.88));
  display:flex;
  align-items:center;
  justify-content:center;
  padding:2rem;
  opacity:0;
  transition:opacity .4s ease;
}

.featured-card.hover-reveal:hover .featured-card-overlay{
  opacity:1;
}

.overlay-content{
  text-align:center;
  color:#fff;
  animation:slideUp .4s ease forwards;
}

.overlay-content h4{
  font-size:1.4rem;
  font-weight:700;
  color:#fff;
  margin:0 0 .8rem;
  line-height:1.3;
}

.overlay-content p{
  font-size:.95rem;
  color:rgba(255,255,255,.92);
  line-height:1.6;
  margin:0;
}

@keyframes slideUp{
  from{
    opacity:0;
    transform:translateY(10px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

.featured-card-content{
  padding:1.8rem;
  display:flex;
  flex-direction:column;
  flex:1;
}

.featured-card-content h3{
  font-size:1.35rem;
  font-weight:700;
  color:#2a1b12;
  margin:0 0 .8rem;
  line-height:1.3;
}

.featured-card-badge{
  position:absolute;
  top:1rem;
  left:1rem;
  z-index:10;
  display:inline-flex;
  align-items:center;
  padding:.5rem 1rem;
  border-radius:999px;
  font-size:.8rem;
  font-weight:700;
  color:#fff;
  transition:all .3s ease;
}

.featured-card.hover-reveal:hover .featured-card-badge{
  transform:translateY(-4px);
  box-shadow:0 8px 16px rgba(0,0,0,.2);
}

.featured-card-badge.foundation{background:#8b5e34;}
.featured-card-badge.communication{background:#a06b3f;}
.featured-card-badge.technical{background:#b17645;}
.featured-card-badge.interview{background:#8b5e34;}

.featured-card-meta{
  display:flex;
  flex-direction:column;
  gap:.6rem;
  margin-bottom:1.2rem;
  padding-bottom:1rem;
  border-bottom:1px solid rgba(16,24,40,.06);
}

.featured-card-meta-item{
  display:flex;
  align-items:center;
  gap:.5rem;
  color:#6f5a46;
  font-size:.92rem;
}

.featured-card-meta-item i{
  color:#8b5e34;
  font-size:1rem;
}

.featured-card-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin-top:auto;
}

.featured-card-label{
  color:#2a1b12;
  font-weight:700;
  font-size:.95rem;
}

.featured-card-link{
  color:#8b5e34;
  font-weight:700;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  transition:gap .2s ease, color .2s ease;
}

.featured-card-link:hover{
  gap:.7rem;
  color:#744b27;
}

/* Mission, Vision & Values Section */
.mvv-section{
  position:relative;
  overflow:hidden;
}

.mvv-header{
  margin-bottom:3rem;
}

.mvv-header h3{
  font-size:clamp(1.8rem, 4vw, 2.8rem);
  color:#2a1b12;
}

.mvv-header p{
  font-size:1.05rem;
  color:#6f5a46;
  max-width:600px;
  margin:0 auto;
}

.mvv-card{
  position:relative;
  padding:2rem 1.8rem;
  border-radius:28px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  transition:all .3s ease;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.95);
}

.mvv-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(139,94,52,.08), rgba(255,255,255,0));
  opacity:0;
  transition:opacity .3s ease;
  pointer-events:none;
}

.mvv-card:hover{
  transform:translateY(-8px);
  box-shadow:0 20px 48px rgba(15,23,42,.12);
  border-color:rgba(139,94,52,.2);
}

.mvv-card:hover::before{
  opacity:1;
}

.mvv-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:90px;
  height:90px;
  margin-bottom:1.5rem;
  position:relative;
  z-index:2;
  animation:float 3s ease-in-out infinite;
}

.mvv-icon svg{
  width:100%;
  height:100%;
  filter:drop-shadow(0 4px 12px rgba(139,94,52,.15));
}

@keyframes float{
  0%, 100%{transform:translateY(0px);}
  50%{transform:translateY(-8px);}
}

.mvv-card h5{
  font-size:1.35rem;
  color:#5b371c;
  margin-bottom:1rem;
  position:relative;
  z-index:2;
}

.mvv-card p{
  color:#556157;
  font-size:.98rem;
  line-height:1.7;
  position:relative;
  z-index:2;
  flex:1;
  margin-bottom:0;
}

.mvv-accent{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:4px;
  background:linear-gradient(90deg, #8b5e34 0%, #b67846 100%);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .4s ease;
}

.mvv-card:hover .mvv-accent{
  transform:scaleX(1);
}

.values-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.8rem;
  position:relative;
  z-index:2;
}

.value-chip{
  display:inline-block;
  padding:.6rem 1rem;
  background:linear-gradient(135deg, rgba(139,94,52,.1), rgba(139,94,52,.05));
  border:1px solid rgba(139,94,52,.25);
  border-radius:999px;
  color:#5b371c;
  font-weight:600;
  font-size:.85rem;
  transition:all .3s ease;
}

.mvv-card:hover .value-chip{
  background:linear-gradient(135deg, rgba(139,94,52,.15), rgba(139,94,52,.1));
  border-color:rgba(139,94,52,.4);
  transform:scale(1.05);
}

@media (max-width: 767.98px){
  .mvv-card{
    padding:1.5rem;
  }

  .mvv-header h3{
    font-size:1.8rem;
  }

  .values-list{
    grid-template-columns:1fr;
  }

  .mvv-icon{
    width:70px;
    height:70px;
  }

  .mvv-card h5{
    font-size:1.15rem;
  }
}

/* ============================================
   Our Journey - Enhanced Timeline Section
   ============================================ */
.journey-section {
  position: relative;
  overflow: hidden;
}

.journey-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 20% 80%, rgba(139,94,52,.06), transparent 40%);
  pointer-events: none;
  z-index: 0;
}

.journey-section .container {
  position: relative;
  z-index: 1;
}

.journey-timeline {
  position: relative;
}

.journey-line {
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, #8b5e34 0%, #8b5e34 50%, rgba(139,94,52,.3) 100%);
  transform: translateX(-50%);
  z-index: 0;
}

.journey-item {
  position: relative;
  z-index: 1;
  padding: 2rem 0;
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}

.journey-item.left {
  flex-direction: row-reverse;
  text-align: right;
}

.journey-item.right {
  flex-direction: row;
  text-align: left;
}

.journey-marker {
  flex-shrink: 0;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 8px 20px rgba(139,94,52,.15);
  position: relative;
  margin-top: 0.25rem;
}

.journey-marker svg {
  filter: drop-shadow(0 2px 4px rgba(0,0,0,.08));
}

.journey-card {
  flex: 1;
  padding: 2rem;
  border-radius: 20px;
  position: relative;
  overflow: hidden;
  transition: all .3s ease;
  min-height: 200px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.journey-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(139,94,52,.05) 0%, transparent 100%);
  pointer-events: none;
}

.journey-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 48px rgba(139,94,52,.18);
}

.journey-year {
  display: inline-block;
  font-size: .85rem;
  font-weight: 700;
  color: #8b5e34;
  letter-spacing: .05em;
  margin-bottom: 0.75rem;
  padding: 0.4rem 0.9rem;
  background: rgba(139,94,52,.08);
  border-radius: 999px;
  width: fit-content;
}

.journey-item.left .journey-year {
  margin-left: auto;
}

.journey-card h5 {
  font-size: 1.35rem;
  color: #2a1b12;
  margin-bottom: 0.75rem;
  position: relative;
  z-index: 1;
}

.journey-card p {
  color: #6f5a46;
  line-height: 1.6;
  margin-bottom: 1.2rem;
  position: relative;
  z-index: 1;
  font-size: 0.95rem;
}

.journey-badge {
  display: inline-block;
  font-size: .75rem;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, #8b5e34 0%, #b17645 100%);
  padding: 0.4rem 0.9rem;
  border-radius: 999px;
  position: relative;
  z-index: 1;
  width: fit-content;
  box-shadow: 0 4px 12px rgba(139,94,52,.25);
  letter-spacing: .02em;
  text-transform: uppercase;
}

/* Responsive Timeline */
@media (max-width: 991.98px) {
  .journey-line {
    left: 28px;
  }

  .journey-item {
    flex-direction: column !important;
    text-align: left !important;
    padding-left: 120px;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .journey-marker {
    position: absolute;
    left: 0;
    top: 0;
  }

  .journey-year {
    margin-left: 0 !important;
  }

  .journey-card {
    min-height: auto;
  }
}

@media (max-width: 767.98px) {
  .journey-line {
    left: 20px;
  }

  .journey-item {
    padding-left: 90px;
    gap: 1rem;
  }

  .journey-marker {
    width: 48px;
    height: 48px;
  }

  .journey-marker svg {
    width: 48px;
    height: 48px;
  }

  .journey-card {
    padding: 1.5rem;
  }

  .journey-card h5 {
    font-size: 1.15rem;
  }

  .journey-card p {
    font-size: 0.9rem;
  }
}

/* ============================================
   Global Responsive Hardening
   ============================================ */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

@supports (-webkit-touch-callout: none) {
  html,
  body {
    min-height: -webkit-fill-available;
  }
}

img,
svg,
video,
canvas {
  max-width: 100%;
  height: auto;
}

iframe {
  max-width: 100%;
}

.video-wrapper iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

@media (max-width: 1199.98px) {
  .navbar .navbar-collapse {
    padding-top: .55rem;
    padding-bottom: .85rem;
  }

  .navbar .nav-link {
    padding: .55rem .25rem;
  }

  .navbar .ms-lg-3 {
    margin-top: .45rem;
  }

  .navbar .ms-lg-3 .btn {
    width: 100%;
    justify-content: center;
  }

  .home-cta .cta-actions .btn {
    width: 100%;
    justify-content: center;
  }

  .media-thumbnail-single {
    min-height: 320px;
  }

  .media-play-btn-single {
    width: 68px;
    height: 68px;
    font-size: 28px;
  }
}

@media (max-width: 767.98px) {
  .topbar-award,
  .topbar-contact-item {
    white-space: normal;
    line-height: 1.35;
  }

  .topbar-contact-item a {
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .section-pill,
  .info-chip {
    font-size: .9rem;
  }

  .section-pill {
    padding: .68rem 1rem;
  }

  .info-chip {
    width: 100%;
    justify-content: flex-start;
  }

  .page-hero-shell {
    padding: 1.1rem 1rem;
    border-radius: 20px;
  }

  .page-hero-badges {
    gap: .55rem;
  }

  .hero-panel-metric strong {
    min-width: 52px;
    font-size: 1.35rem;
  }

  .home-cta .cta-card {
    padding: 1.15rem;
    border-radius: 20px;
  }

  .home-cta .cta-card::before,
  .home-cta .cta-card::after {
    display: none;
  }

  .media-thumbnail {
    height: 170px;
  }

  .media-play-btn {
    width: 56px;
    height: 56px;
    font-size: 20px;
  }

  .media-badge {
    font-size: .75rem;
    padding: .35rem .62rem;
  }

  .media-body {
    padding: 14px;
  }

  .media-thumbnail-single {
    min-height: 250px;
    aspect-ratio: 4 / 3;
  }

  .media-play-btn-single {
    width: 58px;
    height: 58px;
    font-size: 22px;
  }

  .media-text-single {
    white-space: normal;
    width: calc(100% - 1.2rem);
    bottom: 12px;
    font-size: .84rem;
  }

  .journey-item {
    padding-left: 78px;
  }

  .journey-card {
    padding: 1.2rem;
  }

  .logo-track {
    width: 100%;
    max-width: 100%;
    justify-content: center;
    flex-wrap: wrap;
    gap: 18px;
    animation: none;
    padding: 20px 16px;
  }

  .logo-track img {
    max-width: min(140px, calc(50% - 18px));
    height: 44px;
    object-fit: contain;
  }

  .logo-track img:nth-child(n + 6) {
    display: none;
  }
}

@media (max-width: 575.98px) {
  .topbar .container {
    gap: .4rem;
  }

  .topbar-award,
  .topbar-contact-item {
    font-size: .84rem;
  }

  .logo-track {
    gap: 16px;
    padding: 18px 12px;
  }

  .logo-track img {
    max-width: min(132px, calc(50% - 16px));
    height: 40px;
  }

  .home-cta h4 {
    font-size: clamp(1.35rem, 7vw, 1.75rem);
  }

  .home-cta .container {
    padding-left: 10px;
    padding-right: 10px;
  }
}
