/* ================================================================
   APPARENTLY ADHYASTHAA — NAVIGATION & HEADER (REBUILT)
   Desktop: Full horizontal nav with CSS dropdowns
   Mobile (<1100px): Hamburger slide-in panel
   ================================================================ */

/* ===== LANGUAGE BAR ===== */
.lang-bar {
  position: fixed; top: 0; left: 0; width: 100%; z-index: 1100;
  background: #1a0606; border-bottom: 1px solid rgba(201,168,76,.15);
  display: flex; align-items: center; gap: .75rem;
  padding: .3rem 1.25rem; font-family: var(--font-heading);
}
.lang-bar__label {
  font-size: .72rem; letter-spacing: .14em; text-transform: uppercase;
  color: rgba(240,230,200,.45); flex-shrink: 0; white-space: nowrap;
}
.lang-bar__btns { display: flex; align-items: center; gap: .4rem; flex-wrap: nowrap; overflow-x: auto; }
.lang-btn {
  background: transparent; border: 1px solid rgba(201,168,76,.25); color: rgba(240,230,200,.6);
  font-family: var(--font-heading); font-size: .72rem; letter-spacing: .08em;
  padding: .18rem .65rem; cursor: pointer; transition: all .22s; border-radius: 20px;
}
.lang-btn:hover { border-color: var(--gold); color: var(--gold); }
.lang-btn.active { background: var(--gold); border-color: var(--gold); color: var(--maroon-dark); font-weight: 600; }
/* Hide the ugly Google Translate bar that appears at top */
.goog-te-banner-frame, .skiptranslate { display: none !important; }
body { top: 0 !important; }
@media(max-width:600px) {
  .lang-bar { padding: .3rem .75rem; gap: .5rem; overflow: hidden; }
  .lang-bar__label { display: none; }
  .lang-bar__btns { overflow-x: auto; scrollbar-width: none; flex-shrink: 1; min-width: 0; }
  .lang-bar__btns::-webkit-scrollbar { display: none; }
  .lang-btn { font-size: .68rem; padding: .15rem .5rem; flex-shrink: 0; }
}

/* ===== NOTIFICATION BAR ===== */
.notif-bar {
  position: fixed; top: var(--lang-h, 30px); left: 0; width: 100%; z-index: 1000;
  height: var(--notif-h); background: var(--maroon-dark);
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 1.5rem; gap: 1rem; overflow: hidden;
  border-bottom: 1px solid rgba(201,168,76,0.25);
}
.notif-bar__marquee { flex: 1; overflow: hidden; }
.notif-bar__track {
  display: flex; gap: 4rem; width: max-content;
  animation: notif-scroll 35s linear infinite;
  font-family: var(--font-heading); font-size: 0.88rem;
  letter-spacing: 0.12em; color: var(--gold-bright);
}
@keyframes notif-scroll { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.notif-bar__track span { display:flex; align-items:center; gap:0.75rem; white-space:nowrap; }
.notif-bar__track span::before { content:'❋'; color:var(--gold); font-size:0.7rem; }
.notif-bar__actions { display:flex; align-items:center; gap:0.75rem; flex-shrink:0; }
.notif-bar__btn {
  padding:0.3rem 1rem; font-family:var(--font-heading); font-size:0.8rem;
  letter-spacing:0.12em; background:linear-gradient(135deg,var(--gold),var(--gold-bright));
  color:var(--maroon-dark); border:none; cursor:pointer; transition:all 0.3s; white-space:nowrap;
  font-weight: 600;
}
.notif-bar__btn:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(201,168,76,0.3); }
.notif-bar__close {
  background:none; border:none; color:rgba(240,230,200,0.6);
  font-size:1.1rem; cursor:pointer; padding:0.2rem 0.4rem; transition:color 0.3s; line-height:1;
}
.notif-bar__close:hover { color:var(--gold-pale); }

/* ===== HEADER ===== */
.site-header {
  position: fixed; top: calc(var(--lang-h, 30px) + var(--notif-h)); left: 0; width: 100%; z-index: 999;
  height: var(--header-h); background: #5b0f1a;
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(201,168,76,0.15);
  transition: all 0.4s var(--ease);
}
.site-header.scrolled { box-shadow: var(--shadow-sm); }
.site-header.hero-mode {
  background: #5b0f1a;
  border-bottom-color: rgba(201,168,76,0.1);
}
.site-header.hero-mode .dnav-link    { color: rgba(240,230,200,0.85); }
.site-header.hero-mode .hamburger span { background: var(--gold-pale); }

.header-inner {
  width: 100%; max-width: 1440px; margin: 0 auto;
  padding: 0 1.5rem; height: 100%;
  display: flex; align-items: center; gap: 1.5rem;
}

