/* ============================================================================
   CCA Site Navigation — extracted to a shared file so every page (main site
   pages AND the /internship/ section) renders the exact same header / mobile
   menu, matching the original look on ccaschool.in.
   ============================================================================ */

:root{
  --primary-blue:#0C67AF;
  --primary-orange:#E7561F;
  --primary-yellow:#FFC000;
  --bright-blue:#1E7BC8;
  --bright-orange:#FF6B35;
  --white:#FFFFFF;
  --light-gray:#F8F9FA;
  --text-dark:#1A1A1A;
  --text-light:#6C757D;
}

/* Header */
.cca-site-header{
  background:var(--white);
  box-shadow:0 2px 20px rgba(12,103,175,.10);
  position:fixed;
  width:100%;
  top:0;
  left:0;
  z-index:1000;
  transition:all .3s ease;
}
.cca-site-header .container{max-width:1200px;margin:0 auto;padding:0 20px}
.cca-site-header .nav-container{display:flex;justify-content:space-between;align-items:center;padding:15px 0;gap:20px}
.cca-site-header .logo{display:flex;align-items:center;gap:15px;text-decoration:none}
.cca-site-header .logo img{height:50px;width:auto}
.cca-site-header .logo-text{font-family:'Poppins',sans-serif}
.cca-site-header .logo-text h1{font-size:24px;font-weight:700;color:var(--primary-blue);margin-bottom:-5px}
.cca-site-header .logo-text p{font-size:12px;color:var(--primary-orange);font-weight:500}

/* Desktop menu */
.cca-site-header .nav-menu{display:flex;list-style:none;gap:28px;align-items:center;margin:0;padding:0}
.cca-site-header .nav-menu li{position:relative}
.cca-site-header .nav-menu a{
  text-decoration:none;color:var(--text-dark);font-weight:500;font-size:16px;
  font-family:'Inter',sans-serif;
  transition:all .3s ease;position:relative;display:block;padding:10px 0;
}
.cca-site-header .nav-menu > li > a::after{
  content:'';position:absolute;width:0;height:2px;bottom:5px;left:0;
  background:var(--primary-orange);transition:width .3s ease;
}
.cca-site-header .nav-menu > li > a:hover::after,
.cca-site-header .nav-menu > li > a.active::after{width:100%}
.cca-site-header .nav-menu > li > a:hover,
.cca-site-header .nav-menu > li > a.active{color:var(--primary-blue)}

/* Dropdown */
.cca-site-header .dropdown{position:relative}
.cca-site-header .dropdown-toggle::after{content:'▼';font-size:10px;margin-left:8px;transition:transform .3s ease}
.cca-site-header .dropdown:hover .dropdown-toggle::after{transform:rotate(180deg)}
.cca-site-header .dropdown-menu{
  position:absolute;top:100%;left:0;background:var(--white);min-width:220px;
  box-shadow:0 10px 30px rgba(0,0,0,.12);border-radius:10px;
  opacity:0;visibility:hidden;transform:translateY(-10px);
  transition:all .3s ease;z-index:1001;padding:10px 0;
  border:1px solid rgba(12,103,175,.1);
}
.cca-site-header .dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}
.cca-site-header .dropdown-menu a{padding:12px 20px;font-size:14px;color:var(--text-dark);border-radius:0;transition:all .3s ease}
.cca-site-header .dropdown-menu a::after{display:none}
.cca-site-header .dropdown-menu a:hover{background:var(--primary-blue);color:var(--white);padding-left:25px}
.cca-site-header .dropdown-menu a.active{background:var(--primary-blue);color:var(--white)}
.cca-site-header .dropdown-menu a.active:hover{background:var(--bright-blue);color:var(--white)}

/* Mobile toggle */
.cca-site-header .mobile-menu-toggle{
  display:none;background:none;border:none;font-size:24px;
  color:var(--primary-blue);cursor:pointer;z-index:1001;position:relative;
}

/* Mobile menu drawer */
.cca-mobile-menu{
  position:fixed;top:0;right:-100%;width:280px;height:100vh;
  background:var(--white);box-shadow:-5px 0 25px rgba(0,0,0,.1);
  z-index:1000;transition:right .3s ease;padding:100px 0 40px;
  overflow-y:auto;visibility:hidden;
}
.cca-mobile-menu.active{right:0;visibility:visible}
.cca-mobile-overlay{
  position:fixed;top:0;left:0;width:100%;height:100%;
  background:rgba(0,0,0,.5);z-index:999;
  opacity:0;visibility:hidden;transition:all .3s ease;pointer-events:none;
}
.cca-mobile-overlay.active{opacity:1;visibility:visible;pointer-events:auto}
.cca-mobile-menu .mobile-nav-list{list-style:none;padding:0;margin:0}
.cca-mobile-menu .mobile-nav-item{border-bottom:1px solid #f0f0f0;position:relative}
.cca-mobile-menu .mobile-nav-item a{
  display:block;padding:20px 30px;text-decoration:none;color:var(--text-dark);
  font-weight:500;font-size:16px;transition:all .3s ease;position:relative;
  font-family:'Inter',sans-serif;
}
.cca-mobile-menu .mobile-nav-item a:hover{background:var(--light-gray);color:var(--primary-blue);padding-left:40px}
.cca-mobile-menu .mobile-nav-item a::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:0;
  background:var(--primary-orange);transition:width .3s ease;
}
.cca-mobile-menu .mobile-nav-item a:hover::before{width:4px}
.cca-mobile-menu .mobile-close{
  position:absolute;top:20px;left:20px;background:none;border:none;
  font-size:24px;color:var(--text-dark);cursor:pointer;padding:10px;
}
.cca-mobile-menu .mobile-nav-item.has-submenu > a::after{
  content:'▼';position:absolute;right:30px;top:50%;
  transform:translateY(-50%);font-size:12px;transition:transform .3s ease;
}
.cca-mobile-menu .mobile-nav-item.has-submenu.open > a::after{
  transform:translateY(-50%) rotate(180deg);
}
.cca-mobile-menu .mobile-submenu{
  max-height:0;overflow:hidden;transition:max-height .3s ease;
  background:var(--light-gray);
}
.cca-mobile-menu .mobile-submenu.open{max-height:400px}
.cca-mobile-menu .mobile-submenu a{padding:15px 50px;font-size:14px;border-bottom:1px solid rgba(0,0,0,.05)}
.cca-mobile-menu .mobile-submenu a:hover{padding-left:60px}

/* Spacer so fixed header doesn't overlap content */
.cca-site-header-spacer{height:80px}

/* Responsive breakpoints */
@media (max-width:980px){
  .cca-site-header .nav-menu{display:none}
  .cca-site-header .mobile-menu-toggle{display:block}
  .cca-site-header .logo-text h1{font-size:20px}
}

@media print{
  .cca-site-header,.cca-mobile-menu,.cca-mobile-overlay,.cca-site-header-spacer{display:none !important}
}
