* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Montserrat */

@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-Thin.ttf) format('truetype');
    font-weight: 100;
    font-style: normal;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-ThinItalic.ttf) format('truetype');
    font-weight: 100;
    font-style: italic;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-ExtraLight.ttf) format('truetype');
    font-weight: 200;
    font-style: normal;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-ExtraLightItalic.ttf) format('truetype');
    font-weight: 200;
    font-style: italic;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-Light.ttf) format('truetype');
    font-weight: 300;
    font-style: normal;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-LightItalic.ttf) format('truetype');
    font-weight: 300;
    font-style: italic;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-Regular.ttf) format('truetype');
    font-weight: 400;
    font-style: normal;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-Italic.ttf) format('truetype');
    font-weight: 400;
    font-style: italic;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-Medium.ttf) format('truetype');
    font-weight: 500;
    font-style: normal;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-MediumItalic.ttf) format('truetype');
    font-weight: 500;
    font-style: italic;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-SemiBold.ttf) format('truetype');
    font-weight: 600;
    font-style: normal;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-SemiBoldItalic.ttf) format('truetype');
    font-weight: 600;
    font-style: italic;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-Bold.ttf) format('truetype');
    font-weight: 700;
    font-style: normal;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-BoldItalic.ttf) format('truetype');
    font-weight: 700;
    font-style: italic;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-ExtraBold.ttf) format('truetype');
    font-weight: 800;
    font-style: normal;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-ExtraBoldItalic.ttf) format('truetype');
    font-weight: 800;
    font-style: italic;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-Black.ttf) format('truetype');
    font-weight: 900;
    font-style: normal;
}
  
@font-face {
    font-family: 'Montserrat';
    src: url(../font/Montserrat/Montserrat-BlackItalic.ttf) format('truetype');
    font-weight: 900;
    font-style: italic;
}
  
body {
    height: 100vh;
    font-family: 'Montserrat', sans-serif;
    line-height: 1.6;
    color: #333;
    background-color: #f5f5f5;
}

main {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    padding: 5em 10em;
    height: 100vh;
    background-image: url(../img/enlaces-bg.jpeg);
    background-size: cover;
}

.logo-container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.logo-container img {
    width: 128px;
    pointer-events: none;
    user-select: none;
}

.title {
    font-size: 2em;
    font-weight: 600;
    color: #161616;
    pointer-events: none;
    user-select: none;
}

.enlaces-container {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 2.5em;
}

.enlaces-container a {
    width: 50%;
    padding: 20px 0;
    text-align: center;
    text-decoration: none;
    color: #f6f6f6;
    font-size: 1.2em;
    background-color: #161616;
    border-radius: 100px;
    box-shadow: 0 0 10px #000;
    opacity: .9;
    transition: transform .2s ease, opacity .2s ease;
}

.enlaces-container a:hover {
    transform: scale(1.025);
    opacity: 1;
}

.redes-sociales {
    display: flex;
    justify-content: center;
    gap: 2em;
}

.redes-sociales a {
    position: relative;
    display: flex;
    justify-content: center;
    text-decoration: none;    
    border-radius: 16px;
    box-shadow: 0px 6px 8px #00000090;
    transform: scale(1) translateY(0);
    transition: .2s transform ease;
}

.redes-sociales a:hover {
    transform: scale(1.1) translateY(-5px);
}

.redes-sociales a img {    
    padding: 8px;
    width: 52px;
}

.redes-sociales a:first-child {
    background: linear-gradient(180deg, #0390e5, #00459b);
}

.redes-sociales a:nth-child(2) {
    background: linear-gradient(to right, #000000, #232526);
}

.redes-sociales a:nth-child(3) {
    background: linear-gradient(140deg, #833ab4, #fd1d1d, #fcb045);
}

.redes-sociales a:nth-child(4) {
    background: linear-gradient(to left, #e52d27, #b31217);
}

.redes-sociales a:first-child:after,
.redes-sociales a:nth-child(2)::after,
.redes-sociales a:nth-child(3)::after,
.redes-sociales a:nth-child(4)::after {
    pointer-events: none;
    position: absolute;
    bottom: -30px;
    align-self: center;
    font-size: .9em;
    font-weight: 600;
    color: #161616;
    transform: translateY(-30px);
    opacity: 0;
    transition: .2s opacity ease, .2s transform ease;
}

.redes-sociales a:hover::after {
    opacity: 1;
    transform: translateY(0);
}

.redes-sociales a:first-child::after {
    content: "Facebook";
}

.redes-sociales a:nth-child(2)::after {
    content: "X";
}

.redes-sociales a:nth-child(3)::after {
    content: "Instagram";
}

.redes-sociales a:nth-child(4)::after {
    content: "YouTube";
}

@media only screen and (max-width: 1600px) {

    main {
        justify-content: space-around;
        padding: 2em 5em
    }

    .logo-container img {
        width: 97px;
    }    

    .title {
        font-size: 1.6em;
    }

    .enlaces-container a {
        width: 45%;
        padding: 15px 0;
        font-size: .95em;
    }

    .redes-sociales a img {
        width: 42px;
    }

    .redes-sociales a:first-child:after,
    .redes-sociales a:nth-child(2)::after,
    .redes-sociales a:nth-child(3)::after,
    .redes-sociales a:nth-child(4)::after {
        bottom: -25px;
        font-size: .7em;
    }

    @media only screen and (max-width: 1366px) {

        main {
            justify-content: space-around;
            padding: 2em 5em
        }

        .logo-container img {
            width: 97px;
        }    

        .title {
            font-size: 1.6em;
        }

        .enlaces-container a {
            width: 45%;
            padding: 15px 0;
            font-size: .95em;
        }

        .redes-sociales a img {
            width: 42px;
        }

        .redes-sociales a:first-child:after,
        .redes-sociales a:nth-child(2)::after,
        .redes-sociales a:nth-child(3)::after,
        .redes-sociales a:nth-child(4)::after {
            bottom: -25px;
            font-size: .7em;
        }

        @media only screen and (max-width: 768px) {

            main {
                justify-content: space-around;
                padding: 1.5em 2em;
            }
        
            .logo-container img {
                width: 112px;
            }
        
            .title {
                text-align: center;
                font-size: 1.6em;
            }
        
            .enlaces-container a {
                width: 100%;
                font-size: 1em;
            }
        }

        @media only screen and (max-width: 400px) {

            main {
                justify-content: space-evenly;
            }

            .logo-container img {
                width: 92px;
            }

            .title {
                font-size: 1.34em;
            }

            .enlaces-container a {
                font-size: .9em;
                padding: 10px 0;
            }
        }
    }
}