*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --primary:   #003580;
  --primary-d:#002060;/* deep school blue */
  --accent:    #e8a020;   /* gold/amber accent */
  --accent2:   #c0392b;   /* red for submenu */
  --white:#ffffff;
  --cream:#f8f5ef;
  --light:#f0f4fa;
  --text:#1a1a2e;
  --muted:#6b7280;
  --border:#dde2ee;
  --nav-h:78px;
  --top-h:36px;
  --drop-bg:   #ffffff;
  --drop-shadow: 0 12px 40px rgba(0,53,128,0.13);
  --sub-bg:    #003580;
  --radius:    4px;
  --nav-h:     78px;
}

body {
  background: var(--light);
  color: var(--text);
  min-height: 100vh;
}
/* Heading Font */
h1, h2, h3, h4, h5, h6 {
    font-family: 'cinzel', sans-serif;
}

/* Body Text Font */
body, p, span, li, a {
    font-family: 'inter', sans-serif;
}
/* ═══════════════════════════════════════
   TOP BAR
═══════════════════════════════════════ */
.topbar {
  background: var(--primary);
  padding: 0 40px;
  height: 36px;
  display: flex; align-items: center; justify-content: space-between;
}
.topbar-left { font-size: 0.75rem; color: rgba(255,255,255,0.75);display: flex;
    align-items: center; }
.topbar-right { display: flex; align-items: center; gap: 20px; }
.topbar-right a {font-size: 0.75rem; color: rgba(255,255,255,0.75);text-decoration: none; transition: color 0.2s;display: flex;align-items: center;gap: 8px;}
.topbar-right a:hover { color:var(--accent);}
.topbar-divider { width: 1px; height: 14px; background: rgba(255,255,255,0.2); }

/* ═══════════════════════════════════════
   MAIN NAV
═══════════════════════════════════════ */
nav {
  position: sticky; top: 0; z-index: 999;
  background: var(--white);
  height: var(--nav-h);
  display: flex; align-items: center;justify-content: space-between;
  padding: 0 40px;
  box-shadow: 0 2px 16px rgba(0,53,128,0.10);
  gap: 0;
}

.logo-section {
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content:start;
}
.nav-section {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: end; 
}
/* Logo */
.nav-logo {
  display: flex; align-items: center; gap: 12px;
  text-decoration: none; margin-right: auto; flex-shrink: 0;
}
.logo-icon {
  width: 75px; height: 75px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
}
a.custom-logo-link {
    display: flex;
}
.logo-icon img {
  width: 100%; height: 100%; object-fit: contain;
}
.logo-text { line-height: 1.15; }
.logo-text strong {
  display: block;
  font-size: 1.2rem; font-weight: 900;
  color: var(--primary);
}
.logo-text span { font-size: 0.78rem; color: var(--muted); letter-spacing: 0.04em; }

/* Nav items */
.nav-menu {
  display: flex; align-items: stretch;
  list-style: none; height: 100%; gap: 0;
}

.nav-item {
  position: relative;
  display: flex; align-items: center;
}

.nav-link {
  display: flex; align-items: center; gap: 5px;
  padding: 0 16px;
  height: 100%;
  font-size: 0.83rem; font-weight: 700;
  color: var(--text); text-decoration: none;
  letter-spacing: 0.03em; text-transform: uppercase;
  white-space: nowrap;
  transition: color 0.2s;
  border-bottom: 3px solid transparent;
  cursor: pointer;
}
.nav-link:hover,
.nav-item:hover > .nav-link { color: var(--primary); }

/* Chevron arrow */
.arrow {
  width: 0; height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  margin-top: 1px;
  transition: transform 0.25s;
  flex-shrink: 0;
}
.nav-item:hover > .nav-link .arrow { transform: rotate(180deg); }

/* ═══════════════════════════════════════
   LEVEL 1 DROPDOWN
═══════════════════════════════════════ */
.dropdown {
  position: absolute;
  top: calc(100% + 0px);
  left: 0;
  min-width: 240px;
  background: var(--drop-bg);
  box-shadow: var(--drop-shadow);
  border-top: 3px solid var(--accent);
  border-radius: 0 0 var(--radius) var(--radius);
  padding: 8px 0;
  list-style: none;

  /* hidden state */
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s;
  pointer-events: none;
}

.nav-item:hover > .dropdown {
  opacity: 1; visibility: visible;
  transform: translateY(0);
  pointer-events: all;
}

/* Dropdown items */
.drop-item {
  position: relative;
}

.drop-link {
  display: flex; align-items: center;
  padding: 9px 20px;
  font-size: 0.82rem; font-weight: 600;
  color: var(--text); text-decoration: none;
  transition: background 0.15s, color 0.15s;
  gap: 8px;
  white-space: nowrap;
}
.drop-link:hover {
  background: var(--light);
  color: var(--primary);
}

/* Right-facing chevron for items with submenu */
.arrow-right {
  width: 0; height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 5px solid currentColor;
  flex-shrink: 0; margin-left: auto;
  transition: transform 0.2s;
}
.drop-item:hover > .drop-link .arrow-right { transform: translateX(3px); }

/* Separator line */
.drop-sep {
  height: 1px;
  background: #e8ecf4;
  margin: 6px 0;
}

/* Drop item accent dot */
.drop-link::before {
  content: '';
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--accent);
  flex-shrink: 0;
  opacity: 0;
  transition: opacity 0.15s;
}
.drop-link:hover::before { opacity: 1; }

