/* ============================================================
   Public site — Bangla typography layer (Google Fonts)
   Load after site.css. body.public-front
   ============================================================ */

body.public-front {
  --font-bn-ui: "Noto Sans Bengali", system-ui, sans-serif;
  --font-bn-body: "Hind Siliguri", "Noto Sans Bengali", sans-serif;
  --font-bn-display: "Baloo Da 2", "Noto Sans Bengali", sans-serif;
  --font-bn-accent: "Atma", "Hind Siliguri", cursive;
  font-family: var(--font-bn-ui), var(--font-body), system-ui, sans-serif;
}

body.public-front .site-main {
  position: relative;
  z-index: 1;
  min-height: 40vh;
}

body.public-front .nav-link,
body.public-front .nav-cta,
body.public-front .footer-link,
body.public-front .footer-contact-link,
body.public-front .footer-copy,
body.public-front .btn-primary,
body.public-front .btn-outline,
body.public-front .tag {
  font-family: var(--font-bn-ui), var(--font-body), sans-serif;
}

body.public-front .nav-brand {
  font-family: var(--font-bn-display), var(--font-head), sans-serif;
  letter-spacing: 1px;
}

body.public-front .hero-title,
body.public-front .section-title,
body.public-front .detail-hero-title,
body.public-front .detail-hero-sub {
  font-family: var(--font-bn-display), var(--font-head), sans-serif;
  font-weight: 700;
  letter-spacing: 0;
}

body.public-front .hero-title-break {
  font-family: var(--font-bn-display), var(--font-head), sans-serif;
}

body.public-front .section-tag,
body.public-front .hero-badge {
  font-family: var(--font-bn-ui), sans-serif;
}

body.public-front .hero-sub,
body.public-front .section-desc,
body.public-front .why-desc,
body.public-front .why-title,
body.public-front .service-name-bn,
body.public-front .contact-info-val,
body.public-front .detail-hero-desc,
body.public-front .testimonial-quote,
body.public-front .testimonial-role,
body.public-front .hero-stat-label,
body.public-front .service-desc-short,
body.public-front .course-desc-short {
  font-family: var(--font-bn-body), sans-serif;
}

body.public-front .service-name,
body.public-front .course-title,
body.public-front .footer-brand,
body.public-front .footer-logo-text {
  font-family: var(--font-bn-display), var(--font-head), sans-serif;
}

body.public-front .testimonial-name,
body.public-front .hero-floating {
  font-family: var(--font-bn-ui), sans-serif;
}

body.public-front .hero-stat-num {
  font-family: var(--font-bn-display), var(--font-head), sans-serif;
}

body.public-front .why-split-caption {
  font-family: var(--font-bn-ui), sans-serif;
}

body.public-front .testimonial-stars {
  font-family: var(--font-bn-accent);
  letter-spacing: 3px;
}

/* Fine-tune focal points on top of site.css */
body.public-front .hero-photo-img {
  object-position: center 30%;
}

body.public-front .page-visual-band img {
  object-position: center 38%;
}

@media (max-width: 900px) {
  body.public-front .hero-photo-img {
    object-position: center 26%;
  }
}

/* Notification bell on public nav (logged-in) */
body.public-front .site-nav__inner {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

body.public-front .nav-notif-wrap {
  margin-left: auto;
  margin-right: 10px;
}

body.public-front .nav-notif-wrap .notif-bell-btn {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
}

body.public-front .notif-dropdown {
  background: #0f1419;
  border-color: rgba(255, 255, 255, 0.12);
}
