:root {
    --green-main: #2d4a3e;
    /* Ajuste o código HEX conforme o verde do seu logo */
    --gold-accent: #c5a059;
    /* O tom dourado/claro do logo */
}

.bg-dark-gray {
    background-color: var(--green-main) !important;
}

.btn-dark-gray {
    background-color: var(--green-main) !important;
    color: #fff;
}

/* --- Cores da Navbar --- */
.navbar-nav .nav-link {
    color: #f8e6d2 !important;
    transition: color 0.3s ease;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active {
    color: #c28e75 !important;
}

/* --- Hero: Tipografia e Alinhamento Dinâmico --- */
.hero-title-main {
    color: #f8e6d2 !important;
    font-size: clamp(40px, 9.5vw, 140px);
    line-height: 0.85;
    letter-spacing: -2px;
    white-space: nowrap;
    /* Impede a palavra de partir a última letra */
    pointer-events: none;
    font-weight: 400;
}

.hero-word-varandas {
    transform: translateY(-20px);
}

.hero-word-santana {
    /* Posição calculada para o S bater exatamente no s final */
    margin-left: calc(clamp(40px, 9.5vw, 140px) * 3.4);
    transform: translateY(10px);
}

/* --- Manter a barra de navegação compacta e alinhada ao topo --- */
.navbar {
    min-height: 90px !important;
    position: relative;
    align-items: center;
}

/* Garante que o menu e o botão ficam alinhados na altura correta */
.navbar .menu-order,
.navbar .header-button {
    align-self: center;
}

/* --- Logótipo Flutuante Grande (230px) sem empurrar o menu --- */
@media (min-width: 992px) {
    .navbar-brand {
        position: absolute !important;
        top: 15px !important;
        /* Ajuste a distância ao topo se necessário */
        left: 45px !important;
        /* Alinhamento à margem esquerda */
        z-index: 100 !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .navbar-brand img {
        max-height: 230px !important;
        height: auto !important;
        width: auto !important;
        display: block;
        filter: drop-shadow(0 4px 15px rgba(0, 0, 0, 0.4));
        /* Garante contraste se tocar na imagem */
    }
}

/* Ajuste proporcional para ecrãs menores / mobile */
@media (max-width: 991px) {
    .navbar-brand img {
        max-height: 70px !important;
        /* Em telemóveis reduz para não tapar o ecrã todo */
        height: auto !important;
        width: auto !important;
    }
}