/* ============================================================
   RESPONSIVE — breakpoints
   ============================================================ */
@media (max-width: 1024px) {
  .desktop-nav { display: none; }
  .speaker-card { flex: 0 0 33.333%; }
  .sub-grid { grid-template-columns: 200px 1fr; gap: 28px; }
}

@media (max-width: 768px) {
  .hero-content { padding: 100px 20px 60px; }
  .hero-title { font-size: 1.9rem; }
  .countdown { gap: 10px; }
  .countdown-box { min-width: 60px; padding: 12px 14px; }
  .countdown-num { font-size: 1.6rem; }

  .info-grid { grid-template-columns: 1fr; }
  .reg-info-grid { grid-template-columns: 1fr; }
  .speakers-carousel-wrap { padding: 0 40px; }
  .speaker-card { flex: 0 0 50%; }

  .day-tabs { flex-direction: column; align-items: center; }
  .day-tab { width: 100%; max-width: 300px; text-align: center; }

  .session-header { padding: 16px; }
  .session-header h3 { font-size: 14px; }
  .talk-item { flex-direction: column; gap: 4px; }
  .talk-time { min-width: auto; }

  /* Board → card-like rows on mobile */
  .board-head { display: none; }
  .board-search { max-width: none; margin: 0 0 20px; }
  .board-item { flex-wrap: wrap; }
  .board-item .board-no { flex-basis: auto; }
  .board-title { order: 3; flex-basis: 100%; }
  .board-meta { order: 4; flex-basis: 100%; justify-content: flex-start; }
  .notice-nav-row { flex-wrap: wrap; gap: 6px; }
  .notice-nav-label { flex-basis: auto; }

  .footer-grid { flex-direction: column; }
  .greeting-card { padding: 32px 24px; }
  .speakers-grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); }
  .slide-controls { bottom: 20px; }
}

@media (max-width: 480px) {
  .hero-cta { flex-direction: column; align-items: center; }
  .btn { width: 100%; max-width: 280px; justify-content: center; }
  .speaker-card { flex: 0 0 100%; }
  .transport-grid { grid-template-columns: 1fr; }
  .venue-features { grid-template-columns: 1fr 1fr; }
  .hotel-row { flex-direction: column; align-items: flex-start; gap: 16px; }
  .abs-schedule, .abs-topics { grid-template-columns: 1fr; }
  .contact-grid { grid-template-columns: 1fr; }
}

/* Sub-page LNB layout + abstract form (mobile) */
@media (max-width: 900px) {
  .sub-grid { grid-template-columns: 1fr; gap: 22px; }
  .lnb { position: static; }
  .lnb-list { display: flex; flex-wrap: wrap; }
  .lnb-list li { flex: 1 1 auto; }
  .lnb-list li a, .lnb-list li:last-child a { border-bottom: 1px solid var(--border); border-right: 1px solid var(--border); text-align: center; }
  .lnb-list li a.active { border-left: none; border-top: 3px solid var(--blue); padding-left: 18px; }
}
@media (max-width: 600px) {
  .abs-row { grid-template-columns: 1fr; }
  .header-cta { display: none; }
  .auth-links { display: none; }
  .all-menu { width: 100%; max-width: 100vw; right: -100%; }
  .sub-head { padding: 110px 0 36px; }
}