/* ═══════════════════════════════════════
   LEVEL 2 SUBMENU
═══════════════════════════════════════ */
.submenu {
  position: absolute;
  top: -8px;              /* align with parent item */
  left: calc(100%);       /* open to the right */
  min-width: 210px;
  background: var(--primary);
  border-left: 3px solid var(--accent);
  border-radius: 0 var(--radius) var(--radius) 0;
  padding: 8px 0;
  list-style: none;
  box-shadow: 6px 12px 32px rgba(0,0,0,0.18);

  /* hidden state */
  opacity: 0;
  visibility: hidden;
  transform: translateX(10px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
  pointer-events: none;
}

.drop-item:hover > .submenu {
  opacity: 1; visibility: visible;
  transform: translateX(0);
  pointer-events: all;
}

.sub-link {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 20px;
  font-size: 0.8rem; font-weight: 600;
  color: rgba(255,255,255,0.82); text-decoration: none;
  transition: background 0.15s, color 0.15s;
  white-space: nowrap;
}
.sub-link::before {
  content: '→';
  color: var(--accent);
  font-size: 0.75rem;
  transition: transform 0.15s;
}
.sub-link:hover {
  background: rgba(255,255,255,0.1);
  color: var(--accent);
}
.sub-link:hover::before { transform: translateX(4px); }

/* Active/current page highlight */
.nav-link.active { color: var(--primary); border-bottom-color: var(--primary); }

/* ═══════════════════════════════════════
   CTA BUTTON
═══════════════════════════════════════ */
.nav-cta {
  margin-left: 20px; flex-shrink: 0;
  padding: 10px 22px;
  background: var(--accent);
  color: var(--white); text-decoration: none;
  font-size: 0.8rem; font-weight: 800;
  letter-spacing: 0.05em; text-transform: uppercase;
  border-radius: var(--radius);
  transition: background 0.2s, transform 0.15s;
  white-space: nowrap;
}
.nav-cta:hover { background: #cf8e18; transform: translateY(-1px); }

/* ═══════════════════════════════════════
   HAMBURGER (mobile)
═══════════════════════════════════════ */
.hamburger {
  display: none; flex-direction: column; gap: 5px;
  cursor: pointer; margin-left: auto; padding: 4px;
}
.hamburger span { display: block; width: 26px; height: 2.5px; background: var(--primary); border-radius: 2px; transition: all 0.3s; }
.hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.hamburger.open span:nth-child(2) { opacity: 0; }
.hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

/* ═══════════════════════════════════════
   MOBILE DRAWER
═══════════════════════════════════════ */
.mobile-overlay {
  display: none; position: fixed; inset: 0; z-index: 997;
  background: rgba(0,0,0,0.4); backdrop-filter: blur(2px);
}
.mobile-drawer {
  position: fixed; top: 0; left: -320px; bottom: 0; z-index: 998;
  width: 300px; background: var(--white);
  overflow-y: auto;
  transition: left 0.3s cubic-bezier(0.16,1,0.3,1);
  box-shadow: 4px 0 32px rgba(0,0,0,0.15);
}
.mobile-drawer.open { left: 0;z-index:9999; }
.mobile-overlay.open { display: block; }

.drawer-header {
  background: var(--primary); padding: 20px 24px;
  display: flex; align-items: center; gap: 12px;
}
.drawer-header strong { color: var(--white); font-family: 'Merriweather', serif; font-size: 0.9rem; }

.mobile-nav { list-style: none; padding: 12px 0; }

.mob-item { border-bottom: 1px solid #e8ecf4; }

.mob-link {
  display: flex; align-items: center; justify-content: space-between;
  padding: 13px 24px;
  font-size: 0.88rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em;
  color: var(--text); text-decoration: none; cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.mob-link:hover { background: var(--light); color: var(--primary); }

.mob-arrow { font-size: 0.7rem; transition: transform 0.25s; color: var(--muted); }
.mob-item.open > .mob-link .mob-arrow { transform: rotate(90deg); color: var(--primary); }

/* L1 dropdown in mobile */
.mob-dropdown { display: none; list-style: none; background: var(--light); }
.mob-item.open > .mob-dropdown { display: block; }

.mob-drop-item { border-top: 1px solid #dde2ee; }

.mob-drop-link {
  display: flex; align-items: center; justify-content: space-between;
  padding: 11px 24px 11px 36px;
  font-size: 0.82rem; font-weight: 600;
  color: #334155; text-decoration: none; cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.mob-drop-link:hover { color: var(--primary); background: #e0e8f6; }
.mob-drop-item.open > .mob-drop-link { color: var(--primary); }

/* L2 submenu in mobile */
.mob-submenu { display: none; list-style: none; background: var(--primary); }
.mob-drop-item.open > .mob-submenu { display: block; }

.mob-sub-link {
  display: flex; align-items: center; gap: 8px;
  padding: 10px 24px 10px 48px;
  font-size: 0.8rem; font-weight: 600;
  color: rgba(255,255,255,0.8); text-decoration: none;
  border-top: 1px solid rgba(255,255,255,0.08);
  transition: color 0.15s, background 0.15s;
}
.mob-sub-link:hover { color: var(--accent); background: rgba(255,255,255,0.06); }
.mob-sub-link::before { content: '›'; color: var(--accent); font-size: 1rem; }
/* MOBILE */

@media(max-width:991px){

    .nav-menu{
        display:none;
    }

    .hamburger{
        display:flex;
    }

}

/* DESKTOP */

@media(min-width:992px){

    .mobile-drawer,
    .mobile-overlay,
    .hamburger{
        display:none;
    }

}
@media (max-width: 1024px) {
  .nav-menu, .nav-cta { display: none; }
  .hamburger { display: flex; }
  nav { padding: 0 24px; }
  .topbar { padding: 0 24px; }
}
/* ═══════════════════════════════════════
   Social Icons
═══════════════════════════════════════ */
.social-links {
    display: flex;
    gap: 0px;
    align-items: center;
}
.social-links a {
   padding: 8px;
   border-radius: 50%;
}
/* TICKER */
.ticker{display:flex;align-items:center;height:42px;background:var(--white);border-bottom:1px solid var(--border);overflow:hidden;}
.ticker-label{flex-shrink:0;background:var(--accent2);color:var(--white);padding:0 20px;height:100%;display:flex;align-items:center;font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;gap:6px;white-space:nowrap;}
.ticker-label::after{content:'';width:0;height:0;border-top:21px solid transparent;border-bottom:21px solid transparent;border-left:10px solid var(--accent2);position:relative;left:20px}
.ticker-track{display:flex;align-items:center;flex:1;overflow:hidden;margin-left:28px;}
.ticker-inner{display:flex;gap:60px;white-space:nowrap;animation:tickerScroll 30s linear infinite;}
.ticker-inner:hover{animation-play-state:paused}
.ticker-item{font-size:.8rem;color:var(--text);font-weight:500}
.ticker-item a{color:var(--primary);font-weight:700;text-decoration:none}
.ticker-item a:hover{color:var(--accent2)}
@keyframes tickerScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* HERO SLIDER */
.hero{position:relative;height:calc(100vh - var(--nav-h) - var(--top-h) - 72px);min-height:520px;overflow:hidden}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;}
.slide.active{opacity:1;z-index:1}
.slide-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 8s ease;}
.slide.active .slide-bg{transform:scale(1.05)}
.slide-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(0,32,96,.82) 0%,rgba(0,32,96,.4) 60%,transparent 100%)}
.slide-content{position:absolute;top: 50%;transform: translateY(-50%);left:0;right:0;z-index:2;padding:0 80px 0 80px;max-width:720px;}
.slide-tag{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);padding:5px 14px;margin-bottom:20px;opacity:0;transform:translateY(20px);transition:opacity .6s .3s,transform .6s .3s;}
.slide.active .slide-tag{opacity:1;transform:translateY(0)}
.slide-title{font-size:clamp(2.4rem,5.5vw,3rem);font-weight:900;line-height:1.05;color:var(--white);margin-bottom:18px;opacity:0;transform:translateY(30px);transition:opacity .7s .45s,transform .7s .45s;}
.slide.active .slide-title{opacity:1;transform:translateY(0)}
.slide-title em{font-style:italic;color:var(--accent)}
.slide-sub{font-size:1rem;color:rgba(255,255,255,.8);line-height:1.7;margin-bottom:32px;max-width:520px;opacity:0;transform:translateY(20px);transition:opacity .6s .6s,transform .6s .6s;}
.slide.active .slide-sub{opacity:1;transform:translateY(0)}
.slide-btns{display:flex;gap:14px;opacity:0;transform:translateY(20px);transition:opacity .6s .75s,transform .6s .75s;}
.slide.active .slide-btns{opacity:1;transform:translateY(0)}
.btn-primary{padding:14px 32px;background:var(--accent);color:var(--white);font-size:.8rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;border-radius:3px;transition:background .2s,transform .15s;}
.btn-primary:hover{background:#cf8e18;transform:translateY(-2px)}
.btn-ghost{padding:14px 32px;background:transparent;color:var(--white);font-size:.8rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;border:2px solid rgba(255,255,255,.5);border-radius:3px;transition:border-color .2s,background .2s;}
.btn-ghost:hover{border-color:var(--white);background:rgba(255,255,255,.08)}
.slider-nav{position:absolute;bottom:28px;right:80px;z-index:3;display:flex;align-items:center;gap:10px}
.slider-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4);cursor:pointer;transition:background .2s,width .3s;border:none;padding:0;}
.slider-dot.active{background:var(--accent);width:24px;border-radius:4px}
.slider-arr{width:44px;height:44px;border:2px solid rgba(255,255,255,.4);background:none;color:var(--white);font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,background .2s;border-radius:3px;}
.slider-arr:hover{border-color:var(--white);background:rgba(255,255,255,.12)}
.hero-stats{position:absolute; top: 50%;transform: translateY(-50%);right:0;z-index:3;display:flex;flex-direction:column;}
.hero-stat{background:rgba(0,53,128,.85);backdrop-filter:blur(10px);border-left:4px solid var(--accent);padding:16px 24px;animation:statIn .6s both;}
.hero-stat:nth-child(1){animation-delay:.8s}
.hero-stat:nth-child(2){animation-delay:.95s}
.hero-stat:nth-child(3){animation-delay:1.1s}
@keyframes statIn{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}
.stat-num{serif;font-size:1.9rem;font-weight:900;color:var(--accent);line-height:1}
.stat-desc{font-size:.7rem;color:rgba(255,255,255,.65);letter-spacing:.04em;margin-top:2px}

