/* =================================================================
   AB TAXI Komárno — responsive.css
   Mobile-first base lives in style.css. These are the scale-UP and
   scale-DOWN adjustments for the required breakpoints:
   360 / 390 / 414 / 768 / 1024 / 1280 / 1440 / 1920
   ================================================================= */

/* ===== Desktop nav appears from 1024px up; below that = drawer ===== */
@media (max-width: 1023.98px) {
  .nav, .nav-cta .btn { display: none; }
  .burger { display: block; }
  .topbar__note { display: none; }
}

/* ===== Large tablet / small desktop ===== */
@media (max-width: 1023.98px) {
  .hero__inner { grid-template-columns: 1fr; }
  .hero__visual-col { order: -1; }
  .appcta__inner { grid-template-columns: 1fr; }
  .appcta__phone { order: -1; margin-bottom: .5rem; }
  .contact-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .legal-grid { grid-template-columns: 1fr; }
  .legal-toc { position: static; }
  .dropdown { min-width: 0; }
}

/* ===== Tablet (<= 768px) ===== */
@media (max-width: 768px) {
  :root { scroll-padding-top: 88px; }
  .cols-4 { grid-template-columns: repeat(2, 1fr); }
  .cols-3 { grid-template-columns: repeat(2, 1fr); }
  .cols-2 { grid-template-columns: 1fr; }
  .price-list { columns: 2 200px; }
  .hero__stats { gap: 1.4rem; }
  .footer-bottom { flex-direction: column; text-align: center; align-items: center; }
}

/* show floating call button on touch/small screens */
@media (max-width: 768px) {
  .fab-call { display: inline-flex; }
  .to-top { right: auto; left: 18px; }
}

/* ===== Large phones (<= 480px) ===== */
@media (max-width: 480px) {
  .cols-4, .cols-3 { grid-template-columns: 1fr; }
  .price-list { columns: 1; }
  .price-tiles { grid-template-columns: 1fr; }
  .fees { grid-template-columns: 1fr; }
  .hero__cta { flex-direction: column; }
  .hero__cta .btn { width: 100%; }
  .topbar { font-size: .8rem; }
  .topbar__phones { gap: .8rem; }
  .stores { flex-direction: column; }
  .store { width: 100%; }
  .cinfo__item { padding: 1rem; }
  .book-card { padding: 1.2rem; }
}

/* ===== Standard phones 390/414 ===== */
@media (max-width: 430px) {
  .topbar__phones a span.num { font-size: .82rem; }
  .brand img { height: 26px; }
}

/* ===== Small phones 360 ===== */
@media (max-width: 360px) {
  :root { --gutter: 1rem; }
  .btn { padding: .9em 1.3em; font-size: .98rem; }
  .hero__pill { font-size: .82rem; }
  .topbar__phones { gap: .6rem; }
  .topbar__phones a span.lbl { display: none; }
  .drawer { width: 92vw; }
}

/* ===== Wide desktops 1440 ===== */
@media (min-width: 1440px) {
  :root { --container: 1280px; }
}

/* ===== Ultra-wide 1920 ===== */
@media (min-width: 1700px) {
  :root { --container: 1360px; }
  body { font-size: 1.12rem; }
}

/* ===== Landscape phone height guard ===== */
@media (max-height: 460px) and (orientation: landscape) {
  .drawer { padding-block: .8rem; }
}
