/* Refined home page: deep navy, teal and warm coral */
:root{--navy:#15365d;--purple:#15365d;--pink:#ec735f;--coral:#ec735f;--sun:#eab64d;--sky:#138f91;--teal:#138f91;--green:#138f91;--ink:#183553;--muted:#68798b;--cream:#f6f8fa}
.topbar,.trust-strip{background:var(--navy)}.nav-wrap{background:#fffffff5}.nav-cta,.primary{background:var(--coral);box-shadow:0 10px 22px #ec735f40}.hero{padding:0;min-height:610px;display:flex;align-items:center;background:var(--navy)}.hero-backdrop{position:absolute;inset:0;background:linear-gradient(90deg,#102e52f7 0%,#15365de6 46%,#15365d5c 100%),url('assets/pollachi-03.png') center 50%/cover;z-index:-1}.hero:before,.hero:after,.hero-confetti{display:none}.hero-copy{padding:75px 0;color:#fff}.hero .eyebrow{color:#d6fffb;background:#ffffff1a;box-shadow:none}.hero .dot{background:#8ee1d9;box-shadow:none}.hero-kicker{color:#9be7e1}.hero h1{color:white;text-shadow:none;font-size:clamp(54px,6vw,82px);line-height:1}.hero h1 span{padding:0;background:none;color:#f4ca68;box-shadow:none;transform:none}.hero-intro{color:#e0eaf1;max-width:570px}.hero .soft{background:#fff;color:var(--navy);border:0}.hero-points{color:#d8e7ef}.hero-points span{background:none;padding:0}.hero-points span:before{content:'✓';color:#9ce2d8;margin-right:6px}.hero-visual{min-height:500px}.hero-main{top:64px;right:0;width:68%;height:68%;border-radius:18px;border:7px solid #fff;box-shadow:0 22px 50px #05172e73;transform:none}.hero-small{display:none}.sticker{left:9%;top:40px;width:138px;height:108px;border-radius:12px;background:#f3c65e;color:#14355b;box-shadow:0 14px 30px #061c3460;transform:none}.sticker b{font-size:16px}.hero-bubble{right:5%;top:52%;width:90px;height:90px;background:var(--teal);box-shadow:0 13px 22px #04192d60}.hero-bubble b{font-size:26px}.hero-bubble small{font-size:10px}.trust-grid>div{padding:25px 18px}.trust-grid i{background:#ffffff12;color:#8ee1d9}.about{background:#fff}.about-editorial{display:grid;grid-template-columns:1.13fr .87fr;gap:70px;align-items:center}.about-copy .lead{font-size:21px;color:#314e68}.about-copy>p:not(.kicker){color:var(--muted)}.about-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:27px 0}.about-highlights>div{padding:16px 12px;border-left:3px solid var(--teal);background:#f5f8fa}.about-highlights b,.about-highlights span{display:block}.about-highlights b{font:800 23px 'Baloo 2';color:var(--navy)}.about-highlights span{color:var(--muted);font-size:11px;line-height:1.3}.text-arrow{color:var(--teal);font-weight:900}.vision-panel{margin-top:18px;padding:19px 21px;border-left:4px solid var(--coral);background:#fff7f4}.vision-panel>span{color:var(--coral);font-size:11px;font-weight:900;letter-spacing:.12em}.vision-panel p{margin:6px 0 0;color:var(--navy)!important;font-weight:700}.about-image-stack{position:relative;min-height:430px}.about-image-large{position:absolute;right:0;top:0;width:86%;height:370px;overflow:hidden;border-radius:16px;box-shadow:0 24px 46px #1835532e}.about-image-large img{width:100%;height:100%;object-fit:cover}.about-image-caption{position:absolute;left:0;bottom:5px;width:65%;padding:19px;background:var(--navy);color:white;box-shadow:0 12px 25px #18355327}.about-image-caption b,.about-image-caption span{display:block}.about-image-caption span{font-size:12px;color:#cbd8e2}.program{border-top-width:4px;border-radius:12px;box-shadow:0 11px 26px #18355312}.program:hover{transform:translateY(-6px)}.program a{display:block;margin-top:12px;color:var(--teal);font-size:13px;font-weight:900}.facilities{background:#f3f6f8}.facility-feature{display:grid;grid-template-columns:1fr 1fr;background:#fff;box-shadow:0 18px 42px #18355316}.facility-feature-image{min-height:380px}.facility-feature-image img{width:100%;height:100%;object-fit:cover}.facility-feature-copy{padding:54px}.facility-feature-copy h3{font-size:39px;color:var(--navy)}.facility-feature-copy>p:not(.kicker){color:var(--muted)}.facility-list{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:23px}.facility-list span{font-weight:800;font-size:13px;color:var(--navy)}.gallery{background:#fff}.gallery-grid{grid-auto-rows:175px}.photo{border-radius:8px;box-shadow:none}.p1{grid-column:span 5;grid-row:span 2}.p2{grid-column:span 4;grid-row:span 2}.p3{grid-column:span 3;grid-row:span 1}.p4{grid-column:span 3;grid-row:span 1}.p5{grid-column:span 4;grid-row:span 1}.p6{grid-column:span 5;grid-row:span 1}.reviews{background:var(--navy)}.cta{background:#e9bd59}.dark{background:var(--navy)}.footer-bottom{background:var(--navy)}
@media(max-width:950px){.hero{min-height:auto}.hero-copy{padding:70px 0}.hero-main{width:74%;right:5%}.about-editorial{grid-template-columns:1fr}.facility-feature{grid-template-columns:1fr}.facility-feature-image{min-height:300px}}@media(max-width:620px){.hero-visual{display:none}.hero-copy{padding:78px 0}.about-highlights{grid-template-columns:1fr}.about-image-stack{min-height:330px}.about-image-large{height:285px}.about-image-caption{width:78%;padding:14px}.facility-feature-copy{padding:31px 23px}.facility-feature-copy h3{font-size:32px}.facility-list{grid-template-columns:1fr}.gallery-grid{grid-auto-rows:125px}.p1,.p2,.p3,.p4,.p5,.p6{grid-column:span 6!important;grid-row:span 1!important}}
/* FINAL NAV FIX: transparent navigation over the existing hero image */
.nav-wrap{
  background:transparent !important;
  backdrop-filter:none !important;
  border-bottom:0 !important;
  box-shadow:none !important;
  position:relative !important;
  z-index:20 !important;
  margin-bottom:-84px !important;
}
.nav-wrap.scrolled{
  background:rgba(21,54,93,.22) !important;
  backdrop-filter:blur(10px) !important;
  box-shadow:0 6px 20px rgba(0,0,0,.08) !important;
}
.nav-wrap:not(.scrolled) nav a:not(.nav-cta){color:#fff !important;text-shadow:0 1px 5px rgba(0,0,0,.45) !important;}
.nav-wrap:not(.scrolled) .menu{color:#fff !important;text-shadow:0 1px 5px rgba(0,0,0,.45) !important;}
.nav-wrap .brand{background:transparent !important;}
.nav-wrap .brand img{background:transparent !important;filter:drop-shadow(0 2px 4px rgba(0,0,0,.22)) !important;}
/* Mobile nav styling is handled in the unified responsive section below */

/* FINAL LOGO + ADMISSION LABEL FIX */
.nav-wrap .nav{align-items:flex-start;min-height:96px;position:relative;}
.brand-block{display:flex;flex-direction:column;align-items:flex-start;gap:2px;position:relative;z-index:25;margin-top:8px;}
.brand-block .brand{display:block;width:250px;height:auto;overflow:visible;background:#fff !important;border-radius:0;line-height:0;}
.brand-block .brand img{display:block;width:250px;height:auto;max-height:none;object-fit:contain;object-position:center;transform:none !important;filter:none !important;background:#fff !important;}
.brand-admission{display:inline-flex;align-items:center;gap:7px;margin-left:4px;margin-top:0;padding:6px 12px;border-radius:999px;background:rgba(21,54,93,.78);color:#fff;font-size:12px;font-weight:900;letter-spacing:.06em;line-height:1;box-shadow:0 5px 14px rgba(0,0,0,.16);}
.brand-admission .dot{width:7px;height:7px;background:#8ee1d9;border-radius:50%;flex:none;}
.hero-copy > .eyebrow{display:none !important;}
@media(max-width:950px){
 .nav-wrap .nav{min-height:92px;}
 .brand-block .brand,.brand-block .brand img{width:215px;}
 .brand-admission{font-size:11px;padding:5px 10px;}
}
@media(max-width:620px){
 .brand-block .brand,.brand-block .brand img{width:190px;}
 .brand-admission{font-size:10px;padding:5px 9px;}
}

/* FINAL USER REQUEST: full original logo, no white gap, admissions label below */
.topbar{position:absolute !important;top:0 !important;left:0 !important;width:100% !important;z-index:120 !important;}
.nav-wrap{position:absolute !important;top:38px !important;left:0 !important;width:100% !important;margin:0 !important;background:transparent !important;z-index:110 !important;}
.nav-wrap .nav{min-height:96px !important;}
.brand-block{margin-top:6px !important;}
.brand-block .brand{width:270px !important;background:transparent !important;}
.brand-block .brand img{width:270px !important;height:auto !important;max-height:none !important;object-fit:contain !important;background:transparent !important;filter:drop-shadow(0 2px 5px rgba(0,0,0,.28)) !important;}
.brand-admission{margin-top:-2px !important;}
.hero{position:relative !important;z-index:0 !important;margin:0 !important;padding:0 !important;min-height:610px !important;}
.hero-backdrop{z-index:0 !important;}
.hero-grid{position:relative !important;z-index:1 !important;}
.hero-copy{padding:155px 0 75px !important;}
@media(max-width:950px){.brand-block .brand,.brand-block .brand img{width:235px !important}.hero-copy{padding-top:145px !important}}
@media(max-width:620px){.brand-block .brand,.brand-block .brand img{width:205px !important}.hero-copy{padding-top:135px !important}}

/* FINAL LOGO CORRECTION — use the exact supplied logo artwork, with its white background removed */
.nav-wrap .brand-block .brand,
.nav-wrap .brand-block .brand img{
  background:transparent !important;
}
.nav-wrap .brand-block .brand{
  width:270px !important;
  height:auto !important;
  overflow:visible !important;
  line-height:0 !important;
}
.nav-wrap .brand-block .brand img{
  display:block !important;
  width:270px !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
  transform:none !important;
  filter:none !important;
}
.nav-wrap .brand-admission{
  margin-top:-2px !important;
}
.nav-wrap .brand-admission .dot{
  background:#e96d8d !important;
  box-shadow:none !important;
}
@media(max-width:950px){
  .nav-wrap .brand-block .brand,
  .nav-wrap .brand-block .brand img{width:235px !important;}
}
@media(max-width:620px){
  .nav-wrap .brand-block .brand,
  .nav-wrap .brand-block .brand img{width:205px !important;}
}

/* ===== TOPBAR (VERY TOP CONTACT DETAILS) ===== */
.topbar {
  background: #0F2B48 !important;
  color: #FFFFFF !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  position: relative !important;
  z-index: 1001 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.topbar-inner {
  display: flex !important;
  gap: 28px !important;
  justify-content: flex-end !important;
  align-items: center !important;
  padding: 8px 0 !important;
}

.topbar-inner span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #F3F4F6 !important;
  letter-spacing: 0.2px !important;
}

.top-time {
  opacity: 0.85 !important;
}

/* ===== MAIN NAVBAR STYLING ===== */
.nav-wrap,
.nav-wrap.scrolled,
.nav-wrap:not(.scrolled) {
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 1000 !important;
  background: #FFFFFF !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important;
  backdrop-filter: none !important;
  margin-bottom: 0 !important;
}

/* ===== MAIN NAVBAR STYLING ===== */
.nav-wrap,
.nav-wrap.scrolled,
.nav-wrap:not(.scrolled) {
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 1000 !important;
  background: #FFFFFF !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important;
  backdrop-filter: none !important;
  margin-bottom: 0 !important;
}

.nav-wrap .nav {
  min-height: 88px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 8px 0 !important;
}

/* NAVBAR LOGO MATCHING FOOTER LOGO DIMS (height: 76px - 80px) */
.nav-wrap .brand-block .brand {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  height: 78px !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  border: none !important;
  box-shadow: none !important;
  overflow: visible !important;
  line-height: 1 !important;
}

.nav-wrap .brand-block .brand:hover {
  transform: none !important;
}

.nav-wrap .brand-block .brand img {
  display: block !important;
  width: auto !important;
  height: 76px !important;
  max-height: 80px !important;
  object-fit: contain !important;
  object-position: left center !important;
  background: transparent !important;
  filter: none !important;
  transform: none !important;
}

@media (min-width: 951px) {
  .nav-wrap nav {
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
  }
}

/* ANIMATED ACTIVE LINK INDICATOR */
.nav-wrap nav a:not(.nav-cta),
.nav-wrap:not(.scrolled) nav a:not(.nav-cta) {
  position: relative !important;
  color: #1F2937 !important;
  text-shadow: none !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  padding: 4px 0 !important;
  transition: color 0.25s ease !important;
}

.nav-wrap nav a:not(.nav-cta)::after {
  content: '' !important;
  position: absolute !important;
  bottom: -4px !important;
  left: 50% !important;
  width: 100% !important;
  height: 3px !important;
  background: #EC735F !important;
  border-radius: 99px !important;
  transform: translateX(-50%) scaleX(0) !important;
  transform-origin: center !important;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease !important;
  opacity: 0 !important;
}

.nav-wrap nav a:not(.nav-cta):hover {
  color: #EC735F !important;
}

.nav-wrap nav a:not(.nav-cta):hover::after {
  transform: translateX(-50%) scaleX(0.6) !important;
  opacity: 0.6 !important;
}

.nav-wrap nav a:not(.nav-cta).active {
  color: #EC735F !important;
  font-weight: 900 !important;
}

.nav-wrap nav a:not(.nav-cta).active::after {
  transform: translateX(-50%) scaleX(1) !important;
  opacity: 1 !important;
}

.nav-wrap .nav-cta {
  background: #EC735F !important;
  color: #FFFFFF !important;
  padding: 10px 24px !important;
  border-radius: 999px !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  box-shadow: 0 4px 14px rgba(236, 115, 95, 0.35) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.nav-wrap .nav-cta:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(236, 115, 95, 0.45) !important;
}

.nav-wrap .menu,
.nav-wrap:not(.scrolled) .menu {
  color: #1F2937 !important;
  text-shadow: none !important;
}

@media(max-width:950px){
  .nav-wrap .nav {
    position: relative !important;
  }
  .nav-wrap .brand-block .brand { height: 55px !important; }
  .nav-wrap .brand-block .brand img { height: 52px !important; max-height: 52px !important; }

  /* Mobile Hamburger Button */
  .nav-wrap .menu {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    border: 1px solid #E2E8F0 !important;
    background: #FFFFFF !important;
    border-radius: 12px !important;
    font-size: 24px !important;
    line-height: 1 !important;
    color: #1F2937 !important;
    cursor: pointer !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
    transition: all 0.2s ease !important;
    z-index: 1002 !important;
    outline: none !important;
    user-select: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .nav-wrap .menu:active {
    transform: scale(0.92) !important;
    background: #F8FAFC !important;
  }

  /* Mobile Dropdown Menu Container (Hidden by default, shown when .open) */
  .nav-wrap nav {
    display: none !important;
    position: absolute !important;
    top: calc(100% + 4px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    background: #FFFFFF !important;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.16) !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 16px !important;
    padding: 16px 18px 20px 18px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 6px !important;
    z-index: 9999 !important;
    box-sizing: border-box !important;
  }

  .nav-wrap nav.open {
    display: flex !important;
    animation: mobileNavReveal 0.2s ease-out forwards !important;
  }

  @keyframes mobileNavReveal {
    from {
      opacity: 0;
      transform: translateY(-8px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  /* Clean, high-contrast mobile links */
  .nav-wrap nav a:not(.nav-cta) {
    display: block !important;
    color: #1E293B !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    padding: 11px 16px !important;
    border-radius: 10px !important;
    text-shadow: none !important;
    text-align: left !important;
    background: transparent !important;
    border-bottom: 1px solid #F1F5F9 !important;
    transition: all 0.15s ease !important;
  }

  .nav-wrap nav a:not(.nav-cta):hover,
  .nav-wrap nav a:not(.nav-cta):active {
    background: #FFF5F2 !important;
    color: #EC735F !important;
    padding-left: 20px !important;
  }

  .nav-wrap nav a:not(.nav-cta)::after {
    display: none !important;
  }

  .nav-wrap .nav-cta {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    margin-top: 8px !important;
    padding: 13px 20px !important;
    font-size: 15px !important;
    border-radius: 12px !important;
    box-sizing: border-box !important;
  }
}

@media(max-width:620px){
  .nav-wrap .brand-block .brand { height: 44px !important; }
  .nav-wrap .brand-block .brand img { height: 42px !important; max-height: 42px !important; }
}

/* ===== BRANCH NETWORK 3-CARD CAROUSEL SLIDER ===== */
.slider-controls {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
}

.slider-btn {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  border: 1px solid #E5E7EB !important;
  background: #FFFFFF !important;
  color: #1F2937 !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  display: grid !important;
  place-content: center !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
}

.slider-btn:hover:not(:disabled) {
  background: #EC735F !important;
  color: #FFFFFF !important;
  border-color: #EC735F !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(236, 115, 95, 0.3) !important;
}

.slider-btn:disabled {
  opacity: 0.35 !important;
  cursor: not-allowed !important;
  transform: none !important;
  background: #F3F4F6 !important;
  border-color: #E5E7EB !important;
  color: #9CA3AF !important;
  box-shadow: none !important;
}

.branches-slider-container {
  overflow: hidden !important;
  position: relative !important;
  width: 100% !important;
  padding: 10px 0 20px !important;
}

.branches-grid {
  display: flex !important;
  gap: 20px !important;
  transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
  grid-template-columns: none !important;
  width: 100% !important;
}

.branches-grid .branch {
  flex: 0 0 calc((100% - 40px) / 3) !important;
  min-width: calc((100% - 40px) / 3) !important;
  max-width: calc((100% - 40px) / 3) !important;
  box-sizing: border-box !important;
}

@media(max-width: 950px) {
  .branches-grid .branch {
    flex: 0 0 calc((100% - 20px) / 2) !important;
    min-width: calc((100% - 20px) / 2) !important;
    max-width: calc((100% - 20px) / 2) !important;
  }
}

@media(max-width: 620px) {
  .branches-grid .branch {
    flex: 0 0 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
  }
}

/* UNIFORM BRANCH CARDS (NO FEATURED/ACTIVE HIGHLIGHT ON SLIDE) */
.branches-grid .branch,
.branches-grid .branch.featured {
  border: 1px solid #E5E7EB !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.04) !important;
  background: #FFFFFF !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.branches-grid .branch:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08) !important;
}

/* PAGINATION DOTS INDICATOR */
.slider-dots {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  margin-top: 22px !important;
}

.slider-dot {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: #D1D5DB !important;
  border: none !important;
  padding: 0 !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.slider-dot.active {
  width: 28px !important;
  border-radius: 99px !important;
  background: #EC735F !important;
  box-shadow: 0 2px 8px rgba(236, 115, 95, 0.4) !important;
}