/* ===== LOGO ===== */
.site-logo { display:flex; align-items:center; text-decoration:none; flex-shrink:0; }
.logo-img {
  height: 56px; 
  width: auto;
  object-fit: contain;
  display: block;
  transition: transform 0.3s var(--ease);
}
.site-logo:hover .logo-img { transform: scale(1.05); }

/* ===================================================================
   DESKTOP NAVIGATION (visible ≥ 1100px)
   =================================================================== */
.desktop-nav {
  display: flex; align-items: center; flex: 1;
  height: 100%; min-width: 0;
}

.dnav-list {
  display: flex; align-items: stretch; height: 100%;
  list-style: none; margin: 0; padding: 0;
  flex-wrap: nowrap; width: 100%;
}

.dnav-item { position: relative; display: flex; align-items: stretch; }

/* ── ALL top-level links get the exact same look & size ── */
.dnav-link {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.3rem;
  padding: 0 1.1rem; height: var(--header-h);
  font-family: var(--font-heading); font-size: 1rem; font-weight: 500;
  letter-spacing: 0.05em; color: var(--gold-pale);
  white-space: nowrap; cursor: pointer;
  border-bottom: 3px solid transparent;
  border-top: 3px solid transparent;
  border-left: none; border-right: none;
  background: none; text-decoration: none;
  transition: color 0.25s, border-color 0.25s;
  line-height: 1;
}
.dnav-arrow { font-size: 0.65rem; color: var(--gold); flex-shrink: 0; transition: transform 0.3s; }

/* hover / active state (all items) */
.dnav-item:hover > .dnav-link,
.dnav-item:focus-within > .dnav-link,
.dnav-link.active {
  color: var(--gold); border-bottom-color: var(--gold);
}
.dnav-item:hover > .dnav-link .dnav-arrow { transform: rotate(180deg); }

/* hero-mode overrides */
.site-header.hero-mode .dnav-link    { color: rgba(240,230,200,0.88); }
.site-header.hero-mode .dnav-link:hover,
.site-header.hero-mode .dnav-item:hover > .dnav-link { color: var(--gold); border-bottom-color: var(--gold); }

/* ===== REGULAR DROPDOWN (not used now, kept for future) ===== */
.dnav-dropdown {
  position: absolute; top: 100%; left: 0;
  min-width: 210px; background: var(--cream);
  border: 1px solid var(--border-gold); border-top: 2px solid var(--gold);
  box-shadow: var(--shadow-lg);
  opacity: 0; visibility: hidden; transform: translateY(6px);
  transition: opacity 0.28s, transform 0.28s, visibility 0.28s; z-index: 998;
}
.dnav-item:hover > .dnav-dropdown { opacity: 1; visibility: visible; transform: translateY(0); }
.dnav-dropdown li { border-bottom: 1px solid rgba(201,168,76,0.1); }
.dnav-dropdown li:last-child { border-bottom: none; }
.dnav-dropdown a {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0.75rem 1.25rem; font-family: var(--font-heading);
  font-size: 0.9rem; color: var(--text-mid); transition: all 0.25s; white-space: nowrap;
}
.dnav-dropdown a:hover { background: var(--gold-light); color: var(--maroon); padding-left: 1.6rem; }

/* ===================================================================
   MORE ▾ BUTTON  (pushes to the right end)
   =================================================================== */
.dnav-more {
  position: relative; margin-left: auto; flex-shrink: 0;
  display: flex; align-items: stretch;
}

/* The More button inherits .dnav-link sizing — just adds a maroon pill style */
.dnav-more-btn.dnav-link {
  background: var(--maroon);
  color: var(--gold-pale) !important;
  border-bottom-color: transparent !important;
  padding: 0 1.6rem;
  gap: 0.4rem;
  font-size: 1rem;
}
.dnav-more-btn.dnav-link:hover,
.dnav-more.open .dnav-more-btn.dnav-link {
  background: var(--maroon-dark) !important;
  color: var(--gold) !important;
}
.dnav-more.open .dnav-more-btn.dnav-link .dnav-arrow { transform: rotate(180deg); }

/* ===================================================================
   MEGA PANEL  (opened by JS .open class + hover fallback)
   =================================================================== */
.dnav-mega {
  position: absolute; top: 100%; right: 0;
  width: min(820px, 95vw);
  background: var(--cream);
  border: 1px solid var(--border-gold); border-top: 3px solid var(--gold);
  box-shadow: var(--shadow-lg);
  opacity: 0; visibility: hidden; transform: translateY(8px);
  transition: opacity 0.3s, transform 0.3s, visibility 0.3s;
  z-index: 1000;
  pointer-events: none;
}
/* open via JS toggle */
.dnav-more.open .dnav-mega {
  opacity: 1; visibility: visible; transform: translateY(0);
  pointer-events: all;
}
/* keep it open while mouse is inside the panel */
.dnav-mega:hover { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: all; }

