/* ======================================= */
/* ESTILOS PARA A PÁGINA DE DETALHES       */
/* COM A IDENTIDADE "TERRAS & TERRENOS"    */
/* TEMA CLARO                              */
/* ======================================= */

.page-detalhe {
    padding-top: .5rem;
    padding-bottom: .5rem;
}

.titulo-imovel-detalhe {
    font-size: 2.8rem;
    color: var(--cor-texto-titulo);
	background-color: var(--cor-detalhe-fundo);
    margin-bottom: .5rem;
    text-align: left;
}

.destaque-finalidade {
    font-size: 1.8rem;
    color: var(--cor-finalidade);
	background-color: var(--cor-finalidade-fundo);
    margin-bottom: .5rem;
    text-align: left;
}

.destaque-lancamento {
    font-size: 1.8rem;
    color: var(--cor-texto-principal);
    margin-bottom: .5rem;
    text-align: left;
}

.detalhe-grid {
    display: flex; /* Habilita o Flexbox para o contêiner */
    flex-wrap: wrap; /* Permite que as colunas quebrem para a linha de baixo se não houver espaço */
    gap: 20px; /* Espaço entre as colunas */

    /*display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 2.5rem;*/
}

.detalhe-grid-unica {
    display: flex; /* Habilita o Flexbox para o contêiner */
    flex-wrap: wrap; /* Permite que as colunas quebrem para a linha de baixo se não houver espaço */
    gap: 20px; /* Espaço entre as colunas */
    color: #000;
	background: #FFF;
	padding: 20px;
    border-radius: 8px;
    border: 1px solid var(--cor-borda);
}

.coluna-principal {
	flex-grow: 2; /* Define essa coluna mais larga. Pode crescer mais */
	flex-shrink: 1;
	flex-basis: 0;
    padding: 5px;
    box-sizing: border-box; /* Garante que o padding não adicione à largura total */
    min-width: 400px; /* Previne que a coluna fique muito estreita */

    /*display: flex;
    flex-direction: column;
    gap: 2.5rem;*/
}

.secao-detalhes h2,
.card-lateral h3 {
    font-size: 1.8rem;
    color: var(--cor-texto-titulo);
    margin-bottom: 1.5rem;
    margin-top: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--cor-borda);
}

.secao-detalhes-unica h2 {
    font-size: 1.8rem;
    color: #000;
    margin-bottom: 1.5rem;
    margin-top: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--cor-borda);
}

.card-lateral table {
	width: 100%;
}

.card-lateral td {
    font-size: 1.0rem;
    color: var(--cor-texto-claro);
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--cor-borda);
}

/* --- Galeria de Imagens --- */
.imagem-principal img {
    width: 100%;
    height: auto;
    max-height: 550px;
	min-width: 350px;
    min-height: 350px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--cor-borda);
}

.imagem-principal iframe {
    width: 100%;
    max-height: 550px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--cor-borda);
}

.thumbnails {
    display: grid;
    grid-template-columns: repeat(auto-fit, 60px);
    gap: .02rem;
}

.thumbnails .thumb {
    width: 100%;
	max-width: 60px;
    height: 45px;
    object-fit: cover;
    cursor: pointer;
    border-radius: 4px;
    border: 2px solid transparent;
    transition: all 0.3s ease;
}

.thumbnails .thumb:hover,
.thumbnails .thumb.active {
    border-color: var(--azul-marinho);
}

/* --- Características e Descrição --- */
.secao-detalhes p {
    color: var(--cor-texto-detalhe);
    margin-bottom: 1rem;
}

.secao-detalhes-unica p {
    color: #000;
    margin-bottom: 1rem;
}

.secao-financiamento p {
    color: var(--cor-texto-claro);
    margin-bottom: 1rem;
}

.lista-caracteristicas {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 0.3rem;
}

.lista-caracteristicas li {
    background-color: var(--cor-fundo);
	padding-left: 1rem;
    border-radius: 5px;
    color: var(--cor-azul-escuro);
    border-left: 3px solid var(--azul-marinho);
}

.lista-caracteristicas li i {
    color: var(--azul-marinho);
    margin-right: 10px;
}

/* --- Mapa --- */
.mapa-container iframe { border-radius: 8px; }