/* WHY CHOOSE US */
.why-section{padding: 50px 0px;background:var(--white)}
.sec-head{text-align:center;margin-bottom:64px}
.sec-label{font-size:.7rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--teal);margin-bottom:12px}
.sec-title{font-size:clamp(1.9rem,3.5vw,2.9rem);font-weight:700;line-height:1.2;color:var(--text)}
h2.sec-title em { color: var(--accent2);}
.sec-title em{font-style:italic;color:var(--teal)}
.sec-sub{font-size:.9rem;color:var(--muted);line-height:1.7;max-width:620px;margin:14px auto 0}
.sec-line{width:48px;height:3px;background:var(--accent);margin:18px auto 0}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:1200px;margin:0 auto}
.why-card{border:1px solid var(--border);border-radius:4px;padding:32px 28px;transition:box-shadow .3s,transform .3s;position:relative;overflow:hidden;}
.why-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent);transform:scaleX(0);transition:transform .3s;transform-origin:left}
.why-card:hover{box-shadow:0 16px 48px rgba(0,53,128,.1);transform:translateY(-4px)}
.why-card:hover::before{transform:scaleX(1)}
.why-icon{width:52px;height:52px;background:var(--light);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:18px;font-size:1.4rem}
.why-title{serif;font-size:1.05rem;font-weight:700;color:var(--primary);margin-bottom:10px}
.why-desc{font-size:.83rem;color:var(--muted);line-height:1.7}

/* FACILITIES */
.facilities{padding:50px 20px;background:var(--cream)}
.fac-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1200px;margin:0 auto}
.fac-card{background:var(--primary);border-radius:4px;overflow:hidden;transition:transform .35s,box-shadow .35s;cursor:pointer;position:relative;}
.fac-card:hover{transform:translateY(-8px);box-shadow:0 24px 60px rgba(0,53,128,.25)}
.fac-card.featured{background:var(--accent2)}
.fac-img-wrap{padding:28px 28px 0;display:flex;justify-content:center}
.fac-img{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.2);transition:transform .4s;}
.fac-card:hover .fac-img{transform:scale(1.06)}
.fac-body{padding:24px 28px 32px;text-align:center}
.fac-tag{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);background:rgba(255,255,255,.1);padding:3px 10px;border-radius:2px;margin-bottom:10px}
.fac-card.featured .fac-tag{color:rgba(255,255,255,.9)}
.fac-name{serif;font-size:1.2rem;font-weight:700;color:var(--accent);margin-bottom:12px}
.fac-card.featured .fac-name{color:var(--white)}
.fac-desc{font-size:.83rem;color:rgba(255,255,255,.72);line-height:1.7}
.fac-link{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);text-decoration:none;transition:gap .2s;}
.fac-link:hover{gap:10px}
.fac-card.featured .fac-link{color:rgba(255,255,255,.9)}

/* STATS BAND */
.stats-band{background:var(--primary);padding:64px 48px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1200px;margin:0 auto;border-left:1px solid rgba(255,255,255,.1);}
.stat-block{padding:32px 40px;border-right:1px solid rgba(255,255,255,.1);text-align:center;}
.stat-block-num{serif;font-size:3.2rem;font-weight:900;color:var(--accent);line-height:1;display:block;}
.stat-block-suffix{font-size:1.6rem}
.stat-block-label{font-size:.8rem;color:rgba(255,255,255,.65);letter-spacing:.06em;margin-top:8px;display:block}

/* LEADERSHIP */
.leadership{padding:50px 48px;background:#fbfbfb}
.leadership-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:1100px;margin:0 auto}
.leader-card{border:1px solid var(--border);border-radius:4px;padding:40px;position:relative;overflow:hidden;}
.leader-card::before{content:'\201C';serif;font-size:8rem;color:var(--light);position:absolute;top:-10px;left:20px;line-height:1;z-index:0}
.leader-content{position:relative;z-index:1}
.leader-quote{serif;font-size:1.05rem;font-style:italic;color:var(--text);line-height:1.75;margin-bottom:24px}
.leader-info{display:flex;align-items:center;gap:14px;border-top:1px solid var(--border);padding-top:20px}
.leader-avatar{width:52px;height:52px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;serif;font-size:1.2rem;color:var(--accent);font-weight:700;flex-shrink:0}
.leadership-grid .leader-name{font-weight:700;font-size:.9rem;color:var(--primary)}
.leader-role{font-size:.75rem;color:var(--muted);margin-top:2px}

/* ADMISSIONS */
.admissions{padding:50px 48px;background:var(--cream)}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:1200px;margin:48px auto 0;position:relative}
.steps-grid::before{content:'';position:absolute;top:36px;left:12.5%;right:12.5%;height:2px;background:var(--border);z-index:0}
.step-card{text-align:center;padding:0 20px;position:relative;z-index:1}
.step-num{width:72px;height:72px;border-radius:50%;background:var(--primary);color:var(--white);serif;font-size:1.6rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;border:4px solid var(--cream);box-shadow:0 4px 16px rgba(0,53,128,.2)}
.step-title{font-weight:700;font-size:.88rem;color:var(--primary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}
.step-desc{font-size:.82rem;color:var(--muted);line-height:1.6}
.admission-cta{max-width:1200px;margin:60px auto 0;background:var(--primary);border-radius:4px;padding:48px;text-align:center;border-left:6px solid var(--accent)}
.admission-cta h3{serif;font-size:1.7rem;color:var(--accent);margin-bottom:12px}
.admission-cta p{font-size:.9rem;color:rgba(255,255,255,.75);line-height:1.7;margin-bottom:24px}
.admission-contacts{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;margin-bottom:28px}
.admission-contact{display:flex;align-items:center;gap:8px;font-size:.85rem;color:rgba(255,255,255,.9);text-decoration:none}
.admission-contact:hover{color:var(--accent)}

/* GALLERY */
.gallery-sec{padding:50px 48px;background:var(--white)}
.gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;max-width:1300px;margin:48px auto 0}
.gallery-item{position:relative;overflow:hidden;aspect-ratio:1;cursor:pointer;border-radius:3px}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gallery-item:hover img{transform:scale(1.08)}
.gallery-overlay{position:absolute;inset:0;background:rgba(0,32,96,.6);opacity:0;transition:opacity .3s;display:flex;align-items:flex-end;padding:16px}
.gallery-item:hover .gallery-overlay{opacity:1}
.gallery-label{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}

