/* Scoped global header theme. With header--diwali absent, the site's original CSS is authoritative. */
.header--diwali,
.header--diwali .navbar,
.header--diwali .navbar.header-sticky,
.header--diwali.is-sticky,
.header--diwali .is-sticky { background-color: #00183f !important; }
.header--diwali { background-image: url('../images/diwali/diwali-navbar-background.webp?v=20261103') !important; background-position: center center !important; background-size: cover !important; background-repeat: no-repeat !important; overflow: visible !important; position: relative; z-index: 10000; height:76px; }
.header--diwali .navbar { min-height:76px; height:76px; padding-top:0; padding-bottom:0; background-image:none !important; overflow:visible !important; }
.header--diwali .container-fluid { min-height:76px; height:76px; display:flex; align-items:center; }
.header--diwali .navbar-brand { display:inline-flex; align-items:center; height:var(--diwali-header-height, 76px); padding:6px 0; }
.header--diwali .navbar-brand img { display:block; width:auto; height:auto; max-height:54px; max-width:190px; object-fit:contain; background:transparent !important; }
.header--diwali .navbar .nav-link,
.header--diwali .navbar .navbar-toggler,
.header--diwali .navbar .navbar-toggler i { color: #fff !important; }
.header--diwali .navbar .navbar-nav .nav-link { color:#fff !important; text-shadow:0 1px 2px #00112e; }
.header--diwali .navbar .nav-link:hover,
.header--diwali .navbar .nav-link:focus { color: #ffd36a; }
.header--diwali .navbar .dropdown-menu { z-index: 10001 !important; top:100%; }
.header--diwali .navbar-right { margin-left:auto; }
.header--diwali .navbar .dropdown-menu { background:#fff !important; box-shadow:0 8px 18px #00122e66; }
.header--diwali .navbar .dropdown-menu .dropdown-item { color:#001935 !important; }
.header--diwali .navbar-brand, .header--diwali .navbar-nav, .header--diwali .navbar-toggler, .header--diwali a, .header--diwali button { position:relative; z-index:1002; pointer-events:auto; }
.header--diwali .diwali-greeting { display:inline-flex; align-items:center; gap:5px; margin-left:10px; color:#ffd36a; font-family:Georgia,serif; font-size:15px; white-space:nowrap; }
.header--diwali .diwali-greeting__text { color:#ffd36a; text-shadow:0 0 5px #ffb300,0 0 14px #ff7b00; animation:diwali-header-shimmer 5s ease-in-out infinite; }
.header--diwali .diwali-greeting__ornament,.header--diwali .diwali-greeting__glint { color:#fff0b0; }
.header--diwali .navbar .btn-primary { color:#fff!important; }
@media (max-width:991px) {
  .header--diwali, .header--diwali .navbar, .header--diwali .container-fluid { min-height:76px; height:76px; }
  .header--diwali .navbar-collapse { background:#fff; z-index:1005; }
  .header--diwali .navbar-collapse .nav-link { color:#001935; }
  .header--diwali .diwali-greeting { font-size:13px; }
}
@media (max-width:575px) {
  .header--diwali, .header--diwali .navbar, .header--diwali .container-fluid { min-height:70px; height:70px; }
  .header--diwali { background-position:left center; }
  .header--diwali .diwali-greeting { max-width:120px; overflow:hidden; }
  .header--diwali .diwali-greeting__ornament,.header--diwali .diwali-greeting__glint,.header--diwali .diwali-greeting__lamp { display:none; }
}
@keyframes diwali-header-shimmer { 0%,65%,100% { filter:brightness(1); } 80% { filter:brightness(1.35); } }
/* Paint the artwork on the visible navigation surface, including sticky mode. */
.header.header--diwali .navbar.header-sticky {
  background: #00183f url('../images/diwali/midnight-skyline-header.png') center bottom / cover no-repeat !important;
}
.header.header--diwali .navbar > .container-fluid { background:transparent !important; overflow:visible !important; }
.header.header--diwali .diwali-greeting { position:relative; left:auto; top:auto; transform:none; }
@media (max-width:991px) {
  .header.header--diwali .navbar.header-sticky { background-size:auto 100% !important; }
  .header.header--diwali .navbar-collapse .navbar-nav .nav-link:not(.btn) { color:#001935 !important; text-shadow:none; }
}
/* Keep the public header visible while preserving its space above the hero. */
.header.header-transparent:has(.header-sticky) { position:sticky !important; top:0 !important; z-index:10000; }
.header .navbar.header-sticky,
.header .navbar.header-sticky.is-sticky { position:relative !important; top:0 !important; width:100%; animation:none; }

/* The brand, greeting and menu share one vertically centered row. */
.header--diwali .ic-header-brand-group { display:flex; align-items:center; gap:18px; flex-shrink:0; height:100%; }
.header--diwali .navbar .navbar-brand { flex:0 0 auto; width:auto; min-width:0; height:auto; margin:0; padding:0; line-height:1; }
.header--diwali .navbar-brand img { height:58px; max-height:58px; width:auto; }
.header--diwali .navbar-right, .header--diwali .navbar-collapse { align-self:center; }
.header--diwali .navbar-nav { align-items:center; }
.header--diwali .ic-header-greeting { display:flex; flex-direction:column; align-items:center; justify-content:center; width:180px; flex:none; pointer-events:none; }
.ic-header-greeting-text { font-family:Georgia,'Times New Roman',serif; font-style:italic; font-weight:700; font-size:26px; line-height:1.15; white-space:nowrap; color:#ffe28a; }
.ic-header-diya { display:block; width:174px; height:30px; overflow:visible; }
.ic-header-greeting--glow .ic-header-greeting-text { background:linear-gradient(110deg,#ffc54b 15%,#ffe49b 35%,#fffce2 48%,#ffd066 62%,#ffe49b 85%); background-size:220% 100%; background-clip:text; -webkit-background-clip:text; color:transparent; filter:drop-shadow(0 0 3px #ffa600); animation:ic-gold-shine 5s ease-in-out infinite; }
.ic-header-greeting--glow .ic-header-diya { filter:drop-shadow(0 0 4px #ffb300); }
.ic-header-greeting--glow .ic-header-diya-flame { transform-origin:100px 22px; animation:ic-diya-flame 2.2s ease-in-out infinite alternate; }
.ic-header-greeting--glow .ic-header-sparkle { animation:ic-gold-sparkle 4s ease-in-out infinite; }
@keyframes ic-gold-shine { 0%,20% { background-position:100% 0; } 80%,100% { background-position:0 0; } }
@keyframes ic-diya-flame { from { transform:rotate(-5deg) scaleY(.92); } to { transform:rotate(5deg) scaleY(1.05); } }
@keyframes ic-gold-sparkle { 0%,100% { opacity:.35; } 50% { opacity:1; } }
@media (min-width:992px) {
  .header--diwali .navbar > .container-fluid { justify-content:flex-start; gap:28px; max-height:none; }
  .header--diwali .navbar-right { flex:1 1 auto; min-width:0; margin-left:0; }
  .header--diwali .navbar-collapse { width:100%; }
  .header--diwali .navbar .navbar-nav { width:100%; margin:0; padding:0; justify-content:space-between; gap:10px; flex-wrap:nowrap; }
  .header--diwali .navbar .navbar-nav > li { flex:0 0 auto; }
  .header--diwali .navbar .navbar-nav > li > .nav-link { padding-left:4px; padding-right:4px; white-space:nowrap; }
  .header--diwali .navbar .navbar-nav > li > .btn-primary { padding-left:16px; padding-right:16px; }
}
@media (min-width:992px) and (max-width:1250px) {
  .header--diwali .navbar > .container-fluid { gap:18px; padding-left:24px; padding-right:24px; }
  .header--diwali .navbar .navbar-nav { gap:6px; }
  .header--diwali .ic-header-brand-group { gap:12px; }
  .header--diwali .ic-header-greeting { width:150px; }
  .header--diwali .ic-header-greeting-text { font-size:22px; }
  .header--diwali .ic-header-diya { width:145px; }
  .header--diwali .navbar .navbar-nav > li > .nav-link { padding-left:6px; padding-right:6px; font-size:13px; }
}
@media (max-width:991px) {
  .header--diwali .navbar-nav { align-items:stretch; }
  .header--diwali .ic-header-brand-group { gap:12px; }
  .header--diwali .navbar .ntc { right:auto; margin-left:auto; padding:0; }
}
@media (max-width:575px) {
  .header--diwali .navbar > .container-fluid { padding-left:12px; padding-right:12px; flex-wrap:nowrap; }
  .header--diwali .navbar-brand img { height:46px; }
  .header--diwali .ic-header-brand-group { gap:8px; }
  .header--diwali .ic-header-greeting { width:120px; }
  .header--diwali .ic-header-greeting-text { font-size:16px; }
  .header--diwali .ic-header-diya { width:112px; height:23px; }
  .header--diwali .navbar > .container-fluid > button { padding:6px; }
}
@media (max-width:380px) {
  .header--diwali .navbar > .container-fluid { padding-left:8px; padding-right:8px; }
  .header--diwali .ic-header-brand-group { gap:8px; min-width:0; }
  .header--diwali .navbar-brand img { height:40px; }
  .header--diwali .ic-header-greeting { width:106px; }
  .header--diwali .ic-header-greeting-text { font-size:14px; }
  .header--diwali .ic-header-diya { width:100px; height:22px; }
  .header--diwali .navbar .ntc { margin-left:auto; }
}
@media (max-width:359px) {
  .header--diwali .ic-header-greeting { display:none; }
}
@media (prefers-reduced-motion:reduce) {
  .ic-header-greeting--glow .ic-header-greeting-text, .ic-header-greeting--glow .ic-header-diya-flame, .ic-header-greeting--glow .ic-header-sparkle { animation:none; }
}

/* Festive dropdown panels retain the existing links and Bootstrap behavior. */
.header.header--diwali .navbar .dropdown-menu {
  background:linear-gradient(145deg,#071b3e,#10365b) !important;
  border:1px solid #b99046 !important;
  border-top:3px solid #efc773 !important;
  border-radius:12px;
  padding:8px;
  min-width:220px;
  box-shadow:0 14px 32px #00112855 !important;
  max-height:calc(100dvh - 110px);
  overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:#b99046 #071b3e;
}
.header.header--diwali .navbar .dropdown-menu > li { display:block; border:0; }
.header.header--diwali .navbar .dropdown-menu > li + li { border-top:1px solid #ffffff12; }
.header.header--diwali .navbar .dropdown-menu > li > a {
  display:flex; align-items:center; gap:10px;
  padding:10px 12px !important; min-height:42px;
  border:0; border-radius:6px; margin:2px 0;
  background:transparent !important; color:#f4f6fc !important;
  font-size:14px; font-weight:500; line-height:1.4;
  text-shadow:none; white-space:nowrap;
  transition:background-color .15s,color .15s;
}
.header.header--diwali .navbar .dropdown-menu > li > a::before {
  content:'✧'; flex:none; color:#efc773; font-size:14px;
}
.header.header--diwali .navbar .dropdown-menu > li > a:hover,
.header.header--diwali .navbar .dropdown-menu > li > a:focus-visible {
  background:#f4d58d !important; color:#071b3e !important;
}
.header.header--diwali .navbar .dropdown-menu > li > a:hover::before,
.header.header--diwali .navbar .dropdown-menu > li > a:focus-visible::before { color:#73500b; }
.header.header--diwali .navbar .dropdown-menu > li > a:focus-visible { outline:2px solid #fff0ba !important; outline-offset:1px; }
@media(max-width:991px) {
  .header.header--diwali .navbar .dropdown-menu { min-width:0; margin:4px 0 8px; padding:6px; }
  .header.header--diwali .navbar .navbar-collapse .dropdown-menu > li > a.nav-link:not(.btn) { color:#f4f6fc !important; }
}
