* {margin: 0;padding: 0; box-sizing: border-box;}

/* fonts */
/* Londrina Solid */
@font-face {font-family:"LS-Black"; src:url(fonts/Londrina_Solid/LondrinaSolid-Black.ttf);}
@font-face {font-family:"LS-Light"; src:url(fonts/Londrina_Solid/LondrinaSolid-Light.ttf);}
@font-face {font-family:"LS-Regular"; src:url(fonts/Londrina_Solid/LondrinaSolid-Regular.ttf);}
@font-face {font-family:"LS-Thin"; src:url(fonts/Londrina_Solid/LondrinaSolid-Thin.ttf);}

/* Roboto */
@font-face {font-family:"Roboto-Bold"; src:url(fonts/Roboto/Roboto-Bold.ttf);}
@font-face {font-family:"Roboto-ExtraLight"; src:url(fonts/Roboto/Roboto-ExtraLight.ttf);}
@font-face {font-family:"Roboto-Light"; src:url(fonts/Roboto/Roboto-Light.ttf);}
@font-face {font-family:"Roboto-Medium"; src:url(fonts/Roboto/Roboto-Medium.ttf);}
@font-face {font-family:"Roboto-Regular"; src:url(fonts/Roboto/Roboto-Regular.ttf);}
@font-face {font-family:"Roboto-SemiBold"; src:url(fonts/Roboto/Roboto-SemiBold.ttf);}


:root {
  --font-lb: "LS-Black", sans-serif;
  --font-ll: "LS-Light", sans-serif;
  --font-lr: "LS-Regular", sans-serif;
  --font-lt: "LS-Thin", sans-serif;

  --font-rb: "Roboto-Bold", sans-serif;
  --font-rxl: "Roboto-ExtraLight", sans-serif;
  --font-rl: "Roboto-Light", sans-serif;
  --font-rm: "Roboto-Medium", sans-serif;
  --font-rr: "Roboto-Regular", sans-serif;
  --font-rsb: "Roboto-SemiBold", sans-serif;

  --violet: #1B0238;
  --red: #EB2127;
  --blue:#1C76BC;
  --orange: #F25236;
}

html,body {max-width: 100%;overflow-x: hidden;margin-bottom: 0 !important;}

body {font-family:var(--font-rr);overflow-x: hidden !important; margin: 0;}
a {text-decoration:none; transition: all 0.3s ease-in-out;}

