/* Google Bengali Font Import */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Bengali:wght@400;600;700&display=swap');

:root {
  --royal-blue: #1a365d;
  --gold: #d4af37;
  --gold-hover: #b59226;
  --light-bg: #f8f9fa;
}

/* 1. Sticky Header & Footer Flex Layout */
html, body {
  height: 100%;
  margin: 0;
}

body {
  /* Noto Sans Bengali ফন্ট যুক্ত করা হয়েছে যাতে ক্ত (ক+ত) সঠিক ভাবে রেন্ডার হয় */
  font-family: 'Noto Sans Bengali', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  background-color: var(--light-bg);
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

/* Main container expands to push footer down on short pages */
main, .main-content {
  flex: 1 0 auto;
}

/* Fixed Header / Sticky Navbar */
header, .site-header {
  position: sticky;
  top: 0;
  z-index: 1030;
}

/* Footer */
footer, .site-footer {
  position: sticky;
  bottom: 0;
}

/* Footer Pinning */
footer, .site-footer {
  flex-shrink: 0;
  margin-top: auto;
}

/* 2. Color Utilities & Theme Classes */
.bg-royal-blue {
  background-color: var(--royal-blue) !important;
  color: #ffffff;
}

.text-royal-blue {
  color: var(--royal-blue) !important;
}

.text-gold {
  color: var(--gold) !important;
}

.btn-gold {
  background-color: var(--gold);
  color: #ffffff;
  border: none;
  font-weight: 600;
  transition: all 0.3s ease;
}

.btn-gold:hover {
  background-color: var(--gold-hover);
  color: #ffffff;
}

.card-custom {
  border: none;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

/* 3. Mobile Responsiveness Tweaks */
@media (max-width: 767.98px) {
  .hero-title {
    font-size: 1.8rem;
  }
  .table-responsive-sm {
    font-size: 0.875rem;
  }
}