/* FAQ */
.faq-sec{padding:50px 48px;background:var(--cream)}
.faq-list{max-width:860px;margin:48px auto 0;display:flex;flex-direction:column;gap:0}
.faq-item{border-bottom:1px solid var(--border)}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:22px 0;cursor:pointer;gap:20px}
.faq-q-text{font-weight:700;font-size:.93rem;color:var(--text);line-height:1.4}
.faq-toggle{width:28px;height:28px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--primary);transition:all .25s;font-weight:700}
.faq-item.open .faq-toggle{background:var(--primary);border-color:var(--primary);color:var(--white);transform:rotate(45deg)}
.faq-a{font-size:.85rem;color:var(--muted);line-height:1.75;max-height:0;overflow:hidden;transition:max-height .35s ease,padding .3s}
.faq-item.open .faq-a{max-height:200px;padding-bottom:20px}

/* CONTACT */
.contact-sec{padding:90px 48px;background:var(--white)}
.contact-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;max-width:1100px;margin:0 auto;align-items:start}
.contact-info{display:flex;flex-direction:column;gap:24px}
.contact-item{display:flex;gap:16px;align-items:flex-start}
.contact-icon{width:44px;height:44px;background:var(--light);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.1rem}
.contact-icon img { max-width: 100%;padding: 10px;}
.contact-item-label{font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-bottom:4px}
.contact-item-val{font-size:.9rem;color:var(--text);line-height:1.6}
.contact-item-val a{color:var(--primary);text-decoration:none;font-weight:600}
.contact-item-val a:hover{color:var(--teal)}
.contact-form{background:var(--cream);border-radius:4px;padding:36px}
.form-title{serif;font-size:1.4rem;color:var(--primary);margin-bottom:6px}
.form-sub{font-size:.82rem;color:var(--muted);margin-bottom:28px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.form-group label{font-size:.73rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}
.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border);border-radius:3px;padding:11px 14px;font-family:inherit;font-size:.85rem;color:var(--text);background:var(--white);transition:border-color .2s;outline:none;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary)}
.form-group textarea{resize:vertical;min-height:90px}
.btn-submit{width:100%;padding:14px;background:var(--primary);color:var(--white);font-family:inherit;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border:none;border-radius:3px;cursor:pointer;transition:background .2s}
.btn-submit:hover{background:var(--primary-d)}

/* ETHOS */
.ethos{padding:100px 48px;background:var(--white);max-width:1400px;margin:0 auto;box-sizing:content-box}
.ethos-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.ethos-media{position:relative}
.ethos-img-main{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;display:block}
.ethos-video {position:absolute;bottom:-80px;right:-28px;width:45%;aspect-ratio:1;object-fit:cover;border-radius:4px;border:6px solid var(--white);box-shadow:0 8px 32px rgba(0,0,0,.15);}
.ethos-badge{position:absolute;top:24px;left:-16px;background:var(--primary);color:var(--white);padding:12px 20px;border-left:4px solid var(--accent);}
.ethos-badge strong{serif;font-size:1.6rem;color:var(--accent);display:block}
.ethos-badge span{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.ethos-content{padding-right:20px}
.ethos-pillars{display:flex;flex-direction:column;gap:28px;margin:36px 0}
.pillar{display:flex;gap:18px;align-items:flex-start}
.pillar-num{serif;font-size:2.2rem;font-weight:900;color:var(--border);line-height:1;flex-shrink:0;transition:color .3s;}
.pillar:hover .pillar-num{color:var(--accent)}
.pillar-body h4{font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--primary);margin-bottom:4px}
.pillar-body p{font-size:.84rem;color:var(--muted);line-height:1.7}

/* PARALLAX STRIP */
.parallax-strip{height:400px;position:relative;overflow:hidden}
.parallax-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-attachment:fixed;}
.parallax-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,32,96,.85) 0%,rgba(0,53,128,.6) 100%);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px;text-align:center;}
.parallax-quote{serif;font-size:clamp(1.4rem,3vw,2.4rem);font-weight:700;font-style:italic;color:var(--white);max-width:800px;line-height:1.4;}
.parallax-quote em{font-style:normal;color:var(--accent)}
.parallax-author{margin-top:20px;font-size:.82rem;color:rgba(255,255,255,.65);letter-spacing:.1em;text-transform:uppercase}

/* JOINING CARDS */
.joining{padding:100px 48px;background:var(--cream)}
.join-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:56px;max-width:1300px;margin-left:auto;margin-right:auto}
.join-card{position:relative;overflow:hidden;aspect-ratio:3/4;cursor:pointer}
.join-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;display:block}
.join-card:hover img{transform:scale(1.07)}
.join-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,32,96,.88) 0%,rgba(0,32,96,.1) 60%,transparent 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:32px 28px;transition:background .3s;}
.join-card:hover .join-overlay{background:linear-gradient(to top,rgba(0,53,128,.92) 0%,rgba(0,53,128,.2) 60%,transparent 100%)}
.join-tag{font-size:.65rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.join-title{font-size:1.35rem;font-weight:700;color:var(--white);line-height:1.25;margin-bottom:12px}
.join-cta{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.7);text-decoration:none;display:flex;align-items:center;gap:6px;transition:color .2s,gap .2s;}
.join-card:hover .join-cta{color:var(--accent);gap:10px}

