:root{
  --anm-primary:#7B2CBF;
  --anm-primary-dark:#5a1e8f;
  --anm-secondary:#FFD60A;
  --anm-bg:#ffffff;
  --anm-soft:#f7f2fd;
  --anm-text:#1f1235;
}
*{font-family:'Mukta Malar','Poppins',system-ui,sans-serif;}
body{background:var(--anm-bg);color:var(--anm-text);}
[data-bs-theme="dark"]{--anm-bg:#15101f;--anm-soft:#1f1730;--anm-text:#ece6f5;}
[data-bs-theme="dark"] body{background:var(--anm-bg);color:var(--anm-text);}

.btn-anm-primary{background:var(--anm-primary);border:none;color:#fff;font-weight:600;}
.btn-anm-primary:hover{background:var(--anm-primary-dark);color:#fff;}
.btn-anm-secondary{background:var(--anm-secondary);border:none;color:#1f1235;font-weight:700;}
.btn-anm-secondary:hover{background:#e6c109;color:#1f1235;}
.btn-anm-outline{border:2px solid var(--anm-primary);color:var(--anm-primary);font-weight:600;background:transparent;}
.btn-anm-outline:hover{background:var(--anm-primary);color:#fff;}
.text-anm{color:var(--anm-primary);}
.bg-anm-soft{background:var(--anm-soft);}

/* Nav */
.anm-nav{background:var(--anm-bg);}
.anm-logo{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;
  background:linear-gradient(135deg,var(--anm-primary),var(--anm-primary-dark));color:#FFD60A;
  border-radius:12px;font-weight:800;font-size:1.4rem;flex:0 0 auto;}
.brand-text{display:flex;flex-direction:column;line-height:1.1;}
.brand-name{font-weight:700;color:var(--anm-primary);font-size:1.05rem;}
.brand-tag{color:var(--anm-secondary);font-weight:600;background:var(--anm-primary);
  padding:1px 6px;border-radius:4px;font-size:.62rem;width:fit-content;}
.nav-link{font-weight:600;color:var(--anm-text)!important;}
.nav-link:hover{color:var(--anm-primary)!important;}

/* Hero */
.anm-hero{background:linear-gradient(135deg,var(--anm-primary) 0%,var(--anm-primary-dark) 100%);
  color:#fff;padding:4rem 0;position:relative;overflow:hidden;}
.anm-hero::after{content:"";position:absolute;right:-80px;top:-80px;width:300px;height:300px;
  background:var(--anm-secondary);opacity:.12;border-radius:50%;}
.hero-logo{width:90px;height:90px;font-size:2.8rem;border-radius:24px;margin-bottom:1rem;}
.hero-heading{font-weight:800;font-size:1.9rem;}

/* Stats */
.stat-card{background:var(--anm-bg);border-radius:18px;padding:1.5rem;text-align:center;
  box-shadow:0 8px 30px rgba(123,44,191,.08);border:1px solid rgba(123,44,191,.08);}
.stat-num{font-size:2rem;font-weight:800;color:var(--anm-primary);}
.stat-label{color:#6c757d;font-weight:600;}

/* Profile card — traditional matrimony sheet style */
.profile-card{background:var(--anm-bg);border-radius:16px;overflow:hidden;
  box-shadow:0 6px 24px rgba(123,44,191,.10);border:1px solid rgba(123,44,191,.10);
  transition:transform .2s,box-shadow .2s;height:100%;}
.profile-card:hover{transform:translateY(-5px);box-shadow:0 14px 40px rgba(123,44,191,.18);}
.pc-header{background:linear-gradient(135deg,var(--anm-primary),var(--anm-primary-dark));
  color:#fff;padding:.55rem 1rem;display:flex;justify-content:space-between;align-items:center;}
.pc-id{font-weight:700;letter-spacing:.5px;}
.pc-photo{width:100%;height:240px;object-fit:cover;object-position:center top;background:var(--anm-soft);cursor:pointer;}
.pc-photo-ph{display:flex;align-items:center;justify-content:center;height:240px;
  background:var(--anm-soft);color:var(--anm-primary);font-size:3rem;}
.pc-body{padding:1rem;}
.pc-name{font-weight:700;font-size:1.15rem;color:var(--anm-primary);margin-bottom:.25rem;}
.pc-table{width:100%;font-size:.85rem;}
.pc-table td{padding:3px 4px;border-bottom:1px dashed rgba(123,44,191,.15);}
.pc-table td:first-child{color:#6c757d;font-weight:600;width:42%;}
.badge-verified{background:#198754;color:#fff;}
.badge-premium{background:var(--anm-secondary);color:#1f1235;}
.badge-featured{background:#fff;color:var(--anm-primary);}

/* Detail page */
.detail-hero{background:var(--anm-soft);border-radius:18px;padding:1.5rem;}
.detail-photo{width:100%;border-radius:14px;object-fit:contain;max-height:520px;background:var(--anm-soft);cursor:zoom-in;}

/* Full-screen image lightbox */
.anm-lightbox{position:fixed;inset:0;background:rgba(15,8,30,.92);z-index:2000;
  display:none;align-items:center;justify-content:center;padding:20px;cursor:zoom-out;}
.anm-lightbox.open{display:flex;}
.anm-lightbox img{max-width:96%;max-height:96%;object-fit:contain;border-radius:10px;
  box-shadow:0 10px 50px rgba(0,0,0,.6);}
.anm-lightbox .lb-close{position:absolute;top:18px;right:24px;color:#fff;font-size:2rem;
  background:none;border:none;cursor:pointer;line-height:1;}
.section-title{color:var(--anm-primary);font-weight:700;border-left:4px solid var(--anm-secondary);
  padding-left:.6rem;margin:1.5rem 0 1rem;}
.info-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px dashed rgba(123,44,191,.15);}
.info-row .k{color:#6c757d;font-weight:600;}
.gallery-thumb{width:100%;height:120px;object-fit:cover;border-radius:10px;cursor:pointer;}

/* Forms */
.form-card{background:var(--anm-bg);border-radius:18px;padding:1.5rem 1.75rem;
  box-shadow:0 6px 24px rgba(123,44,191,.08);border:1px solid rgba(123,44,191,.08);}

/* WhatsApp float */
.whatsapp-float{position:fixed;bottom:24px;right:24px;width:56px;height:56px;background:#25D366;
  color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:1.7rem;box-shadow:0 6px 20px rgba(37,211,102,.5);z-index:999;}
.whatsapp-float:hover{color:#fff;transform:scale(1.08);}

/* Footer */
.anm-footer{background:var(--anm-soft);}
.footer-link{color:#6c757d;text-decoration:none;padding:2px 0;}
.footer-link:hover{color:var(--anm-primary);}

/* Success carousel */
.story-card{background:var(--anm-bg);border-radius:16px;overflow:hidden;
  box-shadow:0 6px 24px rgba(123,44,191,.1);text-align:center;padding-bottom:1rem;}
.story-photos{display:flex;}
.story-photos img{width:50%;height:200px;object-fit:cover;}
.heart-divider{color:#e0245e;font-size:1.5rem;}

/* Services */
.price-card{border:2px solid rgba(123,44,191,.15);border-radius:18px;padding:1.5rem;text-align:center;
  transition:.2s;height:100%;}
.price-card:hover{border-color:var(--anm-primary);transform:translateY(-4px);}
.price-amount{font-size:2.2rem;font-weight:800;color:var(--anm-primary);}

@media(max-width:576px){.hero-heading{font-size:1.4rem;}.brand-tag{display:none;}}
