/*
Mahamaya Mandir theme
Palette: deep maroon + gold + cream, matching the reference temple site look
*/

:root{
  --mm-maroon-dark:#5c1420;
  --mm-maroon:#7a1f1f;
  --mm-maroon-light:#8f2a2a;
  --mm-gold:#d4a017;
  --mm-gold-light:#e8b45a;
  --mm-gold-pale:#f7d488;
  --mm-cream:#fdf6d8;
  --mm-cream-light:#fffbea;
  --mm-text-dark:#3a1409;
  --font-hindi-head:'Noto Serif Devanagari', serif;
  --font-hindi-body:'Hind', sans-serif;
}

.font-hindi{
  font-family: var(--font-hindi-head);
}

/* ===================== HEADER ===================== */
.mm-header{
  background: linear-gradient(90deg, #430e14 0%, #7a2420 55%, #a3392b 100%);
  padding: 12px 0;
  position: sticky;
  top: 0;
  z-index: 50;
  box-shadow: 0 2px 15px rgba(0,0,0,.25);
}
.mm-header .navbar{
  background: transparent !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
.mm-header .navbar-brand{
  display:flex;
  align-items:center;
  gap:12px;
}
.mm-header .navbar-brand img{
  width:48px;
  height:48px;
}
.mm-header .navbar-brand .mm-brand-text{
  font-family: 'Poppins', sans-serif;
  line-height:1.35em;
  font-weight:700;
  font-size:16px;
  letter-spacing:.5px;
  color: var(--mm-cream);
  text-transform:uppercase;
}
.mm-header .navbar-brand .mm-brand-text small{
  display:block;
  font-size:14px;
  letter-spacing:1px;
  color: var(--mm-gold-light);
  font-family: 'Poppins', sans-serif;
  font-weight:600;
}
.mm-nav-pill{
  background: rgba(0,0,0,.18);
  border-radius: 50px;
  padding: 4px 6px;
}
.mm-header .nav-link{
  font-family: var(--font-hindi-body);
  color: var(--mm-cream) !important;
  font-weight:500;
  padding: 9px 16px !important;
  border-radius: 30px;
  transition: .25s;
}
.mm-header .nav-link:hover{
  color: var(--mm-gold-light) !important;
}
.mm-header .nav-link.active{
  color: var(--mm-gold-light) !important;
  box-shadow: inset 0 -2px 0 var(--mm-gold-light);
}
.mm-header .nav-link-cta{
  background: var(--mm-gold);
  color: var(--mm-maroon-dark) !important;
  font-weight:600;
}
.mm-header .nav-link-cta:hover{
  background: var(--mm-gold-light);
  color: var(--mm-maroon-dark) !important;
}
.mm-header .nav-link-cta.active{
  box-shadow:none;
}
.mm-lang-toggle{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border: 1px solid rgba(253,246,216,.4);
  color: var(--mm-cream);
  font-family: var(--font-hindi-body);
  font-weight:600;
  font-size:14px;
  padding: 8px 18px;
  border-radius: 50px;
  transition:.25s;
}
.mm-lang-toggle:hover{
  background: rgba(253,246,216,.12);
  color: var(--mm-gold-pale);
}
.mm-header .navbar-toggler{
  border-color: var(--mm-gold-light);
  padding: 6px 10px;
}
.mm-header .navbar-toggler-icon{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23e8b45a' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

@media (max-width: 991px){
  .mm-header .navbar-nav{
    margin-top:0 !important;
  }
  .mm-header .navbar-collapse{
    background: var(--mm-maroon-dark);
    margin-top: 14px;
    border-radius: 14px;
    padding: 8px 18px 20px;
    box-shadow: 0 10px 25px rgba(0,0,0,.3);
  }
  .mm-nav-pill{
    background: transparent !important;
    padding: 0 !important;
  }
  .mm-header .navbar-nav{
    flex-direction: column;
  }
  .mm-header .nav-link{
    padding: 15px 4px !important;
    border-bottom: 1px solid rgba(232,180,90,.15);
    font-size: 16px;
  }
  .mm-header .nav-link.active{
    box-shadow:none;
  }
  .mm-header .navbar-nav:last-of-type li:last-child .nav-link,
  .mm-header .navbar-nav:last-of-type{
    border-bottom: none;
  }
  .mm-header .navbar-nav:last-of-type .nav-item:not(:last-child) .nav-link{
    border-bottom: 1px solid rgba(232,180,90,.15);
  }
  .mm-header .nav-link-cta{
    border-bottom: none !important;
    border-radius: 10px;
    text-align:center;
    margin-top: 10px;
    padding: 13px 4px !important;
  }
  .mm-lang-toggle{
    display:flex;
    justify-content:center;
    margin-top: 14px;
  }
}

/* ===================== HERO ===================== */
.mm-hero{
  position:relative;
  min-height: 560px;
  display:flex;
  align-items:center;
  background-position:center;
  background-size:cover;
  overflow:hidden;
}
.mm-hero-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(92,20,32,.55) 0%, rgba(92,20,32,.85) 100%);
}
.mm-hero-content{
  position:relative;
  z-index:2;
  text-align:center;
  width:100%;
  padding: 60px 15px;
}
.mm-hero-content h1{
  font-family: var(--font-hindi-head);
  color: var(--mm-gold-pale);
  font-size: 46px;
  font-weight:700;
  text-shadow: 0 2px 10px rgba(0,0,0,.4);
}
.mm-hero-content p{
  font-family: var(--font-hindi-body);
  color: var(--mm-cream-light);
  font-size:18px;
  max-width:720px;
  margin: 18px auto 0;
}
.mm-hero-sm{
  min-height: 320px;
}
.mm-hero-sm .mm-hero-content h1{
  font-size:36px;
}
.mm-hero-wrap .carousel-indicators{
  z-index:3;
  margin-bottom: 14px;
}
.mm-hero-wrap .carousel-indicators [data-bs-target]{
  width:9px;
  height:9px;
  border-radius:50%;
  border:none;
  background: rgba(255,255,255,.45);
  margin:0 4px;
  opacity:1;
}
.mm-hero-wrap .carousel-indicators [data-bs-target].active{
  background: var(--mm-gold-light);
}

/* ===================== BUTTONS ===================== */
.btn-mm-solid{
  display:inline-block;
  font-family: var(--font-hindi-body);
  background: var(--mm-gold);
  color: var(--mm-maroon-dark) !important;
  font-weight:600;
  padding: 13px 32px;
  border-radius: 50px;
  transition:.25s;
  border:2px solid var(--mm-gold);
}
.btn-mm-solid:hover{
  background: transparent;
  color: var(--mm-gold-pale) !important;
}
.btn-mm-outline{
  display:inline-block;
  font-family: var(--font-hindi-body);
  background: transparent;
  color: var(--mm-cream) !important;
  font-weight:600;
  padding: 13px 32px;
  border-radius: 50px;
  border: 2px solid var(--mm-cream);
  transition:.25s;
}
.btn-mm-outline:hover{
  background: var(--mm-cream);
  color: var(--mm-maroon-dark) !important;
}
.btn-mm-link{
  font-family: var(--font-hindi-body);
  color: var(--mm-maroon);
  font-weight:600;
  border-bottom: 2px solid var(--mm-gold);
  padding-bottom: 2px;
}
.btn-mm-link:hover{
  color: var(--mm-gold);
}

/* ===================== SECTION HEADINGS ===================== */
.mm-section{
  padding: 80px 0;
}
.mm-section.mm-bg-cream{
  background: var(--mm-cream);
}
.mm-section-head{
  text-align:center;
  margin-bottom: 50px;
}
.mm-section-head h2{
  font-family: var(--font-hindi-head);
  color: var(--mm-maroon);
  font-size: 36px;
  font-weight:700;
}
.mm-section-head p{
  font-family: var(--font-hindi-body);
  color: #8a6d4a;
  max-width:620px;
  margin: 12px auto 0;
}
.mm-divider{
  width:70px;
  height:2px;
  background: var(--mm-gold);
  margin: 18px auto 0;
  position:relative;
}
.mm-divider:before{
  content:"◈";
  position:absolute;
  top:-10px;
  left:50%;
  transform:translateX(-50%);
  color: var(--mm-gold);
  background: var(--mm-cream);
  padding:0 8px;
  font-size:14px;
}

/* ===================== HERITAGE ===================== */
.mm-heritage-text{
  background: var(--mm-cream-light);
  border-radius: 16px;
  padding: 30px;
  box-shadow: 0 10px 30px rgba(122,31,31,.08);
  font-family: var(--font-hindi-body);
  color: #5a3f28;
  line-height:1.9em;
}
.mm-heritage-text p + p{
  margin-top:14px;
}
.mm-polaroid{
  background:#fff;
  padding: 14px 14px 50px;
  border-radius: 6px;
  box-shadow: 0 15px 35px rgba(0,0,0,.18);
  transform: rotate(1.2deg);
  position:relative;
  max-width: 420px;
  margin: 0 auto;
}
.mm-polaroid img{
  width:100%;
  border-radius:2px;
  display:block;
}
.mm-polaroid-tag{
  position:absolute;
  bottom: 14px;
  right: 18px;
  background: var(--mm-maroon);
  color: var(--mm-gold-pale);
  font-family: var(--font-hindi-body);
  font-size:13px;
  padding: 6px 16px;
  border-radius: 30px;
  box-shadow: 0 4px 10px rgba(0,0,0,.2);
}

/* ===================== GALLERY GRID ===================== */
.mm-moment{
  border-radius: 14px;
  overflow:hidden;
  box-shadow: 0 10px 25px rgba(122,31,31,.12);
  position:relative;
  aspect-ratio: 1 / 1;
}
.mm-moment img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition: transform .4s;
}
.mm-moment:hover img{
  transform: scale(1.08);
}

