/*
* {
    outline: 1px solid red;
}
    */

:root {
    /* Paleta principal */
    --color-primary: #007BFF;
    --color-black: #010101;
    --color-white: #FFF;
    --color-gray-light: #F5F5F5;
    --color-dark-gray: #333333;

    --color-off-white: #F9F7F3;
    --color-bege: #E9E3D0;
    --color-green: #446d48;
    --color-dark-green: #1F3322;
    --color-orange: #d9662c;
    --color-dark-orange: #c95820;
    --color-brown: #8c4a2f;
    --color-dark-brown: #6e3721;

    /* Transição */
    --border-radius: 0.5rem;
    --transition: all 0.3s ease-in-out;
}

html {
    scroll-padding-top: 6.95rem;
    scroll-behavior: smooth;
}

body {
    font-family: "Poppins", sans-serif;
    margin: 0;
    padding: 0;
    background: var(--color-off-white);
    color: var(--color-black);
}

.top-bar {
    background: var(--color-black);
    color: var(--color-off-white);
    font-weight: 600;
}

.top-icon {
    color: var(--color-off-white);
}

.top-icon:hover,
.top-icon:active {
    color: var(--color-orange);
}

.contato-icon {
    color: var(--color-orange);
}

.contato-icon:hover,
.contato-icon:active {
    color: var(--color-dark-orange);
}

nav {
    background: var(--color-white);
}

.navbar-brand {
    font-weight: bold;
    color: var(--color-black);
}

.nav-link,
.dropdown-item {
    color: var(--color-black);
    font-size: 1rem;
    font-weight: 500;
}

.nav-link:hover,
.nav-link:active,
.dropdown-item:hover,
.dropdown-item:active {
    color: var(--color-orange);
    font-size: 1rem;
}

nav img {
    width: 200px;
    height: auto;
}

.nav-link-sponsor {
    background-color: var(--color-green);
    color: var(--color-white) !important;
    font-size: 1rem;
    font-weight: 500;
    padding-left: .75rem !important;
    padding-right: .75rem !important;
    width: 207px;
}

.nav-link-sponsor:hover,
.nav-link-sponsor:active {
    background-color: var(--color-dark-green);
    color: var(var(--color-off-white));
    font-size: 1rem;
}

.dropdown-menu {
    border: 0;
    border-radius: 0;
}

.dropdown-item:hover,
.dropdown-item:active,
.dropdown-item:focus {
    background: transparent;
}

.hero {
    color: var(--color-white);
    text-align: center;
    padding: 100px 20px;
    width: 100%;
    position: relative;
    min-height: 50vh;
    overflow: hidden;
    z-index: 0;
}


.hero-video {
    position: relative;
    min-height: 50vh;
    overflow: hidden;
}

.video-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.hero-video .container {
    z-index: 2;
    position: relative;
}

.scroll-down-arrow {
    position: absolute;
    bottom: 70px;
    /* Ajuste conforme necessário */
    left: 50%;
    transform: translateX(-50%);
    animation: pulse 2s infinite;
    z-index: 2;
}

.scroll-down-arrow:hover {
    transform: translateY(5px);
}

.hero-pages {
    background: url('../assets/img/pedra-bau.png') no-repeat center 60%;
    background-size: cover;
}


@keyframes pulse {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(10px);
    }

    100% {
        transform: translateY(0);
    }
}



.container-xl {
    padding: 3rem 0;
}

.video-mobile {
    width: 100vw;
    margin-top: 2rem;
    margin-bottom: -1px;
    overflow: hidden;
}

.video-mobile video {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    border-radius: 0;
}

.title {
    color: var(--color-green);
    font-family: "Rubik Dirt", system-ui;
    font-size: 2.75rem;
}

.section-title {
    color: var(--color-dark-gray);
    font-size: 1.25rem;
    font-weight: 600;
}

#missao {
    background: url('../assets/img/topografia-green.svg') no-repeat center 40%;
    background-size: cover;
}

#esportes {
    background: url('../assets/img/topografia-green.svg') no-repeat center 40%;
    background-size: cover;
}

#videos {
    background: url('../assets/img/topografia-green.svg') no-repeat center 40%;
    background-size: cover;
}

#depoimentos {
    background: url('../assets/img/topografia-dark.svg') no-repeat center 40%;
    background-size: cover;
}

.icon-color {
    color: var(--color-orange) !important;
}

