
@media ( max-width : 1000px) {
	.header .nav {
		display: none;
		flex-direction: column;
		position: absolute;
		top: 70px;
		right: 0;
		background-color: #fff;
		border: 1px solid #ddd;
		border-radius: 5px;
		box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
		width: 150px;
		padding-top: 20px;
		align-items: center;
	}
	
	.header .nav a {
		width: 90%;
		height: 50px;
		align-items: center;
		margin-top: -15px;
		padding-bottom: 15px;
		padding: 15px;
		border-radius: 0; 
		text-align: center; 
		color:#00549D;
	}	
	.header .nav.active {
		display: flex;
	}
	.menu-toggle {
		display: flex;
	}	
}

@media ( max-width : 500px) {
	.header  {
		top: 0;
		left: 0;
		width: 100%;
		border-radius: 0;
	}
	.section {
		height: auto;
	}
	.container-imovel-list .map-filter-container {
		height: calc(100vh - 130px);
		right: 0;
		padding-top: 5px;
	}
	.container-imovel-list{ 
		padding-left: 10px;
	}
	.user-button {
		border: 0;
	}
	.user-button:hover {
		border: 0;
	}
	
	.container-index {
		margin: 0 auto;
		height: auto;
	}
	.hero {
		height: calc(100vh);
	}
	.filters-index {
		width: 90%; 
	}
	
	    
    
    /* Garante que o botão de busca com IA ocupe 100% da largura em mobile */
    .filter-box #ia-search-container button.search-button {
        width: 100% !important;
        margin: 5px 0 5px 0;
    }

    /* Garante que os containers de busca se ajustem corretamente */
    #local-search-container {
        display: flex; /* O display será controlado pelo JS, mas forçamos flex-wrap para o layout */
        flex-wrap: wrap; 
        gap: 10px;
    }
    
    /* Reajuste dos botões Compra/Locação dentro do novo container de busca por local */
    #local-search-container .filter-select {
        width: calc(47% - 5px); /* Ajusta para caber dois por linha com gap */
        margin: 0;
    }
    
   
    
    .tabs-wrapper {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0 10px; /* Mantém o padding de alinhamento */
        transform: translateY(2px);
    }
    
    /* Ajusta o padding do filter-box em mobile */
    
    /* Ajusta o estilo do botão de aba em mobile */
    .tab-button {
        padding: 8px 5px;
        font-size: 14px;
    }
    

	.filter-select {
		padding: 5x 5px;
		margin: 0px;
		margin-left: 5px;
		min-width: 80px;
		width: 47%;
		margin-bottom: 5px;
	}
	.search-button {
		width: 47%;
	}
	.carregando {
		margin-left: 65%;
	}
		
	.hero .filter-box {
		padding-left: 5px;
		padding-right: 5px;
		padding-top: 15px;
		padding-bottom: 15px;
		gap: 5px;
	}
	.hero .filter-container {
	    position: relative; /* Muda de absolute para relative */
	    top: 0;          /* Remove o cálculo de 30% ou 50% */
	    left: auto;
	    transform: none;    /* Remove a centralização forçada que quebra o scroll */
	    margin: 80px auto 20px auto; /* Dá espaço para o header fixo e centraliza horizontalmente */
	    width: 95%;         /* Ocupa quase toda a largura */
	    height: auto;       /* ESSENCIAL: Permite crescer verticalmente */
	    max-height: none;   /* Garante que nada limite a altura */
	    padding-bottom: 30px; 
	}	
	
	#mensagem {
		width: 90%;
	}
	.logo{
		display: flex;
		justify-content: center;
		width: auto;
		height: 50px;	
	}
	
	.section {
		padding: 10px 0;
	}

	.quadro {
		width: 97%;
		height: auto;
	}
	
	.quadro h2 {
		justify-content: center;
		margin-bottom: 30px;
	}
	
	.underline.sobre {
		left: calc(50% - 90px);
		top: 35px;
	}
	
	.underline.servicos {
		top: 55px;
	}
		
	.title-container {
		margin-bottom: 10px;
	}
		
	.cliente-title h1 {
		margin-bottom: -20px;
		height: 20px;
	}
	
	.sobre-img {
		margin-top: -80px;
	}
		
	

/* List */
	.imovel-box {
		flex: 0 0 calc(100% - 10px);
		margin: 0 0 10px;
	}
	
	.imovel-box-h:hover {
		transform: none;
	}
	.imovel-img {
		height: calc(35vh); /* Defina a altura fixa desejada */
	}
	.image-nav {
		display: none;
	}
	.imovel-details {
		max-height: calc(100% - 45px);
		top: 60px;
		border-radius: 0;
		width: 100%;
		box-shadow: none;
		padding: 0px;
		border: 0;
		
	}
	.imovel-details-content, .imovel-details-video {
		width: 100%;
		max-width: 100%;
		height: calc(40vh);
		max-height: calc(40vh);
		z-index: 10;
		top: auto;
		overflow-y: none;
		border-radius: 0;		
	}
	.imovel-details-video {
		position: absolute;
		top: 0px;
	}
		
	.imovel-details-info {
		width: 100%;
		max-width: 100%;
		flex: 2;
		top: -30px;
		right: 0;
		padding: 5px;
		position: relative;
		overflow-y: visible;
	}
	.imovel-details img {
		width: 100%; /* Remove a largura máxima */
		height: calc(40vh);
	}
	.detail-info-item {
		margin-left: 5px;
		padding: 10px 10px;
		width: 180px;
	}
	
	.close-button {
		text-shadow: black 0.1em 0.1em 0.1em;
		color: #FFF;
		font-size: 25px;
		width: 30px;
		top: 70px;
	}
	
	#logoDetail{
		display: none;
	}
	
	.imovel-details-title {
		border-top: 0;
	}
	
	.sliderRange::-webkit-slider-thumb {
		width: 25px;
		height: 25px;
	}
	
	.sliderRange::-moz-range-thumb {
		width: 25px;
		height: 25x;
	}
	
	.video-button {
		left: calc(50% - 80px);
	}
	
	.imovel-details-buttons {
		bottom: 0px;		
		width: 100%;
		border-top: 1px solid #e1e1e1;
	}
		

