/* =============================================
   RESPONSIVENESS.CSS — Media Queries
   ============================================= */

/* TABLET — 768px */
@media (max-width: 768px) {
  /* Nav */
  .nav-donate-desktop { display: none !important; }
  .nav-donate-menu { display: inline-block; width: 100%; text-align: center; padding: 0.8rem 1.2rem; }
  .nav-give-item { border-top: 1px solid rgba(201,168,76,0.2); padding-top: 1rem; margin-top: 0.5rem; }
  .nav-links { display: none; }
  .hamburger { display: flex; }

  /* Move admin lock into hamburger menu on mobile */
  .nav-admin { display: none !important; }
  .nav-admin-item { display: list-item; border-top: 1px solid rgba(201,168,76,0.2); padding-top: 1rem; margin-top: 0.5rem; }

  /* Hero */
  .hero-title { font-size: clamp(2rem, 10vw, 3.5rem); }
  .hero-ctas { flex-direction: column; align-items: center; }

  /* Sections */
  .about-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .ministries-grid { grid-template-columns: 1fr 1fr; }
  .board-grid { grid-template-columns: 1fr 1fr; }
  .sermons-grid { grid-template-columns: 1fr; gap: 2rem; }
}

/* MOBILE — 480px */
@media (max-width: 480px) {
  .section-inner { padding: 4rem 1.5rem; }
  .ministries-grid { grid-template-columns: 1fr; }
  .board-grid { grid-template-columns: 1fr; }

  /* Sermon cards */
  .sermon-card-body { padding: 1rem 1.2rem 1.5rem; }
  .sermon-card-title { font-size: 1rem; }

  /* Scrollable sermon notes on mobile */
  .sermon-card-content {
    max-height: 200px;
    overflow-y: auto;
    padding-right: 0.5rem;
  }

  /* Archive headings — mobile */
  .archive-year { font-size: 1.05rem; }
  .archive-month { font-size: 0.75rem; }
  .archive-year-content { padding-left: 0.6rem; }
}

/* ---- Admin Dashboard Responsive ---- */

/* Tablet — stack dashboard to single column */
@media (max-width: 900px) {
  .dashboard-body {
    grid-template-columns: 1fr;
  }
  .sermons-sidebar {
    max-height: none;
  }
}

/* Mobile admin adjustments */
@media (max-width: 480px) {
  .dashboard-body { padding: 1rem; }
  .sermon-form-panel { padding: 1.2rem; }
  .form-row { grid-template-columns: 1fr; }
  .admin-topbar { padding: 0 1rem; }
  .login-card { padding: 2rem 1.5rem; }
}