.dnav-mega__inner {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 0;
}

/* Each column */
.dnav-mega__col {
  padding: 1.75rem 1.4rem;
  border-right: 1px solid rgba(201,168,76,0.12);
}
.dnav-mega__col:last-child { border-right: none; }

/* Column section headings */
.dnav-mega__heading {
  display: block;
  font-family: var(--font-heading); font-size: 0.82rem; font-weight: 600;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--maroon); margin-bottom: 0.75rem;
  padding-bottom: 0.5rem; border-bottom: 1px solid rgba(201,168,76,0.22);
  transition: color 0.25s;
}
.dnav-mega__heading:hover { color: var(--gold); }

/* Column items */
.dnav-mega__col > ul { list-style: none; margin-bottom: 0.5rem; }
.dnav-mega__col > ul li { margin-bottom: 0.2rem; }
.dnav-mega__col > ul a {
  font-family: var(--font-heading); font-size: 1rem;
  color: var(--text-mid); display: flex; align-items: center; gap: 0.35rem;
  padding: 0.35rem 0; transition: all 0.22s;
}
.dnav-mega__col > ul a::before { content: '›'; color: var(--gold); font-size: 0.9rem; flex-shrink: 0; }
.dnav-mega__col > ul a:hover { color: var(--maroon); padding-left: 0.4rem; }

/* Sub-group (Adhyasthaa videos inside Gallery) */
.dnav-mega__sub-group { margin-top: 0.6rem; }
.dnav-mega__sub-label {
  font-family: var(--font-heading); font-size: 0.8rem; font-style: italic;
  color: var(--text-light); display: block; margin-bottom: 0.25rem; padding-left: 0.75rem;
}
.dnav-mega__sub-group ul a { padding-left: 0.75rem; font-size: 0.86rem; }
.dnav-mega__sub-group ul a:hover { padding-left: 1.1rem; }

/* Responsive mega: 2 cols on narrower desktops */
@media (max-width: 1380px) {
  .dnav-mega { width: min(640px, 95vw); }
  .dnav-mega__inner { grid-template-columns: repeat(2, 1fr); }
  .dnav-mega__col { border-bottom: 1px solid rgba(201,168,76,0.1); }
  .dnav-mega__col:nth-child(2), .dnav-mega__col:nth-child(4) { border-right: none; }
}

/* ===================================================================
   HAMBURGER (mobile only — hidden on desktop)
   =================================================================== */
.hamburger {
  display: none; /* hidden on desktop */
  width: 42px; height: 42px; flex-direction: column;
  align-items: center; justify-content: center; gap: 5px;
  cursor: pointer; border: 1px solid var(--border-gold);
  background: transparent; transition: all 0.3s; flex-shrink: 0;
  margin-left: auto;
}
.hamburger:hover { border-color: var(--gold); background: rgba(201,168,76,0.08); }
.hamburger span {
  display: block; width: 20px; height: 1.5px; background: var(--gold-pale);
  transition: all 0.35s var(--ease); transform-origin: center;
}
.hamburger.open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.hamburger.open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* ===================================================================
   MOBILE NAV OVERLAY (visible only when hamburger shown)
   =================================================================== */
.nav-overlay {
  position: fixed; inset: 0; z-index: 998;
  pointer-events: none; visibility: hidden;
}
.nav-overlay.open { pointer-events: all; visibility: visible; }
.nav-overlay__backdrop {
  position: absolute; inset: 0; background: rgba(30,8,8,0.65);
  opacity: 0; transition: opacity 0.4s var(--ease); cursor: pointer;
  backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
}
.nav-overlay.open .nav-overlay__backdrop { opacity: 1; }

.nav-panel {
  position: relative; width: min(420px, 92vw); margin-left: auto;
  background: var(--maroon-dark);
  background-image: radial-gradient(ellipse at 80% 10%, rgba(201,168,76,0.08) 0%, transparent 60%);
  height: 100%; overflow-y: auto; display: flex; flex-direction: column;
  transform: translateX(100%); transition: transform 0.5s var(--ease);
  border-left: 1px solid rgba(201,168,76,0.2); scrollbar-width: none;
}
.nav-panel::-webkit-scrollbar { display: none; }
.nav-overlay.open .nav-panel { transform: translateX(0); }

.nav-panel__head {
  padding: 1.5rem 2rem 1.25rem;
  border-bottom: 1px solid rgba(201,168,76,0.15); flex-shrink: 0;
}
.nav-panel__logo-img {
  max-width: 180px;
  height: auto;
  display: block;
  margin-bottom: 0.5rem;
}

