@font-face{font-family:"gothm";src:url("../css/fonts/gothm.woff") format("woff");src:url("../css/fonts/gothm.woff2") format("woff2");font-display: swap;}
@font-face{font-family:"gbold";src:url("../css/fonts/gbold.woff") format("woff");src:url("../css/fonts/gbold.woff2") format("woff2");font-display: swap;}
@font-face{font-family:"gbook";src:url("../css/fonts/gbook.woff") format("woff");src:url("../css/fonts/gbook.woff2") format("woff2");font-display: swap;}
@font-face{font-family:"pditalic";src:url("../css/fonts/pditalic.woff2") format("woff2");font-display: swap;}
*{padding: 0;margin: 0;box-sizing: border-box;}

html{scroll-behavior: smooth;scroll-padding: 5em;}

/* DEFAULTS */
/* Container */
.container {max-width: 1360px;margin: 0 auto;padding: 0 15px;box-sizing: border-box;}

/* Small to medium screens (tablets and below) */
@media (max-width: 1199.98px) {
  .container {
    max-width: 100%;
    padding: 0 10px;
  }
}

/* Extra large screens (1200px and up) */
@media (min-width: 1200px) {
  .container {
    max-width: 1300px;
  }
}

/* Container */
section{padding: 60px 0px;}
h1, h2, h3, h4, h5, h6{font-family: 'gothm';}
a{font-family: 'gothm';text-decoration: none;}
p{font-family: 'gothm';font-weight: 500;color: var(--black);font-size: 18px;}
li{list-style: none;}
.main-btn{background:#fff;color: #000;text-transform: uppercase;padding: 10px 20px;display: flex;gap:10px}
.main_hdng{font-size: 2.6em;text-align: center;margin-block: 10px;font-weight: bold;}
.hdng{text-align: center;}
:root{
    --white:#fff;
    --black:#000;
    --green:#2d814a;
    --blue:#203a8f;
    --purple:#9333ea;
    --orange:#ea580c;
    --red:#dc2626;
    --lgreen:#c6fbd8;
    --lred:#ffe8c7;
    --olive:#f0f7b5;
    --lblue:#e5f0ff;
    --llgreen:#ecfdf2;
    --lpurple:#f7efff;
    --lornage:#fff2e1;
    --lred:#feeaea;
    --counter:#e4427e;
    --drkblue:#060d28;

}

.underline{position:relative;font-family:'pditalic';color: var(--green);}
.underline::before{position:absolute;content: '';background: url('../img/underline.webp')no-repeat;background-size: contain;width:100%;height:100%;bottom: -50px;}
/* DEFAULTS */

html {
    scroll-behavior: smooth;
}
/* ----------------------- HEADER --------------------*/
.site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    padding: 12px 0;
    border-bottom: 1px solid #eee;
    z-index: 9999;
}
.site-header .container {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 0 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.site-header .logo img {
    height: 70px;
    width: auto;
}
.header-right {
    display: flex;
    align-items: center;
    gap: 25px;
    white-space: nowrap;
}
.main-nav {
    display: flex;
    gap: 25px;
    align-items: center;
}
.main-nav a {
    color: #203a8f;
    font-size: 16px;
    text-decoration: none;
    font-weight: 500;
}
.main-nav a:hover {
    color: #203a8f;
}
.btn-outline {
    padding: 10px 20px;
    border: 2px solid #203a8f;
    color: #203a8f;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: 0.2s;
}
.btn-outline:hover {
    background: #e83e8c;
    color: #fff;
}
.menu-toggle {
    display: none;
    font-size: 28px;
    cursor: pointer;
    color: #203a8f;
}
@media (min-width:768px) and (max-width:991px) {
    .site-header .container {
        display: flex;
        align-items: center;
        justify-content: space-between; 
        padding: 0 25px;
    }
    .site-header .logo img {
        height: 75px;
         margin-right: 550px;
    }
    .main-nav,
    .btn-outline {
        display: none;
    }
    .menu-toggle {
        display: block;
        font-size: 34px;
        cursor: pointer;
        color:#203a8f;
        margin: 0;
        padding: 0;
    }
    .main-nav.mobile-open {
        display: block;
        position: absolute;
        top: 80px;
        left: 0;
        width: 100%;
        background:#fff;
        border-top: 1px solid #eee;
        padding: 20px;
        z-index: 9999;
    }
    .main-nav.mobile-open a {
        display: block;
        padding: 14px 0;
        border-bottom: 1px solid #eee;
        font-size: 18px;
    }
}
@media (max-width:767px) {

    .site-header .container {
        display: flex;
        align-items: center;
        justify-content: space-between;  
        padding: 0 15px;
    }
    .site-header .logo img {
        height: 55px;
        margin-right: 150px;
        
    }
    
    .main-nav,
    .btn-outline {
        display: none;
    }
    .menu-toggle {
        display: block;
        font-size: 32px;
        cursor: pointer;
        color:#203a8f;
        margin: 0;
        padding: 0;
    }
    .main-nav.mobile-open {
        display: block;
        position: absolute;
        top: 70px;
        left: 0;
        width: 100%;
        background:#fff;
        padding: 15px 20px;
        border-top: 1px solid #eee;
        z-index: 10000;
    }
    .main-nav.mobile-open a {
        display: block;
        padding: 12px 0;
        border-bottom: 1px solid #eee;
        font-size: 16px;
    }
}
/* ----------------------BANNER-------------------*/
.banner-wrapper {
    position: relative;
    width: 100%;
    height: auto;
    margin-top: 70px; 
    overflow: hidden;
    object-fit: scale-down;
}
.dvvid,
.main_banner .item {
    position: relative;
    width: 100%;
    height: 100%;
}
.dvvid img,
.dvvid video,
.dvvid picture {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.dvvid::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    z-index: 1;
}
/*-------------------------- Banner Text ---------------------*/
.ban_dsc {
    position: absolute;
    top: 45%;
    left: 6%;
    transform: translateY(-50%);
    z-index: 5;
    width: 45%;
    color: #fff;
}
.ban_dsc h1 {
    font-size: 3rem;
    line-height: 1.2;
    font-weight: 700;
}
.ban_dsc p {
    font-size: 1.1rem;
    margin-top: 12px;
    line-height: 1.5;
}
.ban_btn {
    display: inline-block;
    background: #fff;
    color: #203a8f;
    font-weight: 700;
    padding: 12px 28px;
    border-radius: 6px;
    margin-top: 18px;
    font-size: 16px;
}
/* ----------------------------- FORM --------------------------- */
.frmdv {
    position: absolute;
    right: 40px;
    top: 50%;
    transform: translateY(-50%);
    width: 360px;
    padding: 22px;
    border-radius: 12px;
    z-index: 6;
}
/* -----------------------SLICK DOTS---------------------------- */
.main_banner .slick-dots {
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translateX(-50%);
    display: flex !important;
    gap: 12px;
    z-index: 10;
}
.main_banner .slick-dots li {
    width: 45px;
    height: 4px;
    background: rgba(255,255,255,0.55);
    border-radius: 10px;
    transition: 0.3s;
}
.main_banner .slick-dots li.slick-active {
    background: #fff;
    width: 55px;
}
.slick-dots li button {
    font-size: 0 !important;
    color: transparent !important;
    line-height: 0 !important;
}
@media(max-width:1024px){
    .banner-wrapper {
        height: auto;
        min-height: 65vh;      
    }
    .dvvid {
        height: auto;
        min-height: 65vh;
    }
    .dvvid img,
    .dvvid video {
        height: auto;
        min-height: 65vh;
        object-fit: cover;
    }
    .frmdv{
        position: relative;
        width: 90%;
        max-width:420px;
        margin:25px auto;
        transform:none;
        right:auto;
        top:auto;
    }
    .ban_dsc{
        width:100%;
        text-align:center;
        left:0;
        padding:0 20px;
        top:28%;
    }
    .ban_dsc h1{ font-size:2rem; }
}
@media (width:375px) and (height:507px){
    .ban_dsc h1{ font-size:1.5rem; }
    .ban_dsc p{ font-size:0.85rem; }
    .frmdv{ width:92%; padding:16px; }
    .dvvid img,
    .dvvid video,
    .dvvid picture{
        width:100% !important;
        height:100vh !important;     
        object-fit:contain !important; 
        object-position:center !important;
    }
}
@media (width:425px) and (height:507px){
    .ban_dsc h1{ font-size:1.65rem; }
    .ban_dsc p{ font-size:0.92rem; }
    .frmdv{ width:86%; padding:15px; }
    .dvvid img,
    .dvvid video,
    .dvvid picture{
        width:100% !important;
        height:58vh !important;     
        object-fit:contain !important;
        object-position:top center !important;
    }
}
/*--------------------------COUNTER SECTION------------------------ */
#why-choose-us {
    text-align: center;
    padding: 60px 0;
    background: #0d1736 !important;
    color: #fff;
    font-family: 'gothm';
}
#why-choose-us .main_hdng {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 10px;
}
#why-choose-us .underline {
    width: 60px;
    height: 3px;
    background: #e83e8c;
    margin: 20px auto 40px;
}
.counter09 {
    display: flex;
    justify-content: center;
    text-align: center;
    margin-top: 40px;
    width: 80%;
    margin-inline: auto;
    gap: 40px;
    flex-wrap: nowrap;
}
.counter09 .cntdv {
    width: 15%;
    position: relative;
}
.counter09 .cntdv h2 {
    color: #e83e8c;
    font-size: 3.2em;
    font-weight: 800;
    margin-bottom: 8px;
}
.counts {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    margin-top: 8px;
}
@media (max-width: 480px) {
    #why-choose-us {
        padding: 40px 15px;
    }
    #why-choose-us .main_hdng {
        font-size: 22px;
    }
    .counter09 {
        flex-direction: column;
        gap: 25px;
        width: 100%;
        margin-top: 25px;
    }
    .counter09 .cntdv {
        width: 100%;
    }
    .counter09 .cntdv h2 {
        font-size: 2.2em;
    }
    .counts {
        font-size: 14px;
    }
}
@media (min-width: 481px) and (max-width: 767px) {
    #why-choose-us .main_hdng {
        font-size: 26px;
    }
    .counter09 {
        flex-wrap: wrap;
        gap: 30px;
        width: 100%;
    }
    .counter09 .cntdv {
        width: 45%;
    }
    .counter09 .cntdv h2 {
        font-size: 2.6em;
    }
}
@media (min-width: 768px) and (max-width: 1024px) {
    #why-choose-us .main_hdng {
        font-size: 30px;
    }
    .counter09 {
        flex-wrap: wrap;
        gap: 35px;
        width: 90%;
    }
    .counter09 .cntdv {
        width: 30%;
    }
    .counter09 .cntdv h2 {
        font-size: 3em;
    }
}
@media (min-width: 1025px) and (max-width: 1366px) {
    .counter09 .cntdv {
        width: 22%;
    }
}
/*--------------------- Why-ryan---------------------- */
.why-ryan {
    padding: 90px 0;
    background: linear-gradient(135deg,#fefbff,#eef2ff);
    text-align:center;
    font-family:'gothm';
}
.ryan-points {
    max-width:850px;
    margin:35px auto;
    text-align:left;
    font-size:17px;
    color:#3E3E3E;
    line-height:1.85;
}
.ryan-points li{
    padding-left:10px;
    border-left:3px solid #e83e8c;
    margin-bottom:12px;
    transition:.3s ease;
}
.ryan-points li:hover{
    color:#e83e8c;
    border-left-color:#203a8f;
    transform:translateX(6px);
    background:rgba(232,62,140,0.08);
    border-radius:4px;
    padding-left:14px;
}
.why-ryan .title{
    font-size:38px;
    font-weight:800;
    color:#0d1736;
}
.why-ryan .title span{
    background:linear-gradient(90deg,#ff6fa4,#e83e8c);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}
.why-ryan .subtitle{
    font-size:20px;
    font-weight:600;
    color:#56618a;
    letter-spacing:.3px;
}
.features-grid{
    display:flex;
    gap:28px;
    overflow:hidden;
    white-space:nowrap;
    
}
.feature-box{
    background:#fff;
    border-radius:18px;
    padding:22px;
  
    border:1px solid #ececec;
    min-width:280px;
    max-width:280px;
    height:430px;
    flex-shrink:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    overflow:hidden;
}
.feature-box img{
    width:100%;
    height:200px;
    border-radius:14px;
    object-fit:cover;
    flex-shrink:0;
}
.feature-box h3{
    margin:12px 0 6px;
    font-size:18px;
    font-weight:700;
    color:#0d1736;
}
.feature-text{
    font-size:14px;
    line-height:1.6;
    color:#444;
    overflow:hidden;
    display:block;
    height:160px;
}
/*--------------- WHY RYAN SECTION ----------------- */
.why-ryan {
    padding: 90px 0;
    background: linear-gradient(135deg,#fefbff,#eef2ff);
    text-align:center;
    font-family:'gothm';
}
.why-ryan .title{
    font-size:38px;
    font-weight:800;
    color:#0d1736;
}
.why-ryan .title span{
    background:linear-gradient(90deg,#ff6fa4,#e83e8c);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}
.why-ryan .subtitle{
    font-size:20px;
    font-weight:600;
    color:#56618a;
    letter-spacing:.3px;
    margin-bottom:25px;
}
/* -------------------------------- Points -------------------------------- */
.ryan-points {
    max-width:850px;
    margin:35px auto;
    text-align:left;
    font-size:17px;
    color:#3E3E3E;
    line-height:1.85;
}
.ryan-points li{
    padding-left:10px;
    border-left:3px solid #e83e8c;
    margin-bottom:12px;
    transition:.3s ease;
}
.ryan-points li:hover{
    color:#e83e8c;
    border-left-color:#203a8f;
    transform:translateX(6px);
    background:rgba(232,62,140,0.08);
    border-radius:4px;
    padding-left:14px;
}
.features-grid{
    display:flex;
    gap:28px;
    overflow:hidden;
    white-space:nowrap;
    padding:10px 0;
    scroll-behavior:smooth;
}
.feature-box{
    background:#fff;
    border-radius:18px;
    padding:22px;
    border:1px solid #ececec;
    min-width:280px;
    max-width:280px;
    height:430px;
    flex-shrink:0;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    box-shadow:0 5px 20px rgba(0,0,0,0.05);
}
.feature-box img{
    width:100%;
    height:200px;
    object-fit:cover;
    border-radius:14px;
}
.feature-box h3{
    margin:12px 0 6px;
    font-size:18px;
    font-weight:700;
    color:#0d1736;
}
.feature-text{
    font-size:14px;
    line-height:1.6;
    color:#444;
    height:160px;
    overflow:hidden;
}
.ryan-dots{
    text-align:center;
    margin-top:18px;
}
.ryan-dots span{
    height:10px;
    width:10px;
    background:#c9c9c9;
    border-radius:50%;
    display:inline-block;
    margin:0 6px;
    cursor:pointer;
    transition:.3s ease;
}
.ryan-dots .active{
    background:#e83e8c;
    transform:scale(1.5);
}
@media(max-width:480px){
    .why-ryan{padding:50px 15px;}
    .why-ryan .title{font-size:26px;}
    .why-ryan .subtitle{font-size:16px;}
    .feature-box{min-width:230px;max-width:230px;height:420px;}
    .feature-box img{height:190px;}
}
@media(min-width:481px) and (max-width:767px){
    .why-ryan .title{font-size:30px;}
    .feature-box{min-width:260px;max-width:260px;height:430px;}
}
@media(min-width:768px) and (max-width:1024px){
    .feature-box{min-width:260px;max-width:260px;height:430px;}
}
@media(min-width:1025px) and (max-width:1366px){
    .feature-box{min-width:280px;max-width:280px;height:430px;}
}
@media(min-width:1367px){
    .feature-box{min-width:300px;max-width:300px;height:440px;}
}
/*------------------------------------ AWARDS SECTION ---------------------------------*/
#awards {
    padding: 60px 0;
}

#awards .section-title {
    font-size: 34px;
    text-align: center;
    font-weight: 700;
    color: #203a8f;
    margin-bottom: 35px;
}

.awards-slider-wrapper {
    position: relative;
    width: 85%;
    margin: auto;
    overflow: hidden;
    white-space: nowrap;
}

.awards-slider {
    display: flex;
    gap: 30px;
    will-change: transform;
}

.award-item {
    min-width: 260px;
    height: 170px;
    background: #fff;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    box-shadow: 0 5px 18px rgba(0,0,0,0.1);
    transition: 0.3s ease;
}

.award-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 35px rgba(0,0,0,0.18);
}

.award-item img {
    height: 100%;
    width: auto;
    object-fit: contain;
    transform: scale(1.1);
}

.awards-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #e83e8c;
    color: #fff;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: 0.3s;
}

.awards-nav:hover { background:#203a8f; }
.awards-nav.prev { left: 12px; }
.awards-nav.next { right: 12px; }

/* MOBILE */
@media(max-width:480px){
    #awards { padding:30px 0; }
    #awards .section-title { font-size:22px; margin-bottom:25px; }
    .awards-slider-wrapper { width:95%; }
    .award-item { min-width:180px; height:135px; padding:12px; }
    .award-item img { transform:scale(1.15); }
    .awards-nav { width:34px;height:34px;font-size:16px; }
    .awards-nav.prev{ left:4px; }
    .awards-nav.next{ right:4px; }
}

/* 481–767 */
@media(min-width:481px) and (max-width:767px){
    #awards .section-title{ font-size:26px; }
    .awards-slider-wrapper{ width:92%; }
    .award-item{ min-width:200px;height:150px; }
    .award-item img{ transform:scale(1.14); }
    .awards-nav.prev{ left:8px; }
    .awards-nav.next{ right:8px; }
}

/* 768–1024 */
@media(min-width:768px) and (max-width:1024px){
    #awards .section-title{ font-size:30px; }
    .awards-slider-wrapper{ width:85%; }
    .award-item{ min-width:230px;height:160px; }
    .award-item img{ transform:scale(1.12); }
    .awards-nav.prev{ left:12px; }
    .awards-nav.next{ right:12px; }
}

/* 1025–1366 */
@media(min-width:1025px) and (max-width:1366px){
    .awards-slider-wrapper{ width:80%; }
    .award-item{ min-width:250px;height:165px; }
}

/* 1367+ */
@media(min-width:1367px){
    .awards-slider-wrapper{ width:75%; }
    .award-item{ min-width:260px;height:170px; }
}

/* ---------------------------------- campus-section ---------------------------------- */
.campus-section {
    padding: 70px 0;
    background: #0d1736;
    font-family: 'gothm';
    text-align:center;  
    color: #fff;
}
.campus-title {
    font-size: 38px;
    font-weight: 800;
    margin-bottom: 10px;
    background: #fff;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.campus-subtext{
    font-size:18px;
    opacity:0.9;
    margin-bottom:40px;
    color: #e83e8c;
}
.highlight-grid {
    display: grid;
    grid-template-columns: repeat(5,1fr);
    gap: 25px;
    max-width: 1150px;
    margin: auto;
}
.highlight-card {
    background: rgba(255,255,255,0.80);
    border-radius: 20px;
    text-align: center;
    padding: 30px 18px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.08);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,0.5);
    position: relative;
    overflow: hidden;
    transition: .4s ease;
}
.highlight-card:hover {
    transform: translateY(-12px) scale(1.03);
    box-shadow: 0 18px 40px rgba(232,62,140,0.25);
}
.highlight-card::after {
    content:"";
    position:absolute;
    width:160%;
    height:160%;
    top:-60%;
    left:-60%;
    background: radial-gradient(circle,#ff7ec5,#7ad1ff,transparent);
    opacity:0;
    transition:.6s;
}
.highlight-card:hover::after { opacity:.23; }
.h-icon {
    font-size:45px;
    margin-bottom:14px;
    background:#e83e8c;
    -webkit-background-clip:text;
    color:transparent;
    font-weight:800;
    display:inline-block;
}
.highlight-card h3 {
    font-size:18px;
    font-weight:700;
    color:#0d1736;
    margin-bottom:10px;
}
.highlight-card p {
    font-size:14.5px;
    color:#444;
    line-height:1.6;
}
@media (max-width: 992px) {
    .highlight-grid { grid-template-columns: repeat(3,1fr); }
}
@media (max-width: 600px) {
    .highlight-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 420px) {
    .highlight-grid { grid-template-columns: 1fr; }
}
/* -------------------- FACILITIES SECTION -------------------- */

.facilities-heading {
    text-align: center;
    font-size: 38px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #0d1736;
}

.facilities-subtext {
    text-align: center;
    font-size: 18px;
    margin-bottom: 30px;
    opacity: 0.9;
}

/* SLIDER WRAPPER */
.facility-slider {
    position: relative;
    overflow: hidden;
    max-width: 1000px;
    margin: 40px auto;
    white-space: nowrap;
}

/* TRACK */
.facility-track {
    display: flex;
    gap: 25px;
    will-change: transform;
}

/* CARD */
.facility-card {
    background: #fff;
    border-radius: 14px;
    min-width: 300px;
    height: 380px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
}

/* IMAGE – FULL CLEAN LOOK */
.facility-card img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    border-radius: 14px 14px 0 0;
}

/* TEXT */
.facility-card p {
    padding: 14px 0;
    font-weight: 700;
    font-size: 17px;
    color: #e83e8c;
    text-align: center;
}

/* BUTTONS */
#facPrev,
#facNext {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #e83e8c;
    color: #fff;
    border: none;
    font-size: 18px;
    padding: 8px 10px;
    border-radius: 50px;
    cursor: pointer;
    z-index: 50;
    transition: .3s ease;
}

