/* =========================================================================
 * MediTravel — 99-responsive.css
 * POUZE layoutové breakpointy (grid, display, padding).
 * Velikosti písma sem NEpatří — žijí v clamp tokenech (00-tokens.css).
 * Breakpoint hlavičky (burger ≤1024) žije v 04-mobile-nav.css.
 * ======================================================================= */

/* ---- Homepage ---- */
@media (max-width: 1024px) {
	/* Benefity: 3 karty → sloupec.
	 * POZOR: flex: 1 1 0 z desktopu by ve sloupci zkolaboval výšky karet
	 * (basis 0) — vrátit na auto. */
	.mt-benefity .et_pb_row.mt-benefity__karty {
		flex-direction: column;
		gap: 32px !important;
	}
	.mt-benefity .mt-benefity__karty .et_pb_column {
		flex: 0 0 auto;
		width: 100% !important;
	}

	/* Nabídka: head pod sebe, grid 3 → 2 */
	.mt-nabidka .et_pb_row:first-of-type {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
	.mt-pobyty__grid { grid-template-columns: repeat(2, 1fr); }

	/* Featured karta: foto nahoru, obsah dolů */
	.mt-pobyt-featured {
		flex-direction: column;
		min-height: 0;
	}
	.mt-pobyt-featured__media {
		flex: none;
		height: 300px;
	}
}

@media (max-width: 640px) {
	/* Menší mezera mezi řádky sekcí (head → výpis) */
	:is(.mt-benefity, .mt-nabidka) .et_pb_row + .et_pb_row {
		margin-top: 28px !important;
	}

	/* Hero na mobilu nižší */
	.mt-hero,
	.mt-hero.et_pb_section {
		min-height: 480px;
		padding: 72px 0 110px !important; /* dole místo pro šipku */
	}
	.mt-hero__scroll { bottom: 28px; }

	:is(.mt-benefity, .mt-nabidka),
	:is(.mt-benefity, .mt-nabidka).et_pb_section { padding: 56px 0 !important; }

	.mt-pobyty__grid { grid-template-columns: 1fr; gap: 24px; }
	.mt-pobyt-featured { margin-bottom: 40px; }
	.mt-pobyt-featured__body { padding: 28px 24px; }
	.mt-pobyt-featured__meta {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}
	.mt-pobyt-featured__cena { text-align: left; }
	.mt-pobyt-karta__body { padding: 24px 20px; }

	.mt-rodina,
	.mt-rodina.et_pb_section {
		min-height: 0;
		padding: 64px 0 !important;
	}
	.mt-rodina .et_pb_column { max-width: none; }
}

/* ---- Archiv Nabídka pobytů ---- */
@media (max-width: 900px) {
	.mt-archiv__grid { grid-template-columns: 1fr; gap: 32px; }
	.mt-akarta__media { height: 300px; }
	.mt-filtry__popisek { min-width: 100%; }
}

/* ---- Detail pobytu ---- */
@media (max-width: 900px) {
	.mt-det-ceny__pas--3,
	.mt-det-ceny__pas--2 { grid-template-columns: 1fr; }
	.mt-det-ceny__pole + .mt-det-ceny__pole {
		border-left: 0;
		border-top: 1px solid var(--mt-border-soft);
	}
	.mt-det-terminy__grid { grid-template-columns: 1fr; }
	.mt-det-opobytu__grid { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 768px) {
	.mt-det-cenik__grid { grid-template-columns: 1fr; }
	.mt-poptavka__grid3 { grid-template-columns: 1fr; }
	.mt-poptavka__ucastnik { grid-template-columns: 1fr 1fr; }
	.mt-poptavka__pole--jmeno { grid-column: 1 / -1; }
	.mt-bento { grid-template-columns: 1fr 1fr; grid-auto-rows: 180px; }
	.mt-it-obsah { padding: 0 20px 20px; }
	.mt-it-blok summary { padding: 18px 20px; gap: 16px; }
	.mt-it-blok summary > .mt-it-nadpis:first-child { margin-left: 0; }
	.mt-detail .mt-det-hero__in { padding: 110px var(--mt-gutter) 56px; } /* specificita jako základ */
}

/* ---- Patička ---- */
@media (max-width: 1024px) {
	.mt-ft__grid {
		grid-template-columns: repeat(6, 1fr);
		gap: 48px;
		margin-bottom: 56px;
	}
	.mt-ft__brand    { grid-column: span 6; }
	.mt-ft__col--cz  { grid-column: span 3; }
	.mt-ft__col--obj { grid-column: span 3; }
	.mt-ft__links    { grid-column: span 6; }
	.mt-ft { padding: 72px 0 40px; }
}

@media (max-width: 640px) {
	/* šířky sjednocuje token --mt-gutter: 16px (00-tokens.css) */

	.mt-ft__grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}
	.mt-ft__brand,
	.mt-ft__col--cz,
	.mt-ft__col--obj,
	.mt-ft__links { grid-column: auto; }

	.mt-ft { padding: 56px 0 32px; }
	.mt-ft h5 { margin-bottom: 20px; }

	.mt-ft__bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
		padding-top: 32px;
	}
}

/* ---- Vyhledávání + 404 ---- */
/* (grid karet 1 sloupec <=900px řeší pravidlo .mt-archiv__grid výše) */
@media (max-width: 640px) {
	.mt-shform {
		padding: 6px 6px 6px 14px;
		gap: 8px;
	}
	.mt-shform button { padding: 10px 18px; }
	.mt-shform__ico { display: none; }

	.mt-hledani__sekce { margin-top: 44px; }
	.mt-vysledek { padding: 20px; }

	.mt-404__pobyty { margin-top: 56px; }
	.mt-404__pobyty > h2 { margin-bottom: 32px; }
}
