:root {
    --color-footer: #0f0f0f;
    --color-white: #ffffff;
    --container-width: 1200px;
    --button-pulse-color: rgba(223, 117, 33, 0.58);
    --button-pulse-fade-color: rgba(223, 117, 33, 0);
    --button-pulse-size: 20px;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    font-family: Arial, Helvetica, sans-serif;
    color: #222222;
    background: #ffffff;
}

.container {
    width: min(100% - 32px, var(--container-width));
    margin-inline: auto;
}

@keyframes button-pulse {
    0% {
        box-shadow: 0 0 0 0 var(--button-pulse-color);
    }

    70% {
        box-shadow: 0 0 0 var(--button-pulse-size) var(--button-pulse-fade-color);
    }

    100% {
        box-shadow: 0 0 0 0 var(--button-pulse-fade-color);
    }
}

@keyframes button-breathe {
    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.045);
    }
}

.main-menu__button {
    animation: button-breathe 2.6s ease-in-out infinite;
}

.hero-section__button,
.preco-lote-fundador-section__button {
    animation: button-pulse 2s ease-out infinite;
}

.main-menu__button:hover,
.main-menu__button:focus-visible {
    animation-play-state: paused;
}

.hero-section__button:hover,
.preco-lote-fundador-section__button:hover,
.hero-section__button:focus-visible,
.preco-lote-fundador-section__button:focus-visible {
    animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
    .main-menu__button,
    .hero-section__button,
    .preco-lote-fundador-section__button {
        animation: none;
    }
}

.site-footer {
    margin-top: auto;
    padding: 24px 0;
    color: var(--color-white);
    font-weight: 300;
    background: var(--color-footer);
    text-align: center;
}

.site-footer p {
    font-size: 15px;
    line-height: 1.5;
}

@media (max-width: 600px) {
    .site-footer {
        padding: 20px 20px;
    }

    .site-footer p {
        font-size: 15px;
    }
}