.depoimentos blockquote {
    font-style: italic;
    font-size: 1rem;
    line-height: 1.2;
    max-width: 700px;
    margin: 0 auto;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    background-color: transparent;
    border-radius: 0;
}

.carousel-control-next,
.carousel-control-prev {
    opacity: 1;
}

.next-edition {
    position: relative;
    overflow: hidden;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: auto;
}

.next-edition .bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.next-edition::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 2;

}

.next-edition .container {
    position: relative;
    z-index: 3;
    text-align: center;
    padding: 5rem 1rem;
}

.atividade-item .icon-wrap {
    background-color: var(--color-white);
    color: var(--color-black);
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    border-radius: 50%;
    font-size: 36px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
    transition: var(--transition);
}

.atividade-item:hover .icon-wrap {
    background-color: var(--color-primary);
    color: var(--color-white);
    transform: scale(1.05);
}

.atividade-item h5 {
    margin-top: 15px;
    font-size: 1.1rem;
}

.atividade-item p {
    font-size: 0.9rem;
    color: var(--color-gray-light);
}

.card {
    border-radius: 0 !important;
    background-color: var(--color-white);
}

.card-title,
.people-card-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--color-green);
}

.card-text,
.people-card-text {
    font-size: 1rem;
    font-weight: 300;
}

.orientacoes-text {
    font-size: 1.25rem;
    font-weight: 600;
}

.orientacoes-text+p {
    font-size: 1rem;
    font-weight: 300;
}

.orientacoes-icon {
    color: var(--color-green) !important;
}

.sustentabilidade {
    background: url('../assets/img/sustentabilidade.png') no-repeat center 40%;
    background-size: cover;
    position: relative;
    overflow: hidden;
    z-index: 1;
    color: var(--color-white);
    text-align: center;
    padding: 5rem 1rem;
    width: 100%;
    height: auto;
}

.sustentabilidade-text {
    max-width: 600px;
    margin-left: auto;
    margin-right: 0;
}

.sustentabilidade::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: -1;

}

.turismo {
    background: url('../assets/img/sao-bento-sapucai.png') no-repeat center 60%;
    background-size: cover;
    color: var(--color-white);
    text-align: center;
    padding: 5rem 1rem;
    width: 100%;
    height: auto;
    position: relative;
    min-height: 40vh;
    overflow: hidden;
    z-index: 0;
}

.turismo::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6));
    z-index: 1;
}

.turismo>.container {
    position: relative;
    z-index: 2;
    /* texto fica acima do overlay */
}

hr {
    color: var(--color-brown) !important;
    opacity: 0.2;
}

.disabled {
    background-color: var(--color-orange) !important;
}

.btn-primary {
    background-color: var(--color-orange);
    color: var(--color-off-white);
    border-radius: 0;
    border: 0;
    font-weight: 600;
}

.btn-primary:hover,
.btn-primary:active {
    background-color: var(--color-dark-orange) !important;
}

.btn-secondary {
    background-color: var(--color-brown);
    color: var(--color-off-white);
    border-radius: 0;
    border: 0;
    font-weight: 600;
    font-size: 1rem;
}

.btn-secondary:hover,
.btn-secondary:active {
    background-color: var(--color-dark-brown) !important;
}

.btn-cta {
    background-color: var(--color-green);
    color: var(--color-off-white);
    border-radius: 0;
    border: 0;
    font-weight: 600;
}

.btn-sm {
    padding: .5rem .75rem;
    font-size: 1rem;
}

.btn-lg {
    padding: 1rem 1.5rem;
    font-size: 1.25rem;
}

.text-orange {
    color: var(--color-orange);
}

.text-bege {
    color: var(--color-bege);
}

.text-brown {
    color: var(--color-brown);
}

.text-off-white {
    color: var(--color-off-white);
}

.bg-bege {
    background-color: var(--color-bege) !important;
}

.bg-light {
    background-color: var(--color-off-white) !important;
}

.bg-dark {
    background-color: var(--color-black) !important;
}

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

.bg-blue {
    background-color: var(--color-primary) !important;
}

#patrocinadores,
#silhueta {
    background: url('../assets/img/sillhouete.svg') no-repeat center 101%;
    background-size: 100% auto;
}

footer {
    /* background: url('../assets/img/topografia-dark.svg') no-repeat center -10%;
    background-size: cover; */
    color: var(--color-white);
    text-align: center;
    padding: 20px 0;
}

