/* =========================================
   WORDPRESS CUSTOM HEADER
========================================= */

.wp-custom-header {
    width: 100%;
    background: #ffffff;
    border-bottom: 1px solid #eeeeee;
    position: relative;
    z-index: 9999;
}

.wp-header-inner {
    width: min(1200px, calc(100% - 40px));
    min-height: 82px;
    margin: 0 auto;

    display: flex;
    align-items: center;
    gap: 40px;
}


/* =========================================
   LOGO
========================================= */

.wp-header-logo {
    flex-shrink: 0;
}

.wp-header-logo a {
    display: flex;
    align-items: center;
    text-decoration: none;
}

.wp-header-logo img {
    display: block;
    max-width: 300px;
    height: auto;
}

.wp-site-name {
    color: #111111;
    font-size: 22px;
    font-weight: 700;
}


#top-header{
    background: #1b5b3d;
    line-height: 1em;
    font-size: 15px;
  line-height: 13px;
  z-index: 100000;
  color: #fff;

}
#top-header a{
    color: #fff;
}
#top-header .container {
	display: flex;
	max-width: 1240px;
	margin: 0 auto;
	justify-content: space-between;
	padding: 14px 0;
	align-items: center;
}

#et-info-email,
#et-info-phone {
  position:relative
}

#et-info-phone {
  margin-right:15px
}


#et-info,
#et-secondary-menu>ul>li a {
  display:block
}
#et-secondary-nav,
#et-secondary-nav li {
  display:inline-block
}

#et-secondary-nav li {
  margin-right:15px
}
#et-secondary-nav>li:last-child {
  margin-right:0
}
#et-info-email:hover,
#et-secondary-menu>ul>li>a:hover {
  opacity:.7;
  -webkit-transition:all .4s ease-in-out;
  transition:all .4s ease-in-out
}
#et-secondary-nav li {
  position:relative;
  text-align:right
}





/* =========================================
   HEADER MENU
========================================= */

.wp-header-nav {
    margin-left: auto;
}

.wp-main-menu,
.wp-main-menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.wp-main-menu {
    display: flex;
    align-items: center;
    gap: 32px;
}

.wp-main-menu > li {
    position: relative;
    margin: 0;
    padding: 0;
}

.wp-main-menu > li > a {
    display: flex;
    align-items: center;
    gap: 7px;

    position: relative;

    padding: 31px 0;

    color: #222;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;

    text-decoration: none;

    white-space: nowrap;

    transition: color .25s ease;
}

.wp-main-menu > li > a:hover {
    color: #6c4df6;
}


/* =========================================
   DROPDOWN ARROW
========================================= */

.wp-main-menu > li.menu-item-has-children > a::after {
    content: "\f107";

    font-family: "Font Awesome 7 Free";
    font-weight: 900;

    font-size: 12px;

    margin-left: 3px;

    transition: transform .25s ease;
}


/* Rotate arrow */
.wp-main-menu > li.menu-item-has-children:hover > a::after {
    transform: rotate(180deg);
}


/* =========================================
   DROPDOWN MENU
========================================= */

.wp-main-menu .sub-menu {
    position: absolute;

    top: 100%;
    left: 0;

    min-width: 220px;

    padding: 10px 0;

    margin: 0;

    background: #ffffff;

    border: 1px solid #eeeeee;

    border-radius: 8px;

    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.10);

    opacity: 0;
    visibility: hidden;

    transform: translateY(10px);

    transition:
        opacity .25s ease,
        visibility .25s ease,
        transform .25s ease;

    z-index: 99999;
}


/* Show dropdown */
.wp-main-menu > li:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* =========================================
   DROPDOWN ITEMS
========================================= */

.wp-main-menu .sub-menu li {
    position: relative;

    display: block;

    width: 100%;

    margin: 0;
    padding: 0;
}

.wp-main-menu .sub-menu li a {
    display: flex;
    align-items: center;
    justify-content: space-between;

    width: 100%;
    box-sizing: border-box;

    padding: 11px 18px;

    color: #333333;

    font-size: 14px;
    font-weight: 500;

    line-height: 1.4;

    text-decoration: none;

    white-space: nowrap;

    transition:
        background .2s ease,
        color .2s ease;
}

.wp-main-menu .sub-menu li a:hover {
    background: #f5f3ff;
    color: #6c4df6;
}


/* =========================================
   SECOND LEVEL DROPDOWN
========================================= */

.wp-main-menu .sub-menu .sub-menu {
    top: -10px;
    left: 100%;

    margin-left: 5px;
}


