body {
    background-color: #fff;
    background-image: url('../images/body-bg.jpg');
    background-size: cover;
    background-position: center top;
    background-repeat: repeat-y;
    background-attachment: fixed;
}



#back-img{
    content: "";
  background: url(../images/body-bg.jpg);
  background-size: cover;
  background-position: right bottom;
  background-repeat: no-repeat;
  z-index: 1;
}
/* 
.top_container::before {
  content: "";
  position: absolute;
  width: 48%;
  height: 100%;
  background: url(../images/body-bg.jpg);
  background-size: cover;
  background-position: right bottom;
  background-repeat: no-repeat;
  z-index: 1;
} */


.layout_padding {
  padding: 75px 0;
}

.layout_padding2 {
  padding: 45px 0;
}

.layout_padding2-top {
  padding-top: 45px;
}

.layout_padding-top {
  padding-top: 75px;
}

.layout_padding-bottom {
  padding-bottom: 75px;
}

.call_to-btn {
  display: inline-block;
  padding: 12px 20px;
  border-radius: 10px;
  font-size: 15px;
  text-transform: uppercase;
  background-color: #082464;
  border: 1px solid transparent;
  color: #fff;
  transition: all 0.3s ease 0s;
}

.hero_section .call_to-btn {
  padding: 12px 35px;
}

.call_to-btn img {
  width: 18px;
  margin-left: 10px;
}

.btn_on-hover {
  transition: all 0.3s ease 0s;
}

.call_to-btn:hover,
.btn_on-hover:hover {
  color: #fff;
  -webkit-box-shadow: 0px 5px 10px -5px rgba(0, 0, 0, 0.7);
  -moz-box-shadow: 0px 5px 10px -5px rgba(0, 0, 0, 0.7);
  box-shadow: 0px 5px 10px -5px rgba(0, 0, 0, 0.7);
  color: #fff;
  transform: translateY(-7px);
}

.main-heading {
  color: #082465;
  font-weight: bold;
  text-align: center;
}

/*header section*/

.header_section {
  padding-top: 10px;
}

nav.navbar.navbar-expand-lg {

  padding: 10px 0;
}

.custom_nav-container.navbar-expand-lg .navbar-nav .nav-link {
  padding: 10px 20px;
  color: #2d2c2c;
  font-size: 15px;
  text-align: center;
  text-transform: uppercase;
}

.custom_nav-container.navbar-expand-lg .navbar-nav .nav-item.active .nav-link {
  color: #232323;
}






a,
a:hover,
a:focus {
  text-decoration: none;
}

a:hover,
a:focus {
  color: initial;
}

.btn,
.btn:focus {
  outline: none !important;
  box-shadow: none;
}

.top_container {
  height: 95vh;
  position: relative;
}

.top_container::before {
  content: "";
  position: absolute;
  width: 48%;
  height: 100%;
  background: url(../images/hero-bg.png);
  background-size: cover;
  background-position: right bottom;
  background-repeat: no-repeat;
  z-index: -1;
}

.top_container.sub_pages::before {
  background-size: 400px 200px;
  background-position: top left;
}

.top_container.sub_pages {
  height: 35vh;
}

.top_container.sub_page {
  height: auto;
}
/* Default navbar link color */
.navbar-light .navbar-nav .nav-link {
  color: #FEC913;
  transition: color 0.3s ease;
}

/* Home active on top (transparent header / hero start) */
body.is-home .navbar:not(.scrolled)
.navbar-nav .nav-link[href="index.html"].active {
  color: #ffffff !important;
}

/* When header background appears (after scroll) */
.navbar.scrolled .navbar-nav .nav-link.active {
  color: #000000 !important;
}



/* Only center text vertically if no image (scoped so it doesn't break other sliders) */
#cuAnnMount .carousel-item {
  display: flex;
  justify-content: center; /* horizontal center */
  align-items: center;     /* vertical center */
}

#cuAnnMount .carousel-item img {
  /* Keep images as-is */
  display: block;
  max-width: 100%;
  height: auto;
}

/* Caption styling only for text-only items */
#cuAnnMount .carousel-item:has(.carousel-caption:empty) {
  flex-direction: column;
  text-align: center;
}

/* ONLY for no-announcement slide */
#cuAnnMount .carousel-item.no-announcement .carousel-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  right: auto;
  bottom: auto;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 100%;
  text-align: center;
}

/* Ensure text + icons align center */
#cuAnnMount .carousel-item.no-announcement .ann-row,
#cuAnnMount .carousel-item.no-announcement h3,
#cuAnnMount .carousel-item.no-announcement p {
  text-align: center;
  justify-content: center;
}
.custom_nav-container .nav_search-btn {
  background-image: url(../images/search-icon.png);
  background-size: 22px;
  background-repeat: no-repeat;
  background-position-y: 7px;
  width: 35px;
  height: 35px;
  padding: 0;
  border: none;
}

.navbar-brand {
  display: flex;
  align-items: center;
}

.navbar-brand span {
  font-size: 20px;
  font-weight: 700;
  color: #fefefe;
}

.custom_nav-container {
  z-index: 99999;
  padding: 15px 0;
}

.custom_nav-container .navbar-toggler {
  outline: none;
}

.custom_nav-container .navbar-toggler .navbar-toggler-icon {
  background-image: url(../images/menu.png);
  background-size: 40px;
}

/*end header section*/

/* hero section */
.hero-container {
  display: flex;
  padding-top: 50px;
  padding-bottom: 75px;
}
/* Hero content box: responsive & clean */
.hero_detail-box{
  width:70%;
  max-width: clamp(28rem, 50vw, 48rem); /* small pe narrow, large pe comfortable */
  padding-bottom: 0;
  text-align: start !important;
  align-items: start;
  justify-content: start;                     /* fixed PB hata diya */
}

/* Small/medium screens: center + decent spacing */
@media (max-width: 991.98px){
  .hero_detail-box{
    margin-inline: auto;
    text-align: center;
    padding: 1rem 0 2rem;                /* natural bottom space */
  }
}

/* Large screens: left align + breathing room on the right */
@media (min-width: 992px){
  .hero_detail-box{
    text-align: left;
    padding-right: 1.5rem;               /* = pe-lg-4 feel */
  }
}

/* Optional: hero subline color (inline style ki zaroorat nahi) */
.hero-sub{
  color:#FEC913;
  font-weight:600;
}


.hero_img-container {
  width: 55%;
}

.hero_detail-box {
  color: #fefeff;
}

.hero_detail-box h1 {
  text-transform: uppercase;
  font-size: 50px;
  color: #fec913;
  font-weight: bold;
}


.hero_detail-box p {
  margin-top: 20px;
  margin-bottom: 35px;
}

/* cantect button */


/* Hero CTA */
.btn-cta-frist{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  padding:.9rem 1.4rem;
  border-radius:999px;                /* pill */
  background:#FEC913;                 /* your gold */
  color:#fff;
  font-weight:700;
  letter-spacing:.06em;
  text-decoration:none;
  box-shadow:0 6px 18px rgba(0,0,0,.12);
  transition: transform .18s ease, box-shadow .18s ease;
}
.btn-cta-frist:hover{
  transform: translateY(-1px);
  box-shadow:0 10px 24px rgba(0,0,0,.16);
  color:#fff;
}



/* Hero CTA  blue*/
.btn-cta{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  padding:.9rem 1.4rem;
  border-radius:999px;                /* pill */
  background:#00164b;                 /* your gold */
  color:#fff;
  font-weight:700;
  letter-spacing:.06em;
  text-decoration:none;
  box-shadow:0 6px 18px rgba(0,0,0,.12);
  transition: transform .18s ease, box-shadow .18s ease;
}
.btn-cta:hover{
  transform: translateY(-1px);
  box-shadow:0 10px 24px rgba(0,0,0,.16);
  color:#fff;
}



.btn-cta:active{
  transform: translateY(0);
  box-shadow:0 4px 12px rgba(0,0,0,.18);
}
.btn-cta:focus-visible{
  outline:3px solid #fff;
  outline-offset:2px;
  box-shadow:0 0 0 4px rgba(254,201,19,.55);
}

/* Arrow micro-animation */
.btn-cta .cta-arrow{
  display:inline-block;
  transform: translateX(0);
  transition: transform .18s ease;
}
.btn-cta:hover .cta-arrow{
  transform: translateX(4px);
}



/* end hero section */

/* about section */
.about_img-box {
  width: 65%;
  margin: 40px auto;
}

/* about section */

/* teacher container */
.teacher_section .card {
  border: none;
  background-color: transparent;
}

.teacher_section .card-title {
  text-align: center;
  color: #48494a;
}

/* end teacher container */

/* vehicle section */
.vehicle_img-box {
  width: 60%;
  margin: 0 auto;
}

.vehicle_section .carousel-control-prev,
.vehicle_section .carousel-control-next {
  opacity: 1;
}

.vehicle_section .carousel-control-prev-icon,
.vehicle_section .carousel-control-next-icon {
  width: 50px;
  height: 50px;
  background-color: #082465;
  border-radius: 100%;
  background-size: 10px;
  background-position: center;
}

.vehicle_section .carousel-control-prev-icon {
  background-image: url(../images/prev.png);
}

.vehicle_section .carousel-control-next-icon {
  background-image: url(../images/next.png);
}



/* end vehicle section */

/* client section */
.client_section {
  background-image: url(../images/shape-1.png);
  background-repeat: no-repeat;

  background-position: right;

  background-size: 18%;
}

.client_container {
  width: 80%;
  margin: 0 auto;
  padding: 35px;
  background-color: #fefeff;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(163, 158, 163, 1);
  -moz-box-shadow: 0px 0px 5px 0px rgba(163, 158, 163, 1);
  box-shadow: 0px 0px 5px 0px rgba(163, 158, 163, 1);
  border-radius: 20px;
}

.client_detail-box h4 {
  color: #082465;
}

.client_detail-box span {
  text-transform: uppercase;
  color: #48494a;
}

.client_detail .client_img-box {
  width: 100px;
  margin-right: 15px;
}

.client_detail .client_img-box img {
  width: 100%;
}




/* end client section */


/* contact section */
.contact_section {
  background-image: url(../images/shape-2.png);
  background-repeat: no-repeat;
  background-size: 14%;
  background-position: left center;
}

.contact-form {
  padding: 25px;
  border-radius: 20px;
}

.contact-form input {
  border: none;
  outline: none;
  background-color: #dedee0;
  width: 100%;
  margin: 10px 0;
  padding: 7px 10px;
}

.contact-form .input_message {
  height: 120px;
}

.contact-form input::placeholder {
  color: #fff;
}

.contact-form button {
  border: none;
  outline: none;
  padding: 7px 50px;
  text-transform: uppercase;
  margin-top: 25px;
  background-color: #fec913;
  color: #fff;
}

/* end contact section */

/* admission section */


.admission_section .container-fluid.position-relative {
  height: 500px;
}

.admission_container {
  width: 770px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
}


.admission_img-box {
  width: 50%;
  border-radius: 25px 0 0 25px;
  overflow: hidden;
}

.admission_detail {
  width: 50%;
  background-color: #082465;
  padding: 20px;
  color: #fefeff;
  border-radius: 0 25px 25px 0;
}


.admission_img-box img {
  width: 100%;
}

.admission_detail .admission_btn {
  background-color: #fec913;
  padding: 7px 35px;
  color: #fefeff;
  font-size: 15px;
  border-radius: 5px;
}

/* end admission section */

/* call section */
.call_section h2 {
  text-align: center;
  margin: 15px 0;
}

.landing_section .number_heading {
  color: #fec913;
}

.landing_section p {
  text-align: center;
  margin-top: 15px;
}

/* end call section */

/* footer section*/

.footer_section {
  background-color: #082465;
  padding: 20px 0;
  font-family: "Roboto", sans-serif;
}

.footer_section p {
  color: #fdfdfe;
  margin: 0;
  text-align: center;
}

.footer_section a {
  color: #fdfdfe;
}

/* end footer section*/



/* header css */

/* =============================================================================
   HEADER / NAVBAR
   ========================================================================== */



   /* ================= HOME ONLY: FIXED header (sticky bugs se bachao) ================= */
body.is-home #siteHeader{
  position: fixed !important;   /* <-- sticky ki jagah fixed */
  top: 0 !important;
  left: 0; right: 0;
  width: 100%;
  z-index: 99999 !important;
  background: transparent !important;   /* top pe transparent */
  box-shadow: none !important;
  transition: background-color .25s ease, box-shadow .25s ease, backdrop-filter .25s ease;
}

body.is-home #siteHeader .navbar{
  background: transparent !important;
  border-bottom: none !important;
}

/* top pe nav gold */
/* body.is-home #siteHeader:not(.scrolled) .nav-link,
body.is-home #siteHeader:not(.scrolled) .dropdown-toggle-split.nav-link{
  color:#FEC913 !important;
} */

/* hero ke baad baqi pages jaisa WHITE bg */
body.is-home #siteHeader.scrolled{
  background: rgba(255,255,255,0.97) !important;
  box-shadow: 0 10px 28px rgba(15,23,42,.12) !important;
  backdrop-filter: blur(8px);
}

body.is-home #siteHeader.scrolled .navbar{
  background: transparent !important;
  border-bottom: 1px solid rgba(0,0,0,.06) !important;
}

/* scroll pe links dark */
/* body.is-home #siteHeader.scrolled .nav-link,
body.is-home #siteHeader.scrolled .dropdown-toggle-split.nav-link{
  color:#FEC913 !important;
} */


.navbar{padding:.75rem 0}
.brand-logo{width:52px; height:52px; border-radius:12px; object-fit:cover}
.brand-name{font-weight:800}
.navbar-toggler{border:0}
.navbar-toggler-icon{filter:invert(1) brightness()}

.main-nav .nav-link{font-weight:600; color:#FEC913; position:relative}
.main-nav .nav-link:hover{ color: var(--gold-light) }

.dropdown-menu{border-radius:12px; border:1px solid var(--stroke)}
@media (min-width:992px){
  .dropdown-hover-lg:hover .dropdown-menu{display:block}
}



    /* ========= NAVBAR (same style you used) ========= */
    .site-header .navbar{ background:#fff; border-bottom:1px solid rgba(0,0,0,.06); }
    .site-header .nav-link{ font-weight:600; color:#1f2937; }
    .site-header .nav-link:hover{ color:#2b2b2b; }
    .navbar-light .navbar-toggler{ border-color: rgba(0,0,0,.1); }
    .logo-badge{ display:inline-grid; place-items:center; width:52px; height:52px;
      background:#fff; border:1px solid rgba(0,0,0,.08); box-shadow:0 6px 20px rgba(0,0,0,.12); overflow:hidden; }
    .logo-badge img{ width:65%; height:65%; margin-left: 5px; object-fit:cover; }
    @media (min-width:992px){ .navbar .dropdown:hover>.dropdown-menu{ display:block; } }
    .dropdown-menu{ border-radius:12px; border:1px solid var(--stroke); }

/* =============================================================================
   BUTTONS
   ========================================================================== */
.fw-800{font-weight:800}
.fw-700{font-weight:700}

.btn-brand{
  background:var(--brand); color:#fff; border:1px solid var(--brand);
}
.btn-brand:hover{
  background:var(--brand-700); color:#fff; border-color:var(--brand-700);
}
.btn-outline-brand{
  border:1px solid var(--brand); color:var(--brand); background:transparent;
}
.btn-outline-brand:hover{background:var(--brand); color:#fff}
.btn-plain{
  border:1px dashed var(--stroke); color:#2b4a9b; background:#fff;
}
.btn-plain:hover{background:#f7f9ff}
.link-brand{color:var(--brand); text-decoration:none}
.link-brand:hover{text-decoration:underline}

/* =============================================================================
   GENERIC SECTIONS
   ========================================================================== */
.section-pad{padding: clamp(2rem, 4vw, 4rem) 0}
.bg-soft{background:var(--soft)}







/* =============================================================================
   REVEAL ANIMATIONS
   ========================================================================== */


   :root{
  --brand:#0A84FF;
  --accent:#FEC913; /* your gold */
  --ink:#1f2937;
  --stroke:rgba(0,0,0,.12);
}


.hero-sub{
  color: white;
}

/* Sub-heading chip */
.hero-sub .chip{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.45rem .8rem;
  border-radius:999px;
  font-weight:900;
  color:#FEC913;
  background: linear-gradient(180deg, rgba(254,201,19,.18), rgba(254,201,19,.05));
  border:1px solid rgba(254,201,19,.55);
  box-shadow: 0 1px 0 rgba(254,201,19,.6) inset, 0 2px 10px rgba(254,201,19,.15);
}

/* CTA micro-glow on hover */
.btn-glow{ transition: box-shadow .25s ease, transform .25s ease; }
.btn-glow:hover{ box-shadow: 0 10px 24px rgba(10,132,255,.25); transform: translateY(-1px); }

/* ===== Slider: fixed, responsive height ===== */
.hero-img-slider{ position: relative; }
.hero-img-slider .hero-fixed{
  /* Taller on desktop, comfortable on mobile */
  height: clamp(460px, 44vh, 480px);
}
@media (min-width: 900px){ /* lg+ (since slider is in col-4) */
  .hero-img-slider .hero-fixed{ height: clamp(450px, 46vh, 520px); }
}
.hero-img-slider img{
  object-fit: cover;
  object-position: center;
  display: block;
}
/* ✅ Only when image exists: keep fixed height */
#cuAnnMount .ann-slide.has-img .ann-slide-img{
  height: 480px;
  width: 100%;
  object-fit: cover;
  object-position: center;
  display:block;
}

/* ✅ When NO image: container auto adjusts to text */
#cuAnnMount .ann-slide.no-img{
  display:flex;
  align-items:center;
  justify-content:center;
  padding: 18px 14px;
  height: auto !important;      /* ← important */
  min-height: unset !important; /* ← important */
  background: rgba(255,255,255,.08); /* optional */
  border-radius: 18px;
}

/* ✅ Center text properly when no image */
#cuAnnMount .carousel-caption.ann-center{
  position: static !important;
  transform: none !important;
  width: 100%;
  max-width: 900px;
  text-align: center;
  padding: 10px 0;
}



#cuAnnMount .carousel-control-prev,
#cuAnnMount .carousel-control-next {
  width: 46px;
  height: 46px;
  top: 50%;
  transform: translateY(-50%);
  opacity: 1; /* always visible */
}

#cuAnnMount .carousel-control-prev {
  left: -12px;    /* thoda bahar side pe */
}

#cuAnnMount .carousel-control-next {
  right: -12px;
}

/* button look */
#cuAnnMount .cu-arrow {
  background: transparent;
}

/* inner icon (the < and >) */
#cuAnnMount .cu-arrow-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.45);
  color: #ffffff;
  font-size: 22px;
  font-weight: 700;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25);
  transition: transform 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

/* hover effect */
#cuAnnMount .cu-arrow:hover .cu-arrow-icon {
  background: #082465; /* brand blue */
  transform: translateY(-1px) scale(1.03);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.3);
}

/* mobile: arrows ko thoda andar le aao */
@media (max-width: 576px) {
  #cuAnnMount .carousel-control-prev {
    left: 4px;
  }
  #cuAnnMount .carousel-control-next {
    right: 4px;
  }
}