/* CTA BAND */
.cta-band{background:var(--teal);padding:80px 48px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.cta-band-text p{;font-size:clamp(1.6rem,3vw,2.5rem);font-style:italic;font-weight:500;color:var(--white);line-height:1.45;}
.cta-band-right p{font-size:.95rem;color:rgba(255,255,255,.8);line-height:1.8;margin-bottom:28px}
.btn-white{display:inline-block;padding:14px 32px;background:var(--white);color:var(--primary);font-size:.8rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;border-radius:3px;transition:background .2s,transform .15s;}
.btn-white:hover{background:var(--cream);transform:translateY(-2px)}

/* FOOTER */
footer{background:var(--primary-d);padding:80px 48px 0}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;padding-bottom:60px;border-bottom:1px solid rgba(255,255,255,.1);max-width:1400px;margin:0 auto;}
.footer-brand{margin-bottom:16px;display:flex;align-items:center;gap:12px}
.footer-brand img{width:52px;height:52px;border-radius:50%}
.footer-brand strong{font-size:1rem;color:var(--white)}
.footer-desc{font-size:.83rem;color:rgba(255,255,255,.5);line-height:1.7;max-width:280px}
.footer-socials{display:flex;gap:10px;margin-top:20px}
.soc{width:34px;height:34px;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:.75rem;color:rgba(255,255,255,.6);border-radius:3px;transition:border-color .2s,color .2s;}
.soc:hover{border-color:var(--accent);color:var(--accent)}
.footer-col h4{font-size:.65rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.footer-col a{font-size:.83rem;color:rgba(255,255,255,.5);text-decoration:none;transition:color .2s}
.footer-col a:hover{color:var(--white)}
.footer-bottom{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:24px 0 28px;font-size:.75rem;color:rgba(255,255,255,.3);}
.footer-bottom a{color:rgba(255,255,255,.4);text-decoration:none;margin-left:0px}
.footer-bottom a:hover{color:var(--white)}

/* SCROLL REVEAL */
.reveal{opacity:0;transform:translateY(44px);transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1)}
.reveal.up{opacity:1;transform:translateY(0)}
.reveal-l{opacity:0;transform:translateX(-44px);transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1)}
.reveal-l.up{opacity:1;transform:translateX(0)}
.reveal-r{opacity:0;transform:translateX(44px);transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1)}
.reveal-r.up{opacity:1;transform:translateX(0)}
.stagger>*{opacity:0;transform:translateY(32px);transition:opacity .6s,transform .6s}
.stagger.up>*:nth-child(1){opacity:1;transform:none;transition-delay:0s}
.stagger.up>*:nth-child(2){opacity:1;transform:none;transition-delay:.12s}
.stagger.up>*:nth-child(3){opacity:1;transform:none;transition-delay:.24s}
.stagger.up>*:nth-child(4){opacity:1;transform:none;transition-delay:.36s}
.stagger.up>*:nth-child(5){opacity:1;transform:none;transition-delay:.48s}
.stagger.up>*:nth-child(6){opacity:1;transform:none;transition-delay:.6s}
/* ══════════════════════════════
   FLOATING ACTION BUTTONS
   (right side — Visit / Enquire / Apply)
══════════════════════════════ */
.fab-stack{
  position:fixed;right:0;top:50%;transform:translateY(-50%);
  z-index:990;display:flex;flex-direction:column;
  box-shadow:-4px 4px 24px rgba(0,0,0,.18);
}
.fab-btn{
  width:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:6px;padding:14px 6px;text-decoration:none;
  font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--white);transition:width .25s,padding .25s,gap .25s;
  overflow:hidden;position:relative;
}
.fab-btn::after{
  content:'';position:absolute;left:0;bottom:0;width:100%;height:2px;
  background:rgba(255,255,255,.3);
}
.form-group,
.form-group span,
.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    display: block;
    box-sizing: border-box;
}

.form-row {
    display: flex;
    gap: 20px;
}

.form-row .form-group {
    flex: 1;
}
/* Image */
.reveal-image{
    width:100%;
    height:100%;
    object-fit:cover;/* Initially hidden from right */
    clip-path: inset(0 0 0 100%);
}
.fab-btn:last-child::after{display:none}
.fab-btn svg{flex-shrink:0;transition:transform .2s}
.fab-btn:hover svg{transform:scale(1.15)}
.fab-visit { background:var(--primary); }
.fab-enquire{ background:var(--accent); }
.fab-apply { background:var(--accent2); }
.fab-enquire .fab-label{color:var(--primary-d)}
h3.footer-widget-title {
    font-size: .65rem;
    font-weight: 700;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--accent);
    margin-bottom: 18px;
}
@media(max-width:768px){
  .fab-stack{top:auto;bottom:0;right:0;left:0;flex-direction:row;transform:none;
    box-shadow:0 -4px 20px rgba(0,0,0,.15);}
  .fab-btn{flex:1;width:auto;flex-direction:row;padding:14px;justify-content:center;border-radius:0}
  .fab-btn:hover{width:auto}
  .fab-btn::after{width:1px;height:100%;top:0;bottom:0;right:0;left:auto}
}

@media(max-width:1100px){
  .nav-menu,.nav-cta{display:none!important}
  .hamburger{display:flex}
  .nav-inner,.topbar-inner{padding:0 24px}
  .topbar-left{display:none}
  .why-section,.facilities,.ethos,.joining,.leadership,.admissions,.gallery-sec,.faq-sec,.contact-sec,.stats-band,.cta-band,footer{padding-left:24px;padding-right:24px}
  .hero .slide-content{padding:0 24px 60px}
  .hero-stats{display:none}
  .ethos-inner{grid-template-columns:1fr}
  .ethos-img-accent{display:none}
  .why-grid,.fac-grid,.join-grid,.stats-grid,.footer-top,.cta-band,.leadership-grid,.steps-grid,.contact-grid,.gallery-grid{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .steps-grid::before{display:none}
}
@media(max-width:600px){
  .hero{height:75vh}
  .slide-title{font-size:2rem}
  .slider-nav{right:24px}
  .parallax-strip{height:280px}
}
/* ══ PAGE HERO ══ */
.page-hero{
  position:relative;height:420px;overflow:hidden;
  display:flex;align-items:flex-end;
}
.page-hero-bg{
  position:absolute;inset:0;
  background:url('/wp-content/uploads/2026/05/about-hero.webp') center/cover no-repeat;
}
.page-hero-bg::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to right,rgba(0,32,96,.92) 0%,rgba(0,53,128,.7) 50%,rgba(0,53,128,.3) 100%);
}
.page-hero-content{position:relative;z-index:2;padding:0 80px 64px;max-width:900px}
.breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:18px;font-size:.75rem;color:rgba(255,255,255,.6);letter-spacing:.08em;text-transform:uppercase}
.breadcrumb a{color:rgba(255,255,255,.6);text-decoration:none;transition:color .2s}
.breadcrumb a:hover{color:var(--accent)}
.breadcrumb span{color:var(--accent)}
.page-hero h1{
  font-family:'Playfair Display',serif;
  font-size:clamp(2.5rem,5vw,4.2rem);font-weight:900;line-height:1.05;
  color:var(--white);
}
.page-hero h1 em{font-style:italic;color:var(--accent)}
.page-hero-tagline{margin-top:16px;font-size:1rem;color:rgba(255,255,255,.75);line-height:1.6;max-width:520px}

/* ══ ANCHOR NAV ══ */
.anchor-nav{
  background:var(--primary);position:sticky;top:var(--nav-h);z-index:900;
  border-bottom:3px solid var(--accent);
  overflow-x:auto;
}
.anchor-nav-inner{display:flex;align-items:stretch;max-width:1400px;margin:0 auto;padding:0 48px;gap:0;white-space:nowrap}
.anchor-link{
  display:flex;align-items:center;padding:0 22px;height:52px;
  font-size:.73rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(255,255,255,.65);text-decoration:none;
  border-bottom:3px solid transparent;margin-bottom:-3px;
  transition:color .2s,border-color .2s;flex-shrink:0;
}
.anchor-link:hover,.anchor-link.active{color:var(--accent);border-bottom-color:var(--accent)}

/* ══ SECTION BASE ══ */
.page-sec{padding:50px 80px}
.page-sec.alt{background:var(--cream)}
.page-sec.dark{background:var(--primary)}
.inner{max-width:1280px;margin:0 auto}