/* Show second-level dropdown */
.wp-main-menu .sub-menu li:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* Arrow for nested submenu */
.wp-main-menu .sub-menu li.menu-item-has-children > a::after {
    content: "\f105";

    font-family: "Font Awesome 7 Free";
    font-weight: 900;

    font-size: 11px;
}


/* =========================================
   ACTIVE MENU
========================================= */

.wp-main-menu > li.current-menu-item > a,
.wp-main-menu > li.current-menu-ancestor > a,
.wp-main-menu .sub-menu li.current-menu-item > a {
    color: #6c4df6;
}


/* =========================================
   HEADER Z-INDEX
========================================= */

.wp-custom-header {
    position: relative;
    z-index: 9999;
}

.wp-header-inner {
    position: relative;
    z-index: 9999;
}

.wp-mobile-toggle{
	display:none
}

.page-header .entry-title, .site-footer .footer-inner, .site-header .header-inner, body:not([class*="elementor-page-"]) .site-main {
	max-width: 100%;
}

body:not([class*="elementor-page-"]) .site-main .page-content{
	max-width:1200px;
	margin:0 auto;
}
body:not([class*="elementor-page-"]) .site-main .page-header, .titlebar {
	background: #e5e9f3;
	padding: 10px;
	text-align: center;
	font-weight: 600;
	margin-bottom:40px
}
body:not([class*="elementor-page-"]) .site-main .page-header h1, .titlebar h1{
	font-weight:600
}
/*==================================================
  FOOTER
===================================================*/

.school-footer .container{
    width:90%;
    max-width:1320px;
    margin:auto;
}