/* ===================== EVENTS ===================== */
.mm-event-card{
  background:#fff;
  border-radius: 16px;
  overflow:hidden;
  box-shadow: 0 12px 30px rgba(122,31,31,.12);
  max-width: 780px;
  margin: 0 auto;
}
.mm-event-card .row{
  --bs-gutter-x: 0;
}
.mm-event-img{
  position:relative;
  height:100%;
  min-height:220px;
  background-size:cover;
  background-position:center;
}
.mm-event-badge{
  position:absolute;
  top:16px;
  left:16px;
  background: var(--mm-gold);
  color: var(--mm-maroon-dark);
  font-family: var(--font-hindi-body);
  font-weight:700;
  font-size:12px;
  letter-spacing:1px;
  padding: 6px 14px;
  border-radius: 30px;
}
.mm-event-body{
  padding: 30px;
  font-family: var(--font-hindi-body);
}
.mm-event-body h3{
  font-family: var(--font-hindi-head);
  color: var(--mm-maroon);
  font-size:22px;
}
.mm-event-date{
  color: var(--mm-gold);
  font-weight:600;
  margin: 8px 0 14px;
}
.mm-event-body p{
  color:#6b5138;
  line-height:1.8em;
}

/* ===================== MASONRY GALLERY ===================== */
.mm-masonry{
  column-count: 3;
  column-gap: 18px;
}
.mm-masonry-item{
  break-inside: avoid;
  margin-bottom: 18px;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 24px rgba(122,31,31,.14);
  display:block;
  position:relative;
  cursor:pointer;
}
.mm-masonry-item img{
  width:100%;
  display:block;
  transition: transform .4s;
}
.mm-masonry-item:hover img{
  transform: scale(1.06);
}