.sec-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
.sec-title{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:700;line-height:1.2;color:var(--text)}
.sec-title em{font-style:italic;color:var(--primary)}
.dark .sec-title{color:var(--white)}
.dark .sec-title em{color:var(--accent)}
.sec-rule{width:52px;height:3px;background:var(--accent);margin:18px 0 0}

/* ══ ABOUT SCHOOL ══ */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;}
.about-text p{font-size:.95rem;color:var(--muted);line-height:1.85;margin-bottom:18px}
.about-text p:last-child{margin-bottom:0}
.about-media{position:relative}
.about-img-main{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;display:block}
.about-img-badge{
  position:absolute;bottom:-20px;left:-20px;
  background:var(--primary);padding:20px 24px;border-left:4px solid var(--accent);
  box-shadow:0 8px 32px rgba(0,0,0,.15);
}
.about-img-badge strong{font-family:'Playfair Display',serif;font-size:2rem;color:var(--accent);display:block;line-height:1}
.about-img-badge span{font-size:.7rem;color:rgba(255,255,255,.7);text-transform:uppercase;letter-spacing:.1em}

/* ══ VISION ══ */
.vision-wrap{
margin-top:26px;
}
.vision-decor{
  position:relative;display:flex;align-items:center;justify-content:center;
}
.vision-ring{
  width:220px;height:220px;border-radius:50%;
  border:3px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  position:relative;
}
.vision-ring::before{
  content:'';position:absolute;inset:12px;border-radius:50%;
  background:linear-gradient(135deg,var(--primary) 0%,var(--primary-d) 100%);
}
.vision-ring-text{
  position:relative;z-index:1;text-align:center;padding:20px;
}
.vision-ring-text strong{
  font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;
  color:var(--accent);display:block;line-height:1.3;
}
.vision-ring-text span{font-size:.65rem;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.12em;margin-top:6px;display:block}
.vision-text p{font-size:1rem;color:var(--muted);line-height:1.9;font-style:italic;padding-left:24px;border-left:4px solid var(--accent)}

/* ══ MISSION ══ */
.mission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:56px}
.mission-card{
  background:var(--white);padding:28px 28px 28px 24px;
  border-left:4px solid var(--primary);
  transition:border-color .25s,transform .25s,box-shadow .25s;
  position:relative;overflow:hidden;
}
.mission-card::before{
  content:'';position:absolute;top:0;left:0;bottom:0;width:0;
  background:var(--primary);transition:width .3s;z-index:0;
}
.mission-card:hover{transform:translateX(4px);box-shadow:0 8px 32px rgba(0,53,128,.12)}
.mission-card:hover::before{width:4px}
.mission-card:hover{border-color:var(--accent)}
.mission-num{
  font-family:'Playfair Display',serif;font-size:2rem;font-weight:900;
  color:var(--border);margin-bottom:12px;line-height:1;position:relative;z-index:1;
  transition:color .25s;
}
.mission-card:hover .mission-num{color:var(--accent)}
.mission-card p{font-size:.87rem;color:var(--muted);line-height:1.75;position:relative;z-index:1}

/* ══ LEADERSHIP CARDS ══ */
.leaders-grid{display:flex;flex-direction:column;gap:80px;margin-top:56px}
.leader-card-about{display:grid;grid-template-columns:1fr 2fr;gap:64px;align-items:start}
.leader-card-about.reverse{grid-template-columns:2fr 1fr}
.leader-card-about.reverse .leader-side{order:2}
.leader-card-about.reverse .leader-main{order:1}

.leader-side{display:flex;flex-direction:column;align-items:center;text-align:center;position:sticky;top:calc(var(--nav-h) + 60px)}
.leader-photo{
  width:180px;height:180px;border-radius:50%;object-fit:cover;
  border:4px solid var(--accent);box-shadow:0 8px 32px rgba(0,53,128,.2);
  margin-bottom:20px;display:block;
}
.leader-photo-placeholder{
  width:180px;height:180px;border-radius:50%;
  background:linear-gradient(135deg,var(--primary) 0%,var(--primary-d) 100%);
  border:4px solid var(--accent);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:20px;flex-shrink:0;
}
.leader-photo-placeholder span{font-family:'Playfair Display',serif;font-size:3rem;font-weight:700;color:var(--accent)}
.leader-name{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:700;color:var(--white)}
.leader-title{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-top:4px}
.leader-badge{
  margin-top:16px;padding:8px 16px;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.15);font-size:.72rem;color:rgba(255,255,255,.6);
}

.leader-main .quote-mark{
  font-family:'Playfair Display',serif;font-size:5rem;line-height:.6;
  color:var(--accent);opacity:.3;margin-bottom:16px;display:block;
}
.leader-pull-quote{
  font-family:'Playfair Display',serif;font-size:1.25rem;font-style:italic;font-weight:500;
  color:var(--white);line-height:1.55;margin-bottom:28px;padding-left:20px;
  border-left:3px solid var(--accent);
}
.leader-body p{font-size:.88rem;color:rgba(255,255,255,.72);line-height:1.9;margin-bottom:16px}
.leader-body p:last-child{margin-bottom:0}
.leader-divider{height:1px;background:rgba(255,255,255,.1);margin:24px 0}

/* ══ MOTTO BAND ══ */
.motto-band{
  background:var(--accent2);padding:64px 80px;text-align:center;
  position:relative;overflow:hidden;
}
.motto-band::before,.motto-band::after{
  content:'';position:absolute;border-radius:50%;
  background:rgba(255,255,255,.05);
}
.motto-band::before{width:400px;height:400px;top:-200px;left:-100px}
.motto-band::after{width:300px;height:300px;bottom:-150px;right:-50px}
.motto-hindi{
  font-family:'Playfair Display',serif;font-size:clamp(1.5rem,3vw,2.5rem);
  font-style:italic;font-weight:700;color:rgba(255,255,255,.9);
  margin-bottom:12px;
}
.motto-translation{font-size:.85rem;color:rgba(255,255,255,.7);letter-spacing:.08em}
.motto-meaning{
  margin-top:24px;max-width:640px;margin-left:auto;margin-right:auto;
  font-size:.92rem;color:rgba(255,255,255,.8);line-height:1.8;font-style:italic;
}

/* ══ SWACHH SECTION ══ */
.swachh-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;}
.swachh-text .badge-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.badge-pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 16px;background:var(--primary);color:var(--white);
  font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  border-radius:24px;
}
.badge-pill svg{fill:var(--accent);flex-shrink:0}
.swachh-img-wrap{position:relative}
.swachh-img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;display:block}
.swachh-img-label{
  position:absolute;bottom:20px;left:20px;right:20px;
  background:rgba(0,32,96,.88);backdrop-filter:blur(8px);
  padding:14px 18px;border-left:4px solid var(--accent);
  font-size:.8rem;color:rgba(255,255,255,.9);font-weight:600;
}
.feature-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr 1fr;
  gap:16px;
  margin-top:36px;
}

.feature-card{
  padding:20px;
  background:var(--white);
}

.primary-border{
  border-top:3px solid var(--primary);
}

.accent-border{
  border-top:3px solid var(--accent);
}

.accent2-border{
  border-top:3px solid var(--accent2);
}

