
  @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;400;600;700&display=swap');

:root
{
    --padding-container: 100px 0;
    --color-title: #001a49;
}

body{
     font-family: 'Poppins', sans-serif;
}

.container
{
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    overflow: hidden;
    padding: var(--padding-container);
}

/* ------------------------------------------HERO------------------------------------------------*/

.hero
{
    width: 100%;
    height: 100vh;
    min-height: 600px;
    max-height: 800px;
    position: relative;
    display: grid;
    grid-template-rows: 100px 1fr;
    color: #fff;
}

.hero::before
{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(180deg, #0000008c 0%, #0000008c 100%), url('../images/computer.jpg');
    background-size: cover;
    clip-path: polygon(0 0, 100% 0, 100% 80%, 50% 100%, 0 80%);
    z-index: -1;
    
  
}


/* ------------------------------------------NAV------------------------------------------------*/

ul
{
   list-style: upper-roman;
}


.img
{
    padding-right: 20px;
}
.nav
{
    --padding-container: 0;
    height: 100%;
    display: flex;
    align-items: center;
   
}


.nav_title
{
    font-weight: 300;
}

.nav_link
{
    margin-left: auto;
    padding: 0;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: max-content;
    column-gap: 2em;
    list-style: none;
}

.nav_items
{
    list-style: none;
}


.nav_links
{
    color: #fff;
    text-decoration: none;
}

.nav_menu
{
    margin-left: auto;
    cursor: pointer;
    display: none;
}

.nav_img
{
    display: block;
    width: 30px;
}

.nav_close
{
    display: var(--show, none);
}


/* ------------------------------------------HERO CONTAINER------------------------------------------------*/

.hero_container
{
    max-width: 800px;
    --padding-container: 0;
    display: grid;
    grid-auto-rows: max-content;
    align-content: center;
    column-gap: 1em;
    padding-bottom: 100px;
    text-align: center;
}

.hero_title
{
    font-size: 2.5rem;
    padding-bottom: 20px;
}

.hero_parrafo
{
    margin-bottom: 20px;
}

.cta
{
    display: inline-block;
    background-color: #2091f9;
    justify-self: center;
    color: #fff;
    text-decoration: none;
    padding: 13px 32px;
    border-radius: 32px;
}


/* ------------------------------------------SERVICIOS------------------------------------------------*/

.about
{
    text-align: center;
}

.subtitle
{
    color: var(--color-title);
    font-size: 2rem;
    margin-bottom: 25px;
}

.about_paragraph
{
    line-height: 1.7;
}

.about_main
{
    padding-top: 80px;
    display: grid;
    width: 90%;
    margin: 0 auto;
    grid-gap: 1em;
    overflow: hidden;
    grid-template-columns: repeat(auto-fit, minmax(260px, auto));
    
}

.about_icons
{
    display: grid;
    grid-gap: 1em;
    justify-items: center;
    width: 260px;
    overflow: hidden;
    margin: 0 auto;
    border-bottom: 3mm ridge rgba(153, 167, 255, .6);
}

.about_icon
{
    width: 40px;
}


/* ------------------------------------------FOOTER------------------------------------------------*/

.footer
{
    background: #1D293F;
}

.footer_title
{
    font-weight: 300;
    font-size: 2rem;
    margin-bottom: 30px;
    color: white;
}

.footer_container
{
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #fff;
    padding-bottom: 60px;
}

.nav_footer
{
    padding-bottom: 20px;
    display: grid;
    grid-gap: 1em;
    grid-auto-flow: row;
    height: 100%;
}

.nav_link_footer
{
    display: flex;
    margin: 0;
    margin-right: 20px;
    flex-wrap: wrap;
}

.footer_copy
{
    --padding-container:30px 0;
    text-align: center;
    color: #fff;
}

.footer_icons
{
    display: inline-flex;
    margin-bottom: 10px;
}
.footer_img
{
    width: 30px;
}



/* ------------------------------------------MEDIA QUERIES------------------------------------------------*/

@media (max-width: 800px)
{
    .nav_menu
    {
        display: block;
    }
    
    .nav_link_menu
    {
        position: fixed;
        background-color: #000;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        align-items: center;
        z-index: auto;
        opacity: 0;
        pointer-events: none;
        transition: .7s opacity;
    }
    
    .nav_link_show
    {
        --show: block;
        opacity: 1;
        pointer-events: unset;
    }
    
    .nav_close
    {
        position: absolute;
        top: 30px;
        right: 30px;
        width: 30px;
        cursor: pointer;
    }
    
    .hero_title
    {
     font-size: 2.5rem;   
    }
    
    .about_main
    {
        grid-gap: 2em;
    }
    
    .about_icons:last-of-type
    {
        grid-column: 1/-1;
    }
    
    .footer_container
    {
        flex-wrap: wrap;
    }
    
    .nav_footer
    {
        width: 100%;
        justify-items: center;
    }
}


/* ------------------------------------------SLIDE------------------------------------------------*/
.knowledge
{
background-color: #e5e5f7;

background-image:  radial-gradient(#444cf7 0.8500000000000001px, transparent 0.8500000000000001px), radial-gradient(#444cf7 0.8500000000000001px, #e5e5f7 0.8500000000000001px);
background-size: 34px 34px;
background-position: 0 0,17px 17px;
    overflow: hidden;
    height: 400px;
}


.slider
{
    width: 80vw;
    height: 300px;;
    margin: auto;
    overflow: hidden;
   
}

.slider .slide_track
{
    display: flex;
    animation: scroll 120s linear infinite;
    -webkit-animation: scroll 120s linear infinite;
    width: calc(150px * 96);
    align-items: center;
}

.slider .slide
{
    width: 300px;
    padding: 20px;
    justify-self: center;
}

.slider .slide img
{
    width: 100%;
    vertical-align: middle;
}

@keyframes scroll
{
    0%
    {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    
    100%
    {
        -webkit-transform: translateX(calc(-200px * 48));
        transform: translateX(calc(-200px * 48));
    }
}