/* ---- gallery upload ---- */
.mm-upload-card{
  background: var(--mm-cream-light);
  border: 2px dashed var(--mm-gold);
  border-radius: 18px;
  padding: 34px;
  text-align:center;
  margin-bottom: 40px;
  transition:.2s;
}
.mm-upload-card.drag-over{
  background: #fff9e6;
  border-color: var(--mm-maroon);
}
.mm-upload-card i.mm-upload-icon{
  font-size:38px;
  color: var(--mm-gold);
  margin-bottom:12px;
  display:block;
}
.mm-upload-card h6{
  font-family: var(--font-hindi-head);
  color: var(--mm-maroon);
  margin-bottom:6px;
}
.mm-upload-card p{
  font-family: var(--font-hindi-body);
  color:#8a6d4a;
  font-size:14px;
  margin-bottom:18px;
}
.mm-upload-form{
  max-width:520px;
  margin:0 auto;
}
.mm-upload-form input[type="text"]{
  border: 1px solid rgba(122,31,31,.2);
  border-radius: 10px;
  padding: 12px 16px;
  width:100%;
  margin-bottom:14px;
  font-family: var(--font-hindi-body);
}
.mm-upload-form input[type="text"]:focus{
  outline:none;
  border-color: var(--mm-gold);
  box-shadow: 0 0 0 3px rgba(212,160,23,.15);
}
.mm-upload-btn-choose{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#fff;
  border: 2px solid var(--mm-maroon);
  color: var(--mm-maroon);
  font-family: var(--font-hindi-body);
  font-weight:600;
  padding: 10px 22px;
  border-radius: 30px;
  cursor:pointer;
  transition:.2s;
}
.mm-upload-btn-choose:hover{
  background: var(--mm-maroon);
  color:#fff;
}
.mm-upload-filelist{
  font-family: var(--font-hindi-body);
  font-size:13px;
  color: var(--mm-maroon);
  margin: 12px 0 0;
}
.mm-upload-preview-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  margin-top:16px;
}
.mm-upload-preview-row img{
  width:64px;
  height:64px;
  object-fit:cover;
  border-radius:10px;
  border:2px solid var(--mm-gold);
}

