/* ---------- Ratna Matrimony Mega Menu (city / community pages) ---------- */
:root{
  --mm-accent:#9b2c1c; --mm-accent-dark:#7a2115;
  --mm-bg:#fdf9f4; --mm-line:#eadfd2; --mm-active:#f3e7d8;
}
.header{ position:relative; }
.nav-menu .mm-item{ position:static; display:flex; align-items:center; }

/* trigger (looks like the other nav links) */
.nav-menu .mm-toggle{
  display:inline-flex; align-items:center; gap:.5rem;
  background:transparent; border:0; cursor:pointer;
  color:#900; font-weight:600; font-size:16px; font-family:inherit;
  padding:8px 16px; border-radius:6px; text-transform:uppercase;
}
.nav-menu .mm-toggle:hover,
.nav-menu .mm-item.open .mm-toggle{ background:var(--mm-accent-dark); color:#fff; }
.nav-menu .mm-toggle i{ font-size:.65rem; transition:transform .2s; }
.nav-menu .mm-item.open .mm-toggle i{ transform:rotate(180deg); }

/* panel */
.nav-menu .mm-menu{
  display:none; position:absolute; top:100%; left:50%; transform:translateX(-50%);
  width:min(1000px,96vw); background:var(--mm-bg); border-radius:10px;
  box-shadow:0 18px 45px rgba(60,20,10,.18); overflow:hidden; z-index:1060;
  text-align:left;
}
.nav-menu .mm-item.open .mm-menu{ display:grid; grid-template-columns:290px 1fr; }

.mm-tabs{ padding:.75rem; border-right:1px solid var(--mm-line); }
.mm-tab{
  width:100%; display:flex; align-items:center; gap:.9rem;
  padding:.85rem 1rem; border:0; border-radius:8px;
  background:transparent; color:#3b2a22; font:inherit; font-size:.95rem; text-align:left; cursor:pointer;
}
.mm-tab .mm-ico{ width:22px; text-align:center; font-size:1.1rem; color:var(--mm-accent); }
.mm-tab .mm-chev{ margin-left:auto; font-size:.7rem; color:#6b5a50; }
.mm-tab:hover,.mm-tab.active{ background:var(--mm-active); color:var(--mm-accent); }
.mm-tab.active{ font-weight:500; }
.mm-tab:focus-visible{ outline:2px solid var(--mm-accent); outline-offset:-2px; }

.mm-panels{ padding:1.5rem 2rem 1.8rem; min-height:330px; }
.mm-panel{ display:none; }
.mm-panel.active{ display:block; }
.mm-head{ display:flex; align-items:center; gap:1rem; padding-bottom:1rem; margin-bottom:1.1rem; border-bottom:1px solid var(--mm-line); }
.mm-head > i{ font-size:1.6rem; color:var(--mm-accent); }
.mm-head h3{ margin:0; font-family:'Playfair Display',serif; font-weight:700; font-size:1.55rem; color:var(--mm-accent); }
.mm-head small{ font-family:'Playfair Display',serif; font-style:italic; color:#7a6a60; }

.mm-links{ display:grid; grid-template-columns:1fr 1fr; }
.mm-links ul{ list-style:none; margin:0; padding:0 1.5rem; }
.mm-links ul:first-child{ padding-left:0; }
.mm-links ul + ul{ border-left:1px solid var(--mm-line); }
.nav-menu .mm-links a{
  display:block; width:auto; padding:.6rem 0; text-align:left;
  color:#2c1810; font-weight:400; font-size:.98rem; text-decoration:none;
  transition:color .15s, padding-left .15s;
}
.nav-menu .mm-links a::after{ display:none; }
.nav-menu .mm-links a:hover,.nav-menu .mm-links a:focus-visible{ color:var(--mm-accent); padding-left:.3rem; }

/* mobile */
@media (max-width:768px){
  .nav-menu{ max-height:calc(100vh - 120px); overflow-y:auto; }
  .nav-menu .mm-item{ display:block; width:100%; }
  .nav-menu .mm-toggle{ width:calc(100% - 20px); justify-content:space-between; margin:.4rem 10px; font-size:15px; }
  .nav-menu .mm-menu{ position:static; transform:none; width:calc(100% - 20px); margin:0 10px; box-shadow:none; border:1px solid var(--mm-line); }
  .nav-menu .mm-item.open .mm-menu{ display:block; }
  .mm-tabs{ border-right:0; border-bottom:1px solid var(--mm-line); }
  .mm-panels{ padding:1rem 1.25rem 1.25rem; min-height:0; }
  .mm-head small{ display:none; }
  .mm-head h3{ font-size:1.3rem; }
}
@media (max-width:575.98px){
  .mm-links{ grid-template-columns:1fr; }
  .mm-links ul{ padding:0; }
  .mm-links ul + ul{ border-left:0; }
}
@media (prefers-reduced-motion:reduce){ .mm-toggle i,.mm-links a{ transition:none; } }

/* Location panel: show all locations in 4 columns */
#panel-location .mm-links{ grid-template-columns:repeat(4,1fr); }
@media (max-width:1100px){
  #panel-location .mm-links{ grid-template-columns:repeat(2,1fr); }
  #panel-location .mm-links ul:nth-child(3){ border-left:0; padding-left:0; }
  #panel-location .mm-links ul:nth-child(n+3){ margin-top:.5rem; }
}
@media (max-width:575.98px){
  #panel-location .mm-links{ grid-template-columns:1fr; }
  #panel-location .mm-links ul + ul{ border-left:0; padding:0; }
}

#panel-location .mm-viewall,.nav-menu #panel-location .mm-viewall,#panel-community .mm-viewall,.nav-menu #panel-community .mm-viewall{ display:inline-block; margin-top:1rem; font-weight:600; color:var(--mm-accent,#a12a1a); text-decoration:none; }
#panel-community .mm-viewall i,#panel-location .mm-viewall i{ font-size:.8em; margin-left:.25rem; transition:transform .2s; }
#panel-community .mm-viewall:hover i,#panel-location .mm-viewall:hover i{ transform:translateX(3px); }