/* Header overrides loaded after the legacy theme stylesheet. */
.header-container{width:100%;max-width:1640px;margin:0 auto;padding-left:28px;padding-right:28px}
.top_menu_w3layouts{position:relative;z-index:1200;padding:0;min-height:50px;background:linear-gradient(90deg,#063563 0%,#075f9c 100%)}
.top_menu_w3layouts .header-container{position:relative;display:block;width:100%!important;max-width:none!important;min-height:50px;padding:0!important}
.top_menu_w3layouts .header-container:before,.top_menu_w3layouts .header-container:after{display:none!important;content:none!important}
.top_menu_w3layouts .header-socials{position:absolute!important;top:50%;left:36px;z-index:10;transform:translateY(-50%);pointer-events:auto!important}
.top_menu_w3layouts .header_right{position:absolute!important;top:50%;right:36px;z-index:10;transform:translateY(-50%)}
.top_menu_w3layouts .header_left,.top_menu_w3layouts .header_right{float:none;margin:0}
.header_left ul,.header-contact{display:flex;align-items:center;gap:22px;margin:0;padding:0}
.header_left ul li,.header-contact li{display:block;margin:0;list-style:none}
.header-socials a,.header-contact a{color:#fff;font-size:15px;text-decoration:none}
.header-socials a{position:relative;z-index:11;display:grid;width:38px;height:38px;place-items:center;border:1px solid transparent;border-radius:50%;color:#e3eef6;cursor:pointer;pointer-events:auto!important;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.header-socials a:hover,.header-socials a:focus{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.12);color:#ffbe2e;transform:translateY(-2px);outline:none}
.header-socials a i{margin:0!important;pointer-events:none}
.header-socials a:hover,.header-contact a:hover{color:#ffbe2e}
.header_left ul li i,.header-contact i{padding:0;margin-right:7px;color:inherit}
.content.white,.navbar-default{background:#fff}
.navbar-default{padding:0;border:0}
.main-nav-container{display:flex;align-items:center;justify-content:space-between;min-height:118px}
.main-nav-container .navbar-header{float:none;flex:0 1 auto}
.navbar-brand.school-brand{display:flex;align-items:center;gap:14px;width:auto;height:auto!important;padding:10px 0!important;line-height:1.15!important}
.school-logo{width:88px;height:88px;object-fit:contain;flex:0 0 88px}
.school-identity{display:flex;flex-direction:column;white-space:nowrap}
.school-identity strong{font-size:27px;line-height:1.1;letter-spacing:.3px;color:#093a70}
.school-identity small{margin-top:5px;font-size:14px;font-weight:700;letter-spacing:.35px;color:#222}
.school-identity em{margin-top:3px;font-size:12px;font-style:normal;color:#65717e}
.main-nav-container .navbar-collapse{padding:0;border:0}
.main-nav-container .navbar-nav{display:flex;align-items:center;gap:5px;float:right;margin:0;padding:0;background:transparent}
.main-nav-container .navbar-nav>li{float:left;margin:0}
.navbar-default .navbar-nav>li>a{position:relative;padding:19px 14px;font-size:15px;font-weight:600;text-transform:none;color:#14263b;text-align:left}
.navbar-default .navbar-nav>li>a.active:after{content:'';position:absolute;left:14px;right:14px;bottom:10px;height:3px;background:#093a70}
.navbar-default .navbar-nav>li.app-login{position:relative;z-index:2}
.navbar-default .navbar-nav>li.app-login>a{position:relative;z-index:3;margin-left:12px;padding:13px 25px;border-radius:28px;background:#063dbb;color:#fff;cursor:pointer;pointer-events:auto}
.navbar-default .navbar-nav>li.app-login>a:hover,.navbar-default .navbar-nav>li.app-login>a:focus{background:#052f91;color:#fff}
.main-menu-state,.menu-backdrop{display:none}

/* Reusable navigation dropdowns */
.navbar-nav .dropdown{position:relative}
.navbar-nav .dropdown-menu{display:none;top:100%;left:0;min-width:245px;margin:0;padding:10px;border:1px solid #e3ebf2;border-top:3px solid #ff9900;border-radius:0 0 12px 12px;background:#fff;box-shadow:0 16px 38px rgba(14,42,70,.2);transform:none;animation:submenuIn .16s ease-out;z-index:1100}
.navbar-nav .dropdown.open>.dropdown-menu{display:block}
.navbar-nav .dropdown-menu:before{display:none}
.navbar-nav .dropdown-menu>li{margin:0;list-style:none}
.navbar-nav .dropdown-menu>li>a{display:flex;align-items:center;min-height:42px;padding:10px 14px;border-radius:8px;font-size:14px;font-weight:600;line-height:1.35;color:#18344f;white-space:nowrap;transition:background .16s ease,color .16s ease,padding .16s ease}
.navbar-nav .dropdown-menu>li>a:before{content:'\f105';margin-right:10px;font-family:FontAwesome;color:#0b67a6}
.navbar-nav .dropdown-menu>li>a:hover,.navbar-nav .dropdown-menu>li>a:focus{padding-left:18px;background:#edf6fc;color:#075b99}
.submenu-toggle .fa{margin-left:7px;transition:transform .2s ease}
.dropdown.open>.submenu-toggle .fa{transform:rotate(180deg)}
@keyframes submenuIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:992px){
  .navbar-nav .dropdown:hover>.dropdown-menu,.navbar-nav .dropdown:focus-within>.dropdown-menu{display:block}
  .navbar-nav .dropdown:hover>.submenu-toggle .fa,.navbar-nav .dropdown:focus-within>.submenu-toggle .fa{transform:rotate(180deg)}
  .navbar-nav .dropdown>.submenu-toggle:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:16px}
}
@media(max-width:1199px){.header-container{padding-left:20px;padding-right:20px}.school-logo{width:72px;height:72px;flex-basis:72px}.school-identity strong{font-size:21px}.school-identity small{font-size:12px}.navbar-default .navbar-nav>li>a{padding-left:9px;padding-right:9px;font-size:14px}.navbar-default .navbar-nav>li.app-login>a{margin-left:5px;padding:11px 17px}}
@media(max-width:991px){body:has(.main-menu-state:checked){overflow:hidden}.main-nav-container{display:block;min-height:0;padding-top:8px;padding-bottom:8px}.main-nav-container .navbar-header{width:100%}.navbar-toggle{display:block;margin-top:25px;border-radius:5px;background:#093a70;cursor:pointer;z-index:1002}.navbar-toggle .icon-bar{transition:transform .2s ease,opacity .2s ease}.main-menu-state:checked~.navbar-header .navbar-toggle .icon-bar:nth-child(2){transform:translateY(6px) rotate(45deg)}.main-menu-state:checked~.navbar-header .navbar-toggle .icon-bar:nth-child(3){opacity:0}.main-menu-state:checked~.navbar-header .navbar-toggle .icon-bar:nth-child(4){transform:translateY(-6px) rotate(-45deg)}.main-nav-container .navbar-collapse{display:block!important;position:fixed;top:0;right:0;bottom:0;z-index:1001;width:min(330px,86vw);height:100vh!important;padding:85px 18px 25px!important;overflow-y:auto!important;border:0;background:#fff;box-shadow:-12px 0 35px rgba(5,34,60,.22);visibility:hidden;transform:translateX(105%);transition:transform .28s ease,visibility .28s ease}.main-menu-state:checked~.navbar-collapse{visibility:visible;transform:translateX(0)}.menu-backdrop{position:fixed;inset:0;z-index:1000;margin:0;background:rgba(3,25,45,.55);opacity:0;visibility:hidden;cursor:pointer;transition:opacity .25s ease,visibility .25s ease}.main-menu-state:checked~.menu-backdrop{display:block;opacity:1;visibility:visible}.main-nav-container .navbar-nav{display:block;float:none;margin:0;padding:0;background:transparent}.main-nav-container .navbar-nav>li{float:none;border-bottom:1px solid #e5edf3}.navbar-default .navbar-nav>li>a{padding:14px 12px}.navbar-default .navbar-nav>li>a.active:after{left:12px;right:auto;bottom:7px;width:36px}.navbar-default .navbar-nav>li.app-login{border:0}.navbar-default .navbar-nav>li.app-login>a{display:block;margin:18px 8px 6px;padding:12px 22px;text-align:center}.navbar-nav .dropdown-menu,.navbar-nav .dropdown.open>.dropdown-menu{position:static;float:none;width:auto;min-width:0;margin:0 8px 10px;padding:6px;border-left:3px solid #0b67a6;border-radius:0 8px 8px 0;background:#eaf4fb;box-shadow:none;transform:none;animation:none}.navbar-nav .dropdown-menu:before{display:none}.navbar-nav .dropdown-menu>li{border:0}.navbar-nav .dropdown-menu>li>a{padding:10px 12px;color:#173a55}.navbar-nav .dropdown-menu>li>a:hover{padding-left:16px;background:#fff}}
@media(max-width:767px){.content.white{padding:0}.top_menu_w3layouts .header-container{min-height:44px}.top_menu_w3layouts .header-socials{display:block;left:12px}.top_menu_w3layouts .header_right{right:12px}.header-socials ul{gap:2px}.header-socials a{width:32px;height:32px;font-size:13px}.header-contact{gap:0}.header-contact a{font-size:12px}.header-contact li:first-child{display:none}.school-logo{width:62px;height:62px;flex-basis:62px}.school-identity strong{font-size:18px}.school-identity small{font-size:11px}.school-identity em{display:none}.navbar-toggle{margin-top:18px}.main-nav-container .navbar-nav{margin-top:8px;background:#f4f7fa}.navbar-default .navbar-nav>li>a{text-align:left}}
@media(max-width:430px){.header-container{padding-left:12px;padding-right:12px}.navbar-brand.school-brand{gap:8px}.school-logo{width:52px;height:52px;flex-basis:52px}.school-identity strong{font-size:14px}.school-identity small{font-size:9px}.navbar-toggle{margin-top:13px;margin-right:0}}

/* Polished mobile navigation drawer */
.mobile-menu-heading,.mobile-menu-title,.mobile-nav-icon{display:none}
@media(max-width:991px){
  .main-nav-container .navbar-collapse{width:min(360px,88vw);padding:0 18px 24px!important;border-radius:18px 0 0 18px;background:linear-gradient(180deg,#fff 0%,#f8fbfd 100%)}
  .main-menu-state:checked~.navbar-header .navbar-toggle{opacity:0;pointer-events:none}
  .mobile-menu-heading{display:flex;align-items:center;justify-content:space-between;margin:0 -18px;padding:18px 18px 16px;border-bottom:1px solid #e5edf3;background:linear-gradient(135deg,#073966,#09639d);border-radius:18px 0 0 0;color:#fff}
  .mobile-menu-brand{display:flex;align-items:center;gap:11px}
  .mobile-menu-brand img{width:54px;height:54px;padding:3px;border-radius:50%;background:#fff;object-fit:contain;box-shadow:0 3px 10px rgba(0,0,0,.18)}
  .mobile-menu-brand span{display:flex;flex-direction:column;line-height:1.15}
  .mobile-menu-brand strong{font-size:15px;letter-spacing:.3px}
  .mobile-menu-brand small{margin-top:3px;font-size:11px;letter-spacing:2px;color:#cce7f6}
  .mobile-menu-close{display:grid;width:38px;height:38px;margin:0;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.12);font-size:18px;color:#fff;cursor:pointer;transition:.2s ease}
  .mobile-menu-close:hover{background:#fff;color:#073966;transform:rotate(90deg)}
  .mobile-menu-title{display:block;margin:19px 4px 8px;font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#7990a3}
  .mobile-nav-icon{display:inline-block;width:23px;margin-right:10px;text-align:center;color:#176da7}
  .main-nav-container .navbar-nav>li{margin:3px 0;border:0}
  .navbar-default .navbar-nav>li>a{display:flex;align-items:center;min-height:48px;padding:13px 14px;border-radius:9px;font-size:15px;color:#20384d;transition:.18s ease}
  .navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{background:#eaf4fb;color:#075b99;transform:translateX(3px)}
  .navbar-default .navbar-nav>li>a.active{background:#e5f2fb;color:#075b99;box-shadow:inset 3px 0 #0871b5}
  .navbar-default .navbar-nav>li>a.active:after{display:none}
  .navbar-default .navbar-nav>li.dropdown>a>.fa-angle-down{margin-left:auto}
  .navbar-nav .dropdown-menu,.navbar-nav .dropdown.open>.dropdown-menu{margin:4px 8px 8px 38px;padding:5px;border:0;border-radius:9px;background:#edf5fa}
  .navbar-nav .dropdown-menu>li>a{padding:10px 12px;border-radius:7px;font-size:14px;font-weight:600;color:#496477}
  .navbar-nav .dropdown-menu,.navbar-nav .dropdown-menu>li,.navbar-nav .dropdown-menu>li>a{text-align:left!important}
  .navbar-nav .dropdown-menu>li>a{display:block!important;justify-content:flex-start!important;width:100%}
  .navbar-nav .dropdown-menu>li>a:before{color:#1680bd}
  .navbar-default .navbar-nav>li.app-login>a{display:flex;justify-content:center;margin:18px 4px 4px;padding:13px 22px;border-radius:9px;box-shadow:0 7px 18px rgba(6,61,187,.22)}
  .navbar-default .navbar-nav>li.app-login>a .mobile-nav-icon{color:#fff}
}
@media(max-width:430px){
  .main-nav-container .navbar-collapse{width:90vw}
  .mobile-menu-brand img{width:48px;height:48px}
  .mobile-menu-brand strong{font-size:13px}
}

/* Modern school footer */
.school-footer{position:relative;background:linear-gradient(135deg,#052c50 0%,#073f6e 58%,#075786 100%);color:#c9d9e7}
.school-footer:before{content:"";display:block;height:4px;background:linear-gradient(90deg,#ff9900,#ffc257,#ff9900)}
.school-footer-grid{display:grid;grid-template-columns:1.45fr .75fr 1.2fr .75fr;gap:48px;padding-top:58px;padding-bottom:52px}
.footer-brand{display:flex;align-items:center;gap:14px;margin-bottom:19px;color:#fff!important}.footer-brand img{width:72px;height:72px;padding:4px;border-radius:50%;background:#fff;object-fit:contain}.footer-brand span{display:flex;flex-direction:column}.footer-brand strong{font-size:21px;line-height:1.25}.footer-brand small{margin-top:4px;color:#ffc15a;font-size:12px;letter-spacing:.4px}.school-footer-about p,.school-footer-column p{margin:0;color:#c3d3e1;font-size:14px;line-height:1.8}.school-footer-column h3{position:relative;margin:4px 0 23px;padding-bottom:11px;color:#fff;font-size:18px;font-weight:700}.school-footer-column h3:after{content:"";position:absolute;bottom:0;left:0;width:38px;height:3px;border-radius:3px;background:#ff9900}.school-footer-column ul{margin:0;padding:0;list-style:none}.school-footer-column li{margin:0 0 11px}.school-footer-column a{color:#c9d9e7}.school-footer-column a:hover{color:#ffc15a}.school-footer-column:not(.school-footer-contact) li a:before{content:"\f105";margin-right:9px;color:#ffac28;font-family:FontAwesome}.school-footer-contact li{display:flex;align-items:flex-start;gap:11px;line-height:1.55}.school-footer-contact li i{width:16px;margin-top:3px;color:#ffac28;text-align:center}.school-footer-contact li span,.school-footer-contact li a{min-width:0;overflow-wrap:anywhere}.footer-social-links{display:flex;gap:10px;margin-top:20px}.footer-social-links a{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(255,255,255,.08);color:#fff}.footer-social-links a:hover{border-color:#ff9900;background:#ff9900;color:#fff;transform:translateY(-3px)}.school-footer-bottom{border-top:1px solid rgba(255,255,255,.12);background:rgba(1,22,40,.28)}.school-footer-bottom .container{display:flex;align-items:center;justify-content:space-between;min-height:68px}.school-footer-bottom p{margin:0;color:#afc4d5;font-size:13px}.school-footer-bottom a{color:#d7e4ee;font-size:13px}.school-footer-bottom a:hover{color:#ffc15a}
@media(max-width:991px){.school-footer-grid{grid-template-columns:repeat(2,1fr);gap:38px;padding-top:46px;padding-bottom:42px}}
@media(max-width:600px){.school-footer-grid{grid-template-columns:1fr;gap:32px}.school-footer-bottom .container{display:block;padding-top:18px;padding-bottom:18px;text-align:center}.school-footer-bottom p{margin-bottom:7px}}

/* Footer grid compatibility with Bootstrap container clearfix */
.school-footer-grid{grid-template-columns:1.35fr .7fr 1.15fr .75fr;gap:42px;padding-top:54px;padding-bottom:48px}
.school-footer-grid:before,.school-footer-grid:after,.school-footer-bottom .container:before,.school-footer-bottom .container:after{display:none!important;content:none!important}
.school-footer-column ul{margin:0!important;padding:0!important;list-style:none!important}
.school-footer-column li{margin:0 0 11px!important;padding:0!important;list-style:none!important}
.school-footer-contact li i{flex:0 0 16px}
.school-footer-contact li span,.school-footer-contact li a{font-size:13px;overflow-wrap:anywhere}
@media(max-width:991px){.school-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px}}
@media(max-width:600px){.school-footer-grid{grid-template-columns:1fr;gap:32px}}