#facPrev { left: 10px; }
#facNext { right: 10px; }

#facPrev:hover,
#facNext:hover {
    background: #203a8f;
}

/* -------------------- TABLET -------------------- */
@media (max-width: 768px) {
    .facility-card {
        min-width: 250px;
        height: 350px;
    }
    .facility-card img {
        height: 220px;
    }
}

/* -------------------- MOBILE -------------------- */
@media (max-width: 520px) {
    .facility-card {
        min-width: 88%;
        height: 340px;
    }

    .facility-card img {
        height: 210px;
    }

    #facPrev { left: 5px; }
    #facNext { right: 5px; }
}

/* -----------------------TESTIMONIALS --------------------- */
#testiSlider {
    padding: 0 !important;
}

.testimonials-section{padding:80px 0;background:#f7f8fc;font-family:'gothm';}
.testimonials-title{text-align:center;font-size:32px;font-weight:700;margin-bottom:40px}
.testimonials-slider{display:flex;gap:20px;overflow:hidden;scroll-behavior:smooth}
.testimonial-card{min-width:320px;background:#fff;padding:20px;border-radius:14px;
box-shadow:0 3px 14px rgba(0,0,0,.08);cursor:pointer;transition:.3s}
.testimonial-card:hover{transform:translateY(-5px)}
.testimonial-header{display:flex;align-items:center;gap:15px}
.testimonial-header img{width:65px;height:65px;border-radius:50%;object-fit:cover}
.testimonial-name{font-size:16px;font-weight:600}
.testimonial-relation{font-size:13px;color:#777}
.testimonial-text{font-size:14px;color:#444;margin-top:10px}
.testimonials-nav{text-align:center;margin-top:25px}
.testimonials-nav button{width:42px;height:42px;border-radius:50%;background:#e83e8c;
color:#fff;font-size:20px;border:none;cursor:pointer}
/* ========== POPUP ========== */
.testimonial-modal{position:fixed;top:0;left:0;width:100%;height:100%;
background:rgba(0,0,0,.55);display:none;justify-content:center;align-items:center;
padding:20px;z-index:9999}
.modal-box{background:#fff;padding:25px;border-radius:12px;max-width:420px;width:100%;
position:relative;animation:popup .3s ease;text-align:center}
@keyframes popup{from{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}
.close-modal{position:absolute;right:12px;top:8px;font-size:26px;cursor:pointer}
.modal-img{width:78px;height:78px;border-radius:50%;object-fit:cover;border:3px solid #243e90;margin-bottom:10px}
#modalName{font-size:18px;font-weight:700;margin-top:8px}
#modalRelation{font-size:13px;color:#666;margin-bottom:8px}
#modalText{font-size:15px;color:#333;line-height:1.6}
@media(max-width:768px){
    .modal-box{
        max-width: 90%;
        width: 100%;
        padding: 20px;
        max-height: 85vh;
        overflow-y: auto;
    }

    #modalText{
        font-size:14px;
    }

    .modal-img{
        width:65px;
        height:65px;
    }
}

/* ------------------- VIDEO SECTION ------------------- */
.admission-section{
    padding:65px 0;
    background:#0d1736;
    font-family:"gothm";
    text-align:center;
}
.video-wrap{
    max-width:850px;
    margin:auto;
}
.video-wrap video{
    width:100%;
    height:430px;
    border-radius:16px;
    object-fit:cover;
    box-shadow:0 14px 35px rgba(255,255,255,0.20);
    outline:none;
}
/* ----------------FEE STRIP---------------- */
.fee-strip{
    background:#eef2ff;
    padding:70px 0;
    font-family:"gothm";
}
.fee-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:40px;
}
.fee-left h2{
    font-size:30px;
    font-weight:700;
    color:#0d1736;
    margin-bottom:10px;
}
.fee-left p{
    font-size:16px;
    color:#444;
    max-width:520px;
}
.fee-btn{
    background:#e83e8c;
    color:#fff;
    padding:14px 32px;
    border-radius:40px;
    font-weight:600;
    display:inline-block;
    font-size:18px;
    text-decoration:none;
    transition:0.3s ease; 
}
@media(max-width:768px){
    .video-wrap video{ height:250px; }

    .fee-row{
        flex-direction:column;
        text-align:center;
    }

    .fee-left h2{ font-size:24px; }
    .fee-left p{ font-size:15px; }

    .fee-btn{
        font-size:16px;
        padding:12px 26px;
    }
}
.video-title{
    font-size:36px;
    font-weight:700;
    margin-bottom:10px;
    background:#fff;
    -webkit-background-clip:text;
    color:transparent;
    letter-spacing:.6px;
}
.video-sub{
    font-size:17px;
    color:#9fb3ff;
    margin-bottom:30px;
    font-weight:400;
}
@media(max-width:768px){
    .video-title{font-size:24px;}
    .video-sub{font-size:14px;}
}
/*--------------------------------------------- MAP SECTION -------------------------------- */
#maps {
    padding: 90px 0;
    background: #0d1736;
    font-family: 'gothm';
    color: #fff;
    text-align: center;
}
#maps .section-title {
    font-size: 34px;
    font-weight: 700;
    margin-bottom: 15px;
}
#maps .section-subtitle {
  color: pink;
    font-size: 15px;
    opacity: 0.7;
    margin-bottom: 50px;
}
.maps-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
    max-width: 1100px;
    margin: auto;
}
.map-card {
    background: rgba(255,255,255,0.06);
    border-radius: 18px;
    padding: 20px;
    backdrop-filter: blur(10px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.4);
    transition: 0.35s ease;
    border: 1px solid rgba(255,255,255,0.1);
}
.map-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 18px 45px rgba(232, 62, 140, 0.45);
    border-color: #e83e8c;
}
.map-card h3 {
    font-size: 18px;
    font-weight: 600;
    color: #e83e8c;
    margin-bottom: 15px;
}
.map-frame {
    width: 100%;
    height: 230px;
    border-radius: 14px;
    overflow: hidden;
    position: relative;
}
.map-frame iframe {
    width: 100%;
    height: 100%;
    border: none;
    filter: grayscale(30%) brightness(90%);
    transition: 0.5s ease;
}
.map-card:hover iframe {
    transform: scale(1.1);
    filter: grayscale(0%) brightness(100%);
}
@media (max-width: 992px) {
    .maps-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 600px) {
    .maps-grid {
        grid-template-columns: 1fr;
    }
}
/*-----------------------------faqs-------------------------------- */
.faq-section {
    padding: 90px 0;
    background: #f7f9fc;
    font-family: 'gothm';
}
.faq-title {
    text-align: center;
    font-size: 34px;
    font-weight: 700;
    color: #0d1736;
}
.faq-subtitle {
    text-align: center;
    font-size: 16px;
    color: #777;
    margin-bottom: 50px;
}
.faq-wrapper {
    max-width: 850px;
    margin: auto;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.faq-item {
    background: #fff;
    border-radius: 14px;
    padding: 0 20px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
    overflow: hidden;
    transition: 0.3s ease;
}
.faq-item:hover {
    transform: translateY(-4px);
}
.faq-question {
    width: 100%;
    background: none;
    border: none;
    font-size: 16px;
    font-weight: 600;
    padding: 18px 0;
    color: #0d1736;
    display: flex;
    justify-content: space-between;
    cursor: pointer;
}
.faq-icon {
    font-size: 22px;
    color: #e83e8c;
    transition: 0.3s;
}
.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: 0.35s ease;
}
.faq-answer p {
    padding: 0 0 18px 0;
    color: #555;
    line-height: 1.6;
}
.faq-item.active .faq-answer {
    max-height: 200px;
}
.faq-item.active .faq-icon {
    transform: rotate(45deg);
    color: #0d1736;
}
.final-cta {
    background: #e7ecf7;
    padding: 80px 0;
    color: #fff;
    font-family: 'gothm';
}
.final-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}
.final-cta h2 {
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 6px;
    color: #0d1736;
}
.cta-sub {
    font-size: 18px;
    color: #e83e8c;
    margin-bottom: 25px;
}
.cta-contact p {
    font-size: 15px;
    color: #0d1736;
    margin-bottom: 8px;
}
.cta-btn {
    background: #e83e8c;
    color: #fff;
    padding: 15px 38px;
    font-weight: 600;
    border-radius: 40px;
    font-size: 16px;
    text-decoration: none;
    display: inline-block;
    transition: 0.3s ease;
}
.cta-btn:hover {
    background: #c0276a;
    transform: translateY(-4px);
}
@media (max-width: 768px) {
    .final-row {
        flex-direction: column;
        text-align: center;
    }
    .cta-right {
        margin-top: 20px;
    }
}
/* form */
.whyflx{display: flex;flex-wrap: wrap;align-items: center;margin-top: 50px;}
/* .frmdv{width: 40%; } */
/* form */
footer {
    background: #203a8f;
    padding: 18px 0;
    color: #fff;
    font-size: 14px;
}
.footer-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.footer-left p {
    margin: 0;
    font-size: 14px;
}
.social-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: #fff;
    color: #203a8f;
    border-radius: 50%;
    font-size: 15px;
    margin-left: 10px;
    transition: 0.3s ease;
    text-decoration: none;
}
.social-icons a:hover {
    background: #ffcb05;
    color: #203a8f;
    transform: translateY(-3px);
}
@media (max-width: 600px) {
    .footer-row {
        flex-direction: column;
        text-align: center;
        gap: 12px;
    }

    .social-icons a {
        margin-left: 6px;
    }
}
/* -----------------------ADMISSION BUTTON -------------------- */
.floating-admission{
    position:fixed;
    right:0;
    top:50%;
    transform:translateY(-50%);
    background:#e83e8c;
    border-radius:8px 0 0 8px;
    z-index:99999;
    opacity:0;
    pointer-events:none;
    transition:.45s ease-in-out;
    padding:6px 0;
}
.floating-admission a{
    writing-mode:vertical-rl;
    transform:rotate(180deg);
    color:#fff;
    font-size:14px;
    font-weight:700;
    letter-spacing:2px;
    text-decoration:none;
    padding:8px 6px;
    display:block;
}
.floating-admission.show{
    opacity:1;
    pointer-events:auto;
    top:65%; 
}
.floating-admission:hover{
    background:#203a8f;
}
.floating-admission a:hover{
    color:#e83e8c;
}
@media(max-width:768px){
    .floating-admission a{
        font-size:15px;
        padding:10px 8px;
    }
    .floating-admission.show{
        top:70%; 
    }
}


/*Form PopUp*/

/*.popup {*/
/*    position: fixed;*/
/*    top: 0;*/
/*    left: 0;*/
/*    width: 100%;*/
/*    height: 100%;*/
/*    background: rgba(0, 0, 0, 0.6);*/
/*    display: none;*/
/*    justify-content: center;*/
/*    align-items: center;*/
/*    z-index: 99999;*/
/*}*/

/*.popup-box {*/
/*    background: #fff;*/
/*    padding: 25px 35px;*/
/*    border-radius: 10px;*/
/*    text-align: center;*/
/*    width: 90%;*/
/*    max-width: 420px;*/
/*}*/

/*.popup-box h3 {*/
/*    margin-bottom: 15px;*/
/*    color: #243e90;*/
/*}*/

/*#closePopup {*/
/*    background: #e83e8c;*/
/*    color: #fff;*/
/*    padding: 8px 18px;*/
/*    border: none;*/
/*    cursor: pointer;*/
/*    border-radius: 5px;*/
/*}*/