/* =================================================================
   Lazox — Responsive Stylesheet
   Breakpoints: 1024px (tablet), 768px (mobile landscape), 560px (mobile)
   ================================================================= */

/* ---------- Tablet ---------- */
@media (max-width: 1024px) {
	.card-grid,
	.card-grid--5 {
		grid-template-columns: repeat(2, 1fr);
	}

	.mvv-grid {
		grid-template-columns: 1fr;
	}

	.hero-inner {
		grid-template-columns: 1fr;
		padding-top: 3.5rem;
	}

	.phone-stage {
		order: -1;
		margin-bottom: 1rem;
	}

	.two-col {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.contact-grid {
		grid-template-columns: 1fr;
	}

	.footer-inner {
		grid-template-columns: 1fr 1fr;
	}
}

/* ---------- Mobile landscape / small tablet ---------- */
@media (max-width: 768px) {
	:root {
		--header-height: 64px;
	}

	.main-nav {
		display: none;
	}

	.menu-toggle {
		display: flex;
	}

	.section {
		padding: 4rem 0;
	}

	.section--tight {
		padding: 3rem 0;
	}

	.card-grid,
	.card-grid--3,
	.card-grid--5 {
		grid-template-columns: 1fr;
	}

	.mvv-grid {
		grid-template-columns: 1fr;
	}

	.footer-inner {
		grid-template-columns: 1fr;
		padding: 3.5rem 0 2.5rem;
	}

	.footer-bottom-inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.4rem;
	}

	.cta-banner {
		flex-direction: column;
		align-items: flex-start;
		text-align: left;
		padding: 2.2rem;
	}

	.form-row {
		grid-template-columns: 1fr;
	}

	.phone-chip {
		display: none;
	}
}

/* ---------- Mobile ---------- */
@media (max-width: 560px) {
	.container {
		padding: 0 1.25rem;
	}

	.hero-actions,
	.error-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.hero-actions .btn,
	.error-actions .btn {
		width: 100%;
	}

	.hero-trust {
		flex-direction: column;
		gap: 0.8rem;
	}

	.phone-frame {
		width: 240px;
	}

	.info-panel,
	.form-card {
		padding: 1.6rem;
	}

	.mvv-card {
		padding: 1.8rem;
	}

	.section-title {
		font-size: 1.65rem;
	}
}