/* Filtros */
	#tipo, #estadoimovel {
		min-width: 60px;
	}
	#map {
		display: none;
		height: calc(100vh - 120px);
	}
	#filtros {
		display: none;
	}
	#map-bt {
		display: none;
	}
	.slider::-webkit-slider-thumb {
		width: 25px;
		height: 25px;
	}
	
	.slider::-moz-range-thumb {
		width: 25px;
		height: 25x;
	}	
	.filtroInputSlider {
		background-color: #eaeaea;
		margin-top: 7px;
		color: #000000;
	}
	.prefix, .prefix-ate, .suffix-ate, .suffix {
		margin-top: 7px;
		color: #808080;
	}
	.filtro-paragrafo{
		margin-top: 15px;
	}
	.filters {
		justify-content: center;
	}	
	.map-filter-container, .button-filtros {
		width: 100%;
	}
	.dot-containerPicDetail {
		left: calc(50% - 100px);
	}
	
	/* IA */
	.ia-focus-mode .ia-input-container .search-input {
        height: 30px !important; /* Altura fixa menor */
        min-height: 30px !important; 
        max-height: 30px !important;
        resize: none;
        overflow-y: hidden; /* Evita a barra de rolagem interna */
    }
}

@media ( min-width : 1410px) {
	#filtroAreaCabecalho {
		display: block;
	}
}

@media ( min-width : 1230px) {
	#filtroBanheirosCabecalho {
		display: block;
	}
}

@media ( min-width : 1030px) {
	#filtroQuartosCabecalho {
		display: block;
	}
}

@media ( min-width : 850px) {
	.map-filter-container, #filtroValorCabecalho {
		display: block;
	}
}

@media ( max-width : 850px) {
	.imovel-list-container {
		width: 100%;
	}
}

@media ( max-width : 380px) {
	.logo{
		height: 40px;	
	}
	.hero .filter-container {
		bottom: 200px;
	}	
}


/* No device-mobile.css, dentro ou após a media query de 500px */
@media (max-width: 500px) {
    
    /* 1. Bloqueio de scroll da página e ocultação de outras secções */
    body.ia-focus-active {
        overflow: hidden !important;
        position: fixed; /* Impede o scroll elástico do iOS */
        width: 100%;
    }

    /* Esconde todas as outras secções quando o chat está em foco */
    body.ia-focus-active .section:not(#busca) {
        display: none !important;
    }

    /* 2. Container de Busca em ecrã total */
    .ia-focus-mode .filter-container {
        position: fixed;
        top: 70px; /* Alinhado abaixo do seu header de 70px */
        left: 0;
        width: 100%;
        height: calc(100vh - 70px);
        margin: 0;
        z-index: 10;
        display: flex;
        flex-direction: column;
        border-radius: 0; /* Remove cantos arredondados na junção com o header */
		padding: 10px ; 
        background-color: #fff !important;
        box-sizing: border-box;        
        flex-shrink: 0;
    }
    .ia-focus-mode #ia-search-container {
        display: flex !important;
        flex-direction: column;
        height: 100vh; /* Ocupa a altura total da visualização */
        position: fixed;
        top: 70px;
        left: 0;
        width: 100%;
        z-index: 9999;
        background-color: #fff;
    }

    /* Remove sombras e bordas do box interno para parecer uma aplicação nativa */
    .ia-focus-mode .filter-box {
        flex: 1;
        display: flex;
        flex-direction: column;
        box-shadow: none;
        padding: 0;
        border-radius: 0;
        margin: 0;
        background-color: #fff;
    }

    /* 3. Fixação do Prompt e Histórico Rolável */
    .ia-focus-mode #ia-search-container {
        display: flex !important;
        flex-direction: column;
        height: 100%;
    }
    
	.ia-focus-mode .chat-history {
        flex: 1;
        overflow-y: auto;
        padding-bottom: 140px; /* Espaço para o prompt fixo não cobrir as mensagens */
        transition: height 0.2s ease-out;
    }

/* O container do input (ia-prompt) fixado no rodapé */
    .ia-focus-mode .ia-input-container {
        position: fixed;
        bottom: 15px; /* Margem de 15px da borda inferior */
        left: 15px;
        right: 15px;
        width: calc(100% - 30px); /* Ajusta largura com margens laterais */
        background-color: #fff;
        padding-left: 10px;
        padding-right: 10px;
        border: 1px solid #ccc;
        border-radius: 15px;
        z-index: 10000;
    }

    /* Oculta elementos de interface desnecessários */
    .ia-focus-mode .filter-container h2,
    .ia-focus-mode .underline,
    .ia-focus-mode .tabs-wrapper,
    .ia-focus-mode .filter-container h3 {
        display: none !important;
    }
}