/* ==========================================================================
   RESPONSIVE — content-based breakpoints
   Checked at: 375 / 430 / 768 / 1024 / 1280 / 1440 / 1920
   ========================================================================== */

/* Default (mobile-first authoring above ~1024px collapses to single column
   via components already using flexible grids; overrides below tighten
   specific breakpoints). */

.main-nav,
.header-actions .btn--ghost + .btn { display: none; }

.nav-toggle { display: flex; }

@media (min-width: 1024px) {
  .main-nav { display: flex; }
  .nav-toggle { display: none; }
  .mobile-nav { display: none; }
}

/* ---- Header logo: smaller on mobile, footer logo stays full size ---- */
@media (max-width: 1023px) {
  .site-header .brand__logo { height: 40px; }
}

/* ---- Contact methods (kontakt.html) ---- */
@media (min-width: 640px) { .contact-methods { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .contact-methods { grid-template-columns: repeat(4, 1fr); } }

/* ---- Footer grid ---- */
.footer-grid { grid-template-columns: 1fr; }
@media (min-width: 640px) {
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .footer-grid { grid-template-columns: 1.4fr repeat(4, 1fr); }
}

/* ---- Core services grid ---- */
.core-grid { grid-template-columns: 1fr; }
@media (min-width: 640px) {
  .core-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .core-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 1280px) {
  /* 6 cards now (added "Namenska rešenja") — 3 cols x 2 rows reads better
     than 5 cramped cols + 1 orphan wrapping onto its own row. */
  .core-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ---- Generic 2 / 3 / 4 column grids ---- */
.grid--2 { grid-template-columns: 1fr; }
@media (min-width: 640px) { .grid--2 { grid-template-columns: repeat(2, 1fr); } }

.grid--3 { grid-template-columns: 1fr; }
@media (min-width: 640px) { .grid--3 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .grid--3 { grid-template-columns: repeat(3, 1fr); } }

.grid--4 { grid-template-columns: repeat(2, 1fr); }
@media (min-width: 768px) { .grid--4 { grid-template-columns: repeat(4, 1fr); } }

/* ---- Location section ---- */
.location { grid-template-columns: 1fr; }
@media (min-width: 900px) {
  .location { grid-template-columns: 1.1fr 0.9fr; }
}

/* ---- Value list / diagnostic list columns collapse on mobile ---- */
.value-list { grid-template-columns: 1fr; }
@media (min-width: 700px) { .value-list { grid-template-columns: repeat(2, 1fr); } }

.agri-stats { grid-template-columns: 1fr; }
@media (min-width: 640px) { .agri-stats { grid-template-columns: repeat(3, 1fr); } }
.agri-stats div { border-right: none; border-bottom: 1px solid var(--color-border); }
@media (min-width: 640px) {
  .agri-stats div { border-right: 1px solid var(--color-border); border-bottom: none; }
  .agri-stats div:last-child { border-right: none; }
}

.fpv-build-visual { grid-template-columns: repeat(2, 1fr); }
@media (min-width: 640px) { .fpv-build-visual { grid-template-columns: repeat(4, 1fr); } }

.step { grid-template-columns: 3rem 1fr; }
@media (min-width: 640px) { .step { grid-template-columns: 4rem 1fr; } }

/* ---- Hero adjustments ---- */
@media (max-width: 639px) {
  .hero { min-height: 100svh; align-items: flex-end; padding-bottom: var(--space-5); }
  .hero__title { font-size: var(--fs-3xl); max-width: 16ch; }
  .hero__actions .btn { width: 100%; justify-content: center; }
  .cta-section__inner { flex-direction: column; align-items: flex-start; }
  .cta-section__actions .btn { width: 100%; justify-content: center; }
}

/* ---- Small phones ---- */
@media (max-width: 400px) {
  .hero__title { font-size: var(--fs-2xl); }
  .section-title { font-size: var(--fs-xl); }
}

/* ---- Large desktop refinement ---- */
@media (min-width: 1920px) {
  :root { --container-wide: 1800px; --container-max: 1480px; }
}