/* ===================== ABOUT PAGE FEATURE ROWS ===================== */
.mm-about-row{
  padding: 50px 0;
  border-bottom: 1px solid rgba(122,31,31,.08);
}
.mm-about-row:last-child{
  border-bottom: none;
}
.mm-about-img{
  border-radius: 16px;
  overflow:hidden;
  box-shadow: 0 15px 35px rgba(122,31,31,.15);
}
.mm-about-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  min-height: 260px;
}
.mm-about-text h3{
  font-family: var(--font-hindi-head);
  color: var(--mm-maroon);
  font-size: 26px;
  margin-bottom: 16px;
}
.mm-about-text p{
  font-family: var(--font-hindi-body);
  color:#5a3f28;
  line-height:1.9em;
}
.mm-about-text p + p{
  margin-top:12px;
}
.mm-quickfacts{
  background: var(--mm-maroon-dark);
  border-radius: 16px;
  padding: 30px 10px;
}
.mm-quickfact{
  text-align:center;
  color: var(--mm-cream);
  font-family: var(--font-hindi-body);
  padding: 10px;
}
.mm-quickfact i{
  color: var(--mm-gold-light);
  font-size:26px;
  margin-bottom:10px;
  display:block;
}
.mm-quickfact strong{
  display:block;
  color: var(--mm-gold-pale);
  font-size:15px;
}
.mm-quickfact span{
  font-size:13px;
  opacity:.85;
}

/* ===================== DONORS ===================== */
.mm-donor-card{
  background: var(--mm-cream-light);
  border: 1px solid rgba(212,160,23,.35);
  border-radius: 16px;
  padding: 24px 16px;
  text-align:center;
  box-shadow: 0 8px 20px rgba(122,31,31,.08);
  height:100%;
}
.mm-donor-card img{
  width:76px;
  height:76px;
  object-fit:cover;
  border: 3px solid var(--mm-gold);
  margin-bottom:14px;
}
.mm-donor-card h6{
  font-family: var(--font-hindi-head);
  color: var(--mm-maroon);
  margin-bottom:4px;
}
.mm-donor-mobile{
  font-family: var(--font-hindi-body);
  color:#8a6d4a;
  font-size:13px;
  margin-bottom:10px;
}
.mm-donor-amount{
  display:inline-block;
  font-family: var(--font-hindi-body);
  background: var(--mm-gold);
  color: var(--mm-maroon-dark);
  font-weight:700;
  font-size:14px;
  padding: 4px 16px;
  border-radius: 30px;
}