.nav-list { padding: 0.75rem 0 2rem; flex: 1; }
.nav-item { border-bottom: 1px solid rgba(201,168,76,0.09); }
.mob-nav-link {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0.9rem 2rem; font-family: var(--font-heading); font-size: 1rem;
  font-weight: 500; letter-spacing: 0.04em; color: rgba(240,230,200,0.88);
  transition: all 0.3s; cursor: pointer; gap: 1rem; background: none; border: none; width: 100%; text-align: left;
}
.mob-nav-link:hover, .mob-nav-link.active { color: var(--gold); padding-left: 2.4rem; }
.mob-arrow { font-size: 0.7rem; color: var(--gold); opacity: 0.7; flex-shrink: 0; transition: transform 0.35s; }
.nav-item.mob-open .mob-arrow { transform: rotate(90deg); opacity: 1; }

.mob-sub { display: none; background: rgba(0,0,0,0.18); border-top: 1px solid rgba(201,168,76,0.09); }
.nav-item.mob-open .mob-sub { display: block; }
.mob-sub a {
  display: flex; align-items: center; gap: 0.6rem;
  padding: 0.65rem 2.5rem; font-family: var(--font-heading); font-size: 0.93rem;
  color: rgba(240,230,200,0.62); transition: all 0.3s;
}
.mob-sub a::before { content: '–'; color: var(--gold); font-size: 0.75rem; }
.mob-sub a:hover { color: var(--gold); padding-left: 3rem; }

.mob-subsub { border-top: 1px solid rgba(201,168,76,0.07); }
.mob-subsub a { padding-left: 3.5rem; font-size: 0.88rem; opacity: 0.85; }
.mob-subsub a:hover { padding-left: 4rem; }

.nav-panel__foot {
  padding: 1.25rem 2rem; border-top: 1px solid rgba(201,168,76,0.15);
  display: flex; align-items: center; gap: 0.6rem; flex-shrink: 0;
}
.nav-panel__social a {
  width: 32px; height: 32px; border: 1px solid rgba(201,168,76,0.3);
  display: flex; align-items: center; justify-content: center;
  color: var(--gold); font-size: 0.8rem; transition: all 0.3s; font-family: sans-serif;
}
.nav-panel__social a:hover { background: var(--gold); color: var(--maroon-dark); }
.nav-panel__social { display: flex; gap: 0.5rem; }

/* ===================================================================
   RESPONSIVE BREAKPOINTS
   =================================================================== */
@media (max-width: 1220px) {
  /* Switch to hamburger */
  .desktop-nav  { display: none; }
  .hamburger    { display: flex; }
}

/* Mobile logo tweaks */
@media (max-width: 480px) {
  .logo-img { height: 44px; }
}

/* ===================================================================
   FOOTER
   =================================================================== */
.site-footer {
  background: var(--maroon-dark);
  background-image: radial-gradient(ellipse at 20% 100%, rgba(201,168,76,0.06) 0%, transparent 60%);
  padding: 5rem 0 0; border-top: 1px solid rgba(201,168,76,0.2);
}
.footer-top {
  display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 3rem; padding-bottom: 3rem; border-bottom: 1px solid rgba(201,168,76,0.15);
}
.footer-logo-img {
  max-width: 240px;
  height: auto;
  display: block;
  margin-bottom: 1.5rem;
}
.footer-brand p   { font-size:0.92rem; color:rgba(240,230,200,0.5); line-height:1.8; }
.footer-col h5    { font-family:var(--font-heading); font-size:0.75rem; letter-spacing:0.28em; text-transform:uppercase; color:var(--gold); margin-bottom:1.2rem; font-weight:600; }
.footer-col ul li { margin-bottom:0.55rem; }
.footer-col ul a  { font-family:var(--font-heading); font-size:0.93rem; color:rgba(240,230,200,0.55); transition:all 0.3s; }
.footer-col ul a:hover { color:var(--gold); padding-left:0.4rem; }
.footer-social    { display:flex; gap:0.65rem; margin-top:1.5rem; }
.footer-social a  {
  width:34px; height:34px; border:1px solid rgba(201,168,76,0.25);
  display:flex; align-items:center; justify-content:center;
  color:rgba(240,230,200,0.5); font-size:0.78rem; font-family:sans-serif; transition:all 0.3s;
}
.footer-social a:hover { background:var(--gold); color:var(--maroon-dark); border-color:var(--gold); }
.footer-bottom {
  padding:1.5rem 0; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem;
}
.footer-bottom p   { font-family:var(--font-heading); font-size:0.8rem; color:rgba(240,230,200,0.32); letter-spacing:0.05em; }
.footer-bottom a   { color:var(--gold); transition:opacity 0.3s; }
.footer-bottom a:hover { opacity:0.8; }

@media (max-width:1024px) { .footer-top { grid-template-columns:1fr 1fr; } }
@media (max-width:600px)  { .footer-top { grid-template-columns:1fr; } .footer-bottom { flex-direction:column; text-align:center; } }