/* header css start */
.main-nav{background-color: #ffffff;}
.header-logo {max-width:363px; width: 100%; transition:transform 0.3s ease-in-out;}
.header-logo.shrink {transform:scale(0.85);}
.top-bar {background-color:var(--red); height:auto; display:flex; align-items:stretch;}
.involve-btn-wrapper {display:inline-flex; align-items:center; justify-content:center; height:100%;}
.involve-btn {background-color:#034896; padding:11px 20px 9px; font-family:var(--font-rsb); font-size:13px; height:auto; display:inline-block; color:#fff; border:none; text-decoration:none; transition:background 0.3s ease;}
.involve-btn:hover {background-color:#023670;}
.facebook-icon {background-color:#034896; width:35px; height:35px; border-radius:50%; transition:all 0.3s ease-in-out; display:inline-flex; align-items:center; justify-content:center;}
.facebook-icon i {font-size:clamp(14px,3vw,16px);}
.facebook-icon:hover {background-color:#fff;}
.facebook-icon:hover i {color:#034896;}
.phone-details {font-family:var(--font-rsb); font-size:clamp(13px, 1.5vw, 16px);}
.location {font-family:"WS-Medium"; font-size:13px;}
a{transition: all 0.3s ease-in-out;}
.phone-details:hover, .location:hover, .involve-btn:hover{color: #dfddb5 !important;}
.desktop-menu .nav {gap:10px;}
.nav-btn-wrap {gap: 30px;}
.nav-divider {width: 1px;height: 24px;background-color: #E6E6E6;flex-shrink: 0;}
.contact-btn {flex-shrink: 0;white-space: nowrap;}
.desktop-menu .nav-item{padding: 10px 9px;}
.desktop-menu .nav-link {color:var(--violet); font-family:var(--font-rsb); font-size:16px; line-height: 24px; padding:0; position:relative; transition:all 0.3s ease-in-out;}
.desktop-menu .nav-link.active {font-family:var(--font-rsb); font-size:16px; color:var(--red); border-radius:5px;}
.desktop-menu .nav-link:hover { color:var(--red); border-radius:5px;}
.desktop-menu .nav-link::after {content:""; position:absolute; left:0; bottom:0px; width:0%; height:2px; border-radius:5px 5px 0 0; background-color:var(--red); transition:width 0.3s ease-in-out;}
.desktop-menu .nav-link.active::after {width:100%;}
.desktop-menu .nav-link:hover::after {width:100%;}
.dropdown {position:relative;}
.dropdown::after {content:""; position:absolute; left:0; top:100%; width:100%; height:60%; background:transparent;}
.custom-dropdown {position:absolute; top:160%; left:0; min-width:200px; background:#ffffff; padding:0; z-index:999; display:none; border:none; box-shadow:0 4px 15px rgba(0, 0, 0, 0.15); border-radius:0px; overflow:hidden;}
.dropdown:hover .custom-dropdown {display:block; animation:fadeInUp 0.3s ease forwards;}
.custom-dropdown.is-closing {display:block; animation:fadeInDown 0.3s ease forwards;}
.main-nav.shrink .custom-dropdown {top: 135%;}
@keyframes fadeInUp {
from {opacity:0; transform:translateY(10px);}
to {opacity:1; transform:translateY(0);}
}

@keyframes fadeInDown {
from {opacity:1; transform:translateY(0);}
to {opacity:0; transform:translateY(10px);}
}



.custom-dropdown li {border-bottom:1px solid #E2E7EE; border-left:4px solid transparent;}
.custom-dropdown li:last-child {border-bottom:none;}
.custom-dropdown li:nth-child(5n+1) {border-left-color:var(--red);}
.custom-dropdown li:nth-child(5n+2) {border-left-color:#6E479D;}
.custom-dropdown li:nth-child(5n+3) {border-left-color:#008957;}
.custom-dropdown li:nth-child(5n+4) {border-left-color:#FAAF42;}
.custom-dropdown li:nth-child(5n+5) {border-left-color:var(--blue);}
.custom-dropdown a {color:var(--violet); display:block; padding:8px 15px; text-align:left; font-family:var(--font-rm); text-transform:uppercase; font-size:14px; transition:background-color 0.25s ease, color 0.25s ease;}
.custom-dropdown a:hover {background-color:#f0f8ff;}
.contact-btn {background-color:var(--blue); color:#fff; width:145px; height:45px; display:flex; justify-content:center; align-items:center; font-family:var(--font-rsb); font-size:16px; border-radius:8px; transition:all 0.3s ease-in-out; border:2px solid transparent;}
.contact-btn:hover {background-color:#fff; color:var(--red); border:2px solid var(--red);}
.dropdown-item.active, .dropdown-item:active {color:var(--red); font-weight:500; text-decoration:none; background-color:#f0f8ff;}
.phone-navs {display:none;}
#myBtn {position:fixed; bottom:30px; right:30px; z-index:9999; background-color:var(--red); color:white; border:none; outline:none; width:50px; height:50px; border-radius:50%; font-size:20px; cursor:pointer; box-shadow:0 4px 15px rgba(0, 0, 0, 0.2); transition:all 0.3s ease-in-out; opacity:0; visibility:hidden; display: flex;justify-content: center;align-items: center;}
#myBtn.show {opacity:1; visibility:visible;}
#myBtn:hover {background-color:#093e7a; transform:translateY(-3px); box-shadow:0 6px 20px rgba(0, 0, 0, 0.3);}
#myBtn i {vertical-align:middle;}
.dropdown-icon::before {content:'\f107'; font-family:"Font Awesome 7 Free"; font-weight:900; margin-left:5px; display:inline-block; transition:transform 0.3s ease;}
.nav-item.dropdown:hover .dropdown-icon::before {transform:rotate(180deg);}
.nav-item.dropdown.show .dropdown-icon::before {transform:rotate(180deg);}
.main-nav {padding-top:1rem; padding-bottom:1rem; box-shadow:0 0 0 rgba(0, 0, 0, 0); transition:padding 0.3s ease, box-shadow 0.4s ease;}
.main-nav.shrink {padding-top:0.25rem; padding-bottom:0.25rem; box-shadow:0 8px 24px rgba(0, 0, 0, 0.08), 0 2px 6px rgba(0, 0, 0, 0.04);}


/* body content */
.bodycontent h1 {font-family:var(--font-lr); font-size:clamp(30px,4.5vw,64px); line-height:clamp(40px,5vw,72px); color:#fff; margin-bottom: 10px;}
.bodycontent h2 {color:var(--red); font-family: var(--font-lr); font-size: clamp(28px, 4vw + 1rem, 44px); margin-bottom: 10px;}
.bodycontent h3 {color: #ffffff; font-family: var(--font-rb); font-size: clamp(22px, 2.5vw + 1rem, 32px); margin-bottom: 20px;}
.bodycontent h4 {font-family: var(--font-lr); font-size: clamp(17px,2vw,24px); color: var(--violet); margin-top: 10px;}
.bodycontent h5 {font-family: var(--font-rm); font-size: clamp(15px,2vw,20px); color: #303030; margin: 10px 0;}
.bodycontent p {font-family: var(--font-rr); font-size: clamp(14px,1.5vw,16px); line-height: clamp(18px,2vw,22px); color: var(--violet); margin: 20px 0;}
.bodycontent a {color: var(--red); font-family: var(--font-rm);font-size: clamp(14px,2vw,16px); transition: all 0.3s ease-in-out;}
.bodycontent p a:hover {color:var(--violet);}
.bodycontent p strong , .bodycontent p b{ }
.bodycontent ul {}
.bodycontent  table { width: 100%;}
.bodycontent  table td { padding: 10px; font-size:16px; color: #555;}
.bodycontent  table tr { background-color: #e6e6e6;}
.bodycontent  table tr:nth-child(2n) { background-color: #fff;}
.bodycontent section{padding: 80px 0;}
.bodycontent .link {color: var(--red); font-family: var(--font-rm); font-size: clamp(15px,2vw,20px); text-decoration: underline; transition: all 0.3s ease-in-out;}
.bodycontent .link:hover{color: var(--violet);}

/* banner css start  */
.banner-slide {min-height:500px; height:768px; max-height:768px; background-size:cover; background-position:center; background-repeat:no-repeat; position:relative; display:flex; align-items:center; overflow:hidden;}
.banner-slide::before {content:""; position:absolute; inset:0; background-image:inherit; background-size:cover; background-position:center; background-repeat:no-repeat; opacity:.7; z-index:0; transform:scale(1); will-change:transform;}
.slick-slide.slick-active .banner-slide::before {animation:bannerZoom 5s ease-in-out forwards;}


@keyframes bannerZoom {
from {transform:scale(1);}
to {transform:scale(1.12);}
}

.banner-overlay {position:absolute; inset:0; background:#26337B; opacity:.40; z-index:1;}
.banner-content {z-index:2; position:relative; color:#fff; max-width:1130px; margin-inline:auto; gap:10px;}
.banner-eyebrow {font-family:var(--font-rsb); color:#FAD842; font-size:clamp(19px,2vw,24px); line-height:clamp(19px,2vw,24px); display:block; margin-bottom: 10px;}
.banner-content h1 {font-family:var(--font-lr); font-size:clamp(28px,4.5vw,64px); line-height:clamp(36px,5vw,72px); color:#fff; margin-bottom: 10px;}
.banner-content h4 {font-family:var(--font-rsb); color:#fff; font-size:clamp(18px,2vw,28px); line-height:clamp(1.2,1vw,1.4); margin:0; max-width:90%;}
.banner-buttons {gap:15px; flex-wrap:wrap;}
.red-btn {background-color:var(--red); color:#fff !important; width:auto; min-width:145px; height:45px; display:flex; justify-content:center; align-items:center; font-family:var(--font-rsb); font-size:16px; border-radius:8px; transition:all .3s ease-in-out; border:2px solid transparent; padding:0 20px;}
.red-btn:hover {background-color:#fff; color:var(--red) !important; border:2px solid var(--red);}
.orange-btn {background-color:var(--orange); color:#fff !important; width:auto; min-width:145px; height:45px; display:flex; justify-content:center; align-items:center; font-family:var(--font-rsb); font-size:16px; border-radius:8px; transition:all .3s ease-in-out; border:2px solid transparent; padding:0 20px;}
.orange-btn:hover {background-color:#fff; color:var(--orange) !important; border:2px solid var(--orange);}
.green-btn {background-color:#3DA35D; color:#fff !important; width:auto; min-width:145px; height:45px; display:flex; justify-content:center; align-items:center; font-family:var(--font-rsb); font-size:16px; border-radius:8px; transition:all .3s ease-in-out; border:2px solid transparent; padding:0 20px;}
.green-btn:hover {background-color:#fff; color:#3DA35D !important; border:2px solid #3DA35D;}
.banner-prev, .banner-next {position:absolute; top:50%; transform:translateY(-50%); background:white; width:50px; height:50px; border-radius:50%; color:var(--red); font-size:18px; z-index:5; cursor:pointer; display:flex !important; justify-content:center; align-items:center; backdrop-filter:blur(5px); box-shadow:0 2px 8px rgba(0,0,0,0.15); overflow:hidden; transition:transform .3s ease, box-shadow .3s ease, background .3s ease, border-color .3s ease, color .3s ease; border:2px solid transparent;}
.banner-prev:hover, .banner-next:hover {background:#FAD842; border-color:#f0ca22; color:var(--violet); transform:translateY(-50%); box-shadow:0 6px 16px rgba(0,0,0,0.25);}
.banner-prev i, .banner-next i {transition:transform .3s ease;}
.banner-prev:active, .banner-next:active {transform:translateY(-50%) scale(0.96);}
.banner-prev {left:max(13px, calc(50% - 600px));}
.banner-next {right:max(13px, calc(50% - 600px));}
.banner-slide .slick-prev, .banner-slide .slick-next {display:none;}
.banner-slider {position:relative;}
/* banner css end  */

/* Special image overlay */
.img-special-overlay {position:relative; display:block; width:100%; max-width:358px; aspect-ratio:1 / 1; margin:0 auto 24px; background-image:url('./images/img-top-right-overlay.png'); background-repeat:no-repeat; background-position:top right; background-size:30% auto;}
.img-special-overlay .welcome-img {width:100%; height:100%; max-width:358px; max-height:358px; object-fit:cover; border-radius:50%; display:block; position:relative; z-index:1; margin-bottom:0;}
.img-special-overlay::before {content:''; position:absolute; top:1%; left:12%; width:19.55%; height:13.4%; background:url('./images/img-top-left-overlay.png') no-repeat center / contain; z-index:2; pointer-events:none;}
.img-special-overlay::after {content:''; position:absolute; bottom:1%; left:1%; width:29.3%; height:29.3%; background:url('./images/img-bottom-left-overlay.png') no-repeat center / contain; z-index:0; pointer-events:none;}



/* section 1 */
.welcome-section {background-color:rgba(186, 130, 94, 0.05); padding:70px 0;}
.welcome-wrap {gap:26px;}
.welcome-left {width:100%; max-width:744px;}
.welcome-left h2 {color:#F25236; margin-bottom:20px;}
.welcome-left h5 {color:var(--violet); margin-bottom:30px;}
.welcome-features {margin-bottom:30px; row-gap:20px;}
.welcome-feature {display:flex; align-items:flex-start; gap:12px;}
.welcome-feature img {width:64px; height:64px; object-fit:contain; flex-shrink:0;}
.welcome-feature p {margin:0;}
.welcome-left h4 {color:var(--violet); margin:0;}
.welcome-right {width:100%; max-width:392px; flex-shrink:0; display:flex; flex-direction:column; align-items:center;}
.welcome-img {width:100%; max-width:392px; height:auto; display:block; margin-bottom:24px;}
.welcome-btn.green-btn {width:100%; max-width:392px;}



/* Section2 */

.core-values-section {background-color:#D8D6B033; padding:60px 0;}
.core-heading {font-size:clamp(24px,3vw,32px); text-align:center;}
.core-values-section p {font-size:clamp(15px,3vw,20px); margin:0;}
.icon {width:72px; height:72px; flex-shrink:0;}
.blue-btn {background-color:var(--red); color:#fff; width:169px; height:40px; display:flex; justify-content:center; align-items:center; font-family:"WS-Bold"; font-size:14px; border-radius:5px; transition:all 0.3s ease-in-out; border:2px solid transparent; text-transform:uppercase;}
.blue-btn:hover {background-color:#fff; color:var(--red); border:2px solid var(--red);}

/* Section2 */
.testimonial-section {position:relative; min-height: 370px; background-image:url(./images/testimonial-bg.jpg); background-size:cover; background-position:center; background-repeat:no-repeat; padding:90px 0; overflow:hidden; display: flex; align-items: center;}
.testimonial-overlay {position:absolute; inset:0; background:#0000005d; z-index:0;}
.testimonial-section .container {z-index:1;}
.testimonial-slider {max-width:540px; margin:0 auto; text-align:center;}
.testimonial-slide h3 {color:#fff; margin-bottom:20px;}
.testimonial-slide h4 {color:#fff; margin:0; font-family: var(--font-rr);}
.custom-testimonial-dots {display:block; margin:30px 0 0;}
.custom-testimonial-dots .slick-dots {display:flex !important; justify-content:center; align-items:center; gap:10px; list-style:none; padding:0; margin:0; position:static; width:100%;}
.custom-testimonial-dots .slick-dots li {width:auto; height:auto; margin:0; list-style:none;}
.custom-testimonial-dots .slick-dots li button {display:block; width:18px; height:18px; padding:0; border:none; border-radius:50%; background-color:#fff; font-size:0; cursor:pointer; transition:background-color .3s ease, transform .3s ease;}
.custom-testimonial-dots .slick-dots li.slick-active button {background-color:#44BD57; transform:scale(1.1);}
.custom-testimonial-dots .slick-dots li button::before{content: none;}


/* Section 3 */

.campus-section {background-color:#E9F9F1; padding:70px 0;}
.campus-cards {max-width:720px; margin:40px auto 30px;}
.campus-card {background:#fff; border-radius:8px; max-width: 360px; overflow:hidden; box-shadow:0 4px 16px rgba(0, 0, 0, 0.06); display:flex; flex-direction:column; width:100%; text-decoration:none; color:inherit; transition:transform .35s cubic-bezier(.22, 1, .36, 1), box-shadow .35s ease;}
.campus-card:hover {transform:translateY(-6px); box-shadow:0 12px 28px rgba(0, 0, 0, 0.12); color:inherit;}
.campus-card-content {padding:24px; position:relative;}
.campus-card-content::before {content:""; position:absolute; top:-9px; right:0; width:100%; height:10px; background-image:url(./images/card-overlay.svg); background-repeat:no-repeat; background-size:contain; background-position:top right; pointer-events:none; z-index:1;}
.campus-card-img {height:220px; overflow:hidden;}
.campus-card-img img {width:100%; height:100%; object-fit:cover; display:block;}
.campus-card-content {padding:24px;}
.campus-card-content h4 {color:var(--red); margin-bottom:12px;}
.campus-card-content .campus-phone {font-weight:bold; margin:0 0 4px;}
.campus-card-content .campus-address {margin:0; line-height:1.5;}
.campus-card-content .campus-phone a, .campus-card-content .campus-address a {position:relative; display:inline-block; color:inherit; text-decoration:none;}
.campus-card-content .campus-phone a::before, .campus-card-content .campus-address a::before {content:""; position:absolute; left:0; bottom:0px; width:100%; height:1px; background-color:var(--red); transform:scaleX(0); transform-origin:left; transition:transform .35s cubic-bezier(.22,1,.36,1);}
.campus-card-content .campus-phone a:hover, .campus-card-content .campus-address a:hover {color:var(--red);}
.campus-card-content .campus-phone a:hover::before, .campus-card-content .campus-address a:hover::before {transform:scaleX(1);}
.campus-card-content h4 a {color:var(--red); font-family: var(--font-lr); font-size: clamp(18px,2vw,24px);}


/* Section 4 */
.program-section {background-color:#e8f1f8; padding:70px 0; overflow:hidden;}
.section-desc {max-width:780px; margin-inline:auto;}
.program-overlay {position:absolute; bottom:0; z-index:0; pointer-events:none; height:auto;}
.program-overlay--left {left:0; width:clamp(280px, 55vw, 708px);}
.program-overlay--right {right:0; width:clamp(280px, 55vw, 708px);}
.program-slider-wrap {max-width:1128px; margin:0px auto; position:relative;}
.program-slider .slick-track {display:flex !important;}
.program-slider .slick-slide {height:auto; display:flex !important;}
.program-slide {padding:0 12px; display:flex; width:100%;}
.program-card {max-width:360px; margin-inline:auto; background:#fff; border-radius:8px; overflow:hidden; box-shadow:0 4px 16px rgba(0, 0, 0, 0.06); display:flex; flex-direction:column; width:100%; text-decoration:none; color:inherit; transition:transform .35s cubic-bezier(.22, 1, .36, 1), box-shadow .35s ease;}
.program-card:hover {transform:translateY(-6px); box-shadow:0 12px 28px rgba(0, 0, 0, 0.12); color:inherit;}
.program-slider .slick-list{padding: 20px 0;}
.program-card-img {height:220px; overflow:hidden;}
.program-card-img img {width:100%; height:100%; object-fit:cover; display:block;}
.program-card-content {padding:24px; flex:1; position:relative;}
.program-card-content::before {content:""; position:absolute; top:-9px; right:0; width:100%; height:10px; background-image:url(./images/card-overlay.svg); background-repeat:no-repeat; background-size:contain; background-position:top right; pointer-events:none; z-index:1;}
.program-card-content h4, .program-card-content p {position:relative; z-index:2;}
.program-card-content h4 {color:var(--red); margin-bottom:12px;}
.program-card-content p {margin:0; line-height:1.5;}
.program-slider-wrap .banner-prev, .program-slider-wrap .banner-next {position:absolute; top:40%; transform:translateY(-50%); background:#fff; width:50px; height:50px; border-radius:50%; color:var(--red); font-size:18px; z-index:5; cursor:pointer; display:flex !important; justify-content:center; align-items:center; box-shadow:0 2px 8px rgba(0,0,0,0.15); border:2px solid transparent; transition:transform .35s cubic-bezier(.22, 1, .36, 1), box-shadow .3s ease, background .3s ease, color .3s ease, border-color .3s ease;}
.program-slider-wrap .banner-prev {left:-70px;}
.program-slider-wrap .banner-next {right:-70px;}
.program-slider-wrap .banner-prev:hover, .program-slider-wrap .banner-next:hover {background:#FAD842; border-color:#f0ca22; color:var(--violet); box-shadow:0 6px 16px rgba(0,0,0,0.25);}
.custom-program-dots {display:block; margin:0 0 30px;}
.custom-program-dots .slick-dots {display:flex !important; justify-content:center; align-items:center; gap:10px; list-style:none; padding:0; margin:0; position:static; width:100%;}
.custom-program-dots .slick-dots li {width:auto; height:auto; margin:0; list-style:none;}
.custom-program-dots .slick-dots li button {display:block; width:10px; height:10px; padding:0; border:none; border-radius:50%; background-color:#CCCCCC; font-size:0; cursor:pointer; transition:background-color .3s ease, transform .3s ease;}
.custom-program-dots .slick-dots li.slick-active button {background-color:#E32936; transform:scale(1.2);}
.custom-program-dots .slick-dots li button::before{content: none;}
.custom-program-dots ul.slick-dots:has(li:only-child) {display:none !important;}
.custom-program-dots ul.slick-dots:has(li:only-child) ~ * {display:none !important;}

/* Section5 */
.gallery-section {position:relative;}
.gallery-grid {--gap:6px; --short:325px; --tall:calc(var(--short) * 2 + var(--gap)); display:grid; grid-template-columns:repeat(3, 1fr); grid-template-rows:repeat(3, var(--short)); grid-auto-flow:column; gap:var(--gap); margin-top:40px; max-width:1280px; margin-inline:auto;}
.gallery-item {overflow:hidden; border-radius:0px; position:relative; isolation:isolate;}
.gallery-item--tall {grid-row:span 2;}
.gallery-item--short {grid-row:span 1;}
.gallery-item img {width:100%; height:100%; object-fit:cover; display:block; transform:scale(1) translateZ(0); backface-visibility:hidden; transition:transform .6s cubic-bezier(.22, 1, .36, 1); will-change:transform;}
.gallery-item:hover img {transform:scale(1.09) translateZ(0);}


/* Section6 */
.affiliates-section {position:relative;}
.section-desc {max-width:932px; margin-inline:auto;}
.affiliate-logo {display:flex; align-items:center; justify-content:center; padding:10px; transform:translate3d(0, 0, 0); transition:transform .4s cubic-bezier(.16, 1, .3, 1), filter .4s ease; will-change:transform;}
.affiliate-logos--row1 {
  max-width: 942px;
  margin-inline: auto;
}
.affiliate-logo:nth-child(-n+4) {max-height:216px;}
.affiliate-logo:nth-child(-n+4) img {max-height:216px;}
.affiliate-logo:nth-child(n+5) {max-height:92px;}
.affiliate-logo:nth-child(n+5) img {max-height:92px;}
.affiliate-logo img {max-width:100%; width:auto; height:auto; object-fit:contain; pointer-events:none;}
.affiliate-logo:hover {transform:translate3d(0, -6px, 0); filter:drop-shadow(0 10px 16px rgba(0, 0, 0, 0.18));}


/* Footer */
.site-footer {background-color:#0061CE; padding:80px 0 0; color:#fff; position:relative; overflow:hidden;}
.site-footer > * {z-index:2; position:relative;}
.site-footer::after {content:''; position:absolute; top:0; left:0; width:100%; height:100%; background-image:url(./images/Footer-overlay-2.png); background-repeat:repeat; background-size:auto; opacity:0.6; z-index:1; pointer-events:none;}
.container-small{max-width: 1223px !important; padding: 0 20px; margin-inline: auto;}

/* .footer-top-row{gap: 30px;} */
.site-footer iframe{width: 100%;max-width: 362px;display: block;}

.site-footer .footer-title {color:#fff; font-family: var(--font-lr); font-size: clamp(17px,2vw,24px);}
.site-footer .footer-col-title {color:#fff; margin-bottom:clamp(10px,1.5vw,18px); font-family: var(--font-lr); font-size: clamp(17px,2vw,24px);}

.social-icon {width:clamp(45px,5vw,64px); height:clamp(45px,5vw,64px); display:flex; align-items:center; justify-content:center;}
.social-icon img {width:100%; height:100%; object-fit:cover; transform:translateZ(0); filter:drop-shadow(0 8px 14px rgba(255,255,255,0)); transition:transform .35s cubic-bezier(.22, 1, .36, 1), filter .35s ease; will-change:transform, filter;}
.social-icon img:hover {transform:translateY(-6px) translateZ(0); filter:drop-shadow(0 8px 14px rgba(255,255,255,0.45));}

.footer-links {list-style:none; padding:0; margin:0;}
.footer-links li {margin-bottom:clamp(2px,1.5vw,7px);}
.site-footer a:not(.footer-location) {font-family:var(--font-rm); font-size: clamp(14px,1.5vw,16px); color:var(--yellow, #FAD842); text-decoration:none; transition:color 0.3s;}
.site-footer a:hover {color:var(--violet);}
.footer-location {display:flex; align-items:flex-start; gap:clamp(7px, 2vw, 12px); text-decoration:none; transform:translate3d(0, 0, 0); backface-visibility:hidden; perspective:1000px; transition:transform .5s cubic-bezier(.16, 1, .3, 1); will-change:transform;}
.location-icon {width:clamp(18px, 2.5vw, 24px); height:auto; flex-shrink:0; margin-top:4px; transform:scale(1); backface-visibility:hidden; transition:transform .5s cubic-bezier(.16, 1, .3, 1); will-change:transform; pointer-events:none;}
.location-text {flex:1; pointer-events:none;}
.footer-location .location-name {color:var(--yellow, #FAD842); font-family:var(--font-rm); margin-bottom:6px; margin-top:0; transition:color .4s ease;}
.footer-location .location-name img {margin-right:6px;}
.footer-location .location-detail {font-family:var(--font-rm); line-height:1.4; color:#fff; margin:0; transition:color .4s ease;}
.footer-location:hover {transform:translate3d(6px, 0, 0);}
.footer-location:hover .location-icon {transform:scale(1.15);}
.footer-location:hover .location-name {color:#fff;}
.footer-location:hover .location-detail {color:var(--yellow, #FAD842);}

.site-footer .footer-copyright {margin-top: 0 !important; color:#fff; font-family: var(--font-rm); font-size:16px;}

/* ===== FOOTER BOTTOM — UNCHANGED ===== */
.footer-bottom {background-color: #E6EFFA; padding:10px 0; text-align:center; position:relative;z-index: 2; min-height: 76px;}
.footer-bottom .container {display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap;}
.footer-bottom .footer-bottom-text { font-size: 12px !important; line-height: 1.2; color:var(--violet); max-width: 950px; width: 75%; margin: 13.5px 0;}
.custom_hr {background: #fff;opacity: 0.15;height: 1px;}

/* inner page start */
.inner-banner-section {position:relative; height:450px; overflow:hidden; display:flex; align-items:center;}
.inner-banner-section .banner-img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center center; z-index:0;}
.inner-banner-overlay {position:absolute; inset:0; background:var(--violet); opacity:0.5; z-index:1;}
.inner-banner-section .container {z-index:2;}
.inner-banner-section h2 {color:#fff; margin:0; font-family: var(--font-lr); font-size: clamp(28px, 4vw + 1rem, 44px);}


/* about page */
.wtb-tabs-section {padding:50px 0 70px;}
.wtb-tabs {display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-bottom:40px;}
.wtb-tab {background:#fff; border:2px solid #E5E5E5; color:var(--violet); font-family:var(--font-rsb); font-size:15px; padding:10px 22px; border-radius:30px; cursor:pointer; transition:all .3s ease;}
.wtb-tab:hover {border-color:var(--red); color:var(--red);}
.wtb-tab.active {background:var(--red); border-color:var(--red); color:#fff;}
.wtb-panel-card {display:none; background:#fff; border-radius:8px; overflow:hidden; box-shadow:0 4px 16px rgba(0, 0, 0, 0.06);}
.wtb-panel-card.active {display:flex; flex-wrap:wrap;}
.wtb-panel-img {width:100%; max-width:600px; min-height:280px; overflow:hidden;}
.wtb-panel-img img {width:100%; height:100%; object-fit:cover; display:block; object-position: center;}
.wtb-panel-content {flex:1; min-width:280px; padding:32px;}
.wtb-panel-content h4 {color:var(--red); margin-bottom:24px;}
.wtb-checklist-grid {display:grid; grid-template-columns:repeat(2, 1fr); gap:18px 24px;}
.wtb-check-item {display:flex; align-items:flex-start; gap:10px;}
.wtb-check-item i {color:#3DA35D; font-size:15px; margin-top:4px; flex-shrink:0;}
.wtb-check-item p {margin:0; line-height:1.5; color:var(--violet);}
.wtb-check-item p strong {color:#222;}
.wtb-panel-card.active .wtb-panel-img {animation:slideInLeft .6s cubic-bezier(.22,1,.36,1);}
.wtb-panel-card.active .wtb-panel-content {animation:slideInRight .6s cubic-bezier(.22,1,.36,1);}

@keyframes slideInLeft {
from {opacity:0; transform:translateX(-60px);}
to {opacity:1; transform:translateX(0);}
}

@keyframes slideInRight {
from {opacity:0; transform:translateX(60px);}
to {opacity:1; transform:translateX(0);}
}

.wtb-callout {display:flex; align-items:center; gap:14px; max-width:fit-content; margin:40px auto 0; padding:18px 22px; background:rgba(226, 51, 51, 0.06); border-left:4px solid var(--red); border-radius:6px;}
.wtb-callout i {color:var(--red); font-size:20px; flex-shrink:0;}
.wtb-callout p {margin:0; font-family:var(--font-rsb); color:var(--red);}
.inquiry-section {position:relative; min-height: 400px; background-image:url(./images/inner-banner-bg.jpg); background-size:cover; background-position:center; background-repeat:no-repeat; padding:90px 0; overflow:hidden; display: flex; align-items: center;}
.inquiry-overlay {position:absolute; inset:0; background:#0000008e; z-index:0;}
.inquiry-section .container {z-index:1;}
.inquiry-section h2 {color: #fff;margin-bottom: 24px;}
.inquiry-section .orange-btn{width: fit-content;}


/* program page */

.program-welcome-section{background: linear-gradient(to bottom,rgba(186, 130, 94, 0.05) 60%,#fff 100%); padding:70px 0;}
.program-welcome-section .welcome-section{background:transparent; padding:60px 0;z-index: 2; position: relative;}
.program-welcome-section strong{color: var(--red);}
.section-divider {max-width:40%; margin:20px auto; border:none; border:2px solid #BA825E; border-radius: 50%; opacity:0.30;}
.program-welcome-section .welcome-section a{color:var(--red)}
/* inner page end  */


.form-control:focus, .form-select:focus{box-shadow:none;}
.form-group{margin-bottom: 20px;}
.form-label{margin-bottom: 3px; color: #333333;}
.form-control, .form-select{border-color: #dfdfdf; background-color:#ECF2F9;}
.form-text{font-size: 0.875rem; color: #656565;}
.error{color:#dc3545; font-size:0.75rem;}
.contact-form .captcha-img img{border:2px solid #506492; border-radius: .375rem;}
.contact-form .btn-submit {position:relative; overflow:hidden; color:#fff !important; padding:10px 20px; font-family:var(--font-p); font-weight:500; font-size:clamp(15px, 3vw, 20px); border-radius:5px; background-color:var(--blue); z-index:1; transition:color 0.4s ease; cursor:pointer; display:inline-flex; justify-content:center; align-items:center; min-width:217px; min-height:54px; text-transform:uppercase;}
.contact-form .btn-submit::before {content:""; position:absolute; top:50%; left:50%; width:0; aspect-ratio:1 / 1; background-color:#000; border-radius:50%; transform:translate(-50%, -50%); transition:width 0.6s ease; z-index:-1;}
.contact-form .btn-submit:hover {color:#fff;}
.contact-form .btn-submit:hover::before {width:500px;}


@media screen and (max-width: 1200px) {
.desktop-nav {display:none;}
.phone-navs {display:block;}
.banner-content {gap: 0px;}
}

@media screen and (max-width: 1400px) {
.desktop-menu .nav {gap:5px;}
}

@media (min-width: 1550px) {
.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {max-width:1480px; padding-inline:20px;}
}

@media screen and (max-width: 1323px) {
.container {max-width:95%;}
.program-slider-wrap .banner-prev {left:0;}
.program-slider-wrap .banner-next {right:0;}
.welcome-left{max-width: 60%;}
.welcome-right {max-width:40%;}
}

@media screen and (max-width: 1024px) {
.custom-dots .slick-dots {display:block;}
.btn-brown {display:inline-flex; margin:0 auto;}
.bodycontent h2 {font-size:35px;}
.bodycontent h3 {font-size:26px;}
.bodycontent h4 {font-size:20px;}
.bodycontent h5 {font-size:16px;}
.bodycontent p {font-size:14px;}
.container {max-width:95%;}
.banner-slide {min-height:500px; height:550px; max-height:550px;}
.banner-prev, .banner-next{width: 40px;height: 40px;font-size: 16px;}
.site-footer {padding:60px 0 0;}
.bodycontent section{padding: 50px 0;}
.gallery-grid {--short:210px;}
.testimonial-slider {max-width:80% !important; margin:0 auto; text-align:center;}
.testimonial-section{min-height: 300px;}
.custom-testimonial-dots .slick-dots li button {display: block;width: 13px;height: 13px;}
.welcome-feature img {width: 44px;height: 44px;}
.inner-banner-section {height:300px; background-attachment: scroll;}
.wtb-panel-img {max-width:100%; min-height:220px;}
.inquiry-section {position:relative; min-height: 300px;}
.program-welcome-section{padding:40px 0;}
.program-welcome-section .welcome-section{background:transparent; padding:20px 0;}
.section-divider {max-width:80%; opacity:0.2;}
}

@media screen and (max-width: 767.9px) {
.bodycontent h2 {font-size:32px; line-height: 1.1;}
.bodycontent h3 {font-size:22px;}
.bodycontent h4 {font-size:19px;}
.bodycontent h5 {font-size:16px;}
.bodycontent p {font-size:15px;}
.container {max-width:95%;}
.banner-slide {height:auto; min-height:auto; padding:60px 0; aspect-ratio:1/1;}
.blue-btn1 {padding:12px 20px; min-width:180px; min-height:50px;}
.left-leaf, .right-leaf {opacity:0.4 !important; z-index:-1 !important;}
.right-leaf {bottom:38%;}
.custom-dots .slick-dots {display:block;}
.btn-brown {display:inline-flex; margin:0 auto;}
.welcome-section {padding:60px 0 80px;}
.programs-section {padding:80px 0 0px;}
.affiliates-logos {gap:30px;}
.affiliates-logos img {max-height:60px;}
.banner-content h4{max-width: 80%;}
.banner-prev, .banner-next {width:35px; height:35px; border-radius:50%; font-size:17px;}
#myBtn {position:fixed; bottom:30px; right:8px; z-index:9999; width:40px; height:40px;}
.banner-slide {min-height:300px; height:450px; max-height:550px;}
.site-footer {padding:50px 0 0;}
.bodycontent section{padding: 40px 0;}
.gallery-grid {grid-template-columns:1fr; grid-template-rows:none; grid-auto-flow:row; --gap:16px; gap:var(--gap);}
.gallery-item--tall, .gallery-item--short {grid-row:auto; height:auto;}
.gallery-item--tall {aspect-ratio:4 / 6;}
.gallery-item--short {aspect-ratio:16 / 12;}
.program-overlay {max-width:55%; opacity:0.6;}
.program-slider-wrap .banner-prev, .program-slider-wrap .banner-next {width:40px; height:40px; font-size:14px;}
.testimonial-slider {max-width:90% !important; margin:0 auto; text-align:center;}
.testimonial-section{min-height: 300px;}
.custom-testimonial-dots .slick-dots li button {display: block;width: 10px;height: 10px;}
.welcome-wrap {flex-direction:column; align-items:center;}
.welcome-left, .welcome-right {max-width:100%;}
.welcome-right {margin-top:30px;}
.welcome-feature img {width:55px; height:55px;}
.inner-banner-section {height:250px; background-attachment: scroll;}
.inquiry-section {position:relative; min-height: 300px;}
.program-welcome-section{padding:30px 0;}
.section-divider {max-width:70%; opacity:0.3;}
}

@media (max-width: 575px) {
.welcome-features .col-sm-6 {width:100%;}
.welcome-feature {align-items:center;}
.welcome-feature img {width:45px; height:45px;}
.wtb-checklist-grid {grid-template-columns:1fr;}
.wtb-tabs {gap:8px;}
.wtb-tab {font-size:13px; padding:8px 16px;}
.container {max-width:100%;}
.site-footer .footer-copyright{font-size:15px;}
.img-special-overlay::before {min-width:45px; min-height:32px;}
.img-special-overlay::after {min-width:65px; min-height:65px;}
.img-special-overlay {max-width: 320px;}
}