.mm-committee-card{
  background: var(--mm-cream-light);
  border: 1px solid rgba(212,160,23,.35);
  border-radius: 16px;
  padding: 24px 18px;
  text-align:center;
  box-shadow: 0 8px 20px rgba(122,31,31,.08);
  height:100%;
}
.mm-committee-photo{
  position:relative;
  display:inline-block;
  margin-bottom:14px;
}
.mm-committee-card img{
  width:100px;
  height:100px;
  object-fit:cover;
  border-radius:50%;
  border: 3px solid var(--mm-gold);
  display:block;
  margin-bottom:0;
}
.mm-edit-pencil{
  position:absolute;
  bottom:0;
  right:0;
  width:30px;
  height:30px;
  border-radius:50%;
  background: var(--mm-maroon);
  color: var(--mm-gold-pale);
  border: 2px solid #fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  cursor:pointer;
  transition:.2s;
}
.mm-edit-pencil:hover{
  background: var(--mm-gold);
  color: var(--mm-maroon-dark);
}
.mm-committee-card h6{
  font-family: var(--font-hindi-head);
  color: var(--mm-maroon);
  margin-bottom:2px;
  font-size:16px;
}
.mm-committee-role{
  display:inline-block;
  font-family: var(--font-hindi-body);
  color: var(--mm-gold);
  font-weight:600;
  font-size:13px;
  margin-bottom:14px;
}
.mm-committee-stats{
  border-top: 1px dashed rgba(122,31,31,.2);
  padding-top:12px;
  font-family: var(--font-hindi-body);
  font-size:13px;
  text-align:left;
}
.mm-committee-stats .row-line{
  display:flex;
  justify-content:space-between;
  margin-bottom:6px;
  color:#5a3f28;
}
.mm-committee-stats .row-line strong{
  color: var(--mm-maroon);
}
.mm-committee-stats .due-ok{
  color:#2a7a3a;
  font-weight:600;
}
.mm-committee-stats .due-pending{
  color:#b03a1f;
  font-weight:600;
}

.mm-edit-modal .modal-content{
  border-radius: 16px;
  border: 1px solid var(--mm-gold);
  overflow:hidden;
}
.mm-edit-modal .modal-header{
  background: var(--mm-maroon);
  color: var(--mm-gold-pale);
  font-family: var(--font-hindi-head);
  border-bottom:none;
}
.mm-edit-modal .modal-header .btn-close{
  filter: invert(1) grayscale(100%) brightness(200%);
}
.mm-edit-modal .modal-body{
  background: var(--mm-cream-light);
  font-family: var(--font-hindi-body);
}
.mm-edit-modal .form-control{
  border: 1px solid rgba(122,31,31,.2);
  border-radius: 10px;
  padding: 12px 14px;
  margin-bottom: 14px;
}
.mm-edit-modal .form-control:focus{
  border-color: var(--mm-gold);
  box-shadow: 0 0 0 3px rgba(212,160,23,.15);
}
.mm-edit-modal label{
  font-family: var(--font-hindi-body);
  color: var(--mm-maroon);
  font-weight:600;
  font-size:14px;
  margin-bottom:6px;
  display:block;
}
.mm-edit-preview{
  width:70px;
  height:70px;
  border-radius:50%;
  object-fit:cover;
  border: 2px solid var(--mm-gold);
  margin-bottom:14px;
}

.mm-donor-carousel .carousel-control-prev,
.mm-donor-carousel .carousel-control-next{
  width:5%;
}
.mm-donor-carousel .carousel-control-prev-icon,
.mm-donor-carousel .carousel-control-next-icon{
  filter: invert(20%) sepia(50%) saturate(2000%) hue-rotate(330deg);
  background-color: var(--mm-gold-pale);
  border-radius:50%;
  padding:10px;
  width:34px;
  height:34px;
}

/* ===================== DONATION PAGE ===================== */
.mm-amount-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:76px;
  padding: 10px 16px;
  border: 2px solid rgba(122,31,31,.2);
  border-radius: 30px;
  font-family: var(--font-hindi-body);
  font-weight:600;
  color: var(--mm-maroon);
  background:#fff;
  cursor:pointer;
  transition:.2s;
}
.mm-amount-pill.active,
.mm-amount-pill:hover{
  background: var(--mm-gold);
  border-color: var(--mm-gold);
  color: var(--mm-maroon-dark);
}
.mm-qr-card{
  background: var(--mm-cream-light);
  border: 1px solid var(--mm-gold);
  border-radius: 16px;
  padding: 30px;
  text-align:center;
  height:100%;
  box-shadow: 0 10px 25px rgba(122,31,31,.08);
}
.mm-qr-card h5{
  font-family: var(--font-hindi-head);
  color: var(--mm-maroon);
  margin-bottom:6px;
}
.mm-qr-box{
  background:#fff;
  border-radius: 14px;
  padding: 8px;
  width: 220px;
  aspect-ratio: 1 / 1;
  display:flex;
  align-items:center;
  justify-content:center;
  margin: 16px auto;
  box-shadow: 0 6px 18px rgba(122,31,31,.1);
}
#qrcode{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.mm-qr-box canvas{
  display:block !important;
  width:100% !important;
  height:100% !important;
  aspect-ratio: 1 / 1;
  object-fit:contain;
}
.mm-qr-box img{
  display:none !important;
}
.mm-qr-amount{
  font-family: var(--font-hindi-body);
  color: var(--mm-maroon);
  font-size:20px;
  font-weight:700;
  margin-bottom:4px;
}
.mm-qr-note{
  font-family: var(--font-hindi-body);
  font-size:12px;
  color:#8a6d4a;
  margin-top:8px;
}

