/* =========================================================
   responsive.css — desktop, laptop, tablet, mobile, landscape
   ========================================================= */

@media (max-width: 1399px) {
  :root { --container: 1140px; }
}

@media (max-width: 1199px) {
  .nav-menu > li > a { padding: 10px 10px; font-size: .88rem; }
  .masonry { columns: 3; }
  .float-card { font-size: .78rem; padding: 12px 14px; }
  .fc-1 { left: -2%; }
  .fc-2 { right: -1%; }
}

@media (max-width: 991px) {
  .nav-menu, .nav-actions .desk-only { display: none; }
  .hamburger { display: block; }
  .hero { min-height: auto; padding: 56px 0 76px; }
  .hero-grid { grid-template-columns: 1fr; gap: 46px; }
  .hero-visual { max-width: 520px; margin-inline: auto; }
  .stat-strip { grid-template-columns: repeat(2, 1fr); }
  .masonry { columns: 2; }
  .timeline { padding-left: 28px; }
  .map-frame iframe { height: 340px; }
  .scroll-ind { display: none; }
}

@media (max-width: 767px) {
  body { font-size: 15.5px; }
  .section { padding: 56px 0; }
  .topbar .hide-sm { display: none; }
  .masonry { columns: 1; }
  .quote-card, .card-x { padding: 26px 22px; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .floaties { right: 14px; bottom: 14px; }
  .floaties a, .floaties button { width: 46px; height: 46px; }
  .hero-photo { border-radius: 34px; }
  .modal-card { padding: 34px 24px; }
}

@media (max-width: 479px) {
  .stat-strip { grid-template-columns: 1fr; }
  .hero-cta .btn-x { width: 100%; justify-content: center; }
  .brand-name { font-size: .9rem; }
  .brand img { width: 200px; height: 50px; }
  .filter-bar button { padding: 9px 16px; font-size: .78rem; }
  .lightbox .lb-prev, .lightbox .lb-next { width: 42px; height: 42px; }
}

@media (max-height: 520px) and (orientation: landscape) {
  .hero { min-height: auto; padding: 46px 0 60px; }
  .mobile-nav { padding-top: 16px; }
}

@media print {
  .site-header, .floaties, .mobile-nav, .nav-overlay, .site-footer { display: none !important; }
  body { color: #000; }
}