/* Subtle zoom per slide for smooth feel */
.carousel-item.active img{ animation: heroZoom 3.2s ease both; }
@keyframes heroZoom{ from{ transform:scale(1.04) } to{ transform:scale(1) } }

/* ===== Appear animations ===== */
.reveal{ opacity:0; transform: translateY(12px); }
.reveal.reveal-visible{ opacity:1; transform:none; transition: opacity .6s ease, transform .6s ease; }
.fade-up{ }
.fade-in{ }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .carousel, .carousel *{ animation:none !important; transition:none !important; }
  .reveal{ opacity:1 !important; transform:none !important; }
}




/* --- Header hover color + logo visibility tweaks --- */
:root{
  --gold:#FEC913;
  --gold-light:#FFE38A;   /* lighter hover */
}

/* make header background slightly glassy so logo/text stay readable */
.navbar.header-glass{
  background: rgba(8,36,100,.60);         /* navy glass */
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-bottom: 1px solid rgba(255,255,255,.25);
}

/* base link color already gold; lighten on hover/focus/open */
.main-nav .nav-link{
  color: var(--gold);
  font-weight: 600;
}
.main-nav .nav-link:hover,
.main-nav .nav-link:focus,
.main-nav .show > .nav-link{
  color: var(--gold-light) !important;     /* <- lighter instead of black */
  text-shadow: 0 0 6px rgba(254,201,19,.35);
}

/* also lighten the split-caret triggers on hover */
.dropdown-toggle-split.nav-link:hover,
.dropdown-toggle-split.nav-link:focus{
  color: var(--gold-light) !important;
}




/* logo badge: white pill behind the logo so it "reads" on any bg */
.logo-badge{
  width: 54px; height: 54px;
  border-radius: 999px;
  display: grid; place-items: center;
  background: #fff;                          /* solid white disk behind logo */
  border: 2px solid rgba(255,255,255,.85);
  box-shadow: 0 8px 18px rgba(0,0,0,.25);
  overflow: hidden;
}
.logo-badge img{
  width: 44px; height: 44px; object-fit: contain;
}

/* optional: dropdown items hover stays soft (not black) */
.dropdown-menu .dropdown-item:hover{
  background: rgba(8,36,100,.06);
  color: #082464;
}

/* Dropdown item pe jo blue background aa raha hai usko hata do */
.dropdown-menu .dropdown-item.active,
.dropdown-menu .dropdown-item:active {
  background-color: transparent !important;
  color: inherit !important;   /* text ka rang normal hi rahe */
}

/* Optionally: hover pe halka grey rakhna ho to */
.dropdown-menu .dropdown-item:hover,
.dropdown-menu .dropdown-item:focus {
  background-color: #f8f9fa;
  color: #082465;  /* tumhara brand blue */
}



/* =============================================================================
   FORM ELEMENTS  message form pensiple
   ========================================================================== */





/* Animated background behind the card */
.has-animated-bg {
  position: relative;
  isolation: isolate;
  border-radius: 18px;
  overflow: hidden;
}
.has-animated-bg::before {
  content:"";
  position:absolute; inset:-40% -10%;
  background:
    radial-gradient(40% 30% at 20% 20%, rgba(122,11,11,.12), transparent 60%),
    radial-gradient(30% 30% at 80% 30%, rgba(229,177,92,.12), transparent 60%),
    radial-gradient(30% 40% at 40% 80%, rgba(10,132,255,.10), transparent 60%);
  filter: blur(35px);
  animation: bgDrift 18s ease-in-out infinite alternate;
  z-index:-1;
}
@keyframes bgDrift {
  0%   { transform: translate3d(-2%, -1%, 0) scale(1);   opacity:.9; }
  50%  { transform: translate3d( 1%,  2%, 0) scale(1.03); opacity:.85; }
  100% { transform: translate3d( 3%, -2%, 0) scale(1.06); opacity:.8; }
}

/* Principal card: clean surface, strong shadow, subtle border glow */
.principal-card{
  background:#fff;
  border:1px solid #e7d8d0;
  border-radius: 18px;
  box-shadow:
    0 18px 40px rgba(0,0,0,.08),
    0 2px 0 rgba(122,11,11,.14) inset;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.principal-card:hover{
  transform: translateY(-4px);
  box-shadow:
    0 24px 60px rgba(0,0,0,.12),
    0 2px 0 rgba(122,11,11,.18) inset;
  border-color: rgba(122,11,11,.35);
}

/* Title accent */
.principal-title{
  font-weight:800;
  letter-spacing:.2px;
  color:#1f2937;
}

/* Animated accent bar under the sub-heading */
.accent-bar{
  position:relative;
  padding-bottom:.5rem;
}
.accent-bar::after{
  content:"";
  position:absolute; left:0; bottom:0;
  height:3px; width:98px; border-radius:999px;
  background: linear-gradient(90deg, #7a0b0b, #E5B15C, #7a0b0b);
  background-size:200% 100%;
  animation: swipe 3.5s ease-in-out infinite;
}
@keyframes swipe {
  0%{ background-position:0% 50%; }
  50%{ background-position:100% 50%; }
  100%{ background-position:0% 50%; }
}

/* Floating image feel */
.shadow-img{
  box-shadow: 0 14px 32px rgba(0,0,0,.16);
}
.u-float{ animation: floatY 7s ease-in-out infinite; }
@keyframes floatY{
  0% { transform: translateY(0) }
  50%{ transform: translateY(-6px) }
  100%{ transform: translateY(0) }
}

/* CSS-only gentle tilt on hover */
.parallax-tilt{
  transform-style: preserve-3d;
  perspective: 800px;
  transition: transform .3s ease;
}
.parallax-tilt:hover{
  transform: rotateX(3deg) rotateY(-3deg);
}

/* Subtle enter animation (works with your .reveal logic) */
.reveal.fade-up{ opacity:0; transform: translateY(12px); transition: all .5s ease; }
.reveal.reveal-visible{ opacity:1; transform: none; }
.u-elevate{ will-change: transform; }

/* Button soft shine */
.btn-outline-brand{
  border:2px solid #082464; color:#082464; font-weight:700; border-radius:12px;
}
.btn-outline-brand:hover{ background:#082464; color:#fff; }
.btn-softshine{
  position:relative; overflow:hidden;
}
.btn-softshine::after{
  content:""; position:absolute; inset:-120% -20%;
  background: linear-gradient(115deg, transparent 40%, rgba(255,255,255,.35) 50%, transparent 60%);
  transform: translateX(-100%);
}
.btn-softshine:hover::after{
  animation: shine 900ms ease;
}
@keyframes shine{
  to{ transform: translateX(100%); }
}

/* Utility delays to cascade child animations */
.u-delay-2{ animation-delay:.15s; }






/*slider 2 start */


/* card look matching your design */


/* make sure controls/indicators sit above the card */
.ann-nav { position: absolute; z-index: 5; }
.carousel-indicators { z-index: 6; }

/* (keep your existing ann-card / btn-ann / bg-soft styles) */




.ann-card{
  background:#fff;
  border:1px solid #e7d8d0;
  border-radius:18px;
  padding:28px clamp(20px, 4vw, 42px);
  max-width:920px;
  margin: 0 auto;
  box-shadow: 0 18px 40px rgba(0,0,0,.10);
  outline: 3px solid #082465;
  transition: box-shadow .25s ease, transform .25s ease, outline-color .25s ease;
}
.ann-card:hover{ transform: translateY(-3px); box-shadow: 0 26px 60px rgba(0,0,0,.14); outline-color: #00164b; }



.ann-title{ font-weight:800; line-height:1.2; margin-bottom: .4rem; color:#1c1c1c; }
.ann-sub{ font-weight:800; margin-bottom: 1rem; color:#1c1c1c; }
.ann-body{ color:#4b5563; line-height:1.9; margin-bottom: 1rem; }
.highlight{ color:#082465; font-weight:700; }

/* buttons in your maroon tone */
.btn-ann{
  display:inline-block;
  font-weight:800;
  background:#082465;
  color:#fff; border:0;
  padding:12px 22px;
  border-radius:50px;
  box-shadow: 0 8px 18px #08246492;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.btn-ann:hover{ transform: translateY(-1px); box-shadow: 0 12px 22px #08246492; background:#082465; color:#fff; }
.btn-ann.wide{ display:block; text-align:center; padding:18px 20px; margin:18px 0; }

/* nav buttons (round, subtle) */
.ann-nav{
  width:44px; height:44px; border-radius:50%;
  background: #00164b;
  color: white;
  top:50%; transform: translateY(-50%);
}
.ann-nav:hover{ background: #082465; color: white; }
.ann-nav .carousel-control-prev-icon,
/* .ann-nav .carousel-control-next-icon{ filter: invert(1) grayscale(1); } */

/* smooth fade and slight rise for each slide */
#annSlider .carousel-item { transition: transform .7s ease, opacity .55s ease-out; }
#annSlider .carousel-item .ann-card { animation: annRise .55s ease both; }
@keyframes annRise { from{ opacity:0; transform: translateY(8px); } to{ opacity:1; transform:none; } }



/*footer start */


/* ===== Signature Footer (animated) ===== */
.footer-signature{
  position: relative;
  color:#fff;
  background: linear-gradient(180deg, #082465 0%, #082465 45%, #082465 100%);
  overflow: hidden;
}

/* Wave divider with gentle motion */
.footer-signature .footer-wave{
  line-height: 0;
  transform: translateZ(0);
}
.footer-signature .footer-wave svg{
  display:block; width:100%; height:90px;
}
.footer-signature .footer-wave path{
  fill:#f2e9df;
  animation: waveDrift 8s ease-in-out infinite alternate;
  transform-origin: center;
  will-change: d, transform, opacity;
}
@keyframes waveDrift{
  0%   { opacity:.96; transform: translateY(0); }
  50%  { opacity:1;   transform: translateY(2px) }
  100% { opacity:.98; transform: translateY(0) }
}

/* Starry shimmer field (very subtle, behind content) */
.footer-signature::before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(1px 1px at 20% 30%, rgba(255,255,255,.15) 50%, transparent 51%) repeat,
    radial-gradient(1px 1px at 65% 20%, rgba(255,255,255,.12) 50%, transparent 51%) repeat,
    radial-gradient(1px 1px at 85% 55%, rgba(255,255,255,.10) 50%, transparent 51%) repeat;
  background-size: 140px 160px, 180px 220px, 220px 260px;
  animation: starsMove 18s linear infinite;
  pointer-events:none;
  opacity:.25;
}
@keyframes starsMove{
  0%   { transform: translateY(0) }
  100% { transform: translateY(-14px) }
}

/* Container breathing space */
.footer-signature .container{
  position:relative; z-index:2;
  padding-top: 18px;
  padding-bottom: 22px;
}

/* Cards */
.f-card{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 16px;
  padding: 18px 18px;
  box-shadow: 0 10px 26px rgba(0,0,0,.18) inset, 0 14px 28px rgba(0,0,0,.18);
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
  backdrop-filter: blur(2px);
}
.f-card:hover{
  transform: translateY(-4px);
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.25);
  box-shadow: 0 14px 34px rgba(0,0,0,.22) inset, 0 18px 36px rgba(0,0,0,.22);
}

/* Logo ring */
.f-logo-wrap{
  width:46px; height:46px; border-radius:999px; overflow:hidden;
  border:2px solid rgba(255,255,255,.6);
  box-shadow:0 6px 18px rgba(0,0,0,.3);
  display:grid; place-items:center;
  background:#fff;
}
.f-logo-wrap img{ width:100%; height:100%; object-fit:cover; }

/* Accent + text */
.text-accent{ color:#F4D092; }
.link-accent{ color:#F6D79D; text-decoration: none; }
.link-accent:hover{ color:#fff; text-decoration: underline; }
.opacity-90{ opacity:.9 }
.opacity-75{ opacity:.75 }

/* Lists */
.f-list, .f-links{ list-style:none; padding:0; }
.f-list li, .f-links li{
  display:flex; align-items:flex-start; gap:.5rem;
  padding:6px 0; color:rgba(255,255,255,.92);
}
.f-links a{ color:rgba(255,255,255,.92); text-decoration:none; }
.f-links a:hover{ color:#fff; text-decoration: underline; }
.f-list i, .f-links i{ color:#F4D092; }

/* Ayah box */
.ayah-box{
  background: rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.15);
  border-radius:12px; padding:12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.2);
}

/* Newsletter strip */
.f-newsletter{
  display:flex; align-items:center; justify-content:space-between;
  gap:12px; margin-top:22px;
  background: linear-gradient(90deg, rgba(255,255,255,.10), rgba(255,255,255,.05));
  border:1px solid rgba(255,255,255,.18);
  border-radius: 14px;
  padding: 12px 14px;
  box-shadow: 0 8px 26px rgba(0,0,0,.16) inset;
}
.f-newsletter .form-control{
  background: rgba(255,255,255,.9);
  border:1px solid rgba(0,0,0,.12);
  border-radius: 10px; min-width: 260px;
}
.btn-accent{
  background: #F4D092; color:white; font-weight:700;
  border:none; border-radius:10px; padding: 6px 14px;
  box-shadow: 0 8px 18px rgba(244,208,146,.35);
  position: relative; overflow: hidden;
  transition: transform .15s ease, box-shadow .2s ease;
}
.btn-accent:hover{ transform: translateY(-1px); box-shadow: 0 12px 26px rgba(244,208,146,.45); }
.btn-accent::after{
  content:""; position:absolute; inset:-140% -20%;
  background: linear-gradient(115deg, transparent 45%, rgba(255,255,255,.55) 50%, transparent 55%);
  transform: translateX(-100%);
}
.btn-accent:hover::after{ animation: btnShine 900ms ease; }
@keyframes btnShine{ to{ transform: translateX(100%) } }

/* Socials */
.f-end{
  margin-top:18px; padding-top:12px;
  border-top:1px dashed rgba(255,255,255,.25);
  color: white;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
}
.f-social{
  width:36px; height:36px; border-radius:999px;
  display:grid; place-items:center;
  background: rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
  box-shadow: 0 8px 18px rgba(0,0,0,.25);
}
.f-social:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.22);
  box-shadow: 0 12px 24px rgba(0,0,0,.35);
}

/* Micro twinkle on accent labels */
.bi-stars, .bi-moon-stars{
  animation: twinkle 2.6s ease-in-out infinite;
  transform-origin: center;
}
@keyframes twinkle{
  0%,100%{ filter: drop-shadow(0 0 0 rgba(255,255,255,0)); transform: scale(1); }
  50%    { filter: drop-shadow(0 0 6px rgba(255,255,255,.6)); transform: scale(1.06); }
}

/* Motion-safe: reduce heavy effects if user prefers reduced motion */
@media (prefers-reduced-motion: reduce){
  .footer-signature *{ animation: none !important; transition: none !important; }
}



/*slider 2 end */

/* Optional fade hint above the Read More button */
#principalMore.collapse:not(.show) ~ .u-delay-2::before{
  content:""; display:block; height:16px; margin-top:-16px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.04));
}



/* when collapse is OPEN (Read Less) */
#principalToggle[aria-expanded="true"],
#principalToggle:not(.collapsed){
  color:#fff !important;
}

#principalToggle[aria-expanded="true"]:hover,
#principalToggle:not(.collapsed):hover{
  color:#fff !important;
}



/* arrow ko rotate karnay k liye */
#principalToggle .cta-arrow{
  display: inline-block;
  margin-left: 6px;
  transition: transform .2s ease;
  transform: rotate(90deg);   /* default: Read More => arrow neeche */
}

/* jab collapse open ho (Read Less) */
#principalToggle[aria-expanded="true"] .cta-arrow{
  transform: rotate(-90deg); /* arrow upar */
}





:root{
  --gold:#FEC913;
  --gold-light:#FFE38A; /* lighter hover */
}

/* glass header bg so text/logo readable */
.navbar.header-glass{
  background: rgba(8,36,100,.60);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-bottom: 1px solid rgba(255,255,255,.25);
}

/* links: gold base, lighter on hover */
.main-nav .nav-link{ color: var(--gold); font-weight: 600; }
.main-nav .nav-link:hover,
.main-nav .nav-link:focus,
.main-nav .show > .nav-link{
  color: var(--gold-light) !important;
  text-shadow: 0 0 6px rgba(254,201,19,.35);
}

/* split caret */
.dropdown-toggle-split.nav-link:hover,
.dropdown-toggle-split.nav-link:focus{
  color: var(--gold-light) !important;
}

/* logo badge for clarity on busy bg */
.logo-badge{
  width: 54px; height: 54px; border-radius: 999px;
  display: grid; place-items: center; background: #fff;
  border: 2px solid rgba(255,255,255,.85);
  box-shadow: 0 8px 18px rgba(0,0,0,.25);
  overflow: hidden;
}
.logo-badge img{ width: 44px; height: 44px; margin-left: 3px; object-fit: contain; }

/* soft hover in dropdown items */
.dropdown-menu .dropdown-item:hover{
  background: rgba(8,36,100,.06);
  color: #082464;
}




/*about dropdown  */


 /* position the nested menu to the right */
.dropdown-submenu{ position: relative; }
.dropdown-submenu  .dropdown-menu{
  top: 0;
  left: 100%;
  margin-left: .25rem;
  margin-right: .25rem;
}

/* OPEN on hover (desktop) */
@media (hover:hover){
  .dropdown-submenu:hover  .dropdown-menu{
    display: block;    /* Bootstrap hides it by default; force show on hover */
  }
}

/* optional: tiny caret + color */
.submenu-caret{
  transition: transform .2s ease, opacity .2s ease;
  opacity:.7;
}
.dropdown-submenu:hover .submenu-caret{ transform: rotate(180deg); opacity:1; }

/* optional hover color using your brand #082464 */
.dropdown-menu .dropdown-item:hover{
  background: rgba(8,36,100,.06);
}


/* last animation annousment  */

/* --- Announcement card layout --- */
.annc-card{
  display:grid; grid-template-columns:1.05fr 1fr; gap:22px;
  align-items:stretch; background:#fff; border-radius:16px; overflow:hidden;
  box-shadow:0 10px 30px rgba(15,23,42,.08);
}
.annc-left{ background:#f3f4f6; display:flex; align-items:center; justify-content:center; min-height:220px; }
.annc-left img{ width:100%; height:100%; object-fit:contain; }
.annc-right{ padding:26px 28px; }
.annc-title{ margin:0 0 10px; font-weight:800; color:#0f172a; font-size:28px; }
.annc-meta{ margin:6px 0 16px; padding:0; list-style:none; }
.annc-meta li{ display:flex; align-items:center; gap:10px; margin-bottom:10px; color:#0f172a; font-weight:600; }
.annc-meta .meta-ico{ display:inline-flex; width:28px; height:28px; align-items:center; justify-content:center; border-radius:8px; background:#eef2ff; font-size:15px; }
.annc-desc{ color:#475569; font-size:16px; line-height:1.6; white-space:pre-wrap; }
#heroImgSlider .carousel-item{ padding:14px; }
#heroImgSlider .carousel-inner{ background:#f6f7fb; border-radius:16px; padding:8px; }

/* indicators nicer */
#heroImgSlider .carousel-indicators{ bottom:-6px; }
#heroImgSlider .carousel-indicators li,
#heroImgSlider .carousel-indicators button{
  width:10px;height:10px;border-radius:50%;
  background:#ddd; border:2px solid #0b5ed7; margin:0 4px;
}
#heroImgSlider .carousel-indicators .active{ background:#0b5ed7; }

@media (max-width: 992px){
  .annc-card{ grid-template-columns:1fr; }
  .annc-right{ padding:18px; }
  .annc-left img{ max-height:360px; }
}


/* placeholder img  section */

 /* .annc-caption{
    position:absolute; inset:0; display:flex; flex-direction:column;
    align-items:center; justify-content:center; text-align:center;
    padding:1rem 1.25rem; color:#fff;
    background: linear-gradient(to bottom, rgba(0,0,0,.25), rgba(0,0,0,.25));
  }
  .annc-title{ font-weight:700; margin:0 0 .4rem; }
  .annc-desc{ max-width:900px; margin:0; } */
  /* ===== Ann slider (independent) ===== */
  /* ===== Announcements Fixed-Height Card ===== */
/* ================== Announcements – Professional Card Design ================== */
/* ===== Announcements Slider (image upar, text overlay) ===== */


/* Modal image on top - correct selector */
#annDetailModal #annModalImg{
  width: 100%;
  height: clamp(200px, 38vh, 380px);
  object-fit: cover;
  border-radius: 12px;
  display: block;
  background: #0b1220;
}


/* Modal always above navbar */
#annDetailModal{
  z-index: 20000 !important;
}
#annDetailModal .modal-dialog{
  z-index: 20001 !important;
  position: relative;
}
.modal-backdrop{
  z-index: 19990 !important;
}




/* ===== FIX MODAL IMAGE SELECTOR ===== */
#annDetailModal #annModalImg{
  width: 100%;
  height: clamp(200px, 38vh, 380px);
  object-fit: cover;
  border-radius: 12px;
  display: block;
  background: #0b1220;
}

/* ===== FORCE MODAL ON TOP ===== */
#annDetailModal{
  z-index: 20000 !important;
}
#annDetailModal .modal-dialog{
  z-index: 20001 !important;
  position: relative;
}
.modal-backdrop{
  z-index: 19990 !important;
}

body{
  isolation: isolate;  /* new stacking context so z-index reliable */
}



/* Modal image on top - only for popup */
#annDetailModal .ann-modal-img{
  width: 100%;
  height: clamp(200px, 38vh, 380px);
  object-fit: cover;
  border-radius: 12px;
  display: block;
  background: #0b1220;
}