.copyright {
    background-color: var(--color-black);
    font-size: 0.85rem;
    color: #888;
    overflow-x: hidden;
    padding-left: 1rem;
    padding-right: 1rem;
}

footer .copyright .row {
    margin-left: 0;
    margin-right: 0;
}

.numeros {
    font-family: "Rubik Dirt", system-ui;
    color: var(--color-orange);
    font-size: 2.75rem;
}

.hero-title {
    font-size: 3rem;
    font-weight: 700;
}

.hero-subtitle {
    font-size: 2rem;
    font-weight: 300;
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.2));
    z-index: 1;
}

.hero>.container {
    position: relative;
    z-index: 2;
    /* texto fica acima do overlay */
}

.text-justify {
    text-align: justify;
}

img.cursor-pointer {
    cursor: pointer !important;
}

span {
    font-weight: 600;
}

.form-control {
    border-radius: 0 !important;
}

.img-cover {
    object-fit: cover;
}

#cookie-banner {
    position: fixed;
    bottom: 0;
    width: 100%;
    background: var(--color-dark-green);
    color: white;
    padding: 16px;
    text-align: center;
    z-index: 9999;
    display: none;
}

/* Media Query */

/* Extra pequeno (celulares pequenos em pé) */
@media (max-width: 575.98px) {
    .title {
        font-size: 2rem;
    }

    .sustentabilidade {
        padding: 5rem .75rem;
    }

    .next-edition .container {
        padding: 2rem 1rem;
    }

    .container-xl {
        padding: 2rem 1.5rem;
    }

    nav img {
        width: 150px;
        height: auto;
        padding-left: 1rem;
    }

    #patrocinadores {
        background: url(../assets/img/sillhouete.svg) no-repeat center 100.1%;
    }

    #silhueta {
        background: url(../assets/img/sillhouete.svg) no-repeat center 100.2%;
    }

    .hero-title {
        font-size: 2rem;
        font-weight: 700;
    }

    .hero-subtitle {
        font-size: 1.25rem;
        font-weight: 300;
    }

    .order-xs-1 {
        order: 1;
    }

    .order-xs-2 {
        order: 2;
    }
}

/* Celulares: de 576px até 768px */
@media (min-width: 576px) and (max-width: 768.98px) {
    .title {
        font-size: 2.25rem;
    }

    .sustentabilidade {
        padding: 5rem 0;
    }

    .container-xl {
        padding: 2rem 1rem;
    }

    .hero-title {
        font-size: 2.5rem;
        font-weight: 700;
    }

    .hero-subtitle {
        font-size: 1.5rem;
        font-weight: 300;
    }

}

/* Celulares: até 768px */
@media (max-width: 768.98px) {
    #esportes h5 {
        font-size: 1rem;
    }

    #como-chegar iframe {
        margin-top: 2rem;
    }

    .next-edition .bg-video {
        object-fit: cover;
        height: 100%;
        width: 100%;
    }

    nav img {
        width: 150px;
        height: auto;
    }

    .navbar {
        padding: 1rem 0 !important;
    }

    html {
        scroll-padding-top: 4.8rem;
        /* maior para mobile, se o menu cobre mais */
    }

}

/* Tablets: 769px a 992px */
@media (min-width: 769px) and (max-width: 991.98px) {
    .title {
        font-size: 2.5rem;
    }

    .hero-subtitle {
        font-size: 1.75rem;
        font-weight: 300;
    }

}

/* Tablet: até 992px */
@media (max-width: 991.98px) {
    #sobre {
        padding-bottom: 0 !important;
    }

    .container-xl {
        padding: 1rem 1rem;
    }

    .section-title {
        padding-top: 1.5rem;
    }

    .sustentabilidade-edicao .col-12 img {
        padding-bottom: 1.5rem;
    }

    .card-text,
    .people-card-text {
        font-size: .85rem;
        font-weight: 300;
    }
}

/* Laptops: 1024px */
@media (min-width: 1024px) {

    .nav-link-sponsor {
        margin-left: .5rem;
    }
}

/* Laptops: 1024px a 1439.98px */
@media (min-width: 1024px) and (max-width: 1439.98px) {

    .ajust-height {
        height: 100% !important;
    }
}

/* Telas grandes: 1440px+ */
@media (min-width: 1440px) {
    ...
}