:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-08f82ec *//* Clean Header CSS */
:root{--primary:#5461E3;--secondary:#2F3BB9;--white:#fff;--black:#000;}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Poppins',sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;background:#fff}
body.admin-bar .site-header{top:32px}

.logo{
    max-height: 32px;
}
/* ===============================
   MOBILE HEADER
================================ */

.hamburger-button{
    display:none;
    width:44px;
    height:44px;
    padding:0;
    background:none;
    border:none;
    cursor:pointer;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px;
}

.hamburger-line{
    width:24px;
    height:2px;
    background:#fff;
    transition:.3s;
    border-radius:2px;
}

.hamburger-button.open .hamburger-line:nth-child(1){
    transform:translateY(7px) rotate(45deg);
}

.hamburger-button.open .hamburger-line:nth-child(2){
    opacity:0;
}

.hamburger-button.open .hamburger-line:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
}

.mobile-menu{

    position:fixed;

    top:80px;

    left:0;

    width:100%;

    height:calc(100vh - 80px);

    background:#1A1A1A;

    overflow-y:auto;

    transform:translateX(100%);

    transition:.35s ease;

    z-index:9998;

}

.mobile-menu.open{

    transform:translateX(0);

}

.mobile-nav{

    padding:30px 24px;

}

.mobile-nav-list{

    list-style:none;

    margin:0;

    padding:0;

}

.mobile-nav-item{

    border-bottom:1px solid rgba(255,255,255,.08);

}

.mobile-nav-link{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 0;

    color:#fff;

    font-size:17px;

    font-weight:500;

    text-decoration:none;

}

.mobile-accordion{

    max-height:0;

    overflow:hidden;

    transition:max-height .35s ease;

}

.mobile-accordion.open{

    max-height:1000px;

}

.mobile-accordion-section{

    padding:16px 0 16px 18px;

}

.mobile-accordion-title{

    color:#5461E3;

    font-weight:700;

    margin-bottom:12px;

    font-size:14px;

}

.mobile-accordion-list{

    list-style:none;

    padding:0;

    margin:0;

}

.mobile-accordion-link{

    display:block;

    padding:8px 0;

    color:rgba(255,255,255,.75);

    text-decoration:none;

    font-size:15px;

}

.mobile-accordion-link:hover{

    color:#5461E3;

}

.nav-link:focus {
    outline: none;
}

.nav-link:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px rgba(84, 97, 227, 0.25);
    border-radius: 4px;
}

.nav-link,
.nav-link:focus,
.nav-link:active,
.nav-link:focus-visible {
    outline: none;
    box-shadow: none;
    -webkit-tap-highlight-color: transparent;
}

.nav-link,
.nav-link:link,
.nav-link:visited {
    color: rgba(255,255,255,.82);
}

.nav-link:hover,
.nav-link.active {
    color: #ffffff;
}

.nav-link:focus,
.nav-link:focus-visible,
.nav-link:active {
    color: #ffffff;
}

@media(max-width:1024px){

    .desktop-nav{

        display:none;

    }

    .hamburger-button{

        display:flex;

    }

    .header-container{

        padding:0 40px;

    }

}

@media(max-width:768px){

    .header-container{

        padding:0 24px;

    }

    .logo{

        height:36px;

    }

}

@media(max-width:480px){

    .site-header{

        height:70px;

    }

    .mobile-menu{

        top:70px;

        height:calc(100vh - 70px);

    }

    .logo{

        height:32px;

    }

}

@media(max-width:782px){body.admin-bar .site-header{top:46px}}
.site-header{position:fixed;top:0;left:0;width:100%;height:80px;background:#1A1A1A;border-bottom:1px solid rgba(255,255,255,.08);z-index:9999;transition:background .3s,box-shadow .3s}
.site-header.scrolled{background:#1A1A1A;box-shadow:0 8px 30px rgba(0,0,0,.2)}
.header-container{max-width:1440px;height:100%;margin:auto;padding:0 120px;display:flex;align-items:center;justify-content:space-between}
.logo-wrapper{display:flex;align-items:center;height:100%}
.logo{display:block;height:42px;width:auto;object-fit:contain}
.desktop-nav{display:flex;align-items:center}
.nav-list{display:flex;gap:36px;list-style:none;margin:0;padding:0;align-items:center}
.nav-link{position:relative;color:rgba(255,255,255,.82);text-decoration:none;font:500 16px 'Poppins',sans-serif;padding:8px 0;display:inline-flex;align-items:center;gap:6px}
.nav-link:hover{color:#fff}
.nav-link:after{content:"";position:absolute;left:50%;bottom:-4px;width:0;height:2px;background:#5461E3;transform:translateX(-50%);transition:.25s}
.nav-link:hover:after,.nav-link.active:after{width:70%}
.nav-item-dropdown{position:relative}

.nav-item-dropdown::after{
    content:"";
    position:absolute;
    left:0;
    top:100%;
    width:100%;
    height:25px;
}

.mega-menu{position:absolute;top:calc(100% + 20px);
margin-top:4px;left:50%;transform:translateX(-50%);width:950px;padding:40px;background:#1A1A1A;border:1px solid rgba(255,255,255,.08);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.35);opacity:0;visibility:hidden;pointer-events:none;transition:.25s}
.mega-menu.open{opacity:1;visibility:visible;pointer-events:auto}
.mega-menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.mega-menu-title{margin:0 0 16px;color:#fff;font:700 18px 'Montserrat',sans-serif}
.mega-menu-list{list-style:none;margin:0;padding:0}
.mega-menu-link{display:block;padding:8px 0;color:rgba(255,255,255,.75);text-decoration:none;transition:.2s}
.mega-menu-link:hover{color:#5461E3;transform:translateX(4px)}
.hamburger-button{display:none}
.mobile-menu{position:fixed;top:80px;left:0;width:100%;height:calc(100vh - 80px);background:#1A1A1A;overflow:auto;transform:translateY(-100%);opacity:0;visibility:hidden;transition:.3s}
.mobile-menu.open{transform:translateY(0);opacity:1;visibility:visible}

@media(max-width:1024px){.header-container{padding:0 40px}.desktop-nav{display:none}.hamburger-button{display:flex}}

@media(max-width:768px){.header-container{padding:0 20px}.logo{height:36px}}

@media(max-width:480px){.site-header{height:70px}.mobile-menu{top:70px;height:calc(100vh - 70px)}.logo{height:32px}}

.edu-hero{
    padding-top: 40px;
}/* End custom CSS */