#cuAnnMount .carousel-indicators{ z-index:9; pointer-events:auto; }
#cuAnnMount .carousel-caption{ pointer-events:none; }
#cuAnnMount .ann-more-btn{ pointer-events:auto; }




#announcements {
  --ann-radius: 18px;
  --ann-accent: #082465;
  --ann-muted: #9ca3af;
  --ann-text: #f9fafb;
}



/* Slide wrapper controls height and layout */
.ann-slide{
  position: relative;
  width: 100%;
  border-radius: 18px;
  overflow: hidden;
}

/* When image exists */
.ann-slide.has-img .ann-slide-img{
  width: 100%;
  height: clamp(240px, 32vw, 420px);
  object-fit: cover;
  display: block;
}

/* When no image: center text and let height be from min-height inline */
.ann-slide.no-img{
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.06); /* optional subtle bg */
}

/* center caption when no image */
.carousel-caption.ann-center{
  position: static !important;
  transform: none !important;
  text-align: center;
  width: 100%;
  max-width: 900px;
}


/* constrain container (optional) */
/* .container { width: 980px !important; }  // sirf jab chaho */

#cuAnnMount {
  border-radius: var(--ann-radius);
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
}

/* image full width, responsive */
#cuAnnMount .carousel-inner > .item > img,
#cuAnnMount .carousel-inner > .item > a > img {
  width: 100%;
  height: 320px;
  object-fit: cover;
  display: block;
}

/* indicator dots */
#cuAnnMount .carousel-indicators {
  bottom: 8px;
}

#cuAnnMount .carousel-indicators li {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin: 0 4px;
  background-color: rgba(15, 23, 42, 0.5);
  border: 0;
}

#cuAnnMount .carousel-indicators .active {
  background-color: #000000;
}

/* controls (left / right) */
#cuAnnMount .left.carousel-control,
#cuAnnMount .right.carousel-control {
  background: none;
  width: 8%;
}

#cuAnnMount .glyphicon-chevron-left,
#cuAnnMount .glyphicon-chevron-right {
  font-size: 26px;
  text-shadow: 0 0 0 transparent;
}

/* ===== Text overlay area ===== */
#cuAnnMount .carousel-caption {
  left: 0;
  right: 0;
  bottom: 0;
  text-align: left;
  padding: 18px 22px 20px;
  background: linear-gradient(180deg, rgba(15,23,42,0) 0%, rgba(15,23,42,0.85) 100%);
}

/* Title */
#cuAnnMount .ann-title {
  margin: 0 0 4px;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--ann-text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Meta (date, time, location) */
#cuAnnMount .ann-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 12px;
  font-size: 0.8rem;
  color: var(--ann-muted);
  margin-bottom: 4px;
}

#cuAnnMount .ann-row {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#cuAnnMount .ann-row i {
  font-size: 0.9rem;
}

/* short description */
#cuAnnMount .ann-desc {
  font-size: 0.85rem;
  line-height: 1.5;
  color: #e5e7eb;
  margin-bottom: 6px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

/* footer button container */
#cuAnnMount .ann-footer {
  display: flex;
  justify-content: flex-end;
}

/* Read more button */
#cuAnnMount .ann-more-btn {
  border-color: #ffffff !important;
  color: #ffffff !important;
  font-size: 0.78rem;
  padding: 0.22rem 0.9rem;
  border-radius: 999px;
  background: transparent;
}

#cuAnnMount .ann-more-btn:hover {
  background: #ffffff !important;
  color: #082465 !important;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.35);
}

/* mobile tweaks */
@media (max-width: 576px) {
  #cuAnnMount .carousel-inner > .item > img {
    height: 260px;
  }
  #cuAnnMount .ann-title {
    font-size: 0.98rem;
  }
}



/* card look for popup */
.ann-modal-card{
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.25);
}

/* nice round cross button */
.ann-modal-close{
  border: none;
  background: #f3f4f6;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
}

.ann-modal-close:hover{
  background: #e5e7eb;
}

/* image wrapper */
.ann-modal-img-wrap{
  border-radius: 16px;
  overflow: hidden;
  background: #0f172a;
  /* aspect-ratio: 10 / 10; */
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.3);
}

.ann-modal-img-wrap img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* text styling */
#annModalMeta{
  font-size: 0.85rem;
  color: #6b7280;
}

#annModalBody{
  font-size: 0.95rem;
  line-height: 1.6;
  color: #111827;
}

/* mobile tweaks */
@media (max-width: 768px){
  .ann-modal-img-wrap{
    aspect-ratio: 16 / 10;
    margin-bottom: 0.5rem;
  }
}

/* header funalaty code  */


/* finish */