.feature-title{
  font-size:.8rem;
  font-weight:700;
  color:var(--primary);
  text-transform:uppercase;
  letter-spacing:.06em;
  display:block;
  margin-bottom:8px;
}

.feature-text{
  font-size:.82rem;
  color:var(--muted);
  line-height:1.65;
}

@media (max-width:767px){
  .feature-grid{
    grid-template-columns:1fr;
  }
}
.custom-tabs-section{
  background: var(--white);
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid var(--border);
  box-shadow: 0 10px 40px rgba(0,53,128,0.08);
  margin: 50px 0;
}

/* =========================
   TAB NAVIGATION
========================= */

.custom-tabs-nav{
  display: flex;
  flex-wrap: wrap;
  background: linear-gradient(135deg,var(--primary),var(--primary-d));
  padding: 12px;
  gap: 10px;
}

.tab-btn{
  border: none;
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.75);
  padding: 14px 24px;
  font-size: 15px;
  font-weight: 600;
  border-radius: 10px;
  cursor: pointer;
  transition: .35s ease;
  letter-spacing: .3px;
  font-family: inherit;
}

.tab-btn:hover{
  background: rgba(255,255,255,0.15);
  color: var(--white);
  transform: translateY(-2px);
}

.tab-btn.active{
  background: var(--accent) !important;
  color: var(--text);
  box-shadow: 0 6px 18px rgba(232,160,32,0.35);
}

/* =========================
   TAB CONTENT
========================= */

.tab-content{
  display: none;
  padding: 35px;
  background: linear-gradient(to bottom,#fff,#f8fbff);
}

.tab-content.active{
  display: block;
}

/* =========================
   CARD
========================= */

.table-card{
  background: var(--white);
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(0,53,128,0.08);
  box-shadow: 0 8px 24px rgba(0,53,128,0.06);
}

.table-header{
  padding: 24px 30px;
  background: linear-gradient(135deg,var(--primary),var(--primary-d));
  position: relative;
}

.table-header::after{
  content:'';
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:4px;
  background: var(--accent);
}

.table-header h2{
  color: var(--white);
  margin: 0;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: .4px;
}

/* =========================
   TABLE
========================= */

.table-responsive{
  overflow-x: auto;
}

.modern-table{
  width: 100%;
  border-collapse: collapse;
  min-width: 900px;
}

.modern-table thead{
  background: #edf4ff;
}

.modern-table thead th{
  padding: 18px 20px;
  text-align: left;
  font-size: 15px;
  font-weight: 700;
  color: var(--primary);
  border-bottom: 2px solid var(--border);
  white-space: nowrap;
}

.modern-table tbody td{
  padding: 18px 20px;
  font-size: 15px;
  color: var(--text);
  border-bottom: 1px solid #edf0f5;
  transition: .3s ease;
}

.modern-table tbody tr{
  transition: .3s ease;
}

.modern-table tbody tr:nth-child(even){
  background: #fafcff;
}

.modern-table tbody tr:hover{
  background: rgba(0,53,128,0.04);
  transform: scale(1.002);
}

.modern-table tbody tr:hover td{
  color: var(--primary);
}

/* SERIAL NUMBER */

.modern-table tbody td:first-child{
  font-weight: 700;
  color: var(--accent2);
}

/* PHONE NUMBER */

.modern-table tbody td:last-child{
  font-weight: 600;
  color: var(--primary);
}

/* =========================
   SCROLLBAR
========================= */

.table-responsive::-webkit-scrollbar{
  height: 8px;
}

.table-responsive::-webkit-scrollbar-track{
  background: #e9eef8;
}

.table-responsive::-webkit-scrollbar-thumb{
  background: var(--primary);
  border-radius: 30px;
}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

  .custom-tabs-nav{
    flex-direction: column;
  }

  .tab-btn{
    width: 100%;
    text-align: center;
  }

  .tab-content{
    padding: 20px;
  }

  .table-header{
    padding: 20px;
  }

  .table-header h2{
    font-size: 22px;
  }

  .modern-table thead th,
  .modern-table tbody td{
    padding: 14px 16px;
    font-size: 14px;
  }

}
  .gi-wrap { max-width: 1200px; margin: 0 auto; padding: 2rem 1.5rem; font-family: var(--font-sans); }
  .gi-title-wrap { text-align: center; margin-bottom: 2rem; }
  .gi-title { font-size: 22px; font-weight: 500; color: var(--primary); border-bottom: 3px solid var(--accent); display: inline-block; padding-bottom: 6px; }
  .gi-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .gi-item { display: flex; align-items: flex-start; gap: 12px; padding: 10px 14px; border-radius: var(--radius); background: var(--white); border-left: 4px solid var(--primary); }
  .gi-item.even { background: var(--cream); border-left-color: var(--accent); }
  .gi-num { min-width: 26px; height: 26px; border-radius: 50%; background: var(--primary); color: var(--white); font-size: 11px; font-weight: 500; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 1px; }
  .gi-item.even .gi-num { background: var(--accent); }
  .gi-text { font-size: 13px; line-height: 1.6; color: var(--text); }
  .studnets-sec {
    margin: 40px 0px;
}
  .mpd { max-width: 900px; margin: 0 auto; padding: 2rem 1.5rem; font-family: var(--font-sans); color: var(--text); }
  .mpd-page-title { font-size: 26px; font-weight: 500; color: var(--primary); border-bottom: 3px solid var(--accent); padding-bottom: 8px; margin: 0 0 2rem; display: inline-block; }
  .mpd-section { margin-bottom: 2.5rem; }
  .mpd-section-title { font-size: 17px; font-weight: 500; color: var(--white); background: var(--primary); padding: 8px 16px; border-radius: var(--radius); margin: 0 0 0; }
  .mpd-table { width: 100%; border-collapse: collapse; font-size: 13px; }
  .mpd-table thead tr { background: #add8e6; }
  .mpd-table thead th { padding: 10px 14px; text-align: left; font-weight: 500; color: var(--text); border: 1px solid var(--border); }
  .mpd-table tbody tr:nth-child(odd) { background: var(--light); }
  .mpd-table tbody tr:nth-child(even) { background: #fce4ec; }
  .mpd-table tbody td { padding: 9px 14px; border: 1px solid var(--border); color: var(--text); vertical-align: top; }
  .mpd-table tbody td.sno { width: 48px; color: var(--muted); }
  .mpd-link { color: var(--primary); text-decoration: none; font-weight: 500; }
  .mpd-link:hover { text-decoration: underline; }
    .vtab-wrap { display: flex; gap: 0; }
  .vtab-nav { display: flex; flex-direction: column; min-width: 130px; border-right: 2px solid var(--border); }
  .vtab-nav .tab-btn { text-align: left; border-radius: 0; border-bottom: 1px solid var(--border); padding: 10px 14px; background:var(--primary); }
  .vtab-content { flex: 1; padding: 0 1.5rem; }
  .vtab-pane { display: none; }
  .vtab-pane.active { display: block; }
   .result-wrap { max-width:1100px;margin: 0 auto; padding: 2rem 1.5rem; font-family: var(--font-sans); }
  .result-page-title { text-align: center; margin-bottom: 2rem; }
  .result-page-title h2 { font-size: 20px; font-weight: 600; color: var(--primary); margin: 0 0 4px; }
  .result-page-title p { font-size: 15px; color: var(--muted); margin: 0; }
  .result-section { margin-bottom: 2rem; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
  .result-section-title { background: var(--primary); color: var(--white); text-align: center; padding: 10px 16px; font-size: 15px; font-weight: 500; }
  .result-stream-title { background: var(--light); color: var(--primary); padding: 8px 16px; font-size: 13px; font-weight: 600; border-bottom: 1px solid var(--border); }
    .adm { max-width: 860px; margin: 0 auto; padding: 2rem 1.5rem; font-family: var(--font-sans); }
  .adm-title { text-align: center; margin-bottom: 2.5rem; }
  .adm-title h2 { font-size: 26px; font-weight: 500; color: var(--text); margin: 0; }
  .adm-title h2 span { color: var(--primary); }
  .steps { display: flex; flex-direction: column; align-items: center; gap: 0; margin-bottom: 2rem; }
  .step-box { width: 320px; padding: 16px 24px; border-radius: var(--radius); text-align: center; font-size: 14px; font-weight: 500; color: var(--white); line-height: 1.45; }
  .step-primary { background: var(--primary); }
  .step-accent  { background: var(--accent); }
  .step-teal    { background: var(--primary-d); }
  .step-arrow-primary { display: flex; justify-content: center; align-items: center; height: 36px; color: var(--primary); }
  .step-arrow-accent  { display: flex; justify-content: center; align-items: center; height: 36px; color: var(--primary-d); }
  .step-arrow svg { display: block; }
  .quote { text-align: center; font-size: 15px; color: var(--text); font-style: italic; margin: 2rem 0; border-top: 2px solid var(--accent); border-bottom: 2px solid var(--accent); padding: 14px 0; }
  .checklist-section { background: var(--primary); border-radius: var(--radius); padding: 1.5rem 2rem; margin-bottom: 2rem; }
  .checklist-section h3 { font-size: 16px; font-weight: 500; color: var(--white); margin: 0 0 1rem; }
  .checklist { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
  .checklist li { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; color: var(--white); line-height: 1.55; opacity: 0.9; }
  .chk-icon { width: 18px; height: 18px; border-radius: 50%; background: var(--accent); display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 1px; }
  .chk-icon svg { display: block; }
  .adm-btns { display: flex; justify-content: center; gap: 16px; flex-wrap: wrap; margin-top: 1.5rem; }
  .adm-btn { padding: 11px 28px; border-radius: var(--radius); font-size: 14px; font-weight: 500; cursor: pointer; display: flex; align-items: center; gap: 8px; text-decoration: none; border: 2px solid var(--white); color: var(--white); background: transparent; transition: background .2s, color .2s; }
  .adm-btn:hover { background: var(--white); color: var(--primary); }
  .adm-btn.filled { background: var(--accent); border-color: var(--accent); color: var(--white); }
  .adm-btn.filled:hover { opacity: 0.9; }
  /* =========================
   GALLERY LIST PAGE
========================= */

.gallery-wrap{
    width: min(1280px, 92%);
    margin: 80px auto;
}

.album-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:30px;
}

.album-card{
    position:relative;
    overflow:hidden;
    border-radius:24px;
    display:block;
    background:#111;
    text-decoration:none;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.4s ease;
}

.album-card img{
    width:100%;
    height:340px;
    object-fit:cover;
    display:block;
    transition:transform .7s ease;
}

.album-card::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(to top, rgba(0,0,0,.75), transparent 60%);
}

.album-card h3{
    position:absolute;
    left:24px;
    bottom:22px;
    z-index:2;
    color:#fff;
    font-size:1.4rem;
    font-weight:600;
    margin:0;
    line-height:1.3;
}

.album-card:hover{
    transform:translateY(-8px);
}

.album-card:hover img{
    transform:scale(1.08);
}

/* =========================
   GALLERY DETAILS PAGE
========================= */

.gallery-details-wrap{
    width:min(1400px,92%);
    margin:80px auto;
}

.gallery-header{
    margin-bottom:50px;
    text-align:center;
}

.gallery-header h1{
    font-size:clamp(2rem,4vw,3.5rem);
    font-weight:700;
    color:#111;
    margin:0;
    line-height:1.2;
}

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:24px;
}

.gallery-item{
    position:relative;
    overflow:hidden;
    border-radius:22px;
    display:block;
    background:#f3f3f3;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
}

.gallery-item img{
    width:100%;
    height:320px;
    object-fit:cover;
    display:block;
    transition:transform .7s ease;
}

.gallery-item:hover img{
    transform:scale(1.08);
}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

    .gallery-wrap,
    .gallery-details-wrap{
        width:94%;
        margin:50px auto;
    }

    .album-grid,
    .gallery-grid{
        gap:18px;
    }

    .album-card img,
    .gallery-item img{
        height:240px;
    }

    .album-card h3{
        font-size:1.1rem;
        left:18px;
        bottom:18px;
    }

}
/* =========================
   YOUTUBE GALLERY
========================= */

