/* .top-navbar, */
.footer{
    display: none;
}

.banner-container{
    position: relative;
    width: 100%;
}

.banner-content{
    position: absolute;
    bottom: 6rem;
}

.banner-title{
    font-size: 1.5rem;
    width: 100%;
    padding: 0 10%;
    font-weight: normal;
    color: black;
    position: relative;
}

.banner-title > strong{
    color: var(--primary-color);
}

.banner-title::after{
    content: '';
    position: absolute;
    top: 90%;
    left: 0;
    aspect-ratio: 2/1;
    height: 5.5rem;
    background-image: url('/res/img/common/Flecha-Roja.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.services-container{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.services-img-container{
    width: 100%;
    position: relative;
}

.services-img-content{
    position: absolute;
    width: 100%;
    top: 55%;
    transform: translateY(-50%);
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10%;
}

.services-title{
    font-size: 1.75rem;
    font-weight: normal;
    color: white;
}

.services-title-red{
    font-size: 1.75rem;
    color: var(--primary-color);
}

@media (width <= 370px){
    .services-title,
    .services-title-red{
        font-size: 1.5rem;
    }  
}

.services-content{
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 6rem 7.5%;
    gap: 5rem;
}

.service{
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 1.5rem;
}

.service-img-container{
    width: 100%;
    position: relative;
    transition: scale 0.5s ease;
}

.service-img{
    border-radius: 0 20vw 0 20vw;
}

.service-img-container::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--primary-color);
    mix-blend-mode: multiply; 
    opacity: 0; 
    z-index: 0;
    transition: opacity 0.5s ease;
    border-radius: 0 20vw 0 20vw;
}

.service-img-container:hover::after{
    opacity: 1;
}

.service-number{
    position: absolute;
    top: 1rem;
    left: 10%;
    color: transparent;
    font-size: 4rem;
    -webkit-text-stroke: 1px black;
    z-index: 1;
    transition: -webkit-text-stroke 0.5s ease;
}

.service-content{
    position: absolute;
    bottom: 3rem;
    left: 0;
    width: 100%;
    padding: 0 10%;
    z-index: 1;
}

.service-content::after{
    content: '';
    position: absolute;
    bottom: -1rem;
    right: 7.5%;
    background-image: url('/res/img/common/Triangulo-Rojo.svg');
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 2.5rem;
    aspect-ratio: 1/1;
    transition: transform 0.5s ease;
}

.service-img-container:hover > .service-content::after{
    transform: translateY(1rem);
}

.service-title{
    font-size: 2rem;
    font-weight: normal;
    color: var(--primary-color);
    line-height: 1em;
    margin: 0;
    transition: color 0.5s ease;
}

.service-img-p{
    font-size: 1rem;
    margin: 0;
    font-weight: 300;
    padding-top: 0.2rem;
    color: var(--primary-color);
    transition: color 0.5s ease;
}

.service-img-container:hover > .service-content::after{
    background-image: url('/res/img/common/Triangulo-Blanco.svg');
}

.service-img-container:hover > .service-number{
    -webkit-text-stroke: 1px white;
}

.service-img-container:hover > .service-content > .service-title,
.service-img-container:hover > .service-content > .service-img-p{
    color: white;
}

hr{
    width: 4rem;
    border: 0.3rem solid var(--primary-color);
    margin: 0;
}

.service > hr{
    margin-left: 2.5vw;
}

.service-p{
    font-size: 0.9rem;
    font-weight: 300;
    width: 100%;
    padding: 0 2.5vw;
    margin: 0;
}

.about-container{
    width: 100%;
    position: relative;
}

.about-content{
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    padding: 1rem 7.5%;
    display: flex;
    flex-direction: column;
}

.about-title{
    font-size: 3rem;
    font-weight: normal;
    color: var(--primary-color);
    line-height: 1em;
    margin: 0;
    padding-bottom: 0.5rem;
}

.about-p{
    font-size: 0.9rem;
    font-weight: 300;
    margin: 0;
    padding: 2rem 0;
}

.about-a{
    font-size: 0.9rem;
    color: var(--primary-color);
    padding: 0.5rem 1.5rem;
    border: 2px solid var(--primary-color);
    border-radius: 1rem;
    width: fit-content;
    transition: color 0.5s ease, background-color 0.5s ease;
}

.about-a:hover{
    color: white;
    background-color: var(--primary-color);
}

.footer-index{
    display: flex;
    flex-flow: column-reverse;
    width: 100%;
}

.footer-newsletter{
    width: 100%;
    padding: 0 7.5%;
    aspect-ratio: 6/10;
    background-image: url('/res/img/index/Suscribete_1.webp');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    align-content: center;
}

