/**
 * Ajustes responsivos — tablets e smartphones.
 * Base (components.css) assume desktop; aqui adaptamos para telas menores.
 */

/* ---------- Tablet (≤ 1024px) ---------- */
@media (max-width: 1024px) {
	.imob-cards-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.imob-footer__grid {
		grid-template-columns: 1fr 1fr;
	}

	.imob-search__form {
		grid-template-columns: repeat(2, 1fr);
	}

	.imob-search__submit {
		grid-column: 1 / -1;
	}

	.imob-categorias-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.imob-depoimentos-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.imob-stats__grid {
		grid-template-columns: repeat(3, 1fr);
		gap: var(--espaco-4);
	}

	.imob-catalogo__layout {
		grid-template-columns: 1fr;
	}

	.imob-filtros {
		position: static;
	}

	.imob-imovel-layout {
		grid-template-columns: 1fr;
	}

	.imob-diferenciais-grid,
	.imob-equipe-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* ---------- Menu mobile (≤ 860px) ---------- */
@media (max-width: 860px) {
	.imob-nav {
		position: fixed;
		inset: 84px 0 0 0;
		background: var(--cor-areia-clara);
		transform: translateX(100%);
		transition: transform var(--transicao-base);
		z-index: var(--z-overlay);
		overflow-y: auto;
	}

	.imob-nav.is-open {
		transform: translateX(0);
	}

	.imob-nav__list {
		flex-direction: column;
		align-items: flex-start;
		gap: 0;
		padding: var(--espaco-5) var(--margem-viewport);
	}

	.imob-nav__list a {
		display: block;
		width: 100%;
		padding: var(--espaco-4) 0;
		border-bottom: 1px solid var(--cor-linha);
		font-size: var(--texto-lg);
	}

	.imob-header__menu-toggle {
		display: block;
	}

	.imob-header__menu-toggle[aria-expanded="true"] span:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	.imob-header__menu-toggle[aria-expanded="true"] span:nth-child(2) {
		opacity: 0;
	}

	.imob-header__menu-toggle[aria-expanded="true"] span:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	body.imob-menu-open {
		overflow: hidden;
	}
}

/* ---------- Mobile (≤ 640px) ---------- */
@media (max-width: 640px) {
	:root {
		--texto-4xl: 2.5rem;
		--texto-3xl: 2rem;
		--texto-2xl: 1.75rem;
	}

	.imob-header__inner {
		height: 68px;
	}

	.imob-nav {
		inset: 68px 0 0 0;
	}

	.imob-header__actions .imob-btn--primary {
		display: none;
	}

	.imob-cards-grid {
		grid-template-columns: 1fr;
	}

	.imob-footer__grid {
		grid-template-columns: 1fr;
		gap: var(--espaco-6);
	}

	.imob-footer__bottom {
		flex-direction: column;
		align-items: flex-start;
		text-align: left;
	}

	.imob-whatsapp-float {
		right: var(--espaco-4);
		bottom: var(--espaco-4);
		width: 50px;
		height: 50px;
	}

	.imob-hero {
		min-height: auto;
		padding-top: var(--espaco-8);
		margin-bottom: 64px;
	}

	.imob-hero__content {
		padding-block: var(--espaco-6) var(--espaco-7);
	}

	.imob-search {
		margin-top: -64px;
		padding: var(--espaco-4);
	}

	.imob-search__form {
		grid-template-columns: 1fr;
	}

	.imob-carousel__item {
		flex-basis: 78vw;
	}

	.imob-carousel__nav {
		display: none;
	}

	.imob-categorias-grid,
	.imob-depoimentos-grid {
		grid-template-columns: 1fr;
	}

	.imob-stats__grid {
		grid-template-columns: 1fr;
		gap: var(--espaco-5);
	}

	.imob-section {
		padding-block: var(--espaco-7);
	}

	.imob-diferenciais-grid,
	.imob-equipe-grid {
		grid-template-columns: 1fr;
	}

	.imob-filtros__field--par {
		grid-template-columns: 1fr;
	}

	.imob-corretor-header__inner {
		grid-template-columns: 1fr;
		text-align: center;
		justify-items: center;
	}

	.imob-corretor-header__acoes {
		justify-content: center;
	}
}