/* ---- mini calendar (matches theme) ---- */
.mm-cal-card{
  background:#fff;
  border-radius: 16px;
  overflow:hidden;
  box-shadow: 0 10px 25px rgba(122,31,31,.1);
  margin-bottom: 24px;
}
.mm-cal-head{
  background: linear-gradient(90deg, var(--mm-maroon-dark), var(--mm-maroon));
  color: var(--mm-gold-pale);
  text-align:center;
  padding: 14px;
  font-family: var(--font-hindi-head);
  font-size:18px;
}
.mm-cal-grid{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:2px;
  padding: 14px;
}
.mm-cal-dow{
  text-align:center;
  font-size:11px;
  font-weight:700;
  color: var(--mm-maroon);
  padding: 4px 0;
  font-family: var(--font-hindi-body);
}
.mm-cal-day{
  text-align:center;
  padding: 7px 0;
  font-size:13px;
  color:#5a3f28;
  border-radius:6px;
  font-family: var(--font-hindi-body);
}
.mm-cal-day.mm-cal-today{
  background: var(--mm-maroon);
  color:#fff;
  font-weight:700;
}
.mm-cal-day.mm-cal-event{
  background: var(--mm-gold-pale);
  color: var(--mm-maroon);
  font-weight:700;
}
.mm-cal-legend{
  text-align:center;
  font-size:11px;
  color:#8a6d4a;
  font-family: var(--font-hindi-body);
  padding: 0 14px 14px;
}
.mm-cal-dot{
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%;
  background: var(--mm-gold-pale);
  border:1px solid var(--mm-gold);
  vertical-align:middle;
  margin-left:6px;
}

