
/* suiempre los fonts van al inicio de la hoja de estilos*/
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Michroma&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400..900&display=swap');

:root{
    --graphite:#444444;
    --graphite-metal: #5A5D60;
    --graphite-silver: #72767A;
    --dark_graphite: #333333;
    --ultra_graphite: #242424;
    --transp_graphite: #2424243a;
    --swift_yellow: #FFE100;
    --swift_canarinha: #FFDF00;
    --mint_cream: #F5FFFA;
    --light_mint_cream: #F7FCF9;
    --ultra_light_mint_cream: #FAFFFC;
}

html{
    font-size: 62.5%; /* esto es 10px que es el porcentaje de 16px*/
    scroll-behavior: smooth;
}

/* propiedades para reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box; /* el tamaño definido para una caja ya incluye margin y padding */
}

body{
    background-color:var(--ultra_graphite);
    font-family: "Manrope", sans-serif;
}

.body--full_height {
    min-height: 100vh;
    display: grid; /* 1fr agarra 1 fraction aviable space*/
    grid-template-rows: 10rem 1fr 12rem;
}

.body--scroll {
    min-height: 100vh;
}

.body--hero {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 12rem;
    grid-template-areas: 
    "hero "
    "footer";
}

/* estilo de arquitectura básica */
.header{
    background-color:var(--ultra_graphite);
    color: #fff;
    padding: 3rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header--hero {
    grid-area: hero;
    align-self: start;/* colócate al inicio vertical de esa área. */
    z-index: 2;
    height: 10rem;
}

.main--hero {
    grid-area: hero;
}

.header__logo_container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

.header__logo__image {
    height: auto;
    width: 3.75rem;
    display:block;
    opacity: 90%;
}

.header__logo {
    font-family: "Orbitron", sans-serif;
    letter-spacing: 0.3rem; 
    font-size: 3rem;
    font-weight: 700;
    color: whitesmoke;
}

.header__logo-p2 {
    letter-spacing: 0rem; 
    font-family: "Michroma", sans-serif;
    font-size: 2.5rem;
    color: darkseagreen;
}

.header__nav{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2rem;
}

.header__nav-link {
    font-size: 1.8rem;
    /* padding: 0 1rem; */
    text-decoration: none;
    color: whitesmoke;
}

.header__nav-link--selected{
    font-size: 1.8rem;
/*     padding: 0 1rem; */
    font-weight: 600;
    text-decoration: none;
    color: darkseagreen;
}

.header__nav-home_icon{
    font-size: 2rem;
    padding: 0 1rem;
    color: #fff;
    transition: 0.3s;
}

.header__nav-home_icon--selected{
    font-size: 2rem;
    color: darkseagreen;
}

.header__nav-home_icon:hover,
.header__nav-home_icon--selected:hover{
    transform: scale(1.1);
}

.header__chkmenu-open, 
.header__chkmenu-close {
    cursor: pointer;
    font-size: 3rem;
    order: 1;
    display: none;
}

/* hace referencia al id de un elemento*/
#chkmenu {
   display: none;
}

.header__nav-link:hover,
.header__nav-link--selected:hover,
.header__chkmenu-open:hover,
.header__chkmenu-close:hover {
    color: #94cc94; 
    font-weight: 500;
   transform: scale(1.1);
   /* el transform funciona porque el contenedor de elementos de esta clase es FLEX */
   /* font-size: 1.55rem;*/ 
    transition: 0.3s ease;
}


.main{
    background-color: #fff; 
}

.main__hero{
    color: #fff;
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 7.5rem 5rem;
    height: 100%;
    background-image:url("img/prodek_hero.png");
    background-size:cover;
    background-position:center;
}

.main__hero::before{
    content: '';
    background: rgba(0, 0, 0, 0.425);
    position: absolute;
    width: 100%;
    height: 100%;
    left:0;
    top:0;
}

.main__hero-contenido {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    z-index: 1;
}

.main__hero-tagline{
    padding: 0;
    padding-top: 10rem;
    font-size: 4rem;
    line-height: 1.2;
}

.main__hero-desc_inst{
    font-size: 2.5rem;
    max-width: 60rem;
    text-align: left;
}

.main__hero-boton_cta {
    border: 0.1rem solid #7DB77C;
    border-radius: 0.5rem;
    font-size: 1.75rem;
    padding: 2.5rem 2rem;
    align-self: baseline;
    text-decoration: none;
    color: #fff;
    background-color: #7DB77C80;
    transition: background-color 0.3s ease;
}

.main__hero-boton_cta:hover{
       background-color: #7DB77C;
}

.footer{
    background-color: var(--ultra_graphite);
    color: whitesmoke;
    display: flex;
    padding: 5rem;
    justify-content: space-between;
    align-items: center;
}

.footer__copyrights{
    font-size: 1.2rem;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.footer__social {
    display: flex;
    flex-direction: row;
    gap:1.6rem;
    align-items: center;
}

.footer__social a{
    text-decoration: none;
    color: whitesmoke;
    font-size: 3rem ;
    transition:0.3s;
}

.footer__social a:hover{
    transform: scale(1.15);
    color: darkseagreen;
}

.container--transp {
    background-color:var(--transp_graphite);
}

/* ------------------*/
/* EFECTOS RESPONSIVE*/
/* ------------------*/

/*
static → comportamiento normal y valor por defecto. El elemento permanece dentro del flujo natural del documento.
relative → el elemento conserva su lugar en el flujo, pero además puede desplazarse respecto de su posición original. También puede convertirse en referencia para descendientes absolute.
absolute → el elemento sale del flujo normal y puede posicionarse mediante top, right, bottom, left respecto de su ancestro posicionado más cercano.
fixed → también sale del flujo normal, pero normalmente queda posicionado respecto del viewport. Por eso puede quedarse visible aunque hagamos scroll.
*/

@media screen and (max-width: 1024px){

    /* header */
    .header__chkmenu-open, 
    .header__chkmenu-close {
        display: block;
        font-size: 5rem;
    }

    .header__nav {
        position: fixed; /*posicionado fijo respecto del viewport*/
        width: 100%; /*viewport*/
        height: 100vh;
        top: 0;
        /*left: 0;*/
        right: -100%;
        text-align: center;
        padding: 10rem;
        background-color:var(--dark_graphite);
        z-index: 100; /*para que lo muestre en la capa más arriba*/
        transition: 0.4s;
        display: flex;
        flex-direction: column;
        gap: 4rem;
    }

    .header__nav a{
        display: block; /* apila todos los enlaces */ 
    }

    /* sacar del flujo el label con la X close*/
    .header__chkmenu-close {
        position: absolute;
        top: 4rem;
        right: 5rem;
    }

    /*validar el estado del checkbox*/
    #chkmenu:checked ~ .header__nav {
        right: 0;
    }

    .header__logo_container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

    .header__logo__image {
        height: auto;
        width: 5rem;
        display:block;
        opacity: 90%;
    }

    .header__logo, .header__logo-p2 {
        display: none;
    }

    .main__hero{
        background-image:url("img/prodek_hero4x3.png");
        background-size:cover;
        background-position:center;
    }

    .main__hero-desc_inst{
        font-size: 2rem;
        max-width: 60rem;
        text-align: left;
    }

    .footer{
        background-color: var(--ultra_graphite);
        color: whitesmoke;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }

    .footer__copyrights {
        display: none
    }

};
    