.newsletter-title{
    font-size: 1.5rem;
    font-weight: normal;
    color: white;
    margin: 0;
}

.newsletter-p{
    font-size: 0.9rem;
    font-weight: 300;
    color: white;
    margin: 0;
    padding: 0.2rem 0 3rem;
}

.newsletter-form{
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

.newsletter-form > input{
    background-color: transparent;
    border: none;
    border-bottom: 1px solid white;
    font-size: 0.9rem;
    font-weight: 300;
    color: white;
}

.newsletter-form > input::placeholder{
    color: white;
}

.newsletter-form > button{
    font-size: 0.9rem;
    background-color: transparent;
    color: white;
    padding: 0.5rem 3rem;
    border: 2px solid white;
    border-radius: 1.05rem;
    width: fit-content;
    margin: 2rem auto 0;
    cursor: pointer;
    transition: background-color 0.5s ease, color 0.5s ease;
}

.newsletter-form > button:hover{
    background-color: white;
    color: var(--primary-color);
}

.footer-hub{
    width: 100%;
    /* aspect-ratio: 6/10; */
    display: flex;
    flex-direction: column;
    align-items: center;
}

.footer-hub-logo{
    width: 100%;
    padding: 4rem 10% 0; 
}

.footer-hub-list{
    padding: 3rem 0;
    margin: 0;
    text-align: center;
}

.footer-hub-list > li{
    padding: 0.25rem 0;
}

.footer-hub-list > li > a{
    font-size: 0.9rem;
    color: var(--primary-color);
    transition: color 0.5s ease;
}

.footer-hub-list > li > a:hover{
    color: var(--secondary-color);
}

.hub-social{
    display: flex;
    width: 100%;
    padding: 0 25%;
    align-items: center;
    justify-content: space-between;
}

.hub-social > a{
    width: 2.5rem;
    aspect-ratio: 1/1;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    transition: scale 0.5s ease;
}

.hub-social > a:hover{
    scale: 1.25;
}

.ig-red{
    background-image: url('/res/img/common/Logo-Ig.svg');
}

.in-red{
    background-image: url('/res/img/common/Logo-In.svg');
}

.fb-red{
    background-image: url('/res/img/common/Logo-Fb.svg');
}

.footer-hub-contact{
    font-size: 0.9rem;
    text-align: center;
    padding: 1.5rem 0 5rem;
}

/* Fix for translation */
.services-title{
    width: 5em;
    text-align: center;
}

@media (width >= 1024px) {
    .banner-content {
        bottom: 30%;
    }

    .banner-title {
        font-size: 2.75vw;
        width: 55%;
        padding: 0 15% 0 5%;
    }

    .banner-title::after {
        height: 11vw;
    }

    .service-img{
        border-radius: 0 5.5vw 0 5.5vw;
    }
    
    .service-img-container::after{
        border-radius: 0 5.5vw 0 5.5vw;
    }

    .services-img-content {
        width: fit-content;
        transform: translate(-50%,-50%);
        left: 23.3%;
    }

    .services-title {
        font-size: 2.25rem;
        font-weight: 300;
    }

    .services-title-red {
        font-size: 2.25rem;
    }

    @media (width >= 1150px) {
        .services-title,
        .services-title-red {
            font-size: 2.5rem;
        }
    }

    @media (width >= 1440px) {
        .services-title,
        .services-title-red {
            font-size: 3rem;
        }
    }

    .services-content {
        flex-direction: row;
    }

    .service-p {
        font-size: 1rem;
    }

    .about-content {
        left: 7.5%;
        width: 35%;
        padding: 1rem 0;
    }

    .about-title {
        font-size: 4.5rem;
        padding-bottom: 1rem;
    }

    .about-p {
        font-size: 1.25rem;
        padding: 3rem 0;
    }

    .about-a {
        font-size: 1.25rem;
        padding: 0.75rem 2rem;
        border-radius: 1.5rem;
    }

    .footer-index {
        flex-flow: row;
    }

    .footer-newsletter {
        width: 50%;
        aspect-ratio: unset;
        background-image: url(/res/img/index/Suscribete.webp);
        background-size:cover;
    }

    .footer-hub {
        width: 50%;
    }

    .footer-hub-logo {
        width: 100%;
        padding: 2rem 20% 0;
    }

    .footer-hub-list > li > a {
        font-size: 1.25rem;
    }

    .hub-social {
        padding: 0 33%;
    }

    /* Fix for translation */
    .services-title{
        width: 7em;
    }
}