/* --- Coluna Lateral (Preço e Contato) --- */
.coluna-lateral {
	flex-grow: 1; /* Define essa coluna mais estreita. Pode crescer mais */
	flex-shrink: 1;
	flex-basis: 0;
    padding: 5px;
    box-sizing: border-box; /* Garante que o padding não adicione à largura total */
    min-width: 400px; /* Previne que a coluna fique muito estreita */

    /*position: sticky;
    top: 120px;
    height: fit-content;*/
}

/* Media Query para telas maiores (desktops) */
/* Quando a largura da tela for maior que 768px, as colunas ficam lado a lado */
@media (min-width: 768px) {
	.titulo-imovel-detalhe{
		font-size: 2.8rem;
	}
    .detalhe-grid {
        flex-direction: row; /* Mantém as colunas lado a lado */
    }
}

/* Media Query para telas menores (celulares) */
/* Quando a largura da tela for menor que 768px, as colunas ficam uma abaixo da outra */
@media (max-width: 767px) {
	.titulo-imovel-detalhe{
		font-size: 2.0rem;
	}
    .detalhe-grid {
        flex-direction: column; /* Altera a direção para empilhar as colunas */
    }
    .coluna-principal .coluna-lateral {
        min-width: 100%; /* Faz com que cada coluna ocupe a largura total */
    }
}

.card-lateral {
    background-color: var(--cor-verde-escuro);
    border: 1px solid var(--cor-borda);
    border-radius: 8px;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    box-shadow: 0 5px 15px var(--sombra);
}

.secao-preco .preco-label {
    font-size: 1rem;
    color: var(--cor-texto-secundario);
}

.secao-preco .preco-valor {
    width: 100%;
    text-align: center;
    font-size: 2.2rem;
    font-weight: 700;
	background-color:  #F60;
    color: var(--cor-texto-claro);
    border-radius: 20px;
    display: inline-block;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

.info-adicional {
    font-size: 1.0rem;
    color: var(--cor-texto-secundario);
	text-align: right;
}

.info-adicional p { margin-bottom: 0.5rem; }
.info-adicional i { margin-right: 8px; }

/* Botão tipo "Ghost" */
.btn-simular {
    display: block;
    width: 100%;
    text-align: center;
    background-color: #006;
    color: var(--cor-texto-claro);
    border: 2px solid var(--azul-marinho);
    padding: 0.8rem;
    border-radius: 5px;
    text-decoration: none;
    font-weight: 700;
    transition: all 0.3s ease;
}

.btn-simular:hover {
    background-color: #009;
    color: var(--cor-texto-claro);
}

/* --- Formulário de Contato --- */
.form-group { margin-bottom: 1rem; }
.form-group label { 
	display: block; 
	margin-bottom: 0.5rem; 
	color: var(--cor-texto-claro); }

.form-group input,
.form-group textarea {
    width: 100%;
    padding: 0.8rem;
    background-color: var(--cor-fundo);
    border: 1px solid var(--cor-borda);
    color: var(--cor-texto-principal);
    border-radius: 4px;
}

.btn-enviar-proposta {
    width: 100%;
    background-color: #006;
    color: var(--cor-texto-claro);
    border: 2px solid var(--azul-marinho);
    padding: 1rem;
    cursor: pointer;
    font-size: 1.1rem;
    font-weight: 700;
    border-radius: 4px;
    transition: background-color 0.3s ease;
}

.btn-enviar-proposta:hover {
    background-color: #009;
    color: var(--cor-texto-claro);
}

/* --- Imóveis Similares --- */
.similares {
    padding: 4rem 0;
    margin-top: 2rem;
    border-top: 1px solid var(--cor-borda);
}

.similares h2 {
    text-align: center;
    font-size: 2.5rem;
    margin-bottom: 3rem;
    color: var(--cor-texto-principal);
}

.whatsapp-button {
    position: fixed;
    top: 115px;
    right: 50px;
    z-index: 999; /* Garante que o botão fique acima de outros elementos */
}

.whatsapp-button img {
    /*width: 100px;  Ajuste o tamanho da imagem */
    height: 50px;
    border-radius: 0%;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    cursor: pointer;
}

/* Opcional: Estilo para tornar o botão pulsante */
.whatsapp-button img {
    animation: pulse 1.5s infinite;
}

@keyframes pulse {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(0, 128, 0, 0.7);
    }
    70% {
        transform: scale(1);
        box-shadow: 0 0 0 10px rgba(0, 128, 0, 0);
    }
    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(0, 128, 0, 0);
    }
}
/* ... (Responsividade sem alterações) ... */