/* ==========================================================================
   SINGLE PROPERTY PAGE
   ========================================================================== */
.single-property-main {
    padding: clamp(32px, 5vw, 64px) 0 0 0;
}

/* --- Link Voltar --- */
.property-back-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-heading);
    font-size: clamp(15px, 1.5vw, 18px);
    font-weight: 600;
    color: var(--color-primary-600);
    text-decoration: none;
    margin-bottom: 24px;
    transition: color 0.3s ease;
}

.property-back-link svg {
    transition: transform 0.3s ease;
}

.property-back-link:hover {
    color: var(--color-primary-800, #1E40AF);
}

.property-back-link:hover svg {
    transform: translateX(-4px);
}

.property-main-details {
    min-width: 0;
}

/* --- Tipografia Topo --- */
.property-top-meta {
    font-family: var(--font-body);
    font-size: clamp(11px, 1.2vw, 14px);
    font-weight: 600;
    color: var(--color-primary-600);
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
    letter-spacing: 0.5px;
}

.meta-separator {
    color: var(--color-primary-600);
}

.property-main-title {
    font-family: var(--font-heading);
    font-size: clamp(28px, 4vw, 32px);
    font-weight: 600;
    color: var(--color-neutral-900);
    margin: 0 0 48px 0;
    line-height: 1.2;
}

.property-subtitle {
    font-size: clamp(16px, 1.8vw, 18px);
    color: var(--color-neutral-500, #6B7280);
    margin: 0 0 32px 0;
}

/* ==========================================================================
   PROPERTY CONTENT LAYOUT (Main + Sidebar)
   ========================================================================== */

/* Em mobile, fica em coluna (1fr). Em desktop, divide a tela. */
.property-content-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(28px, 3.3vw, 40px);
    align-items: start;
    /* Importante para o sticky funcionar */
}

@media (min-width: 992px) {
    .property-content-layout {
        /* A coluna principal ocupa o espaço disponível, a sidebar fixa em 380px */
        grid-template-columns: minmax(0, 1fr) 380px;
    }
}

/* --- Secções de Conteúdo --- */
.property-section {
    margin-bottom: clamp(32px, 5vw, 48px);
}

.section-title {
    font-family: var(--font-heading);
    font-size: clamp(22px, 3vw, 30px);
    font-weight: 600;
    color: var(--color-neutral-900);
    margin: 0 0 24px 0;
}

.section-content p {
    font-size: clamp(16px, 1.8vw, 18px);
    color: var(--color-neutral-700);
    line-height: 1.7;
    margin-bottom: 16px;
}

.section-divider {
    border: 0;
    height: 1px;
    background-color: var(--color-neutral-200, #E5E7EB);
    margin: clamp(32px, 5vw, 48px) 0;
}