.youtube-gallery-section{
    margin-top:40px;
}

.youtube-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(350px,1fr));
    gap:30px;
}

.youtube-video{
    position:relative;
    overflow:hidden;
    border-radius:24px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    background:#000;
}

.youtube-video iframe{
    width:100%;
    height:280px;
    display:block;
}

/* MOBILE */

@media(max-width:768px){

    .youtube-gallery-section{
        margin-top:70px;
    }

    .youtube-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .youtube-video iframe{
        height:220px;
    }

}
img.why-img {
    max-width: 100%;
    padding: 10px;
}
.leader-photo-placeholder img {
    width: 100%;
    border-radius: 50%;
}
/* RESPONSIVE DESIGN */
@media(max-width:768px){
   .topbar {
 display:none;
}
.btn-primary {
    padding: 8px 12px;
    font-size: .7rem;
}
.btn-ghost {
     padding: 8px 12px;
    font-size: .7rem;
}
.ethos-video {
display: none;
}
.ethos {
    padding: 20px;
}
.leadership {
    padding: 30px;
}
.form-row {
     display: block;
     gap: 0px;
}
.page-sec {
    padding: 20px;
}
.about-grid {
    grid-template-columns:  1fr;
    gap: 20px;
}
.leader-card-about {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}
.leader-side {
    position:relative;
    top: unset;
}
.leader-card-about.reverse {
   grid-template-columns: 1fr;
    gap: 24px;
}
.swachh-grid {
    grid-template-columns:  1fr;
    gap: 22px;
}
.gi-grid {
    grid-template-columns: 1fr;
    gap: 10px;
}
.custom-template-layout {
    padding: 20px;
}
.studnets-sec {
    margin: 20px 0px;
}
.mpd {
    padding: 0px;
}
.mpd-table tbody td {
    padding: 9px 8px;
}
.custom-template-layout .custom-tab-section {
    padding: 20px 0px;
}
.modern-table {
    min-width: 200px;
}
.vtab-wrap {
    flex-direction: column;
}
.vtab-nav {
    padding: 20px;
}
.result-wrap {
    width: 100%;
    padding: 0;
}
.fee-wrap {
    padding: 0;
}
.fac-item {
    grid-template-columns: 1fr;
}
   .gallery-grid {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}
}