/* Fonts: */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

/* Styles */
body {
    font-family: "Inter", sans-serif;
}
.carousel-item img {
    aspect-ratio: 16 / 7;
    object-fit: cover;
    object-position: center;
}
.carousel-item .contenido {
    position: absolute;
    width: 100%;
    bottom: 65px;
    text-align: center;
    color: #fff;
    & h2 {
        /* background: #2A0B08A3; */
        display: inline-block;
        padding: 5px 20px;
        font-size: calc(1.6vw*2);
        font-weight: 600;
        text-shadow: 1px 1px 2px #000;
    }
}

section {
    overflow: hidden;
}

a {
    text-decoration: none;
}

.carousel-control-prev {
    background: linear-gradient(90deg, rgb(42, 11, 8) 0%, rgba(42,11,8,0) 100%);
}
.carousel-control-next {
    background: linear-gradient(90deg, rgba(42,11,8,0) 0%, rgba(42,11,8,1) 100%);
}

.modal-header .btn-close {
    filter: invert();
}

p {
    font-size: 15px;
}

h2 {
    font-weight: 800;
}

.taus {
    color: #53301F;
    font-size: 45px;
    text-transform: uppercase;
    font-weight: 800;
}

.text-justify, p {
    text-align: justify;
}

section.white {
    background: #fff;
    color: #000;
    padding: 110px 0;
}

section.brown1 {
    background-color: #E7D6C9;
    padding: 110px 0;
}
section.brown2 {
    background-color: #2A0B08;
    padding: 110px 0;
    color: #fff;

    & h2, h3 {
        color: #E59B39;
    }
}

.navegacion {
    position: absolute; 
    top: 0; 
    background: #00000057; 
    padding: 30px 0 0; 
    width: 100%; 
    text-align: center;
    z-index: 10;

    & .logo {
        transform: translateY(-25px);
    }
}

nav.top {
    & ul {
        gap: 30px;
        justify-content: center;
        margin: 0;
        padding: 0;
        & li {
            list-style: none;
            & a {
                color: #fff;
                text-transform: uppercase;
                transition: .3s;
                font-weight: 700;
                font-size: 17px;
            }
            & a:hover {
                color: #f8c17f;
            }
        }
    }
}

section.marcando {
    padding-bottom: 200px;
}

.diferencia {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
    & .box {
        transition: .3s;
        /* flex: 1 1 calc(50% - 20px); */
        box-shadow: 0px 0px 0px 0px #2a0b08;
        background: #DC7900;
        background-image: url('/img/d2.webp');
        background-repeat: no-repeat;
        background-position: center 30px;
        color: #fff;
        width: 235px;
        height: 285px;
        border-radius: 17px;
        position: relative;
        & .content {
            position: absolute;
            bottom: 0;
            width: 100%;
            padding: 25px;
            & h3 {
                font-size: 22px;
                font-weight: 700;
            }
            & p {
                font-size: 17px;
            }
        }
    }
    & .box.v2 {
        background: #8C8560;
        background-image: url('/img/d1.webp');
        background-repeat: no-repeat;
        background-position: center 45px;
    }
    & .box.bgi {
        background-size: cover;
        background-position: initial;
    }
    & .box:hover {
        transform: scale(1.20);
        box-shadow: 0px 0px 80px -4px #2a0b08;
        z-index: 1;
    }
}

section.historia {
    overflow:initial;
    padding: 190px 0 50px;
    color: #fff;
    /* background-image: url('/img/bghistoria.webp'); */
    background-size: cover;
    position: relative;
    & .cacao {
        position: absolute;
        left: 50%;
        top: -170px;
        transform: translateX(-50%);
        width: 470px;
    }
}
section.historia2 {
    overflow:initial;
    background-color: #E59B39;
    color: #fff;
    padding: 40px 0 165px;
    position: relative;
    & .cacao {
        position: absolute;
        left: 50%;
        bottom: -70px;
        transform: translateX(-50%);
        width: 470px;
    }
}

section.productos {
    padding-top: 100px;
}


.sostenibilidad {
    background: #DC7900;
    border-radius: 17px;
    padding: 33px 20px 15px;
    text-align: center;
    position: relative;
    transition: .3s;
    margin: 10px 0;
    & h3 {
        color: #fff;
        font-weight: 700;
        font-size: 30px;
    }
    & a {
        color: #fff;
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
    }
    & p {
        text-align: center;
    }
}
.modal h1 {
    text-decoration: underline;
    text-decoration-color: #DC7900;
    font-weight: 700;
    font-size: 30px;
}
.icon {
    height: 70px;
    filter: invert();
    margin-top: 30px;
}
.sostenibilidad.v2 {
    background: #2A0B08;
}
.sostenibilidad.v3 {
    background: #8C8560;
}
.sostenibilidad:hover {
    transform: scale(1.2);
    z-index: 2;
}

.modal-content {
    background: #2A0B08;
    color: #fff;
}
.modal-header {
    border-bottom: none;
}
.modal-footer  {
    border-top: none;
}
.btn-close {
    position: absolute;
    right: 20px;
    top: 20px;
}

.btn-primary {
    background: #dc7900;
    border: #dc7900;
}
.btn-primary:hover {
    background: #ff8c00;
    border: #ff8c00;
}



section.contacto {
    padding: 110px 0;
    background: url('/img/contactobg.webp');
}


footer {
    background: #2A0B08;
    text-align: center;
    color: #ffffff53;
    font-size: 15px;
    padding: 30px 0;
    & p {
        text-align: center;
    }
    & .socials {
        display: flex;
        justify-content: center;
        gap: 20px;
        margin-bottom: 30px;
        & img {
            filter: invert();
        }
    }
}

section.nosotros {
    background: none;
}

section.galeria {
    & .item {
        aspect-ratio: 1 / 1;
        object-fit: cover;
        object-position: center;
        border-radius: 20px;
        transition: .3s;
        width: 100%;
        margin-bottom: 30px;
    }
    & .item:hover {
        transform: scale(1.1);
    }
}

@media (max-width: 768px) { 
    .navegacion {
        position: initial;
        background: #290a07;
    }
}