/* Accessibility Page Css */


    /* ========= THEME TOKENS ========= */
    /* ========= NAVBAR (same style you used) ========= */
    .site-header .navbar{ background:#fff; border-bottom:1px solid rgba(0,0,0,.06); }
    .site-header .nav-link{ font-weight:600; color:#1f2937; }
    .site-header .nav-link:hover{ color:#2b2b2b; }
    .navbar-light .navbar-toggler{ border-color: rgba(0,0,0,.1); }
    .logo-badge{ display:inline-grid; place-items:center; width:52px; height:52px;
      background:#fff; border:1px solid rgba(0,0,0,.08); box-shadow:0 6px 20px rgba(0,0,0,.12); overflow:hidden; }
    .logo-badge img{ width:65%; height:65%; margin-left: 5px; object-fit:cover; }
    @media (min-width:992px){ .navbar .dropdown:hover>.dropdown-menu{ display:block; } }
    .dropdown-menu{ border-radius:12px; border:1px solid var(--stroke); }

    /* ========= HERO ========= */
    .services-hero{ color:#fff; background-position:center; background-size:cover; }
    .services-hero--banner{
      min-height: 56svh; display:flex; align-items:center; justify-content:center;
      background-image:
        linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
        url("../images/aboutimg-ong.png");
    }
    /* .services-title{
      font-size: 40px;
      font-weight:800; letter-spacing:2px; text-shadow:0 4px 16px rgba(0,0,0,.35);
    } */

    /* ========= LAYOUT: TOC + Content ========= */
    .toc-card{
      position:sticky; top:88px;
      background:#fff; border:1px solid var(--stroke); border-radius:14px; padding:12px;
      box-shadow:0 10px 28px rgba(0,0,0,.06);
    }
    .toc-card .toc-title{ font-weight:800; font-size:.95rem; margin:.25rem 0 .5rem; }
    .toc a{
      display:flex; align-items:center; gap:.5rem;
      padding:.4rem .55rem; margin:.15rem 0;
      border-radius:10px; color:#374151; text-decoration:none; font-weight:600;
    }
    .toc a:hover{ background:rgba(10,132,255,.08); }
    .toc .bi{ opacity:.7; }

    /* ========= POLICIES CONTENT ========= */
    .policy-card{
      position:relative; background:var(--card);
      border:1px solid var(--stroke); border-radius:16px;
      padding:20px 20px 18px; margin-bottom:14px;
      box-shadow:0 12px 32px rgba(16,24,40,.06);
      overflow:hidden;
      opacity:0; transform: translateY(14px);
    }
    .policy-card.show{ animation: fadeUp .55s ease-out forwards; }
    .policy-head{
      display:flex; align-items:center; gap:.6rem; margin-bottom:.35rem;
    }
    .policy-icon{
      width:38px; height:38px; border-radius:10px; display:grid; place-items:center;
      background:linear-gradient(180deg, #fcebd0, #f6d9aa); color:#5b3302;
      border:1px solid rgba(229,177,92,.6);
    }
    .policy-title{ margin:0; font-size:1.1rem; font-weight:800; color:#0d2b5f; }
    .policy-body{ color:#374151; line-height:1.85; }

    /* list style you already use */
    .list-dash{ list-style:none; padding-left:0; margin:.25rem 0 0 0; }
    .list-dash li{ position:relative; padding-left:1.25rem; margin:.25rem 0; }
    .list-dash li::before{
      content:"—"; position:absolute; left:0; top:0; color:var(--brand); font-weight:700;
    }

    @keyframes fadeUp{ to{ opacity:1; transform:none; } }

    /* small helper for section anchors offset below sticky header */
    .anchor-offset{ position:relative; }
    .anchor-offset::before{
      content:""; display:block; height:90px; margin-top:-90px; visibility:hidden;
    }

    /* footer wrapper hint (your signature footer is in style.css already) */
    .footer-signature{ background:#082465; color:#fff; }




    /* About page start */

    
       /* Only the top banner section: center the text */
.services-hero--banner-about{
  /* height you want for the hero */
  min-height: 60svh;          /* fullscreen-ish; change to 70svh/80svh if needed */
  display: flex;
  align-items: center;         /* vertical center */
  justify-content: center;     /* horizontal center */
  padding: 0;                  /* remove extra top/bottom space */
  position: relative;
}

/* make sure the content stays above the glow layer */
.services-hero--banner-about .container{
  position: relative;
  z-index: 1;
  
}

.services-title{
  font-size: 5rem;
  font-weight: 700;
  position: relative;
  display: inline-block;
  padding-bottom: .6rem;
  z-index:1;
  text-align: center;
    align-items: center;
    justify-content: center;
}


/* ===== Base: shared styles ===== */
.services-hero{
  position: relative;
  padding: 72px 0;
  color:#fff;
  overflow: hidden;
  isolation: isolate;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media (min-width: 992px){
  .services-hero{ background-attachment: fixed; } /* subtle parallax on desktop */
}

/* Variant A: top banner bg */
.services-hero--banner-about{
  /* 1st background image */
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
    url("../images/servies-back-img.png");

}


.main-text{
    font-size: 24px;
    font-weight: 500;
    color: #082465;
    position: relative;
    display: inline-block;
    padding-bottom: .6rem;
    z-index:1;
    text-align: center;
    align-items: center;
    justify-content: center;
}


.awards{
  background: var(--soft);
  padding: 56px 0 70px;
  color: var(--ink);
}

.awards .container{
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 16px;
}

.awards h2{
  margin: 0 0 6px;
  font-weight: 800;
  letter-spacing:.3px;
  text-align:center;
  color: #082464;
  font-size: clamp(26px, 3.6vw, 42px);
}

.awards .lead{
  margin: 0 auto 26px;
  color: var(--muted);
  line-height: 1.7;
  font-size: clamp(15px, 2vw, 18px);
}

/* decorative, gentle underline */
.awards .title-underline{
  display:block;
  height: 3px;
  width: 120px;
  margin: 10px auto 26px;
  background: linear-gradient(90deg, transparent, var(--brand), transparent);
  border-radius: 999px;
  opacity:.25;
}

/* grid */
.awards-grid{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 18px;
}
@media (max-width: 700px){
  .awards-grid{ grid-template-columns: 1fr; }
}

/* item card: minimal with left accent */
.award{
  position: relative;
  border: 1px solid var(--line);
  border-left: 6px solid var(--brand);
  background: #fff;
  border-radius: 10px;
  padding: 14px 18px;
  text-align: center;
  font-weight: 600;
  color: var(--ink);
  box-shadow: 0 6px 20px rgba(8,36,100,.04);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  will-change: transform;
}

/* subtle “draw” effect on load */
.award::after{
  content:"";
  position:absolute; inset:0;
  border-radius: inherit;
  pointer-events:none;
  border: 1px solid transparent;
  --grad: conic-gradient(from 180deg at 50% 50%, rgba(8,36,100,.55), rgba(8,36,100,.0) 35%, rgba(8,36,100,.55) 70%, rgba(8,36,100,.0) 100%);
  background: var(--grad);
  -webkit-mask: 
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  padding:1px;
  opacity:.0;
  animation: outlineFade .9s .1s ease forwards;
}
@keyframes outlineFade{ to{ opacity:.12; } }

/* hover micro-interaction */
.award:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(8,36,100,.08);
  border-color: rgba(8,36,100,.35);
}

/* motion-safe */
@media (prefers-reduced-motion: reduce){
  .award, .award::after{ animation: none !important; transition: none !important; }
  .award:hover{ transform:none; }
}



/* our serviesa */



    /* ========== HERO ========== */
    /* .services-title{
      font-size: clamp(2rem, 1.2rem + 4vw, 4rem);
      font-weight:800; letter-spacing:.4px;
      text-shadow:0 4px 16px rgba(0,0,0,.35);
    } */

    .services-hero{
      position: relative; color:#fff; overflow:hidden; isolation:isolate;
      background-repeat:no-repeat; background-position:center; background-size:cover;
    }
    .services-hero--banner{
      min-height: 60svh;
      display:flex; align-items:center; justify-content:center;
      background-image:
        linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
        url("../images/servies-back-img.png"); /* use your own image */
    }
    @media (min-width: 992px){
      .services-hero--banner{ background-attachment: fixed; }
    }


.services-hero--list{
  padding: 56px 0 64px;
  background: linear-gradient(180deg, #f3f6fb, #ffffff);
  color:#0b132b;
}

.services-board-card{
  background:#ffffff;
  border-radius:18px;
  border:1px solid #e2e8f0;
  box-shadow:0 10px 30px rgba(15,23,42,0.06);
  overflow:hidden;
}

/* Top heading row */
.services-board-header{
  width: 100%;
  padding:18px 24px;
  text-align:center;
  font-weight:700;
  font-size:1.15rem;
  color:#082465;              /* theme navy */
  border-bottom:1px solid #edf2f7;
}

/* Each row */
.services-board-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 24px;
  border-bottom:1px solid #f1f5f9;
}

.services-board-row:last-child{
  border-bottom:none;
}

.services-board-title{
  font-weight:600;
  font-size:1rem;
  color:#082465;
}

.services-board-note{
  font-weight:500;
  font-size:0.95rem;
  color:#94a3b8;
  text-align:right;
}

/* Mobile: stack columns */
@media (max-width: 576px){
  .services-board-row{
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
  }
  .services-board-note{
    text-align:left;
  }
}


/* groving body  */



      /* Only the top banner section: center the text */
.services-hero--banner{
  /* height you want for the hero */
  min-height: 60svh;          /* fullscreen-ish; change to 70svh/80svh if needed */
  display: flex;
  align-items: center;         /* vertical center */
  justify-content: center;     /* horizontal center */
  padding: 0;                  /* remove extra top/bottom space */
  position: relative;
}

/* make sure the content stays above the glow layer */
.services-hero--banner .container{
  position: relative;
  z-index: 1;
  
}

.services-title{
  font-size: 1rem;
  font-weight: 700;
  position: relative;
  display: inline-block;
  padding-bottom: .6rem;
  z-index:1;
  text-align: center;
    align-items: center;
    justify-content: center;
}


/* ===== Base: shared styles ===== */
.services-hero{
  position: relative;
  padding: 72px 0;
  color:#fff;
  overflow: hidden;
  isolation: isolate;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media (min-width: 992px){
  .services-hero{ background-attachment: fixed; } /* subtle parallax on desktop */
}

/* Variant A: top banner bg */
.services-hero--banner{
  /* 1st background image */
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
    url("../images/servies-back-img.png");

}

.main-text{
    font-size: 30px;
    font-weight: 500;
    color: #082465;
    position: relative;
    display: inline-block;
    padding-bottom: .6rem;
    z-index:1;
    text-align: center;
    align-items: center;
    justify-content: center;
}

.border-right{
  --brand:#082464;     /* deep blue */

}


.simple-box{
  max-width: 900px;
  margin: 24px auto;
  background: var(--card);
  border: 1px solid var(--line);
  border-left: 6px solid var(--brand);   /* subtle brand accent */
  border-radius: 10px;
  box-shadow: 0 4px 14px rgba(8,36,100,.05);
  overflow: hidden;
}

.simple-head{
  padding: 18px 22px 6px;
  border-bottom: 1px solid var(--line);
}
.simple-head h3{
  margin:0;
  font-size: 18px;
  font-weight: 700;
  color: var(--brand);
  letter-spacing:.2px;
}

.simple-list{ list-style:none; margin:0; padding: 0; }
.simple-row{
  display:grid;
  grid-template-columns: 1.2fr .9fr;
  gap: 16px;
  padding: 16px 22px;
  border-bottom: 1px solid var(--line);
  align-items:center;
}
.simple-row:last-child{ border-bottom:0; }

.name{ color: var(--ink); font-weight: 600; font-size: 18px; }
.role{ color: var(--muted); font-weight: 500; text-align:right; }

@media (max-width: 640px){
  .simple-row{ grid-template-columns: 1fr; }
  .role{ text-align:left; font-size: 16px; }
}

/* tiny, tasteful hover (optional) */
.simple-row:hover{ background: rgba(8,36,100,.03); }






/*achievment and award  */




       /* Only the top banner section: center the text */
.services-hero--banner{
  /* height you want for the hero */
  min-height: 60svh;          /* fullscreen-ish; change to 70svh/80svh if needed */
  display: flex;
  align-items: center;         /* vertical center */
  justify-content: center;     /* horizontal center */
  padding: 0;                  /* remove extra top/bottom space */
  position: relative;
}

/* make sure the content stays above the glow layer */
.services-hero--banner .container{
  position: relative;
  z-index: 1;
  
}

/* .services-title{
  font-size: 5rem;
  font-weight: 700;
  position: relative;
  display: inline-block;
  padding-bottom: .6rem;
  z-index:1;
  text-align: center;
    align-items: center;
    justify-content: center;
} */


/* ===== Base: shared styles ===== */
.services-hero{
  position: relative;
  padding: 72px 0;
  color:#fff;
  overflow: hidden;
  isolation: isolate;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media (min-width: 992px){
  .services-hero{ background-attachment: fixed; } /* subtle parallax on desktop */
}

/* Variant A: top banner bg */
.services-hero--banner{
  /* 1st background image */
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
    url("../images/servies-back-img.png");

}

.main-text{
    font-size: 24px;
    font-weight: 500;
    color: #082465;
    position: relative;
    display: inline-block;
    padding-bottom: .6rem;
    z-index:1;
    text-align: center;
    align-items: center;
    justify-content: center;
}


.border-right{
  --brand:#082464;       /* deep blue */

}

.awards{
  background: var(--soft);
  padding: 56px 0 70px;
  color: var(--ink);
}

.awards .container{
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 16px;
}

.awards h2{
  margin: 0 0 6px;
  font-weight: 800;
  letter-spacing:.3px;
  text-align:center;
  color: var(--brand);
  font-size: clamp(26px, 3.6vw, 42px);
}

.awards .lead{
  max-width: 980px;
  margin: 0 auto 26px;
  text-align: center;
  color: var(--muted);
  line-height: 1.7;
  font-size: clamp(15px, 2vw, 18px);
}

/* decorative, gentle underline */
.awards .title-underline{
  display:block;
  height: 3px;
  width: 120px;
  margin: 10px auto 26px;
  background: linear-gradient(90deg, transparent, var(--brand), transparent);
  border-radius: 999px;
  opacity:.25;
}

/* grid */
.awards-grid{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 18px;
}
@media (max-width: 700px){
  .awards-grid{ grid-template-columns: 1fr; }
}

/* item card: minimal with left accent */
.award{
  position: relative;
  border: 1px solid var(--line);
  border-left: 6px solid var(--brand);
  background: #fff;
  border-radius: 10px;
  padding: 14px 18px;
  text-align: center;
  font-weight: 600;
  color: var(--ink);
  box-shadow: 0 6px 20px rgba(8,36,100,.04);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  will-change: transform;
}

/* subtle “draw” effect on load */
.award::after{
  content:"";
  position:absolute; inset:0;
  border-radius: inherit;
  pointer-events:none;
  border: 1px solid transparent;
  --grad: conic-gradient(from 180deg at 50% 50%, rgba(8,36,100,.55), rgba(8,36,100,.0) 35%, rgba(8,36,100,.55) 70%, rgba(8,36,100,.0) 100%);
  background: var(--grad);
  -webkit-mask: 
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  padding:1px;
  opacity:.0;
  animation: outlineFade .9s .1s ease forwards;
}
@keyframes outlineFade{ to{ opacity:.12; } }

/* hover micro-interaction */
.award:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(8,36,100,.08);
  border-color: rgba(8,36,100,.35);
}

/* motion-safe */
@media (prefers-reduced-motion: reduce){
  .award, .award::after{ animation: none !important; transition: none !important; }
  .award:hover{ transform:none; }
}



/* gril uniform information */

/* 

  .services-title{
    font-size: 5rem;
    font-weight: 700;
  } */
    /* Only the top banner section: center the text */
.services-hero--banner{
  /* height you want for the hero */
  min-height: 60svh;          /* fullscreen-ish; change to 70svh/80svh if needed */
  display: flex;
  align-items: center;         /* vertical center */
  justify-content: center;     /* horizontal center */
  padding: 0;                  /* remove extra top/bottom space */
  position: relative;
}

/* make sure the content stays above the glow layer */
.services-hero--banner .container{
  position: relative;
  z-index: 1;
}



/* ===== Base: shared styles ===== */
.services-hero{
  position: relative;
  padding: 72px 0;
  color:#fff;
  overflow: hidden;
  isolation: isolate;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media (min-width: 992px){
  .services-hero{ background-attachment: fixed; } /* subtle parallax on desktop */
}

/* Variant A: top banner bg */
.services-hero--banner{
  /* 1st background image */
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
    url("../images/servies-back-img.png");

}


.uniqe{
  background-color: #f8f9fa ;
  padding: 20px;
  border-radius: 10px;
  font-size: 1.2rem;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}


/* childern uniform information */



  .services-title{
    font-size: 5rem;
    font-weight: 700;
  }
    /* Only the top banner section: center the text */
.services-hero--banner{
  /* height you want for the hero */
  min-height: 60svh;          /* fullscreen-ish; change to 70svh/80svh if needed */
  display: flex;
  align-items: center;         /* vertical center */
  justify-content: center;     /* horizontal center */
  padding: 0;                  /* remove extra top/bottom space */
  position: relative;
}

/* make sure the content stays above the glow layer */
.services-hero--banner .container{
  position: relative;
  z-index: 1;
}



/* ===== Base: shared styles ===== */
.services-hero{
  position: relative;
  padding: 72px 0;
  color:#fff;
  overflow: hidden;
  isolation: isolate;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media (min-width: 992px){
  .services-hero{ background-attachment: fixed; } /* subtle parallax on desktop */
}

/* Variant A: top banner bg */
.services-hero--banner{
  /* 1st background image */
  background-image:
    linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
    url("../images/servies-back-img.png");

}


.uniqe{
  background-color: #f8f9fa ;
  padding: 20px;
  border-radius: 10px;
  font-size: 1.2rem;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}


/* circulum  */



.border-right{
  color: #0d2b5f;
  border-right: none;
}


    .logo-badge{
      display:inline-grid; place-items:center; width:52px; height:52px; border-radius:12px;
      background:#fff; border:1px solid rgba(0,0,0,.08); box-shadow:0 6px 20px rgba(0,0,0,.12); overflow:hidden;
    }
    .logo-badge img{ width:100%; height:100%; object-fit:cover; }

    /* ========== HERO ========== */
    .services-hero{ position: relative; color:#fff; overflow:hidden; isolation:isolate; background-position:center; background-size:cover; }
    .services-hero--banner{
      min-height: 60svh; display:flex; align-items:center; justify-content:center;
      background-image:
        linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
        url("../images/servies-back-img.png");
    }
    @media (min-width: 992px){ .services-hero--banner{ background-attachment: fixed; } }
    .services-title{ font-size: clamp(2rem, 1.2rem + 4vw, 4rem); font-weight:800; letter-spacing:.4px; text-shadow:0 4px 16px rgba(0,0,0,.35); }

    /* ========== CONTENT CARDS ========== */
    .animated-box{
      position:relative; background:var(--card);
      border:1px solid var(--stroke); border-radius:16px;
      padding:1.25rem 1.25rem 1.35rem;
      box-shadow:0 12px 32px rgba(16,24,40,.06);
      overflow:hidden;
      opacity:0; transform: translateY(12px);
      animation: fadeUp .55s ease-out .05s forwards;
    }
    .box-title{ font-size: clamp(1.15rem, 1rem + .6vw, 1.6rem); font-weight:800; margin-bottom:.4rem; color:#0d2b5f; }
    .box-content{ line-height:1.75; font-size:1.02rem; }
    .list-dash{ list-style:none; padding-left:0; margin:.25rem 0 0 0; }
    .list-dash li{ position:relative; padding-left:1.25rem; margin:.25rem 0; }
    .list-dash li::before{ content:"—"; position:absolute; left:0; top:0; color:#00164b; font-weight:700; }
    @keyframes fadeUp{ to{ opacity:1; transform:none; } }


    /* Mba registation */

    .border-right{
      color: #003968;
    }

    body{ font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; color:var(--ink); }

    /* ========== NAVBAR (Bootstrap 4) ========== */
    .site-header .navbar{
      background:#fff;
      border-bottom:1px solid rgba(0,0,0,.06);
    }
    .site-header .nav-link{
      font-weight:600; color:#1f2937;
    }
    .site-header .nav-link:hover{ color:var(--brand); }
    .navbar-light .navbar-toggler{
      border-color: rgba(0,0,0,.1);
    }

    /* Desktop: open dropdown on hover (keeps click on mobile) */
    @media (min-width: 992px){
      .navbar .dropdown:hover>.dropdown-menu{ display:block; }
    }

    /* ========== HERO ========== */
    .services-title{
      font-size: clamp(2rem, 1.2rem + 4vw, 4rem);
      font-weight:800; letter-spacing:.4px;
      text-shadow:0 4px 16px rgba(0,0,0,.35);
    }

    .services-hero{
      position: relative; color:#fff; overflow:hidden; isolation:isolate;
      background-repeat:no-repeat; background-position:center; background-size:cover;
    }
    .services-hero--banner{
      min-height: 60svh;
      display:flex; align-items:center; justify-content:center;
      background-image:
        linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
        url("../images/servies-back-img.png"); /* use your own image */
    }
    @media (min-width: 992px){
      .services-hero--banner{ background-attachment: fixed; }
    }

    /* ========== CONTENT CARDS ========== */
    .animated-box{
      position:relative; background:var(--card);
      border:1px solid var(--stroke); border-radius:16px;
      padding:1.25rem 1.25rem 1.35rem;
      box-shadow:0 12px 32px rgba(16,24,40,.06);
      overflow:hidden;
      /* subtle entry animation */
      opacity:0; transform: translateY(12px);
      animation: fadeUp .55s ease-out .05s forwards;
    }
    .box-title{
      font-size: clamp(1.15rem, 1rem + .6vw, 1.6rem);
      font-weight:800; margin-bottom:.4rem; color:#0d2b5f;
    }
    .box-content{ line-height:1.7; }
    .list-dash{ list-style:none; padding-left:0; margin:.25rem 0 0 0; }
    .list-dash li{ position:relative; padding-left:1.25rem; margin:.25rem 0; }
    .list-dash li::before{
      content:"—"; position:absolute; left:0; top:0; color:var(--brand); font-weight:700;
    }

    /* “Hijab” first-letter bold helper (if you use it elsewhere) */
    .first-bold::first-letter{ font-weight:800; }

    @keyframes fadeUp{ to{ opacity:1; transform:none; } }



    .button {
  --width: 350px;
  --height: 70px;
  --tooltip-height: 35px;
  --tooltip-width: 90px;
  --gap-between-tooltip-to-button: 18px;
  --button-color: #082465;
  --tooltip-color: #fff;
  width: var(--width);
  height: var(--height);
  background: var(--button-color);
  position: relative;
  text-align: center;
  border-radius: 0.45em;
  font-family: "Arial";
  transition: background 0.3s;
}

.button::before {
  position: absolute;
  content: attr(data-tooltip);
  width: var(--tooltip-width);
  height: var(--tooltip-height);
  background-color: var(--tooltip-color);
  font-size: 0.9rem;
  color: #111;
  border-radius: .25em;
  line-height: var(--tooltip-height);
  bottom: calc(var(--height) + var(--gap-between-tooltip-to-button) + 10px);
  left: calc(50% - var(--tooltip-width) / 2);
}

.button::after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top-color: var(--tooltip-color);
  left: calc(50% - 10px);
  bottom: calc(100% + var(--gap-between-tooltip-to-button) - 10px);
}

.button::after,.button::before {
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s;
}

.text {
  display: flex;
  align-items: center;
  justify-content: center;
}

.button-wrapper,.text,.icon {
  overflow: hidden;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  color: #fff;
}

.text {
  top: 0
}

.text,.icon {
  transition: top 0.5s;
}

.icon {
  color: #fff;
  top: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.icon svg {
  width: 24px;
  height: 24px;
}

.button:hover {
  background: #6c18ff;
}

.button:hover .text {
  top: -100%;
}

.button:hover .icon {
  top: 0;
}

.button:hover:before,.button:hover:after {
  opacity: 1;
  visibility: visible;
}

.button:hover:after {
  bottom: calc(var(--height) + var(--gap-between-tooltip-to-button) - 20px);
}

.button:hover:before {
  bottom: calc(var(--height) + var(--gap-between-tooltip-to-button));
}


    
.dl-btn{
  position:relative;
  display:inline-flex; align-items:center; gap:.75rem;
  padding:12px 18px;
  border-radius:12px;
  background:#003968; color:#1f2937; text-decoration:none;
  border:1px solid rgba(0,0,0,.1);
  box-shadow:0 6px 20px rgba(0,0,0,.06);
  color: #fff;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease, color .15s ease;
  will-change: transform, box-shadow;
}
.dl-btn:hover{
  transform: translateY(-1px);
  box-shadow:0 10px 26px rgba(8,36,101,.18);
  border-color: rgba(8,36,101,.35);
  color:#ffffff;
}
.dl-btn:active{ transform: translateY(0); }

.dl-icon{
  line-height:0; display:inline-grid; place-items:center;
  color:var(--brand);
  transition: transform .25s ease;
}
.dl-btn:hover .dl-icon{ transform: translateY(-2px);  }

.dl-text{ font-weight:700; white-space:nowrap; color: white !important; }

/* Tooltip via data-tooltip (optional) */
.dl-btn[data-tooltip]::after{
  content: attr(data-tooltip);
  position:absolute; left:50%; bottom:calc(100% + 12px);
  transform: translateX(-50%) translateY(6px);
  background:#111; color:#fff; font-size:.78rem;
  padding:.35rem .55rem; border-radius:6px;
  opacity:0; pointer-events:none; white-space:nowrap;
  transition: opacity .15s ease, transform .15s ease;
}
.dl-btn:hover::after{ opacity:1; transform: translateX(-50%) translateY(0); }

/* Maa registation */


.border-right{
  color: #00164b;
}


    body{ font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; color:var(--ink); }

    /* ========== NAVBAR (Bootstrap 4) ========== */
    .site-header .navbar{
      background:#fff;
      border-bottom:1px solid rgba(0,0,0,.06);
    }
    .site-header .nav-link{
      font-weight:600; color:#1f2937;
    }
    .site-header .nav-link:hover{ color:var(--brand); }
    .navbar-light .navbar-toggler{
      border-color: rgba(0,0,0,.1);
    }

    /* Desktop: open dropdown on hover (keeps click on mobile) */
    @media (min-width: 992px){
      .navbar .dropdown:hover>.dropdown-menu{ display:block; }
    }

    /* ========== HERO ========== */
    .services-title{
      font-size: clamp(2rem, 1.2rem + 4vw, 4rem);
      font-weight:800; letter-spacing:.4px;
      text-shadow:0 4px 16px rgba(0,0,0,.35);
    }

    .services-hero{
      position: relative; color:#fff; overflow:hidden; isolation:isolate;
      background-repeat:no-repeat; background-position:center; background-size:cover;
    }
    .services-hero--banner{
      min-height: 60svh;
      display:flex; align-items:center; justify-content:center;
      background-image:
        linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
        url("../images/servies-back-img.png"); /* use your own image */
    }
    @media (min-width: 992px){
      .services-hero--banner{ background-attachment: fixed; }
    }

    /* ========== CONTENT CARDS ========== */
    .animated-box{
      position:relative; background:var(--card);
      border:1px solid var(--stroke); border-radius:16px;
      padding:1.25rem 1.25rem 1.35rem;
      box-shadow:0 12px 32px rgba(16,24,40,.06);
      overflow:hidden;
      /* subtle entry animation */
      opacity:0; transform: translateY(12px);
      animation: fadeUp .55s ease-out .05s forwards;
    }
    .box-title{
      font-size: clamp(1.15rem, 1rem + .6vw, 1.6rem);
      font-weight:800; margin-bottom:.4rem; color:#0d2b5f;
    }
    .box-content{ line-height:1.7; }
    .list-dash{ list-style:none; padding-left:0; margin:.25rem 0 0 0; }
    .list-dash li{ position:relative; padding-left:1.25rem; margin:.25rem 0; }
    .list-dash li::before{
      content:"—"; position:absolute; left:0; top:0; color: #02274b; font-weight:700;
    }

    /* “Hijab” first-letter bold helper (if you use it elsewhere) */
    .first-bold::first-letter{ font-weight:800; }

    @keyframes fadeUp{ to{ opacity:1; transform:none; } }



    .button {
  --width: 350px;
  --height: 70px;
  --tooltip-height: 35px;
  --tooltip-width: 90px;
  --gap-between-tooltip-to-button: 18px;
  --button-color: #082465;
  --tooltip-color: #fff;
  width: var(--width);
  height: var(--height);
  background: var(--button-color);
  position: relative;
  text-align: center;
  border-radius: 0.45em;
  font-family: "Arial";
  transition: background 0.3s;
}

.button::before {
  position: absolute;
  content: attr(data-tooltip);
  width: var(--tooltip-width);
  height: var(--tooltip-height);
  background-color: var(--tooltip-color);
  font-size: 0.9rem;
  color: #111;
  border-radius: .25em;
  line-height: var(--tooltip-height);
  bottom: calc(var(--height) + var(--gap-between-tooltip-to-button) + 10px);
  left: calc(50% - var(--tooltip-width) / 2);
}

.button::after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top-color: var(--tooltip-color);
  left: calc(50% - 10px);
  bottom: calc(100% + var(--gap-between-tooltip-to-button) - 10px);
}

.button::after,.button::before {
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s;
}

.text {
  display: flex;
  align-items: center;
  justify-content: center;
}

.button-wrapper,.text,.icon {
  overflow: hidden;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  color: #fff;
}

.text {
  top: 0
}

.text,.icon {
  transition: top 0.5s;
}

.icon {
  color: #fff;
  top: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.icon svg {
  width: 24px;
  height: 24px;
}

.button:hover {
  background: #6c18ff;
}

.button:hover .text {
  top: -100%;
}

.button:hover .icon {
  top: 0;
}

.button:hover:before,.button:hover:after {
  opacity: 1;
  visibility: visible;
}

.button:hover:after {
  bottom: calc(var(--height) + var(--gap-between-tooltip-to-button) - 20px);
}

.button:hover:before {
  bottom: calc(var(--height) + var(--gap-between-tooltip-to-button));
}


/* Employment  start*/



    body{ font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; color:var(--ink); }

    /* ========== NAVBAR (Bootstrap 4) ========== */
    .site-header .navbar{
      background:#fff;
      border-bottom:1px solid rgba(0,0,0,.06);
    }
    .site-header .nav-link{
      font-weight:600; color:#1f2937;
    }
    .site-header .nav-link:hover{ color:var(--brand); }
    .navbar-light .navbar-toggler{
      border-color: rgba(0,0,0,.1);
    }

    /* Desktop: open dropdown on hover (keeps click on mobile) */
    @media (min-width: 992px){
      .navbar .dropdown:hover>.dropdown-menu{ display:block; }
    }

    #anker{
      color: #082465;
    }

    /* ========== HERO ========== */
    /* .services-title{
    
      font-size: clamp(2rem, 1.2rem + 4vw, 4rem);
      font-weight:800; letter-spacing:.4px;
      text-shadow:0 4px 16px rgba(0,0,0,.35);
    } */

    .services-hero{
      
      position: relative; color:#fff; overflow:hidden; isolation:isolate;
      background-repeat:no-repeat; background-position:center; background-size:cover;
    }
    .services-hero--banner{
      min-height: 60svh;
      display:flex; align-items:center; justify-content:center;
      background-image:
        linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
        url("../images/servies-back-img.png"); /* use your own image */
    }
    @media (min-width: 992px){
      .services-hero--banner{ background-attachment: fixed; }
    }

    /* ========== CONTENT CARDS ========== */
    .animated-box{
      position:relative; background:var(--card);
      border:1px solid var(--stroke); border-radius:16px;
      padding:1.25rem 1.25rem 1.35rem;
      box-shadow:0 12px 32px rgba(16,24,40,.06);
      overflow:hidden;
      /* subtle entry animation */
      opacity:0; transform: translateY(12px);
      animation: fadeUp .55s ease-out .05s forwards;
    }
    .box-title{
      font-size: clamp(1.15rem, 1rem + .6vw, 1.6rem);
      font-weight:800; margin-bottom:.4rem; color:#0d2b5f;
    }
    .box-content{ line-height:1.7; }
    .list-dash{ list-style:none; padding-left:0; margin:.25rem 0 0 0; }
    .list-dash li{ position:relative; padding-left:1.25rem; margin:.25rem 0; }
    .list-dash li::before{
      content:"—"; position:absolute; left:0; top:0; color:var(--brand); font-weight:700;
    }

    /* “Hijab” first-letter bold helper (if you use it elsewhere) */
    .first-bold::first-letter{ font-weight:800; }

    @keyframes fadeUp{ to{ opacity:1; transform:none; } }


    /* volunteer start */


    
    body{ font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; color:var(--ink); }

    /* ========== NAVBAR (Bootstrap 4) ========== */
    .site-header .navbar{
      background:#fff;
      border-bottom:1px solid rgba(0,0,0,.06);
    }
    .site-header .nav-link{
      font-weight:600; color:#1f2937;
    }
    .site-header .nav-link:hover{ color:var(--brand); }
    .navbar-light .navbar-toggler{
      border-color: rgba(0,0,0,.1);
    }

    /* Desktop: open dropdown on hover (keeps click on mobile) */
    @media (min-width: 992px){
      .navbar .dropdown:hover>.dropdown-menu{ display:block; }
    }

    /* ========== HERO ========== */
    .services-title{
      font-size: clamp(2rem, 1.2rem + 4vw, 4rem);
      font-weight:800; letter-spacing:.4px;
      text-shadow:0 4px 16px rgba(0,0,0,.35);
    }

    .services-hero{
      position: relative; color:#fff; overflow:hidden; isolation:isolate;
      background-repeat:no-repeat; background-position:center; background-size:cover;
    }
    .services-hero--banner{
      min-height: 60svh;
      display:flex; align-items:center; justify-content:center;
      background-image:
        linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
        url("../images/servies-back-img.png"); /* use your own image */
    }
    @media (min-width: 992px){
      .services-hero--banner{ background-attachment: fixed; }
    }

    /* ========== CONTENT CARDS ========== */
    .animated-box{
      position:relative; background:var(--card);
      border:1px solid var(--stroke); border-radius:16px;
      padding:1.25rem 1.25rem 1.35rem;
      box-shadow:0 12px 32px rgba(16,24,40,.06);
      overflow:hidden;
      /* subtle entry animation */
      opacity:0; transform: translateY(12px);
      animation: fadeUp .55s ease-out .05s forwards;
    }
    .box-title{
      font-size: clamp(2rem, 1rem + .6vw, 1.6rem);
      font-weight:800; margin-bottom:.4rem; color:#0d2b5f;
    }
    .box-content{ line-height:1.7; }
    .list-dash{ list-style:none; padding-left:0; margin:.25rem 0 0 0; }
    .list-dash li{ position:relative; padding-left:1.25rem; margin:.25rem 0; }
    .list-dash li::before{
      content:"—"; position:absolute; left:0; top:0; color: #003264; font-weight:900;
    }

    /* “Hijab” first-letter bold helper (if you use it elsewhere) */
    .first-bold::first-letter{ font-weight:800; }

    @keyframes fadeUp{ to{ opacity:1; transform:none; } }




    /* Donate start */

    
  /* ========= NAVBAR ========= */
  .site-header .navbar{
    background:#fff;
    border-bottom:1px solid rgba(0,0,0,.06);
    padding: .6rem 0;
  }
  .site-header .nav-link{
    font-weight:600;
    color:#2d2c2c;
  }
  /* lighter hover (not pure black) as you requested */
  .site-header .nav-link:hover{ color:var(--hover); }
  .site-header .nav-link.active{ color:var(--brand); }

  .navbar-light .navbar-toggler{ border-color: rgba(0,0,0,.1); }

    .logo-badge{ display:inline-grid; place-items:center; width:52px; height:52px;
      background:#fff; border:1px solid rgba(0,0,0,.08); box-shadow:0 6px 20px rgba(0,0,0,.12); overflow:hidden; }
    .logo-badge img{ width:65%; height:65%; margin-left: 5px; object-fit:cover; }

  /* Dropdowns: open on hover for desktop; click on mobile still works */
  @media (min-width: 992px){
    .navbar .dropdown:hover > .dropdown-menu{ display:block; }
  }
  .dropdown-menu{ border-radius:12px; border:1px solid var(--stroke); }
  .dropdown-item:hover{ background: rgba(8,36,100,.06); }

  /* nested submenu (Uniform) */
  .dropdown-submenu{ position:relative; }
  .dropdown-submenu > .dropdown-menu{
    top:0; left:100%; margin-left:.25rem; margin-right:.25rem;
  }
  @media (hover:hover){
    .dropdown-submenu:hover > .dropdown-menu{ display:block; }
  }
  .submenu-caret{ transition: transform .2s ease, opacity .2s ease; opacity:.7; }
  .dropdown-submenu:hover .submenu-caret{ transform: rotate(180deg); opacity:1; }

  /* ========= HERO ========= */
  /* .services-title{
    font-size: clamp(2rem, 1.2rem + 4vw, 4rem);
    font-weight:800; letter-spacing:.4px;
    text-shadow:0 4px 16px rgba(0,0,0,.35);
  } */
  .services-hero{
    position: relative; color:#fff; overflow:hidden; isolation:isolate;
    background-repeat:no-repeat; background-position:center; background-size:cover;
  }
  .services-hero--banner{
    min-height: 60svh;
    display:flex; align-items:center; justify-content:center;
    background-image:
      linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
      url("../images/servies-back-img.png");
  }
  @media (min-width: 992px){
    .services-hero--banner{ background-attachment: fixed; }
  }

  /* ========= CONTENT CARD ========= */
  .animated-box{
    position:relative; background:var(--card);
    border:1px solid var(--stroke); border-radius:16px;
    padding:1.25rem 1.25rem 1.35rem;
    box-shadow:0 12px 32px rgba(16,24,40,.06);
    overflow:hidden;
    opacity:0; transform: translateY(12px); animation: fadeUp .55s ease-out .05s forwards;
  }
  .box-content{ line-height:1.8; }
  @keyframes fadeUp{ to{ opacity:1; transform:none; } }

  /* keep your dashed list helper if you use it later */
  /* .list-dash{ list-style:none; padding-left:0; margin:.25rem 0 0 0; }
  .list-dash li{ position:relative; padding-left:1.25rem; margin:.25rem 0; }
  .list-dash li::before{
    content:"—"; position:absolute; left:0; top:0; color:var(--brand); font-weight:900;
  } */

  /* ========= FOOTER (you already have full styles in style.css) ========= */
  .footer-signature{ background:#082465; color:#fff; }

  #mail-color{
    color: #082465;
  }


  /* Facillities start */


      /* Gallery Styles */
    .gallery-card {
      border: 1px solid rgba(0,0,0,.08);
      border-radius: 14px;
      overflow: hidden;
      box-shadow: 0 8px 22px rgba(0,0,0,.06);
      transition: transform .18s ease, box-shadow .18s ease;
      background: #fff;
      cursor: pointer;
    }

    .gallery-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 14px 34px rgba(0,0,0,.12);
    }

    .gallery-thumb {
      width: 100%;
      height: 220px;
      object-fit: cover;
      display: block;
      transition: transform .35s ease;
    }

    .gallery-card:hover .gallery-thumb {
      transform: scale(1.06);
    }

    .fac-cap {
      padding: .55rem .8rem;
      font-size: .93rem;
      color: #374151;
      border-top: 1px solid rgba(0,0,0,.06);
      background: white;
    }

    /* Hero Section */
    .fac-hero {
      background: linear-gradient(180deg, rgba(8,36,101,.28), rgba(3,18,52,.68)), url("images/servies-back-img.png") center/cover no-repeat;
      min-height: 60vh;
      display: flex;
      align-items: center;
      color: #fff;
      text-align: center;
    }

    @media (min-width: 992px) {
      .fac-hero {
        background-attachment: fixed;
      }
    }

    .fac-title {
      font-weight: 800;
      font-size: clamp(2.2rem, 1.2rem + 4.2vw, 4.6rem);
      letter-spacing: .4px;
      text-shadow: 0 8px 30px rgba(0,0,0,.45);
    }

    .sec-head {
      display: flex;
      align-items: flex-end;
      gap: .6rem;
      margin: 2.2rem 0 1.1rem;
    }

    .sec-chip {
      padding: .3rem .7rem;
      border-radius: 999px;
      font-weight: 700;
      background: linear-gradient(180deg, #fcebd0, #f6d9aa);
      color: #5b3302;
      border: 1px solid rgba(229,177,92,.6);
    }

    .sec-title {
      font-weight: 800;
      font-size: clamp(1.3rem, 1rem + .9vw, 2rem);
      color: #00164b;
      margin: 0;
    }

    .sec-lead {
      color: #4b5563;
      margin-top: .2rem;
    }

    .intro-card {
      background: #fff;
      border: 1px solid rgba(0,0,0,.08);
      border-radius: 18px;
      box-shadow: 0 16px 40px rgba(16,24,40,.06);
      padding: 1.25rem 1.25rem 1.35rem;
    }

    .polaroid {
      position: relative;
      display: inline-block;
      background: #fff;
      padding: 8px;
      border-radius: 8px;
      box-shadow: 0 14px 26px rgba(0,0,0,.12);
      transform: rotate(-2.5deg);
    }

    .polaroid + .polaroid {
      margin-left: -12px;
      transform: rotate(4deg);
      z-index: 2;
    }

    .polaroid img {
      width: 220px;
      height: 160px;
      object-fit: cover;
      border-radius: 6px;
      display: block;
    }

    .polaroid .pin {
      position: absolute;
      width: 14px;
      height: 14px;
      background: #E5B15C;
      border-radius: 50%;
      top: -7px;
      right: 12px;
      box-shadow: 0 0 0 3px rgba(229,177,92,.35);
    }

    /* Slick Slider Custom Styles */
    .gallery-slider .slick-prev,
    .gallery-slider .slick-next {
      z-index: 100;
      background: rgba(0,0,0,0.7);
      width: 50px;
      height: 50px;
      border-radius: 50%;
    }
    
    .gallery-slider .slick-prev { left: 20px; }
    .gallery-slider .slick-next { right: 20px; }
    
    .gallery-slider .slick-prev:before,
    .gallery-slider .slick-next:before {
      color: white;
      font-size: 24px;
    }
    
    .thumb-slider .slick-slide {
      padding: 0 5px;
      cursor: pointer;
      opacity: 0.6;
      transition: opacity 0.3s ease;
    }
    
    .thumb-slider .slick-slide.slick-current {
      opacity: 1;
    }
    
    .white-popup {
      position: relative;
      background: #FFF;
      padding: 30px;
      width: auto;
      max-width: 1000px;
      margin: 20px auto;
      border-radius: 15px;
    }

    .gallery-btn {
      background: linear-gradient(135deg, #00164b, #01091d);
      color: white;
      border: none;
      padding: 12px 30px;
      font-size: 1.1rem;
      border-radius: 50px;
      transition: all 0.3s ease;
    }

    .gallery-btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 10px 25px #00164b;
      color: white;
    }
    

  /* --- Cards + hover zoom --- */
.gallery-card{
  border:1px solid rgba(0,0,0,.08);
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 8px 22px rgba(0,0,0,.06);
  transition:transform .18s ease, box-shadow .18s ease;
  background:#fff;
}
.gallery-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 34px rgba(0,0,0,.12);
}
.gallery-thumb{
  width:100%;
  height:220px;
  object-fit:cover;
  display:block;
  transform:scale(1);
  transition:transform .35s ease;
}
.gallery-card:hover .gallery-thumb{ transform:scale(1.06); }

.fac-cap{
  padding:.55rem .8rem;
  font-size:.93rem;
  color:#374151;
  border-top:1px solid rgba(0,0,0,.06);
}

/* --- Modal carousel visuals --- */
.gallery-modal .carousel-item img{
  max-height:80vh;
  width:auto; max-width:100%;
  margin:auto;
  object-fit:contain;
}
.gallery-modal .modal-content{ background:#0b0e14; border:none; }
.gallery-modal .modal-header,
.gallery-modal .modal-footer{ border:0; color:#fff; }
.gallery-modal .carousel-caption{
  background: rgba(0,0,0,.35);
  border-radius:8px;
  padding:.35rem .6rem;
}

/* --- Optional: hero + sections (light helpers) --- */
.fac-hero{
  background:
    linear-gradient(180deg, rgba(8,36,101,.28), rgba(3,18,52,.68)),
    url("../images/servies-back-img.png") center/cover no-repeat;
  min-height:60svh; display:flex; align-items:center;
  color:#fff; text-align:center;
}
@media (min-width:992px){ .fac-hero{ background-attachment: fixed; } }

.fac-title{
  font-weight:800;
  font-size: clamp(2.2rem, 1.2rem + 4.2vw, 4.6rem);
  letter-spacing:.4px;
  text-shadow: 0 8px 30px rgba(0,0,0,.45);
  opacity:0; transform: translateY(16px);
  animation: facFadeUp .8s ease-out .05s forwards;
}
.fac-sub{
  margin-top:.4rem; font-weight:600; opacity:.9;
  opacity:0; transform: translateY(16px);
  animation: facFadeUp .8s ease-out .18s forwards;
}
@keyframes facFadeUp{ to{ opacity:1; transform:none } }

.sec-head{ display:flex; align-items:flex-end; gap:.6rem; margin:2.2rem 0 1.1rem; }
.sec-chip{
  padding:.3rem .7rem; border-radius:999px; font-weight:700;
  background: linear-gradient(180deg, #fcebd0, #f6d9aa);
  color:#5b3302; border:1px solid rgba(229,177,92,.6);
}
.sec-title{ font-weight:800; font-size: clamp(1.3rem, 1rem + .9vw, 2rem); color:#00164b; margin:0; }
.sec-lead{ color:#4b5563; margin-top:.2rem; }

.intro-card{
  background:#fff; border:1px solid rgba(0,0,0,.08);
  border-radius:18px; box-shadow: 0 16px 40px rgba(16,24,40,.06);
  padding: 1.25rem 1.25rem 1.35rem;
}
.polaroid{ position:relative; display:inline-block; background:#fff; padding:8px; border-radius:8px; box-shadow:0 14px 26px rgba(0,0,0,.12); transform: rotate(-2.5deg); }
.polaroid + .polaroid{ margin-left:-12px; transform: rotate(4deg); z-index:2; }
.polaroid img{ width:220px; height:160px; object-fit:cover; border-radius:6px; display:block; }
.polaroid .pin{ position:absolute; width:14px; height:14px; background:#E5B15C; border-radius:50%; top:-7px; right:12px; box-shadow:0 0 0 3px rgba(229,177,92,.35); }







/* contact us  */



  body{ font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; color:var(--ink); background:#fff; }

    /* HEADER */
    .site-header .navbar{ background:#fff; border-bottom:1px solid rgba(0,0,0,.06); }
    .site-header .nav-link{ font-weight:600; color:#1f2937; }
    .site-header .nav-link:hover{ color:var(--brand); }
    .navbar-light .navbar-toggler{ border-color: rgba(0,0,0,.1); }
    @media (min-width: 992px){ .navbar .dropdown:hover>.dropdown-menu{ display:block; } }
    .logo-badge{ display:inline-grid; place-items:center; width:52px; height:52px;
      background:#fff; border:1px solid rgba(0,0,0,.08); box-shadow:0 6px 20px rgba(0,0,0,.12); overflow:hidden; }
    .logo-badge img{ width:65%; height:65%; margin-left: 5px; object-fit:cover; }

    /* HERO */
    .contact-hero{
      position:relative; color:#fff; text-align:center; overflow:hidden; isolation:isolate;
      min-height: 52svh; display:flex; align-items:center; justify-content:center;
      background-image:
        linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)),
        url("../images/servies-back-img.png");
      background-size:cover; background-position:center;
    }
    @media (min-width: 992px){ .contact-hero{ background-attachment: fixed; } }
    .contact-hero h1{
      font-weight:800; font-size:clamp(2rem, 1.2rem + 4vw, 4rem); letter-spacing:.4px;
      text-shadow:0 6px 24px rgba(0,0,0,.35);
      opacity:0; transform: translateY(12px); animation: fadeUp .7s ease-out .05s forwards;
    }
    .contact-hero p{
      max-width:680px; margin:.6rem auto 0; font-weight:600; opacity:.95;
      opacity:0; transform: translateY(12px); animation: fadeUp .7s ease-out .15s forwards;
    }

    /* CONTENT */
    .section-pad{ padding: 56px 0; }
    .info-card{
      background:var(--card); border:1px solid var(--stroke); border-radius:16px;
      padding:22px; height:100%;
      box-shadow:0 12px 32px rgba(16,24,40,.06);
      opacity:0; transform: translateY(14px);
    }
    .contact-card{ background:#fff; border:1px solid var(--stroke); border-radius:16px; padding:24px; box-shadow:0 12px 32px rgba(16,24,40,.06); }
    .contact-card .form-control{ border-radius:12px; border:1px solid rgba(0,0,0,.12); }
    .contact-card .btn_on-hover{
      background:var(--brand); color:#fff; font-weight:700; padding:.6rem 1.25rem; border-radius:999px; border:none;
      transition: transform .2s ease, box-shadow .2s ease;
    }
    .contact-card .btn_on-hover:hover{ transform: translateY(-1px); box-shadow:0 10px 24px rgba(10,132,255,.25); }

    .info-item{ display:flex; gap:.9rem; align-items:flex-start; }
    .info-ico{
      width:42px; height:42px; border-radius:10px; display:inline-grid; place-items:center;
      background:linear-gradient(180deg, #F8E0B9, #F8E0B9);
      border:1px solid #F8E0B9;
    }
    .info-ico .fa{ color: #111; }

    .map-wrap{
      border-radius:16px; overflow:hidden; border:1px solid var(--stroke); box-shadow:0 12px 32px rgba(16,24,40,.06);
      opacity:0; transform: translateY(14px);
    }
    .map-wrap iframe{ display:block; width:100%; height:360px; border:0; }

    .badge-chip{
      display:inline-flex; align-items:center; gap:.5rem;
      padding:.35rem .7rem; border-radius:999px; font-weight:700;
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.546));
      border:1px solid rgba(255, 255, 255, 0.55); color: #fff; margin-bottom: .5rem;
    }

    /* REVEAL ANIMATIONS */
    @keyframes fadeUp{ to{ opacity:1; transform:none; } }
    .reveal{ opacity:0; transform: translateY(14px); }
    .reveal.visible{ animation: fadeUp .6s ease-out forwards; }

    /* Footer (template’s small footer) */
    .footer_section{ background:#111; color:#fff; padding:18px 0; text-align:center; }
    .footer_section a{ color:#fff; text-decoration:underline; }

#anker{
  color: #003968;
}




/* event img work */
.event-img-wrap{
  width:100%;
  height:220px;
  background:#0f172a;
}
.event-img-wrap img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* event img work end*/

/* =======================================================================
   HERO Right-side Announcements (index.html)
   - Slider wrapper is 100svh (card is centered inside)
   - If announcement has no image, omit .hero-ann-img and add .no-img
   ======================================================================= */

body.is-home .top_container{
  min-height: 100svh;
  height: auto;
}

/* full-height right column area */
.hero-ann-wrap{
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* neutralize global carousel-item rules for this slider */
#heroAnnouncementSlider .carousel-item{
  display: flex !important;
  align-items: center;
  justify-content: center;
}

/* stop global image zoom on active items from affecting this card */
#heroAnnouncementSlider .carousel-item.active img{
  animation: none !important;
  transform: none !important;
}

.hero-ann-card{
  width: min(620px, 100%);
  border-radius: 44px;
  overflow: hidden;
  background: #082465;
  border: 4px solid rgba(8, 36, 101, 0.18);
  display: flex;
  flex-direction: column;
}

/* card height when image exists */
.hero-ann-card.has-img{
  height: clamp(500px, 75svh, 700px);
}

/* card height when image is missing */
.hero-ann-card.no-img{
  min-height: clamp(360px, 50svh, 580px);
}

.hero-ann-img{
  height: 50%;
  background: #eef2f7;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero-ann-img img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 18px;
  display: block;
}

.hero-ann-body{
  padding: 32px 34px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.hero-ann-meta{
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  color: rgba(255,255,255,.55);
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: .55rem;
}

.hero-ann-title{
  margin: 0;
  font-weight: 900;
  text-transform: uppercase;
  color: #FEC913;
  line-height: 1.05;
  font-size: clamp(2rem, 2.5vw, 3rem);
}

.hero-ann-text{
  margin: 0;
  color: rgba(255,255,255,.80);
  font-size: 1.05rem;
  line-height: 1.75;
  max-width: 46ch;
}

.hero-ann-card.no-img .hero-ann-text{
  margin-left: auto;
  margin-right: auto;
}

.hero-ann-actions{
  margin-top: auto;
  display: flex;
  justify-content: center;
}

.btn-ann-read{
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  padding: .55rem 1rem;     /* reduced size */
  border-radius: 14px;
  background: #ffffff;
  color: #082465;
  font-weight: 800;
  font-size: .9rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  border: 0;
}

.btn-ann-read:hover{
  background: #FEC913;
  color: #082465;
}

/* arrows below card */
.hero-ann-nav{
  display: flex;
  justify-content: flex-end;
  gap: 14px;
  margin-top: 14px;
  padding-right: 4px;
}

.hero-ann-arrow{
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 2px solid rgba(8,36,101,.15);
  background: #ffffff;
  color: #082465;
  display: grid;
  place-items: center;
  box-shadow: 0 10px 22px rgba(0,0,0,.12);
  transition: all .2s ease;
}

.hero-ann-arrow:hover{
  background: #082465;
  color: #ffffff;
  transform: translateY(-1px);
}

.hero-ann-arrow i{
  font-size: 20px;
  line-height: 1;
}

@media (max-width: 991px){
  /* keep it usable on mobile */
  #heroAnnouncementSlider .carousel-item{ padding: 10px 0; }
  .hero-ann-card.has-img{ height: clamp(420px, 68svh, 560px); }
  .hero-ann-body{ padding: 26px 24px; }
  .hero-ann-nav{ justify-content: center; }
}

/* Modern institutional homepage hero */
body.is-home .top_container{
  min-height: auto;
  height: auto;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 18%, rgba(254,201,19,.08), transparent 28%),
    linear-gradient(115deg, #061b46 0%, #0a2c68 58%, #0d3779 100%);
}

body.is-home .top_container::before{
  width: 100%;
  height: 100%;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 64px 64px;
  background-position: center;
  opacity: .45;
}

body.is-home #siteHeader .navbar{
  background: rgba(6,27,70,.92);
  border-bottom: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

body.is-home #siteHeader .nav-link{
  color: rgba(255,255,255,.78);
  font-size: .88rem;
  font-weight: 600;
}

body.is-home #siteHeader .nav-link:hover,
body.is-home #siteHeader .nav-link.active{
  color: #fff !important;
}

/* Explicit home header states override older duplicated navbar rules */
body.is-home #siteHeader:not(.scrolled){
  background: rgba(6,27,70,.92) !important;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

body.is-home #siteHeader:not(.scrolled) .navbar{
  background: transparent !important;
  border-bottom: 0 !important;
}

body.is-home #siteHeader.scrolled{
  background: rgba(255,255,255,.97) !important;
  border-bottom: 1px solid rgba(8,36,101,.08);
  box-shadow: 0 10px 30px rgba(8,36,101,.1) !important;
}

body.is-home #siteHeader.scrolled .navbar{
  background: transparent !important;
  border-bottom: 0 !important;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.is-home #siteHeader.scrolled .nav-link,
body.is-home #siteHeader.scrolled .dropdown-toggle-split.nav-link{
  color: #26354d !important;
  text-shadow: none;
}

body.is-home #siteHeader.scrolled .nav-link:hover,
body.is-home #siteHeader.scrolled .nav-link:focus,
body.is-home #siteHeader.scrolled .nav-link.active,
body.is-home #siteHeader.scrolled .show > .nav-link{
  color: #082465 !important;
}

body.is-home #siteHeader.scrolled .navbar-toggler-icon{
  filter: none;
}

.home-hero{
  min-height: calc(100svh - 78px);
  display: flex;
  align-items: center;
  padding: clamp(4rem, 8vh, 7rem) 0;
}

.home-hero > .container > .row{
  align-items: center;
  row-gap: 3rem;
}

.home-hero .hero_detail-box{
  width: min(100%, 35rem);
}

.home-hero-label{
  display: inline-block;
  margin-bottom: 1.35rem;
  color: #FEC913;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .17em;
  text-transform: uppercase;
}

.home-hero .hero_detail-box h1{
  max-width: 10ch;
  margin: 0 0 1.4rem !important;
  color: #fff;
  font-size: clamp(3rem, 5vw, 5.25rem);
  font-weight: 700;
  line-height: .98;
  letter-spacing: -.055em;
  text-transform: none;
}

.home-hero .hero-sub{
  max-width: 32rem;
  margin: 0 0 2.2rem !important;
  color: rgba(255,255,255,.69);
  font-size: clamp(1rem, 1.3vw, 1.15rem);
  font-weight: 400;
  line-height: 1.7;
}

.home-hero .btn-cta-frist{
  padding: .85rem 1.15rem;
  gap: .9rem;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 8px;
  background: #fff;
  color: #082465;
  font-size: .82rem;
  letter-spacing: .04em;
  text-transform: none;
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
}

.home-hero .btn-cta-frist:hover{
  background: #FEC913;
  color: #082465;
}

.home-updates-column{
  display: flex;
  justify-content: flex-end;
}

.home-hero .hero-ann-wrap{
  width: min(100%, 34rem);
  min-height: 0;
  padding: 1.2rem;
  justify-content: flex-start;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 18px;
  background: rgba(255,255,255,.075);
  box-shadow: 0 28px 70px rgba(0,0,0,.22);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.home-updates-header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .35rem .35rem 1rem;
}

.home-updates-header span{
  display: block;
  margin-bottom: .25rem;
  color: #FEC913;
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.home-updates-header h2{
  margin: 0;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: -.02em;
}

.home-updates-header > i{
  color: rgba(255,255,255,.46);
  font-size: 1.1rem;
}

.home-hero .hero-ann-card{
  width: 100%;
  border: 0;
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}

.home-hero .hero-ann-card.has-img{
  height: clamp(25rem, 55vh, 32rem);
}

.home-hero .hero-ann-card.no-img{
  min-height: 16rem;
}

.home-hero .hero-ann-img{
  height: 48%;
  background: #f3f5f8;
}

.home-hero .hero-ann-body{
  gap: .8rem;
  padding: 1.6rem 1.75rem 1.8rem;
}

.home-hero .hero-ann-meta{
  color: #768196;
}

.home-hero .hero-ann-title{
  color: #082465;
  font-size: clamp(1.55rem, 2.2vw, 2.2rem);
  line-height: 1.15;
  letter-spacing: -.025em;
  text-transform: none;
}

.home-hero .hero-ann-text{
  color: #5f6b7e;
  font-size: .93rem;
  line-height: 1.6;
}

.home-hero .btn-ann-read{
  border-radius: 7px;
  background: #082465;
  color: #fff;
  font-size: .75rem;
}

.home-updates-empty{
  min-height: 13rem;
  padding: 2.25rem;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  border-radius: 12px;
  background: #fff;
}

.home-updates-empty-mark{
  width: 2.8rem;
  height: 2.8rem;
  flex: 0 0 2.8rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #edf2f8;
  color: #082465;
}

.home-updates-empty h3{
  margin: 0 0 .4rem;
  color: #082465;
  font-size: 1.05rem;
  font-weight: 700;
}

.home-updates-empty p{
  max-width: 29ch;
  margin: 0;
  color: #6c7788;
  font-size: .86rem;
  line-height: 1.55;
}

.home-hero .hero-ann-nav{
  gap: .5rem;
  margin-top: .8rem;
  padding-right: 0;
}

.home-hero .hero-ann-nav[hidden]{
  display: none !important;
}

.home-hero .hero-ann-arrow{
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255,255,255,.15);
  background: rgba(255,255,255,.08);
  color: #fff;
  box-shadow: none;
}

.home-hero .hero-ann-arrow:hover{
  border-color: #FEC913;
  background: #FEC913;
  color: #082465;
}

.home-hero .hero-ann-arrow i{
  font-size: 14px;
}

@media (max-width: 991.98px){
  .home-hero{
    min-height: auto;
    padding: 3.5rem 0 4rem;
  }

  .home-hero .hero_detail-box{
    width: min(100%, 38rem);
    text-align: center !important;
  }

  .home-hero .hero_detail-box h1{
    max-width: none;
  }

  .home-hero .hero-sub{
    margin-inline: auto !important;
  }

  .home-updates-column{
    justify-content: center;
  }

  .home-hero .hero-ann-card.has-img{
    height: auto;
    min-height: 27rem;
  }
}

/* ======================================================================
   Employment page — isolated professional hiring layout
   ====================================================================== */
body.employment-page{
  color: #344258;
}

body.employment-page .employment-content{
  padding: clamp(3.5rem, 7vw, 6rem) 0 !important;
  background:
    linear-gradient(rgba(255,255,255,.2), rgba(255,255,255,.3)),
    url("../images/body-bg.jpg") center top/cover no-repeat !important;
}

body.employment-page .employment-shell{
  width: min(calc(100% - 2rem), 1120px) !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

body.employment-page .employment-poster-card{
  width: min(100%, 980px);
  margin: 0 auto clamp(2rem, 5vw, 3.5rem) !important;
  overflow: hidden;
  border: 1px solid rgba(8,36,101,.11);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 65px rgba(8,36,101,.14);
}

body.employment-page .employment-poster-card--bottom{
  margin-top: clamp(2rem, 5vw, 3.5rem) !important;
  margin-bottom: 0 !important;
}

body.employment-page .employment-poster{
  width: 100%;
  max-height: none;
  aspect-ratio: 1.6 / 1;
  object-fit: contain;
  background: #faf8fb;
}

body.employment-page .employment-poster-footer{
  min-height: 78px;
  padding: 1rem 1.4rem;
  border-top: 1px solid #e5e8ef;
}

body.employment-page .employment-poster-footer .btn-cta{
  padding: .75rem 1rem;
  border-radius: 7px;
  background: #082465;
  color: #fff;
  font-size: .78rem;
}

body.employment-page .employment-details{
  width: min(100%, 980px);
  margin: 0 auto !important;
  padding: clamp(1.5rem, 4vw, 3.5rem) !important;
  border: 1px solid rgba(8,36,101,.1) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 24px 65px rgba(8,36,101,.1) !important;
}

body.employment-page .employment-details::before,
body.employment-page .employment-details::after{
  display: none !important;
}

body.employment-page .employment-details .box-title{
  margin: 0 0 1.5rem;
  padding: 0 0 1rem;
  border-bottom: 1px solid #dfe5ed;
  color: #082465 !important;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 700;
  letter-spacing: -.045em;
}

body.employment-page .employment-details .box-content{
  color: #526076;
  font-size: .95rem;
  line-height: 1.78;
}

body.employment-page .employment-details .box-content > p{
  max-width: 74ch;
}

body.employment-page .employment-details .box-content > p:nth-of-type(3){
  width: fit-content;
  margin: 1.8rem 0 0;
  padding: .45rem .65rem;
  border-radius: 5px;
  background: #edf2f8;
  color: #082465;
  font-size: .68rem;
  letter-spacing: .09em;
}

body.employment-page .employment-inline-poster{
  margin: 1rem 0 2rem;
  padding: .45rem;
  overflow: hidden;
  border: 1px solid #dfe5ed;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 16px 38px rgba(8,36,101,.1);
}

body.employment-page .employment-inline-poster .employment-poster{
  width: 100%;
  height: auto;
  aspect-ratio: auto;
  display: block;
  border-radius: 8px;
  object-fit: contain;
}

body.employment-page .employment-details .sec-head{
  margin: 1rem 0 1.5rem;
  padding: 1.25rem 0;
  display: block;
  border-top: 1px solid #e0e6ee;
  border-bottom: 1px solid #e0e6ee;
}

body.employment-page .employment-details .sec-chip{
  display: inline-flex;
  margin-bottom: .7rem;
  padding: .35rem .55rem;
  border: 0;
  border-radius: 5px;
  background: #082465;
  color: #fff;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .1em;
}

body.employment-page .employment-details .sec-title{
  max-width: 27ch;
  margin: 0;
  color: #082465 !important;
  font-size: clamp(1.45rem, 3vw, 2.25rem);
  line-height: 1.18;
  letter-spacing: -.035em;
}

body.employment-page .employment-details a{
  color: #0b4b93;
  font-weight: 600;
  overflow-wrap: anywhere;
}

body.employment-page .employment-details h3{
  margin: 2.25rem 0 1rem !important;
  padding: 0 0 .7rem !important;
  border-bottom: 2px solid #FEC913;
  border-left: 0 !important;
  color: #082465;
  font-size: 1.2rem;
}

body.employment-page .employment-details .list-dash{
  margin: 0;
  padding: 0;
  display: grid;
  gap: .6rem;
  list-style: none;
}

body.employment-page .employment-details .list-dash:first-of-type{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.employment-page .employment-details .list-dash li{
  position: relative;
  min-width: 0;
  margin: 0;
  padding: .75rem .85rem .75rem 2rem;
  border: 1px solid #e1e7ef;
  border-radius: 8px;
  background: #f8fafc;
  color: #45536a;
  line-height: 1.55;
}

body.employment-page .employment-details .list-dash li::before{
  content: "✓";
  position: absolute;
  top: .72rem;
  left: .75rem;
  color: #a47700;
  font-weight: 800;
}

body.employment-page .employment-details .box-content > div > p:last-child{
  margin-top: 2rem;
  padding: 1rem 1.1rem;
  border-left: 4px solid #FEC913;
  border-radius: 0 8px 8px 0;
  background: #f7f9fc;
}

@media (max-width: 767.98px){
  body.employment-page .employment-content{
    padding: 2.5rem 0 !important;
  }

  body.employment-page .employment-shell{
    width: min(calc(100% - 1rem), 1120px) !important;
  }

  body.employment-page .employment-poster-card,
  body.employment-page .employment-details{
    border-radius: 12px !important;
  }

  body.employment-page .employment-poster{
    aspect-ratio: auto;
  }

  body.employment-page .employment-poster-footer{
    align-items: stretch;
    flex-direction: column;
  }

  body.employment-page .employment-details{
    padding: 1.25rem !important;
  }

  body.employment-page .employment-details .list-dash:first-of-type{
    grid-template-columns: 1fr;
  }
}

/* ======================================================================
   About page — editorial school story
   ====================================================================== */
body.about-page > br{
  display: none;
}

body.about-page .about-content{
  padding: clamp(3.5rem, 7vw, 6rem) 0 !important;
  color: #445267 !important;
  background:
    linear-gradient(rgba(255,255,255,.18), rgba(255,255,255,.3)),
    url("../images/body-bg.jpg") center top/cover no-repeat !important;
}

body.about-page .about-shell{
  position: relative;
  width: min(calc(100% - 2rem), 1080px) !important;
  max-width: 1080px !important;
  margin: 0 auto !important;
  padding: clamp(1.5rem, 5vw, 4.5rem) !important;
  overflow: hidden;
  border: 1px solid rgba(8,36,101,.1) !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 28px 75px rgba(8,36,101,.12) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

body.about-page .about-shell::before{
  content: "MGS";
  position: absolute;
  top: -1.7rem;
  right: 2rem;
  color: rgba(8,36,101,.035);
  font-size: clamp(7rem, 17vw, 13rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.08em;
  pointer-events: none;
}

body.about-page .about-content-title{
  position: relative;
  margin: 0;
  color: #082465 !important;
  font-size: clamp(2.2rem, 4vw, 3.75rem);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -.05em;
  text-align: center;
}

body.about-page .about-content .title-underline{
  position: relative;
  width: 3rem;
  height: 3px;
  margin: 1rem auto 2rem;
  border-radius: 99px;
  background: #FEC913;
}

body.about-page .about-content-copy{
  position: relative;
  max-width: 78ch;
  margin: 0 auto;
  color: #526176;
  font-size: clamp(.95rem, 1.2vw, 1.05rem);
  line-height: 1.9;
  text-align: left;
}

body.about-page .about-content-visual{
  position: relative;
  max-width: 850px;
  margin: clamp(2rem, 5vw, 3.5rem) auto 0;
  padding: .6rem;
  border: 1px solid #e0e6ee;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 20px 50px rgba(8,36,101,.13);
}

body.about-page .about-content-visual::before{
  content: "";
  position: absolute;
  top: -1rem;
  left: -1rem;
  z-index: -1;
  width: 6rem;
  height: 6rem;
  border-top: 3px solid #FEC913;
  border-left: 3px solid #FEC913;
  border-radius: 16px 0 0;
}

body.about-page .about-content-visual img{
  width: 100%;
  height: clamp(260px, 42vw, 470px);
  display: block;
  border-radius: 11px;
  object-fit: cover;
  box-shadow: none;
}

@media (max-width: 575.98px){
  body.about-page .about-content{
    padding: 2.5rem 0 !important;
  }

  body.about-page .about-shell{
    width: min(calc(100% - 1rem), 1080px) !important;
    padding: 1.35rem !important;
    border-radius: 14px !important;
  }

  body.about-page .about-content-visual img{
    height: 250px;
  }
}

/* ======================================================================
   Modern post-hero content system for all inner pages
   ====================================================================== */
body:not(.is-home) > section:not(.services-hero):not(.fac-hero):not(.contact-hero):not(.footer_section),
body:not(.is-home) .services-hero--list{
  padding-top: clamp(3rem, 6vw, 5rem) !important;
  padding-bottom: clamp(3rem, 6vw, 5rem) !important;
  color: #3f4d61 !important;
  background-color: transparent !important;
}

body:not(.is-home) > section:not(.services-hero):not(.fac-hero):not(.contact-hero):not(.footer_section) > .container,
body:not(.is-home) > section:not(.services-hero):not(.fac-hero):not(.contact-hero):not(.footer_section) > .container-fluid,
body:not(.is-home) .services-hero--list > .container{
  width: min(calc(100% - 2rem), 1140px);
  max-width: 1140px;
  margin-right: auto;
  margin-left: auto;
  padding: clamp(1.5rem, 4vw, 3.5rem);
  border: 1px solid rgba(8,36,101,.1);
  border-radius: 20px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 24px 65px rgba(8,36,101,.1);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}

body:not(.is-home) > section > .container > h2:first-child,
body:not(.is-home) > section > .container-fluid > h2:first-child,
body:not(.is-home) .box-title,
body:not(.is-home) .sec-title{
  color: #082465 !important;
  font-size: clamp(1.65rem, 3vw, 2.5rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.04em;
}

body:not(.is-home) .title-underline{
  width: 3rem;
  height: 3px;
  margin: .75rem auto 1.6rem;
  display: block;
  border-radius: 99px;
  background: #FEC913;
}

body:not(.is-home) .animated-box{
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body:not(.is-home) .animated-box::before,
body:not(.is-home) .animated-box::after{
  display: none;
}

body:not(.is-home) .box-title{
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #e1e7ef;
}

body:not(.is-home) .box-content{
  color: #536176;
  font-size: .96rem;
  line-height: 1.78;
}

body:not(.is-home) .box-content h3{
  margin-top: 2rem !important;
  padding-left: .9rem;
  border-left: 3px solid #FEC913;
  color: #082465;
  font-size: 1.15rem;
}

body:not(.is-home) .box-content img,
body:not(.is-home) .awards img{
  border-radius: 14px;
  box-shadow: 0 18px 45px rgba(8,36,101,.13);
}

body:not(.is-home) .sec-head{
  margin: 2.2rem 0 1.2rem;
  padding-bottom: .9rem;
  border-bottom: 1px solid #e1e7ef;
}

body:not(.is-home) .sec-chip{
  border: 1px solid rgba(8,36,101,.1);
  border-radius: 6px;
  background: #edf2f8;
  color: #082465;
  font-size: .68rem;
  letter-spacing: .09em;
  text-transform: uppercase;
}

body:not(.is-home) .list-dash,
body:not(.is-home) .box-content ul,
body:not(.is-home) .uniqe ul{
  padding-left: 0;
  list-style: none;
}

body:not(.is-home) .list-dash li,
body:not(.is-home) .box-content li,
body:not(.is-home) .uniqe li{
  position: relative;
  margin-bottom: .55rem;
  padding: .65rem .8rem .65rem 2rem;
  border: 1px solid #e5eaf1;
  border-radius: 8px;
  background: rgba(248,250,252,.8);
}

body:not(.is-home) .list-dash li::before,
body:not(.is-home) .box-content li::before,
body:not(.is-home) .uniqe li::before{
  content: "✓";
  position: absolute;
  top: .65rem;
  left: .75rem;
  color: #a47700;
  font-weight: 800;
}

/* Accessibility policies */
body:not(.is-home) .policy-card{
  margin-bottom: 1rem !important;
  overflow: hidden;
  border: 1px solid #e1e7ef;
  border-radius: 12px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 10px 28px rgba(8,36,101,.06);
}

body:not(.is-home) .policy-head{
  padding: 1rem 1.1rem;
  gap: .85rem;
  background: #f7f9fc;
}

body:not(.is-home) .policy-icon{
  background: #eaf0f7;
  color: #082465;
}

body:not(.is-home) .policy-body{
  padding: 1.1rem 1.25rem;
}

/* Governing body */
body:not(.is-home) .simple-box{
  overflow: hidden;
  border: 1px solid #dfe6ef;
  border-radius: 14px;
  background: #fff;
  box-shadow: none;
}

body:not(.is-home) .simple-head{
  padding: 1.25rem;
  background: #082465;
}

body:not(.is-home) .simple-head h3{
  margin: 0;
  color: #fff;
}

body:not(.is-home) .simple-list{
  margin: 0;
  padding: 0;
}

body:not(.is-home) .simple-row{
  padding: 1rem 1.25rem;
  border-bottom: 1px solid #e7ebf1;
  color: #344258;
}

body:not(.is-home) .simple-row:last-child{
  border-bottom: 0;
}

body:not(.is-home) .simple-row .role{
  color: #728095;
}

/* Uniform and compact information pages */
body:not(.is-home) .uniqe{
  max-width: 900px !important;
}

body:not(.is-home) .uniqe .class{
  margin-bottom: 1.25rem;
  color: #082465;
  font-size: clamp(1.5rem, 3vw, 2.25rem) !important;
  letter-spacing: -.035em;
}

/* Services listing */
body:not(.is-home) .services-board{
  overflow: hidden;
  border: 1px solid #dfe6ef;
  border-radius: 14px;
  background: #fff;
}

body:not(.is-home) .services-board-row{
  padding: 1rem 1.2rem;
  border-bottom: 1px solid #e7ebf1;
  transition: background .18s ease, padding-left .18s ease;
}

body:not(.is-home) .services-board-row:hover{
  padding-left: 1.45rem;
  background: #f5f8fc;
}

body:not(.is-home) .services-board-title{
  color: #082465;
  font-weight: 700;
}

body:not(.is-home) .services-board-note{
  color: #738095;
}

/* Contact page */
body:not(.is-home) .contact-card{
  height: 100%;
  border: 1px solid #e0e6ee;
  border-radius: 14px;
  background: rgba(255,255,255,.97);
  box-shadow: 0 14px 38px rgba(8,36,101,.08);
}

@media (max-width: 767.98px){
  body:not(.is-home) > section:not(.services-hero):not(.fac-hero):not(.contact-hero):not(.footer_section) > .container,
  body:not(.is-home) > section:not(.services-hero):not(.fac-hero):not(.contact-hero):not(.footer_section) > .container-fluid,
  body:not(.is-home) .services-hero--list > .container{
    width: min(calc(100% - 1rem), 1140px);
    padding: 1.25rem;
    border-radius: 14px;
  }

  body:not(.is-home) .simple-row{
    gap: .3rem;
    align-items: flex-start;
    flex-direction: column;
  }

  body:not(.is-home) .sec-head{
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Original education pattern is the global identity on every inner page. */
body:not(.is-home){
  background-color: #fff !important;
  background-image: url("../images/body-bg.jpg") !important;
  background-size: cover !important;
  background-position: center top !important;
  background-repeat: repeat-y !important;
  background-attachment: fixed !important;
}

/* Restart the pattern from its top edge immediately below each inner-page hero. */
body:not(.is-home) .services-hero + section,
body:not(.is-home) .fac-hero + section,
body:not(.is-home) .contact-hero + section{
  background-color: transparent !important;
  background-image: url("../images/body-bg.jpg") !important;
  background-size: cover !important;
  background-position: center top !important;
  background-repeat: no-repeat !important;
  background-attachment: scroll !important;
}

/* Stable desktop dropdown hover zones */
@media (min-width: 992px) and (hover: hover){
  .site-header .nav-item.dropdown{
    position: relative;
  }

  .site-header .nav-item.dropdown > .dropdown-menu{
    top: calc(100% - 1px);
    margin-top: 0 !important;
  }

  .site-header .nav-item.dropdown:hover > .dropdown-menu,
  .site-header .nav-item.dropdown:focus-within > .dropdown-menu{
    display: block;
  }

  .site-header .dropdown-submenu > .dropdown-menu{
    top: -.55rem;
    left: calc(100% - 1px);
    margin: 0 !important;
  }

  .site-header .dropdown-submenu:hover > .dropdown-menu,
  .site-header .dropdown-submenu:focus-within > .dropdown-menu{
    display: block;
  }

  /* Invisible overlap prevents a one-pixel hover drop at menu boundaries. */
  .site-header .nav-item.dropdown > .dropdown-menu::before{
    content: "";
    position: absolute;
    top: -6px;
    right: 0;
    left: 0;
    height: 7px;
  }

  .site-header .dropdown-submenu > .dropdown-menu::before{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -7px;
    width: 8px;
  }
}

/* Requested page-turn loader */
body::before,
body::after{
  content: none !important;
  animation: none !important;
}

.site-loader{
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  display: grid;
  place-items: center;
  background: rgba(245,248,252,.3);
  backdrop-filter: blur(12px) saturate(.8);
  -webkit-backdrop-filter: blur(12px) saturate(.8);
  pointer-events: none;
  animation: requestedLoaderHide .35s ease 1.65s forwards;
}

.loader {
  --color-1: #082465;
  --color-2: #f5f5f5;
  --color-3: #d9dee7;
  --color-4: rgba(0, 0, 0, 0.25);
  --color-5: #fff;
  --size: .52px;

  width: calc(200 * var(--size));
  height: calc(140 * var(--size));
  background: var(--color-1);
  box-sizing: border-box;
  position: relative;
  border-radius: calc(8 * var(--size));
  perspective: calc(1000 * var(--size));
  box-shadow: 0 18px 42px rgba(8,36,101,.22);
}

.loader::before {
  content: '';
  position: absolute;
  left: calc(10 * var(--size));
  right: calc(10 * var(--size));
  top: calc(10 * var(--size));
  bottom: calc(10 * var(--size));
  border-radius: calc(8 * var(--size));
  background: var(--color-2) no-repeat;
  background-size: calc(60 * var(--size)) calc(10 * var(--size));
  background-image:
    linear-gradient(var(--color-3) calc(100 * var(--size)), transparent 0),
    linear-gradient(var(--color-3) calc(100 * var(--size)), transparent 0),
    linear-gradient(var(--color-3) calc(100 * var(--size)), transparent 0),
    linear-gradient(var(--color-3) calc(100 * var(--size)), transparent 0),
    linear-gradient(var(--color-3) calc(100 * var(--size)), transparent 0),
    linear-gradient(var(--color-3) calc(100 * var(--size)), transparent 0);
  background-position:
    calc(15 * var(--size)) calc(30 * var(--size)),
    calc(15 * var(--size)) calc(60 * var(--size)),
    calc(15 * var(--size)) calc(90 * var(--size)),
    calc(105 * var(--size)) calc(30 * var(--size)),
    calc(105 * var(--size)) calc(60 * var(--size)),
    calc(105 * var(--size)) calc(90 * var(--size));
  box-shadow: 0 0 calc(10 * var(--size)) var(--color-4);
}

.loader::after {
  content: '';
  position: absolute;
  width: calc(50% - calc(10 * var(--size)));
  right: calc(10 * var(--size));
  top: calc(10 * var(--size));
  bottom: calc(10 * var(--size));
  border-radius: calc(8 * var(--size));
  background: var(--color-5) no-repeat;
  background-size: calc(60 * var(--size)) calc(10 * var(--size));
  background-image:
    linear-gradient(var(--color-3) calc(100 * var(--size)), transparent 0),
    linear-gradient(var(--color-3) calc(100 * var(--size)), transparent 0),
    linear-gradient(var(--color-3) calc(100 * var(--size)), transparent 0);
  background-position:
    50% calc(30 * var(--size)),
    50% calc(60 * var(--size)),
    50% calc(90 * var(--size));
  transform: rotateY(0deg);
  transform-origin: left center;
  animation: paging 1s linear infinite;
}

@keyframes paging {
  to {
    transform: rotateY(-180deg);
  }
}

@keyframes requestedLoaderHide{
  to{
    opacity: 0;
    visibility: hidden;
  }
}

@media (prefers-reduced-motion: reduce){
  .site-loader{
    animation-delay: .2s;
  }

  .loader::after{
    animation: none;
  }
}

/* Job-opening artwork: homepage slider and Employment page */
.home-news .home-job-poster-slide{
  min-height: 0;
  padding: 0;
  overflow: hidden;
  background: #fff;
}

.home-job-poster-slide > a{
  display: block;
}

.home-job-poster{
  width: 100%;
  max-height: 34rem;
  display: block;
  object-fit: contain;
  background: #f7f3fb;
}

.home-job-poster-action{
  padding: 1rem 1.2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid #e7e2ec;
  background: #fff;
}

.home-job-poster-action > span{
  color: #082465;
  font-size: .84rem;
  font-weight: 700;
}

.employment-poster-card{
  overflow: hidden;
  border: 1px solid rgba(8,36,101,.1);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 60px rgba(8,36,101,.13);
}

.employment-poster{
  width: 100%;
  max-height: 50rem;
  display: block;
  object-fit: contain;
  background: #f8f4fa;
}

.employment-poster-footer{
  padding: 1.2rem 1.35rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid #ebe5ef;
  background: #fff;
}

.employment-poster-footer span,
.employment-poster-footer strong{
  display: block;
}

.employment-poster-footer span{
  margin-bottom: .2rem;
  color: #9b7200;
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.employment-poster-footer strong{
  color: #082465;
  font-size: 1.05rem;
}

.employment-poster-footer .btn-cta{
  flex: 0 0 auto;
  color: #fff;
  text-decoration: none;
}

@media (max-width: 575.98px){
  .home-job-poster-action,
  .employment-poster-footer{
    align-items: stretch;
    flex-direction: column;
  }

  .home-job-poster-action .btn,
  .employment-poster-footer .btn-cta{
    justify-content: center;
    text-align: center;
  }
}

/* ======================================================================
   Global book-page loader
   Runs on every page using the shared stylesheet, including Employment.
   ====================================================================== */
body::before{
  content: "";
  position: fixed;
  inset: 0;
  z-index: 2147483646;
  background:
    radial-gradient(circle at 50% 45%, rgba(254,201,19,.09), transparent 18rem),
    #061b46;
  pointer-events: none;
  animation: siteLoaderCurtain 1.7s cubic-bezier(.4,0,.2,1) forwards;
}

body::after{
  content: "";
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 2147483647;
  width: 88px;
  height: 58px;
  border: 2px solid rgba(255,255,255,.85);
  border-radius: 4px 12px 12px 4px;
  background:
    linear-gradient(90deg, transparent 48%, rgba(8,36,101,.18) 49%, rgba(8,36,101,.18) 51%, transparent 52%),
    repeating-linear-gradient(0deg, transparent 0 8px, rgba(8,36,101,.13) 8px 9px),
    #fff;
  box-shadow:
    -5px 5px 0 rgba(254,201,19,.9),
    0 18px 45px rgba(0,0,0,.3);
  transform: translate(-50%,-50%) perspective(500px) rotateY(0);
  transform-origin: left center;
  pointer-events: none;
  animation:
    siteBookTurn .48s ease-in-out 3 alternate,
    siteLoaderBookExit .25s ease 1.42s forwards;
}

@keyframes siteBookTurn{
  0%{
    transform: translate(-50%,-50%) perspective(500px) rotateY(0deg) skewY(0);
  }
  48%{
    transform: translate(-50%,-50%) perspective(500px) rotateY(-82deg) skewY(-2deg);
    box-shadow: -2px 5px 0 rgba(254,201,19,.9), 0 14px 36px rgba(0,0,0,.26);
  }
  100%{
    transform: translate(-50%,-50%) perspective(500px) rotateY(-164deg) skewY(0);
    box-shadow: 5px 5px 0 rgba(254,201,19,.9), 0 18px 45px rgba(0,0,0,.3);
  }
}

@keyframes siteLoaderBookExit{
  to{
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%,-46%) perspective(500px) rotateY(-164deg) scale(.92);
  }
}

@keyframes siteLoaderCurtain{
  0%, 78%{
    opacity: 1;
    visibility: visible;
  }
  100%{
    opacity: 0;
    visibility: hidden;
  }
}

@media (prefers-reduced-motion: reduce){
  body::before,
  body::after{
    animation-duration: .01ms !important;
    animation-delay: 0s !important;
  }
}

@media (max-width: 575.98px){
  .home-hero{
    padding: 2.7rem 0 3.2rem;
  }

  .home-hero .hero_detail-box h1{
    font-size: clamp(2.55rem, 13vw, 3.6rem);
  }

  .home-hero .hero-ann-wrap{
    padding: .8rem;
    border-radius: 14px;
  }

  .home-updates-empty{
    min-height: 11rem;
    padding: 1.4rem;
    align-items: flex-start;
  }
}

/* Premium depth and information layer */
.home-hero .container{
  position: relative;
}

.home-hero .container::before{
  content: "";
  position: absolute;
  top: -14%;
  left: 49%;
  width: 1px;
  height: 128%;
  background: linear-gradient(transparent, rgba(254,201,19,.5), transparent);
  transform: rotate(8deg);
  transform-origin: center;
}

.home-hero .hero_detail-box{
  position: relative;
}

.home-hero .hero_detail-box::before{
  content: "01";
  position: absolute;
  top: -2.5rem;
  left: -3.5rem;
  color: rgba(255,255,255,.08);
  font-size: 7rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.08em;
  pointer-events: none;
}

.home-hero-proof{
  max-width: 34rem;
  margin-top: 3.2rem;
  padding-top: 1.35rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(255,255,255,.15);
}

.home-hero-proof > div{
  min-width: 0;
  padding-right: 1rem;
}

.home-hero-proof > div + div{
  padding-left: 1.15rem;
  border-left: 1px solid rgba(255,255,255,.12);
}

.home-hero-proof strong,
.home-hero-proof span{
  display: block;
}

.home-hero-proof strong{
  margin-bottom: .2rem;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: -.02em;
}

.home-hero-proof span{
  overflow: hidden;
  color: rgba(255,255,255,.5);
  font-size: .68rem;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-updates-column{
  position: relative;
  padding-left: clamp(1.5rem, 4vw, 4rem);
}

.home-updates-column::before{
  content: "";
  position: absolute;
  right: -1.5rem;
  bottom: -1.5rem;
  width: 72%;
  height: 72%;
  border: 1px solid rgba(254,201,19,.22);
  border-radius: 22px;
  transform: rotate(3deg);
  pointer-events: none;
}

.home-hero .hero-ann-wrap{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 1.45rem;
  border-color: rgba(255,255,255,.18);
  background:
    linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.055));
}

.home-hero .hero-ann-wrap::after{
  content: "";
  position: absolute;
  right: -5rem;
  bottom: -6rem;
  z-index: -1;
  width: 14rem;
  height: 14rem;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 50%;
  box-shadow:
    0 0 0 2.5rem rgba(255,255,255,.025),
    0 0 0 5rem rgba(255,255,255,.018);
}

.home-updates-backdrop{
  position: absolute;
  top: -1.65rem;
  right: 4.2rem;
  z-index: -1;
  color: rgba(255,255,255,.035);
  font-size: 8rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.09em;
  pointer-events: none;
}

.home-updates-header{
  min-height: 4.7rem;
  padding: .2rem .15rem 1.2rem;
}

.home-updates-status{
  display: inline-flex;
  align-items: center;
  gap: .42rem;
  padding: .38rem .62rem;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 99px;
  color: rgba(255,255,255,.67);
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.home-updates-status i{
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #FEC913;
  box-shadow: 0 0 0 4px rgba(254,201,19,.12);
}

.home-updates-empty{
  position: relative;
  min-height: 16.5rem;
  padding: 2.2rem;
  gap: 1.65rem;
  overflow: hidden;
  box-shadow: 0 18px 38px rgba(0,0,0,.13);
}

.home-updates-empty::after{
  content: "";
  position: absolute;
  right: -4rem;
  bottom: -4rem;
  width: 10rem;
  height: 10rem;
  border: 1.5rem solid #f4f6f9;
  border-radius: 50%;
}

.home-updates-date{
  width: 5rem;
  height: 5.5rem;
  flex: 0 0 5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid #e3e8f0;
  border-top: 4px solid #FEC913;
  border-radius: 8px;
  background: #f8fafc;
  color: #082465;
}

.home-updates-date span{
  margin-bottom: .2rem;
  color: #7b8697;
  font-size: .56rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.home-updates-date strong{
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
}

.home-updates-empty-label{
  display: block;
  margin-bottom: .55rem;
  color: #a47700;
  font-size: .61rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.home-updates-empty h3{
  max-width: 15ch;
  font-size: clamp(1.3rem, 2vw, 1.65rem);
  line-height: 1.2;
  letter-spacing: -.035em;
}

.home-updates-empty p{
  max-width: 30ch;
}

@media (max-width: 991.98px){
  .home-hero .container::before,
  .home-updates-column::before{
    display: none;
  }

  .home-hero .hero_detail-box::before{
    left: 50%;
    transform: translateX(-50%);
  }

  .home-updates-column{
    padding-left: 15px;
  }

  .home-hero-proof{
    margin-inline: auto;
    text-align: left;
  }
}

@media (max-width: 575.98px){
  .home-hero-proof{
    margin-top: 2.4rem;
  }

  .home-hero-proof > div{
    padding-right: .5rem;
  }

  .home-hero-proof > div + div{
    padding-left: .7rem;
  }

  .home-hero-proof span{
    font-size: .6rem;
  }

  .home-updates-backdrop{
    font-size: 6rem;
  }

  .home-updates-empty{
    min-height: 15rem;
    padding: 1.35rem;
    gap: 1rem;
  }

  .home-updates-date{
    width: 4.1rem;
    height: 4.7rem;
    flex-basis: 4.1rem;
  }
}

/* Homepage sections below the hero */
.home-section-kicker{
  margin-bottom: .65rem;
  color: #a47700;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .17em;
  text-align: center;
  text-transform: uppercase;
}

.home-about{
  position: relative;
  overflow: hidden;
  padding: clamp(5rem, 9vw, 8rem) 0;
  background:
    radial-gradient(circle at 8% 15%, rgba(254,201,19,.1), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.28), rgba(248,250,252,.38)),
    url("../images/body-bg.jpg") center/cover;
}

.home-about::before{
  content: "ABOUT";
  position: absolute;
  top: 2.5rem;
  left: 50%;
  color: rgba(8,36,101,.025);
  font-size: clamp(6rem, 16vw, 15rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.08em;
  transform: translateX(-50%);
  pointer-events: none;
}

.home-about .container{
  position: relative;
}

.home-about .main-heading{
  margin: 0;
  color: #082465;
  font-size: clamp(2rem, 4vw, 3.7rem);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -.045em;
}

.home-about .main-heading + .main-heading{
  margin-top: .2rem;
  color: #47617f;
  font-size: clamp(1.25rem, 2.2vw, 2rem);
  font-weight: 500;
  text-align: center !important;
  letter-spacing: -.025em;
}

.home-about-intro{
  max-width: 60rem;
  margin: 1.35rem auto 2.4rem;
  color: #637083;
  font-size: 1rem;
  line-height: 1.8;
}

.home-about-visual{
  position: relative;
  width: min(100%, 47rem);
  margin: 0 auto;
  padding: .65rem;
  border: 1px solid rgba(8,36,101,.1);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 28px 70px rgba(8,36,101,.13);
}

.home-about-visual::before{
  content: "";
  position: absolute;
  top: -1rem;
  left: -1rem;
  z-index: -1;
  width: 7rem;
  height: 7rem;
  border-top: 3px solid #FEC913;
  border-left: 3px solid #FEC913;
  border-radius: 18px 0 0;
}

.home-about-visual img{
  min-height: 18rem;
  border-radius: 14px;
  object-fit: cover;
}

.home-about-badge{
  position: absolute;
  right: -2rem;
  bottom: 2rem;
  min-width: 11rem;
  padding: 1rem 1.2rem;
  border-left: 4px solid #FEC913;
  background: #082465;
  box-shadow: 0 14px 34px rgba(8,36,101,.25);
}

.home-about-badge strong,
.home-about-badge span{
  display: block;
}

.home-about-badge strong{
  color: #fff;
  font-size: 1.05rem;
}

.home-about-badge span{
  margin-top: .15rem;
  color: rgba(255,255,255,.6);
  font-size: .68rem;
}

.home-about-pillars{
  width: min(100%, 55rem);
  margin: 3rem auto 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 1px solid #e4e9f0;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 14px 35px rgba(8,36,101,.06);
}

.home-about-pillars > div{
  padding: 1.25rem;
  display: flex;
  align-items: center;
  gap: .85rem;
}

.home-about-pillars > div + div{
  border-left: 1px solid #e4e9f0;
}

.home-about-pillars i{
  width: 2.4rem;
  height: 2.4rem;
  flex: 0 0 2.4rem;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #edf2f8;
  color: #082465;
}

.home-about-pillars span,
.home-about-pillars strong{
  display: block;
}

.home-about-pillars span{
  color: #7a8697;
  font-size: .68rem;
  line-height: 1.45;
}

.home-about-pillars strong{
  margin-bottom: .15rem;
  color: #12213a;
  font-size: .82rem;
}

.home-about .btn-cta{
  border-radius: 8px;
  background: #082465;
  box-shadow: 0 12px 28px rgba(8,36,101,.2);
}

.home-principal{
  position: relative;
  padding: clamp(5rem, 9vw, 8rem) 0;
  overflow: hidden;
  background: #071f50;
}

.home-principal::before{
  content: "“";
  position: absolute;
  top: -5rem;
  right: 4vw;
  color: rgba(255,255,255,.045);
  font-family: Georgia, serif;
  font-size: 30rem;
  line-height: 1;
}

.home-principal .has-animated-bg::before{
  opacity: .16;
}

.home-principal .principal-card{
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 35px 90px rgba(0,0,0,.28);
}

.home-principal .principal-card::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, #FEC913 0 28%, #082465 28%);
}

.home-principal .principal-title{
  color: #082465;
  font-size: clamp(1.8rem, 3.4vw, 3rem);
  letter-spacing: -.04em;
}

.home-principal .lead-intro{
  padding: 1rem 1.1rem;
  border-left: 3px solid #FEC913;
  background: #f7f9fc;
}

.home-principal .lead-intro h4{
  color: #183052;
  font-size: 1rem;
}

.home-principal .text-muted{
  color: #637083 !important;
  line-height: 1.75;
}

.home-principal .portrait{
  position: sticky;
  top: 7rem;
  padding: .6rem;
  border-radius: 18px;
  background: #edf2f8;
}

.home-principal .portrait img{
  height: 25rem !important;
  border-radius: 13px !important;
  object-fit: cover;
}

.home-principal-caption{
  position: absolute;
  right: 1.4rem;
  bottom: 1.4rem;
  left: 1.4rem;
  padding: .9rem 1rem;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 10px;
  background: rgba(6,27,70,.86);
  backdrop-filter: blur(10px);
}

.home-principal-caption strong,
.home-principal-caption span{
  display: block;
}

.home-principal-caption strong{
  color: #fff;
  font-size: .9rem;
}

.home-principal-caption span{
  color: #FEC913;
  font-size: .64rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.home-principal .btn-cta{
  border-radius: 8px;
}

.home-news{
  position: relative;
  padding: clamp(5rem, 9vw, 8rem) 0;
  background:
    linear-gradient(180deg, rgba(245,247,250,.32), rgba(255,255,255,.42)),
    url("../images/body-bg.jpg") center/cover;
}

.home-news-heading{
  margin-bottom: 2rem;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
}

.home-news-heading .home-section-kicker{
  text-align: left;
}

.home-news-heading h2{
  margin: 0;
  color: #082465;
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 700;
  letter-spacing: -.045em;
}

.home-news-heading > p{
  max-width: 30rem;
  margin: 0 0 .35rem;
  color: #6d7889;
  font-size: .9rem;
  line-height: 1.65;
}

.home-news #annSlider{
  padding: .7rem;
  border: 1px solid #e2e7ee;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 25px 65px rgba(8,36,101,.11);
}

.home-news .ann-card{
  min-height: 26rem;
  padding: clamp(2rem, 5vw, 4.5rem);
  border: 0;
  border-radius: 15px;
  outline: 0;
  background:
    radial-gradient(circle at 90% 10%, rgba(254,201,19,.16), transparent 20%),
    linear-gradient(135deg, #f8fafc, #fff);
  box-shadow: none;
}

.home-news .ann-card:hover{
  transform: none;
  box-shadow: none;
}

.home-news .ann-title{
  max-width: 18ch;
  color: #082465;
  font-size: clamp(1.8rem, 3.5vw, 3rem);
  line-height: 1.08;
  letter-spacing: -.04em;
}

.home-news .ann-sub{
  color: #9a7200;
  font-size: .9rem;
}

.home-news .ann-body{
  max-width: 55rem;
  color: #637083;
  line-height: 1.7;
}

.home-news .btn-ann{
  border-radius: 7px;
  background: #082465;
  box-shadow: none;
}

.home-news .ann-nav{
  width: 2.6rem;
  height: 2.6rem;
  top: auto;
  bottom: 1.6rem;
  border: 1px solid #082465;
  background: #082465;
  color: #fff;
  box-shadow: 0 8px 18px rgba(8,36,101,.1);
  opacity: 1;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}

.home-news .ann-nav:hover{
  border-color: #1f4d88;
  background: #1f4d88;
  color: #fff;
  opacity: 1;
  transform: none;
  box-shadow: 0 8px 18px rgba(8,36,101,.16);
}

.home-news .ann-nav:focus{
  border-color: #082465;
  outline: none;
  background: #082465;
  color: #fff;
  opacity: 1;
  transform: none;
  box-shadow: 0 8px 18px rgba(8,36,101,.1);
}

.home-news .ann-nav:focus-visible{
  border-color: #1f4d88;
  outline: none;
  background: #082465;
  color: #fff;
  box-shadow:
    0 8px 18px rgba(8,36,101,.16),
    0 0 0 3px rgba(31,77,136,.12);
}

.home-news .ann-nav .carousel-control-prev-icon,
.home-news .ann-nav .carousel-control-next-icon{
  width: auto;
  height: auto;
  background-image: none !important;
}

.home-news .ann-nav .carousel-control-prev-icon::before,
.home-news .ann-nav .carousel-control-next-icon::before{
  display: block;
  color: currentColor;
  font-family: Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
}

.home-news .ann-nav .carousel-control-prev-icon::before{
  content: "‹";
}

.home-news .ann-nav .carousel-control-next-icon::before{
  content: "›";
}

.home-news .carousel-control-prev{
  left: auto;
  right: 4.9rem;
}

.home-news .carousel-control-next{
  right: 1.6rem;
}

.home-news .carousel-indicators{
  bottom: 1.8rem;
  justify-content: flex-start;
  margin-left: 4.5rem;
}

@media (max-width: 767.98px){
  .home-about-badge{
    right: .9rem;
    bottom: .9rem;
  }

  .home-about-pillars{
    grid-template-columns: 1fr;
  }

  .home-about-pillars > div + div{
    border-top: 1px solid #e4e9f0;
    border-left: 0;
  }

  .home-principal .portrait{
    position: relative;
    top: auto;
    margin-top: 1.5rem;
  }

  .home-principal .portrait img{
    height: 20rem !important;
  }

  .home-news-heading{
    align-items: flex-start;
    flex-direction: column;
  }

  .home-news .ann-card{
    min-height: 32rem;
    padding: 2rem 1.4rem 5rem;
  }

  .home-news .carousel-indicators{
    margin-left: 2rem;
  }
}

/* ======================================================================
   Unified modern navigation and inner-page visual system
   ====================================================================== */
.site-header{
  position: sticky;
  top: 0;
  z-index: 9999;
  width: 100%;
  background: rgba(6,27,70,.96) !important;
  border-bottom: 1px solid rgba(255,255,255,.09);
  box-shadow: 0 10px 30px rgba(8,36,101,.12);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.site-header .navbar,
body.is-home #siteHeader .navbar,
body.is-home #siteHeader.scrolled .navbar{
  background: transparent !important;
  border-bottom: 0 !important;
}

body.is-home #siteHeader,
body.is-home #siteHeader:not(.scrolled),
body.is-home #siteHeader.scrolled{
  background: rgba(6,27,70,.96) !important;
  border-bottom: 1px solid rgba(255,255,255,.09) !important;
  box-shadow: 0 10px 30px rgba(8,36,101,.12) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.site-header .navbar{
  min-height: 76px;
  padding: .65rem 0;
}

.site-header .logo-badge{
  width: 48px;
  height: 48px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(0,0,0,.2);
}

.site-header .main-nav{
  gap: .12rem;
}

.site-header .main-nav .nav-link,
body.is-home #siteHeader.scrolled .nav-link,
body.is-home #siteHeader.scrolled .dropdown-toggle-split.nav-link{
  padding: .55rem .62rem;
  color: rgba(255,255,255,.76) !important;
  font-size: .82rem;
  font-weight: 600;
  text-shadow: none;
  transition: color .18s ease, background .18s ease;
}

.site-header .main-nav .nav-link:hover,
.site-header .main-nav .nav-link:focus,
.site-header .main-nav .nav-link.active,
.site-header .main-nav .show > .nav-link,
body.is-home #siteHeader.scrolled .nav-link:hover,
body.is-home #siteHeader.scrolled .nav-link.active{
  color: #fff !important;
}

.site-header .main-nav > .nav-item > .nav-link:not(.dropdown-toggle-split)::after{
  content: "";
  position: absolute;
  right: .62rem;
  bottom: .28rem;
  left: .62rem;
  height: 2px;
  background: #FEC913;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .18s ease;
}

.site-header .main-nav > .nav-item > .nav-link:hover::after,
.site-header .main-nav > .nav-item > .nav-link.active::after{
  transform: scaleX(1);
}

.site-header .dropdown-menu{
  margin-top: .7rem;
  padding: .55rem;
  border: 1px solid rgba(8,36,101,.1);
  border-radius: 12px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 20px 45px rgba(8,36,101,.17);
}

.site-header .dropdown-item{
  padding: .65rem .8rem;
  border-radius: 7px;
  color: #35435a;
  font-size: .8rem;
  font-weight: 500;
}

.site-header .dropdown-item:hover,
.site-header .dropdown-item:focus{
  background: #eef3f9 !important;
  color: #082465;
}

.site-header .navbar-toggler{
  padding: .4rem;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 8px;
}

.site-header .navbar-toggler-icon,
body.is-home #siteHeader.scrolled .navbar-toggler-icon{
  filter: invert(1) brightness(2);
}

/* Common banner treatment used across inner pages */
.services-hero,
.services-hero--banner,
.services-hero--banner-about,
.fac-hero,
.contact-hero{
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.services-hero::after,
.fac-hero::after,
.contact-hero::after{
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: linear-gradient(90deg, #000, transparent 78%);
  mask-image: linear-gradient(90deg, #000, transparent 78%);
}

.services-hero .container,
.fac-hero .container,
.contact-hero .container{
  position: relative;
  z-index: 1;
}

.services-title,
.fac-title,
.contact-hero h1{
  margin-bottom: .7rem;
  color: #fff !important;
  font-size: clamp(2.4rem, 5vw, 4.8rem) !important;
  font-weight: 700 !important;
  line-height: 1.02;
  letter-spacing: -.05em !important;
  text-shadow:
    0 2px 3px rgba(0,0,0,.55),
    0 14px 38px rgba(0,0,0,.5);
}

.services-hero .services-title,
.services-hero--banner .services-title,
.services-hero--banner-about .services-title,
.fac-hero .fac-title,
.contact-hero h1{
  position: relative;
  z-index: 2;
  color: #fff !important;
}

.services-title::after,
.fac-title::after,
.contact-hero h1::after{
  content: "";
  display: block;
  width: 3rem;
  height: 3px;
  margin: 1rem auto 0;
  border-radius: 99px;
  background: #FEC913;
}

/* Consistent inner-page surfaces */
body:not(.is-home) main,
body:not(.is-home) > section:not(.services-hero):not(.fac-hero):not(.contact-hero){
  position: relative;
}

body:not(.is-home) .content-card,
body:not(.is-home) .service-card,
body:not(.is-home) .event-card,
body:not(.is-home) .gallery-card,
body:not(.is-home) .info-card,
body:not(.is-home) .card{
  border: 1px solid rgba(8,36,101,.09);
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 14px 38px rgba(8,36,101,.08);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

body:not(.is-home) .service-card:hover,
body:not(.is-home) .event-card:hover,
body:not(.is-home) .gallery-card:hover,
body:not(.is-home) .info-card:hover{
  border-color: rgba(8,36,101,.16);
  box-shadow: 0 22px 50px rgba(8,36,101,.13);
  transform: translateY(-4px);
}

body:not(.is-home) h2,
body:not(.is-home) h3,
body:not(.is-home) h4{
  color: #082465;
  letter-spacing: -.025em;
}

body:not(.is-home) p,
body:not(.is-home) li{
  line-height: 1.72;
}

body:not(.is-home) .btn-cta,
body:not(.is-home) .btn-brand,
body:not(.is-home) .gallery-btn{
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(8,36,101,.16);
}

body:not(.is-home) .form-control{
  min-height: 48px;
  border: 1px solid #dce3ec;
  border-radius: 9px;
  background: rgba(255,255,255,.96);
  box-shadow: none;
}

body:not(.is-home) textarea.form-control{
  min-height: 130px;
}

body:not(.is-home) .form-control:focus{
  border-color: #315c94;
  box-shadow: 0 0 0 3px rgba(49,92,148,.12);
}

body:not(.is-home) table{
  overflow: hidden;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(8,36,101,.07);
}

body:not(.is-home) table thead{
  background: #082465;
  color: #fff;
}

@media (max-width: 991.98px){
  .site-header .navbar-collapse{
    margin-top: .65rem;
    padding: .7rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 12px;
    background: #0a2c68;
    box-shadow: 0 18px 38px rgba(0,0,0,.2);
  }

  .site-header .navbar-nav{
    align-items: stretch !important;
  }

  .site-header .nav-item{
    flex-wrap: wrap;
  }

  .site-header .dropdown-menu{
    width: 100%;
    margin-top: .25rem;
  }

  .services-hero,
  .fac-hero,
  .contact-hero{
    min-height: 46svh !important;
    background-attachment: scroll !important;
  }
}