.school-footer {
	position: relative;
	background: linear-gradient(135deg,#040E1C 0%, #06356B 55%, #15803D 100%);
	color: #fff;
	overflow: hidden;
}

.school-footer::before{
    content:"";
    position:absolute;
    inset:0;
    background:url('https://www.transparenttextures.com/patterns/cubes.png');
    opacity:.04;
    pointer-events:none;
}

/*==================================================
  TOP BAR
===================================================*/

.footer-top{

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(10px);

    border-bottom:1px solid rgba(255,255,255,.08);

    padding:28px 0;

}

.jubilee-box{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:25px;

}

.jubilee-badge{

    width:90px;

    height:90px;

    border-radius:50%;

    background:#fff;

    color:#15803D;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:36px;

    font-weight:700;

    border:4px solid #15803D;

    box-shadow:0 10px 30px rgba(0,0,0,.25);

}

.jubilee-box h2{

    font-size:34px;

    margin-bottom:8px;

}

.jubilee-box p{

    color:#dfeaf6;

    font-size:16px;

}

/*==================================================
  MAIN
===================================================*/

.footer-main{

    padding:70px 0;

}

.footer-grid{

    display:grid;

    grid-template-columns:2.4fr 1fr  1fr;

    gap:50px;

}

.footer-logo{

    width:100px;

    margin-bottom:0;

}

.footer-col h3{

    font-size:30px !important;
    margin-bottom:15px;
    color:#fff;
    line-height:1.3;

}

.footer-col h4{

    font-size:22px;

    margin-bottom:25px;

    color:#9EE7A0;

    position:relative;

}

.footer-col h4::after{

    content:"";

    width:45px;

    height:3px;

    background:#9EE7A0;

    display:block;

    margin-top:10px;

    border-radius:10px;

}

.footer-col p{

    color:#d6e2f2;

    line-height:1.9;

    font-size:15px;

    margin-bottom:15px;

}

.footer-motto{

    display:inline-block;

    margin-top:20px;

    background:#15803D;

    padding:12px 24px;

    border-radius:50px;

    font-weight:600;

    letter-spacing:.5px;

}

.contact-info{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.contact-item{
    display:flex;
    align-items:center;
    gap:18px;
}

.contact-item .icon{
   width: 35px;
  height: 35px;
  line-height: 30px;
  font-size: 16px;
  border-radius: 10px 10px 10px 0;
    background:linear-gradient(135deg,#18b55b,#0d8f46);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    transition:.3s;
}

.contact-item:hover .icon{
    transform:translateY(-3px);
    box-shadow:0 8px 20px rgba(24,181,91,.35);
}

.contact-item .text{
    color:#ffffff;
    font-size:17px;
    line-height:1.8;
    font-weight:400;
}

.contact-item .text a{
    color:#ffffff;
    text-decoration:none;
    transition:.3s;
}

.contact-item .text a:hover{
    color:#63d68f;
}

@media(max-width:768px){

.contact-item{
    gap:15px;
}

.contact-item .icon{
    width:40px;
    height:40px;
    min-width:40px;
    font-size:18px;
}

.contact-item .text{
    font-size:16px;
}

}

/*==================================================
  LINKS
===================================================*/

.footer-col ul{

    list-style:none;
    margin:0;
    padding:0;

}

.footer-col ul li{

    margin-bottom:14px;

}

.footer-col ul li a {
	color: #d7e3f3;
	text-decoration: none;
	transition: .35s;
	display: inline-block;
	display: flex;
	align-content: c;
	align-items: center;
	gap: 15px;
}

.footer-col ul li a:hover{

    color:#9EE7A0;

    transform:translateX(8px);

}

/*==================================================
  CONTACT
===================================================*/

.footer-contact p{

    display:flex;

    gap:10px;

    align-items:flex-start;

}

/*==================================================
  SOCIAL
===================================================*/

.social-icons{

    display:flex;

    gap:12px;

    margin:25px 0;

}

.social-icons a{

    width:46px;

    height:46px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(255,255,255,.10);

    color:#fff;

    text-decoration:none;

    transition:.35s;

    border:1px solid rgba(255,255,255,.15);

}

.social-icons a:hover{

    background:#15803D;

    transform:translateY(-5px);

}

/*==================================================
  BUTTON
===================================================*/

.footer-btn{

    display:inline-block;

    margin-top:15px;

    padding:14px 30px;

    border-radius:40px;

    background:#15803D;

    color:#fff;

    text-decoration:none;

    font-weight:600;

    transition:.35s;

}

.footer-btn:hover{

    background:#fff;

    color:#0B4F9C;

}

/*==================================================
  NEWSLETTER (Optional)
===================================================*/

.newsletter{

    margin-top:20px;

}

.newsletter input{

    width:100%;

    height:52px;

    border:none;

    border-radius:40px;

    padding:0 20px;

    outline:none;

    margin-bottom:12px;

}

.newsletter button{

    width:100%;

    height:50px;

    border:none;

    border-radius:40px;

    background:#15803D;

    color:#fff;

    cursor:pointer;

    font-weight:600;

    transition:.3s;

}

.newsletter button:hover{

    background:#0B4F9C;

}



/*==================================================
Recent News Vertical Scroll
===================================================*/

.recent-news-wrapper {
    height: 100px;
    overflow: hidden;
    position: relative;
}

.recent-news-title {
	font-size: 25px !important;
	color: #fff;
	margin:0 0 5px !important;
}

.recent-news-excerpt{
    color:#fff;
}

.recent-news-track {
    display: flex;
    flex-direction: column;
    animation: recentNewsScroll 20s linear infinite;
}

.recent-news-item {
    flex-shrink: 0;
    padding: 0 0 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}

@keyframes recentNewsScroll {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-50%);
    }
}

/*==================================================
  BOTTOM
===================================================*/

.footer-bottom{

    background:#041A36;

    border-top:1px solid rgba(255,255,255,.08);

    padding:22px 0;

}

.footer-bottom-flex{

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:20px;

}

.footer-bottom p{

    color:#d5e3f2;

    font-size:14px;

}

.footer-bottom-links{

    display:flex;

    gap:25px;

}

.footer-bottom-links a{

    color:#d5e3f2;

    text-decoration:none;

    transition:.3s;

    font-size:14px;

}

.footer-bottom-links a:hover{

    color:#9EE7A0;

}

/*==================================================
  HOVER EFFECT
===================================================*/

.footer-col{

    transition:.35s;

}

.footer-col:hover{

    transform:translateY(-5px);

}
.site-navigation ul.menu li ul li.menu-item-has-children::after {
	transform: translateY(-50%) rotate(-90deg);
	position: absolute;
	top: 50%;
	right: 15px;
}
.site-navigation ul.menu li.menu-item ul {
	min-width: 235px;
	box-shadow: 0 15px 20px rgba(0,0,0,0.25);
}
.site-navigation ul.menu li.menu-item li a {
    font-size:13px;
}
.site-header .site-navigation ul.menu li a:hover {
	color: #4863B3;
}



.tc-table{
    width:100%;
    border-collapse:collapse;
    margin-top:20px;
}

.tc-table th{
    background:#0d6efd;
    color:#fff;
    padding:12px;
    text-align:left;
}

.tc-table td{
    padding:12px;
    border:1px solid #ddd;
}

.tc-table tr:nth-child(even){
    background:#f7f7f7;
}

.button{
    background:#0d6efd;
    color:#fff;
    padding:8px 18px;
    text-decoration:none;
    border-radius:4px;
}

.button:hover{
    background:#084298;
}


/*==================================================
  RESPONSIVE
===================================================*/

@media(max-width:1200px){

.footer-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.footer-grid{

grid-template-columns:1fr;

gap:40px;

}

.jubilee-box{

flex-direction:column;

text-align:center;

}

.jubilee-box h2{

font-size:28px;

}

.footer-bottom-flex{

flex-direction:column;

text-align:center;

}

.footer-bottom-links{

justify-content:center;

flex-wrap:wrap;

}

}

@media(max-width:576px){

.footer-main{

padding:50px 0;

}

.footer-col h3{

font-size:24px;

}

.footer-col h4{

font-size:20px;

}

.jubilee-badge{

width:75px;

height:75px;

font-size:30px;

}

}




/* =========================================
   MOBILE MENU
========================================= */

@media (max-width: 767px) {

    .wp-custom-header {
        position: relative;
        z-index: 99999;
    }

    .wp-header-inner {
        position: relative;
        width: calc(100% - 30px);
        min-height: 70px;

        display: flex;
        align-items: center;
        justify-content: space-between;
    }


    /* Hide desktop CTA */
    .wp-header-action {
        display: none;
    }


    /* Mobile button */
    .wp-mobile-toggle {
        position: relative;

        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;

        width: 44px;
        height: 44px;

        padding: 8px;

        border: 1px solid #ddd;
        border-radius: 8px;

        background: #fff;

        cursor: pointer;

        z-index: 100001;
    }

    .wp-mobile-toggle span {
        display: block;

        width: 22px;
        height: 2px;

        margin: 3px 0;

        background: #111;

        transition: all .3s ease;
    }

.wp-mobile-toggle{
	display:block
}

	
    /* =====================================
       MENU CONTAINER
    ===================================== */

    .wp-header-nav {
        position: absolute;

        top: 70px;
        left: 15px;
        right: 15px;

        display: block;

        width: auto;

        padding: 10px 0;

        background: #fff;

        border: 1px solid #eee;
        border-radius: 10px;

        box-shadow: 0 15px 40px rgba(0,0,0,.12);

        opacity: 0;
        visibility: hidden;

        transform: translateY(-10px);

        transition:
            opacity .25s ease,
            visibility .25s ease,
            transform .25s ease;

        z-index: 100000;
    }


    /* OPEN MENU */

    .wp-header-nav.mobile-menu-open {
        opacity: 1;
        visibility: visible;

        transform: translateY(0);
    }


    /* =====================================
       MAIN MENU
    ===================================== */

    .wp-main-menu {
        display: block;

        width: 100%;

        margin: 0;
        padding: 5px 0;
    }


    .wp-main-menu > li {
        display: block;

        width: 100%;

        margin: 0;
    }


    .wp-main-menu > li > a {
        display: flex;

        align-items: center;
        justify-content: space-between;

        width: 100%;

        box-sizing: border-box;

        padding: 13px 18px;

        font-size: 15px;

        color: #222;

        border-bottom: 1px solid #f1f1f1;
    }


    .wp-main-menu > li:last-child > a {
        border-bottom: 0;
    }


    /* Remove desktop underline */
    .wp-main-menu > li > a::before {
        display: none;
    }

    .wp-main-menu > li > a::after {
        display: none;
    }


    /* =====================================
       MOBILE DROPDOWN
    ===================================== */

    .wp-main-menu .sub-menu {
        position: static;

        display: none;

        width: 100%;

        min-width: 0;

        margin: 0;

        padding: 0 0 5px 15px;

        background: #f8f8f8;

        border: 0;

        border-radius: 0;

        box-shadow: none;

        opacity: 1;
        visibility: visible;

        transform: none;
    }


    /* Open submenu */
    .wp-main-menu li.mobile-submenu-open > .sub-menu {
        display: block;
    }


    .wp-main-menu .sub-menu li {
        display: block;

        width: 100%;
    }


    .wp-main-menu .sub-menu li a {
        display: flex;

        align-items: center;

        width: 100%;

        box-sizing: border-box;

        padding: 11px 18px;

        font-size: 14px;

        color: #444;

        border-bottom: 1px solid #eaeaea;
    }


    /* =====================================
       SUBMENU ARROW
    ===================================== */

    .wp-main-menu li.menu-item-has-children > a {
        padding-right: 45px;
    }

    .wp-main-menu li.menu-item-has-children > a::after {
        content: "\f107";

        font-family: "Font Awesome 7 Free";
        font-weight: 900;

        position: absolute;

        right: 18px;

        font-size: 12px;

        display: block;

        transition: transform .25s ease;
    }


    /* Rotate arrow */
    .wp-main-menu li.mobile-submenu-open > a::after {
        transform: rotate(180deg);
    }


    /* =====================================
       LOGO
    ===================================== */

    .wp-header-logo img {
        max-width: 150px;
        height: auto;
    }

}