/* ---- fund summary ---- */
.mm-fund-card{
  background: var(--mm-maroon-dark);
  border-radius: 16px;
  padding: 26px 22px;
  box-shadow: 0 10px 25px rgba(122,31,31,.15);
}
.mm-fund-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 14px 0;
  border-bottom: 1px solid rgba(232,180,90,.2);
  font-family: var(--font-hindi-body);
}
.mm-fund-row:last-child{
  border-bottom:none;
  padding-bottom:0;
}
.mm-fund-row .lbl{
  color: var(--mm-cream-light);
  font-size:14px;
  display:flex;
  align-items:center;
  gap:8px;
}
.mm-fund-row .lbl i{
  color: var(--mm-gold-light);
}
.mm-fund-row .val{
  font-weight:700;
  font-size:17px;
}
.mm-fund-row.total .val{ color: var(--mm-gold-pale); }
.mm-fund-row.expense .val{ color:#ff9d8a; }
.mm-fund-row.remaining .val{ color:#8cf0a4; font-size:20px; }

/* ---- expense breakdown ---- */
.mm-expense-list{
  background:#fff;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(122,31,31,.08);
  padding: 20px 22px;
  margin-top: 24px;
}
.mm-expense-list h6{
  font-family: var(--font-hindi-head);
  color: var(--mm-maroon);
  margin-bottom:14px;
  font-size:16px;
}
.mm-expense-row{
  display:flex;
  justify-content:space-between;
  padding: 8px 0;
  border-bottom: 1px dashed rgba(122,31,31,.12);
  font-family: var(--font-hindi-body);
  font-size:14px;
  color:#5a3f28;
}
.mm-expense-row:last-of-type{
  border-bottom:none;
}
.mm-expense-row .amt{
  color: var(--mm-maroon);
  font-weight:700;
}
.mm-expense-total{
  display:flex;
  justify-content:space-between;
  margin-top:10px;
  padding-top:10px;
  border-top: 2px solid var(--mm-gold);
  font-family: var(--font-hindi-body);
  font-weight:700;
  color: var(--mm-maroon);
}

/* ---- donation ledger list ---- */
.mm-ledger{
  background:#fff;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(122,31,31,.08);
  overflow:hidden;
}
.mm-ledger table{
  width:100%;
  margin-bottom:0;
  font-family: var(--font-hindi-body);
}
.mm-ledger thead{
  background: var(--mm-maroon);
  color: var(--mm-gold-pale);
}
.mm-ledger th{
  padding: 14px 18px;
  font-weight:600;
  font-size:14px;
  white-space:nowrap;
}
.mm-ledger td{
  padding: 12px 18px;
  font-size:14px;
  color:#5a3f28;
  vertical-align:middle;
}
.mm-ledger tbody tr:nth-child(even){
  background: var(--mm-cream);
}
.mm-ledger .donor{
  display:flex;
  align-items:center;
  gap:10px;
}
.mm-ledger .donor img{
  width:34px;
  height:34px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid var(--mm-gold);
}
.mm-ledger .amt{
  color: var(--mm-maroon);
  font-weight:700;
}

/* ===================== CONTACT PAGE ===================== */
.mm-contact-card{
  background: var(--mm-cream-light);
  border: 1px solid var(--mm-gold);
  border-radius: 16px;
  padding: 30px;
  height:100%;
  box-shadow: 0 10px 25px rgba(122,31,31,.08);
}
.mm-contact-card h5{
  font-family: var(--font-hindi-head);
  color: var(--mm-maroon);
  text-align:center;
  margin-bottom:24px;
}
.mm-contact-row{
  display:flex;
  gap:16px;
  margin-bottom:22px;
}
.mm-contact-row .ic{
  width:42px;
  height:42px;
  border-radius:50%;
  background: var(--mm-gold);
  color: var(--mm-maroon-dark);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  font-size:16px;
}
.mm-contact-row strong{
  display:block;
  font-family: var(--font-hindi-body);
  color: var(--mm-maroon);
  font-size:15px;
}
.mm-contact-row span, .mm-contact-row a{
  font-family: var(--font-hindi-body);
  color:#5a3f28;
  font-size:14px;
}
.mm-contact-note{
  background: #fdf0c4;
  border-left: 4px solid var(--mm-gold);
  border-radius: 8px;
  padding: 16px 18px;
  font-family: var(--font-hindi-body);
  font-size:13px;
  color:#6b4f1f;
  line-height:1.7em;
  margin-top: 10px;
}
.mm-contact-note strong{
  color: var(--mm-maroon);
}
.mm-map-wrap{
  border-radius: 16px;
  overflow:hidden;
  box-shadow: 0 10px 25px rgba(122,31,31,.12);
  position:relative;
  margin-top:20px;
}
.mm-map-wrap iframe{
  width:100%;
  height:300px;
  border:0;
  display:block;
}
.mm-map-wrap iframe.mm-map-full{
  height:420px;
}
.mm-map-open{
  position:absolute;
  top:14px;
  left:14px;
  background:#fff;
  color: var(--mm-maroon);
  font-family: var(--font-hindi-body);
  font-weight:600;
  font-size:13px;
  padding: 8px 14px;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0,0,0,.2);
}
.mm-contact-form .form-control,
.mm-contact-form textarea.form-control{
  border: 1px solid rgba(122,31,31,.2);
  border-radius: 10px;
  font-family: var(--font-hindi-body);
  padding: 14px 16px;
  margin-bottom: 16px;
}
.mm-contact-form .form-control:focus{
  border-color: var(--mm-gold);
  box-shadow: 0 0 0 3px rgba(212,160,23,.15);
}
.mm-contact-form textarea{
  min-height: 140px;
}
.btn-mm-send{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  background: var(--mm-gold);
  color: var(--mm-maroon-dark) !important;
  font-family: var(--font-hindi-body);
  font-weight:700;
  padding: 14px;
  border-radius: 10px;
  border:none;
  transition:.25s;
}
.btn-mm-send:hover{
  background: var(--mm-gold-light);
}

/* ===================== FOOTER ===================== */
.mm-footer{
  background: var(--mm-maroon-dark);
  padding: 55px 0 0;
}
.mm-footer .mm-footer-brand{
  display:flex;
  align-items:center;
  gap:14px;
}
.mm-footer .mm-footer-brand img{
  width:56px;
  height:56px;
}
.mm-footer .mm-footer-brand h4{
  font-family: var(--font-hindi-head);
  color: var(--mm-gold-pale);
  margin:0;
}
.mm-shloka{
  font-family: var(--font-hindi-head);
  color: var(--mm-gold-light);
  font-style:italic;
  line-height:1.9em;
  margin-top:18px;
  font-size:15px;
}
.mm-footer-info{
  font-family: var(--font-hindi-body);
  color: var(--mm-cream-light);
}
.mm-footer-info .mm-info-row{
  display:flex;
  gap:12px;
  margin-bottom:14px;
}
.mm-footer-info .mm-info-row i{
  color: var(--mm-gold-light);
  margin-top:3px;
}
.mm-social{
  display:flex;
  gap:10px;
  margin-top:20px;
}
.mm-social a{
  width:38px;
  height:38px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background: var(--mm-gold);
  color: var(--mm-maroon-dark);
  transition:.25s;
}
.mm-social a:hover{
  background: var(--mm-gold-pale);
}
.mm-footer-bottom{
  margin-top: 40px;
  padding: 18px 0;
  border-top: 1px solid rgba(232,180,90,.2);
  text-align:center;
  color: var(--mm-gold-light);
  font-family: var(--font-hindi-body);
  font-size:14px;
}

/* ===================== RESPONSIVE ===================== */
@media (max-width: 991px){
  .mm-hero-content h1{ font-size:32px; }
  .mm-hero-content p{ font-size:16px; }
  .mm-section{ padding: 56px 0; }
  .mm-section-head h2{ font-size:28px; }
}

@media (max-width: 767px){
  .mm-header .navbar-brand img{ width:42px; height:42px; }
  .mm-header .navbar-brand .mm-brand-text{ font-size:15px; }
  .mm-header .navbar-brand .mm-brand-text small{ font-size:11px; }
  .mm-hero{ min-height: 460px; }
  .mm-hero-sm{ min-height: 260px; }
  .mm-hero-sm .mm-hero-content h1{ font-size:26px; }
  .mm-hero-content h1{ font-size:26px; }
  .mm-hero-content p{ font-size:15px; }
  .btn-mm-solid, .btn-mm-outline{
    display:block;
    width:100%;
    margin-bottom:12px;
    text-align:center;
  }
  .mm-hero-content .mm-hero-btns > *{
    display:block;
    margin: 0 auto 12px;
    max-width:280px;
  }
  .mm-polaroid{ margin-top:24px; transform:none; }
  .mm-about-row{ padding: 30px 0; text-align:center; }
  .mm-about-img{ margin-bottom:20px; }
  .mm-about-img img{ min-height:220px; }
  .mm-quickfact{ margin-bottom:14px; }
  .mm-moment{ margin-bottom:16px; }
  .mm-masonry{ column-count:2; column-gap:12px; }
  .mm-upload-card{ padding:22px 16px; }
  .mm-masonry-item{ margin-bottom:12px; }
  .mm-event-img{ min-height:180px; }
  .mm-event-body{ padding:22px; text-align:center; }
  .mm-donor-card{ margin-bottom:16px; }
  .mm-committee-card{ margin-bottom:16px; }
  .mm-contact-card{ margin-bottom:20px; }
  .mm-qr-card{ margin-bottom:20px; }
  .mm-qr-box{ width:190px; }
  .mm-cal-day{ font-size:12px; padding:6px 0; }
  .mm-cal-dow{ font-size:10px; }
  .mm-fund-card{ margin-top:0; }
  .mm-ledger{ margin-top:20px; }
  .mm-ledger td, .mm-ledger th{ padding:10px 12px; font-size:13px; }
  .mm-amount-pill{ min-width:64px; padding:8px 12px; font-size:14px; }
  .mm-map-wrap iframe{ height:220px; }
  .mm-map-wrap iframe.mm-map-full{ height:260px; }
  .mm-donor-carousel .carousel-control-prev,
  .mm-donor-carousel .carousel-control-next{ display:none; }
  .mm-footer{ text-align:center; }
  .mm-footer .mm-footer-brand{ justify-content:center; margin-bottom:16px; }
  .mm-footer-info .mm-info-row{ justify-content:center; text-align:left; max-width:320px; margin-left:auto; margin-right:auto; }
  .mm-social{ justify-content:center; }
}
