@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}


@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-ThinItalic.ttf') format('truetype');
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-ExtraLightItalic.ttf') format('truetype');
    font-weight: 200;
    font-style: italic;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-MediumItalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-SemiBoldItalic.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-ExtraBoldItalic.ttf') format('truetype');
    font-weight: 800;
    font-style: italic;
}
  
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/poppins/Poppins-BlackItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
}
* {
    margin: 0;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
}

html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    min-height: 100%;
    box-sizing: border-box;
}

body {
    background-color: black;
    /* overflow-x: hidden; */
}

@media screen and (min-width:1500px) {
    .contenedorPrincipal {
        display: flex;
        flex-direction: column;
    }

    .barra_navegacion, .cuerpo_landing, .footer {
        width: 1500px;
        align-self: center;
    }
}


.imgFondo {
    
    background-image:
    linear-gradient(to bottom, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 1) 60%),
    url('/assets/images/background-image_landing.svg');
    background-repeat: no-repeat;
    background-size: cover;
}

.contenedorPrincipal {
    width: 100%;
    /* height: 100%; */
    color: white;

    
    .barra_navegacion {
        display: flex;
        height: 3.75rem;
        padding: 0.5rem 8.4375rem;
        justify-content: space-between;
        align-items: center;
        background-color: black;

        .logos {
            display: flex;
            align-items: center;
            gap: 0.5rem;

            img:first-of-type {
                width: 2.75rem;
                height: 2.5625rem;
            }

            img:last-of-type {
                width: 6.25rem;
                height: 1.4375rem;
            }
        }
    }

    @media screen and (max-width:1200px) {
        .barra_navegacion {
            padding: 0.5rem 1rem;
        }
    }

    @media screen and (max-width: 560px) {
        .barra_navegacion {
            .logos {
                img:first-of-type {
                    width: 2rem;
                    height: 1.875rem;
                }
                
                img:last-of-type {
                    width: 5.6875;
                    height: 1.3125rem;
                }
            }

            button {
                padding: 0.25rem 0.9rem;
                width: 8.375rem;
                height: 1.8125rem;
                font-size: 0.875rem;
                font-weight: 500;
            }
        }
    }

    
    .cuerpo_landing {
        
        display: grid;
        background-color: transparent;
        grid-template-columns: 1fr 1fr;  
        grid-template-rows: auto auto;  
        padding: 0 8.4375rem 0 4rem;
        margin-bottom: 1.5rem;

        .muestra_app {
            grid-column: 1/2;
            grid-row: 1/3;
            object-fit: contain;
            height: 35.5625rem;
        }
        
        .info_app {
            grid-column: 2/3;
            grid-row: 1/2;
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            margin-top: 5.25rem;
            margin-bottom: 4rem;
            
            
            align-self: flex-end;
            text-align: right;
            
            span {
                max-width: 500px;
                font-size: 2.5rem;
                margin: 0;
                
                color: #4AB863;
                font-weight: 700;
            }
            
            p {
                max-width: 495px;
                margin: 0;
                
                font-size: 1.25rem;
                font-weight: 400;
            }

            p:last-of-type {
                margin-top: 1rem;
                font-weight: 600;
            }
        }

        .info_descarga {
            grid-column: 2/3;
            grid-row: 2/3;
            display: flex;
            gap: 1.12rem;
            flex-direction: column;
            align-items: flex-end;

            img {
                width: 11.375rem;
            }

            .descarga_mobile {
                display: flex;
                gap: 0.75rem;
                align-items: center;
            }

            .barra_inferior {
                width: 100%;
                display: flex;
                justify-content: flex-end;
                align-items: flex-end;

                button {
                    height: 2.5625rem;
                    font-size: 0.875rem;
                    font-weight: 600;

                    .texto-mobile { display: none; }
                    .texto-desktop { display: inline; }
                }

                .logos {
                    display: flex;
                    gap: 0.75rem;

                    img:first-of-type {
                        width: 3.60938rem;
                    }

                    img:last-of-type {
                        width: 8rem;
                        height: 3.25rem;
                    }
                }
            }

        }
    }

    @media screen and (max-width:1200px) {
        .cuerpo_landing {
            padding: 0.5rem 1rem;
        }
    }

    @media screen and (max-width:1080px) {
        .cuerpo_landing {
            display: flex;
            flex-direction: column;
            align-items: center;
            padding: 0.5rem 1rem;

            .info_app {
                order: 1;
                align-self: center;
            }

            .info_descarga {
                order: 3;
            }

            .muestra_app {
                order: 2;
            }
        }
    }

    @media screen and (max-width:560px) {
        .cuerpo_landing {
            .info_app {
                margin-top: 2rem;
                margin-bottom: 3rem;
                span {
                    font-size: 1rem;
                }
                
                p { font-size: 0.875rem; }   

                p:last-of-type { margin-top: 0; }
            }

            
            .info_descarga {
                width: 100%;
                margin-bottom: 2.56rem;

                img {
                    width: 9.05788rem;
                }

                .barra_inferior {
                    justify-content: space-between;
    
                    button {
                        width: 12.75rem;
                        height: 2.5625rem;
                        padding: 0.625rem 1.5rem;
        
                        .texto-mobile { display: inline; }
                        .texto-desktop { display: none; }                
                    }
    
                    .logos {
                        align-items: center;
                        gap: 0.5rem;
                        
                        img:first-of-type {
                            width: 2.24219rem;
                            height: 2.11031rem;
                        }

                        img:last-of-type {
                            width: 4.96969rem;
                            height: 2.01894rem;
                        }
                    }
                }
            }

            .muestra_app { 
                height: 24.0625rem;
                margin-bottom: 3rem;
            }
        }
    }

    
    .footer {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        gap: 0.75rem;
        padding: 1rem 8.4375rem;

        
        position: relative;
        overflow: hidden;

        .barra_titulo {
            display: flex;
            justify-content: space-between;

            span {
                max-width: 500px;
                font-size: 1.5rem;
                margin: 0;
                
                color: #4AB863;
                font-weight: 700;
            }

            p {
                font-size: 0.8125rem;
                font-weight: 400;
                color: white;
                opacity: 0.6;
            }
        }

        .tarjetas {
            display: grid;
            gap: 0.75rem;
            grid-template-columns: repeat(5, 1fr); 
            
            .tarjeta_info {
                border-radius: 0.5rem;
                border: 1px solid #4AB863;
                padding: 1rem;

                img {
                    width: 1.5rem;
                    height: 1.5rem;
                }
                
                .texto {
                    p {
                        
                        color: #FECA45;
                        font-size: 1rem;
                        font-weight: 700;
                    }
    
                    span {
                        font-size: 0.875rem;
                        font-weight: 400;
                    }
                }
            }
        }

        .adorno_right {
            position: absolute;
            top: 0;
            right: -30%;
            
            width: 43rem;
            height: 42.9375rem;
            flex-shrink: 0;

            border-radius: 43rem;
            background: radial-gradient(50% 50% at 50% 50%, rgba(228, 255, 234, 0.20) 0%, rgba(137, 153, 141, 0.00) 100%);
            pointer-events: none; /* opcional: evita que interfiera con clics */
            z-index: 0;  
        }

        .adorno_left {
            position: absolute;
            top: 0;
            left: -45%;

            width: 55.875rem;
            height: 55.8125rem;
            flex-shrink: 0;

            border-radius: 55.875rem;
            background: radial-gradient(50% 50% at 50% 50%, rgba(228, 255, 234, 0.20) 0%, rgba(137, 153, 141, 0.00) 100%);
        }
    }
    
    @media screen and (max-width:1200px) {
        .footer {
            padding: 0.5rem 1rem;
        }
    }

    @media screen and (max-width:1080px) {
        .footer {
            .tarjetas {
                grid-template-columns: repeat(2, 1fr);

                .tarjeta_info:last-of-type {
                    grid-column: 1/ -1;
                    margin-bottom: 1rem;
                }
            }

            .adorno_left, .adorno_right { display: none; }
        }
    }

    @media screen and (max-width: 560px) {
        .footer {
            padding: 0 1rem;

            .barra_titulo { 
                span { font-size: 1rem; }
                p { font-size: 0.625rem; }
            }

            .tarjetas { 
                
                .tarjeta_info {
                    padding: 0.5rem;

                    img {
                        width: 1rem;
                        height: 1rem;
                    }

                    .texto {
                        p { font-size: 0.75rem; }
                        span { font-size: 0.625rem; }
                    }
                }
            }
        }
    }
}

@media screen and (max-width: 560px) {
    .contenedorPrincipal {
        
        background-image:
        linear-gradient(to bottom, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 1) 100%),
        url('/assets/images/background-image_landing.svg');
    }
}



.green_button {
    display: flex;
    height: 2rem;
    padding: 0.25rem 1.5rem;
    justify-content: center;
    align-items: center;
    gap: 0.625rem;

    border-radius: 6.25rem;
    
    background: #4AB863;
    border: none;
    outline: none;
    color: white;
    font-size: 1rem;
    font-weight: 500;

    &:not([disabled]):hover {
        
        background: #458955;
    }

    &:disabled {
        opacity: 0.5;
    }
}