*{
    margin: 0;
    padding: 0;
    font-family: "Lato", sans-serif;
    list-style: none;
    text-decoration: none;
    outline: none;
}
/* PALETA DE COLORES*/
:root{
    /* PAGINA */
    /* --color_fondo_pagina:#f5f5f5; */

    /* BOTONES */
    /* --color_fondo_btn_1:#0fa00f;
    --color_fondo_2_btn_1:#16ac16;
    --color_fondo_3_btn_1:#009100;
    --color_letras_btn_1:#fafafa;
    --color_letras_btn_2:#ececec; */

    /* HEADER */
    /* --color_fondo_header:#0F0F0F;
    --color_letras_logo_1:#fafafa;
    --color_letras_logo_2:#0fa00f; */

    /* MENU */
    /* --color_fondo_nav:#222222;
    --color_letras_nav_1:#9B9D9F;
    --color_letras_nav_2:#fafafa;
    --color_letras_nav_3:#10bc10; */

    /* SECCIONES */
    /* --color_titulos_secciones:#868686;
    --color_letras_comunes:#3a3a3a;
    --color_letras_resaltadas:#0fa00f; */

    /* NOSOTROS */
    /* --color_fondo_n:#fafafa; 
    --color_borde_n:#d7d7d7;
    */

    /* PLANES */
    /* --color_fondo_planes:#fafafa;
    --color_borde:#d7d7d7;
    --color_titulo_box:#6a6a6a;
    --color_parrafo_box:#787878;
    --color_fondo_btn_p:#0fa00f;
    --color_letras_btn_p:#fafafa; */

    /* PORQUE ELEGIRNOS */
    /* --color_fondo_pqe:#212121;
    --color_titulo_pqe:#e8e8e8;
    --color_subtitulo_pqe:#e8e8e8;
    --color_letras_pqe:#bbbbbb;
    --color_borde_pqe:#10bc10; */

    /* CONTACTO */
    /* --color_fondo_form:#fafafa;
    --color_input_1:#c0c0c0;
    --color_input_2:#5c5c5c; */


    /* PAGINA */
    --color_fondo_pagina:#272727;

    /* BOTONES */
    --color_fondo_btn_1:#0fa00f;
    --color_fondo_2_btn_1:#16ac16;
    --color_fondo_3_btn_1:#009100;
    --color_letras_btn_1:#fafafa;
    --color_letras_btn_2:#ececec;

    /* HEADER */
    --color_fondo_header:#0F0F0F;
    --color_letras_logo_1:#fafafa;
    --color_letras_logo_2:#0fa00f;

    /* MENU */
    --color_fondo_nav:#222222;
    --color_letras_nav_1:#9B9D9F;
    --color_letras_nav_2:#fafafa;
    --color_letras_nav_3:#10bc10;

    /* SECCIONES */
    --color_titulos_secciones:#868686;
    --color_letras_comunes:#e9e9e9;
    --color_letras_resaltadas:#0fb40f;

    /* NOSOTROS */
    --color_fondo_n:#1b1b1b;
    --color_borde_n:#303030;
    
    /* PLANES */
    --color_fondo_planes:#212121;
    --color_borde:#5b5b5b; /* debe coincidir con el color de los svg*/
    --color_titulo_box:#e8e8e8;
    --color_parrafo_box:#bbbbbb;
    --color_fondo_btn_p:#0fa00f;
    --color_letras_btn_p:#fafafa;

    /* PORQUE ELEGIRNOS */
    --color_fondo_pqe:#1b1b1b;
    --color_titulo_pqe:#868686;
    --color_subtitulo_pqe:#e8e8e8;
    --color_letras_pqe:#bbbbbb;
    --color_borde_pqe:#10bc10;

    /* CONTACTO */
    --color_fondo_form:#1b1b1b;
    --color_input_1:#464646;
    --color_input_2:#c8c8c8;
}
/* PAG */
::selection {
    background-color: var(--color_seleccion);
    color: var(--color_titulo_portada);
}
html, body{
    background-color: var(--color_fondo_pagina);
    scroll-behavior: smooth
}
/* BOTONES */
.btn-principal{
    position: relative;
    color: var(--color_letras_btn_1);
    background-color: var(--color_fondo_btn_1);
    border: none;
    cursor: pointer;
    z-index: 1;
}
.btn-principal:active{
    color: var(--color_letras_btn_2);
}
.btn-principal::before{
    opacity: 0;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0%;
    height: 100%;
    background-color: var(--color_fondo_2_btn_1);
    border-radius: 3px;
    transition: all 1s ease;
    z-index: -1;
}
.btn-principal:hover::before, .btn-principal:active::before{
    opacity: 1;
    width: 100%;
}
.btn-principal:active::before{
    background-color: var(--color_fondo_3_btn_1);
}
/* ENCABEZADO */
#encabezado{
    position: fixed;
    top: 0%;
    left: 0%;
    right: 0%;
    z-index: 99;
}
header{
    padding: 30px 0px;
    width: 100%;
    display: flex;    
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: var(--color_fondo_header);
}
h1{
    color: var(--color_letras_nav_2);
    font-family: "Roboto Flex", sans-serif;
    font-size: 40px;
    font-weight: 900;
    text-transform: uppercase;
}
header p{
    color: var(--color_parrafo_1);
    font-size: 20px;
    font-style: italic;
}
/* NAV */
nav{
    position: absolute;
    padding: 15px 0px;
    width: 100%;
    background-color: var(--color_fondo_nav);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.nav-ul{
    display: flex;
    gap: 100px;
}
.nav-ul > li > a{
    color: var(--color_letras_nav_1);
    font-size: 16px;
    text-transform: uppercase;
    transition: 0.5s ease;
}
.nav-ul > li > a:hover{
    color: var(--color_letras_nav_2);
    cursor: pointer;
}
.active{
    color: var(--color_letras_nav_3) !important;
}
@media (max-width: 999px){
    .nav-ul{
        gap: 30px;
    }
    .nav-ul > li > a{
        font-size: 12px;
    }
}
@media (max-width: 420px){
    .nav-ul{
        gap: 20px;
    }
    .nav-ul > li > a{
        font-size: 11px;
    }
}
@media (max-width: 360px){
    .nav-ul{
        gap: 15px;
    }
    .nav-ul > li > a{
        font-size: 10px;
    }
}
/* TITULO SECCIONES */
h2{
    margin-bottom: 40px;
    font-size: 35px;
    color: var(--color_titulos_secciones);
    font-weight: 800;
    text-transform: uppercase;
    text-align: center;
}
p{
    color: var(--color_parrafo_1);
    transition: all 0.3s;
}
span{
    color: var(--color_letras_resaltadas);
}
/* SECCIONES */
.secciones{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.secciones-box{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
}
/* NOSOTROS */
#nosotros{
    padding: 250px 0px 50px;
    background-color: var(--color_fondo_n);
    border-bottom: 1px solid var(--color_borde_n);
}
#nosotros-box{
    padding-bottom: 50px;
    width: 875px;
    height: max-content;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
#nosotros-img{
    width: 400px;
}
#nosotros-text{
    height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
}
#nosotros-text p{
    margin-bottom: 3%;
    font-size: 18px;
    text-align: justify;
    color: var(--color_letras_comunes);
}
#under{
    margin-top: 10px;
    font-style: italic;
    font-size: 18px;
}
@media (max-width: 999px){
    h2{
        padding: 0px 20px;

    }
    #nosotros{
        padding-top: 200px;
    }
    #nosotros-img{
        width: 300px;
    }
    #nosotros-box{
        width: 400px;
        flex-direction: column;
    }
    #nosotros-text{
        align-items: center;
    }
    #nosotros-text p{
        text-align: center;
    }
}
@media (max-width: 420px){
    h2{
        font-size: 30px;
    }
    #nosotros-box{
        width: 300px;
    }
    #nosotros-text p{
        font-size: 16px;
    }
}
/* PLANES */
#planes{
    padding: 50px 0px 100px;
    scroll-margin-top: 275px;
}
#planes-disponibles{
    width: 875px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 50px;
}
.plan-box{
    width: 35%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    border: 1px solid var(--color_borde);
    border-radius: 5px;
    transition: 0.3s;
}
.plan-box-img{
    padding: 35px 0px 35px;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    border-radius: 4px 4px 0px 0px;
}
.plan-box h3{
    padding: 0px 0px 10px;
    color: var(--color_titulo_box);
    font-size: 18px;
    font-weight: 900;
    text-transform: uppercase;
    transition: 0.3s;
}
.plan-box-description{
    padding: 30px 30px 20px;
    width: 100%;
    background-color: var(--color_fondo_planes);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    box-sizing: border-box;
    border-top: 1px solid var(--color_borde);
    border-radius: 0px 0px 4px 4px;
}
.plan-box-description ul{
    width: 100%;
    padding-bottom: 80px;
    /* border-bottom: 1px solid #d7d7d7; */
}
.plan-box li{
    padding-top: 5px;
    color: var(--color_parrafo_box);
    font-size: 16px;
    transition: 0.3s;
}
.plan-box a{
    margin-top: 20px;
    padding: 10px 0px;
    width: 100%;
    text-align: center;
    color: var(--color_letras_btn_p);
    background-color: var(--color_fondo_btn_p);
    border-radius: 3px;
}
.plan-box:hover{
    box-shadow: 0px 0px 5px 5px #00000009;
}
#box{
    width: 100px;
}
#ticket{
    width: 99px;
}
@media (max-width: 999px){
    #planes-disponibles{
    width: 350px;
    flex-direction: column;
    }
    .plan-box{
        width: 100%;
    }
}
@media (max-width: 420px){
    #planes-disponibles{
    width: 300px;   
    }
    .plan-box h3{
        font-size: 16px;
    }
    .plan-box li{
        font-size: 14px;
    }
    .plan-box a{
        font-size: 15px;
    }
}
/* POR QUE ELEGIRNOS */
#porqueelegirnos{
    padding: 50px 0px;
    background-color: var(--color_fondo_pqe);
    scroll-margin-top: 350px;
}
#porqueelegirnos h2{
    color: var(--color_titulo_pqe);
}
#porqueelegirnos-box{
    width: 875px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 50px;
}
#section-content{
    padding: 20px;
    width: 100%;
    border: 1px solid var(--color_borde_pqe);
    border-radius: 10px;
    box-sizing: border-box;
}
#titulo-box{
    margin-bottom: 10px;
    color: var(--color_subtitulo_pqe);
    font-size: 18px;
}
#parrafo-box{
    color: var(--color_letras_pqe);
    font-size: 15px;
}
#img-box{
    margin: 0px 0px 20px;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}
#money,#glow,#call{
    width: 40px;
}
@media (max-width: 999px){
    #porqueelegirnos-box{
        width: 350px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    #porqueelegirnos > section{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
}
@media (max-width: 420px){
    #porqueelegirnos-box{
        width: 300px;
    }
    #titulo-box{
        font-size: 16px;
    }
    #parrafo-box{
        font-size: 13px;
    }
}
/* CONTACTO */
#contacto{
    padding: 100px 0px 0px;
}
#contacto h2{
    padding: 0%;
}
#form-contacto{
    padding: 60px 50px;
    width: 80%;
    max-width: 875px;
    background-color: var(--color_fondo_form);
    border-radius: 5px 5px 0px 0px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 30px;
    box-shadow: 0px 0px 5px 5px #00000009;
    box-sizing: border-box;
}
#form-contacto section{
    position: relative;
}
#form-contacto > div{
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
}
#form-nombre,#form-apellido,#form-email,#form-mensaje{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
#form-contacto input, #form-contacto textarea{
    padding: 5px;
    width: 100%;
    font-size: 16px;
    font-weight: 400;
    color: var(--color_input_1);
    background-color: #00000000;
    border: none;
    border-bottom: 1px solid var(--color_input_1);
    transition: 0.3s ease;
}
#form-contacto textarea{
    border: 1px solid var(--color_input_1);
}
#form-contacto label{
    position: absolute;
    top: 5px;
    left: 10px;
    font-size: 18px;
    font-weight: 400;
    color: var(--color_input_1);
    pointer-events: none;
    transition: 0.3s ease;
}
#form-contacto textarea{
    min-height: 250px;
    max-height: 250px;
    resize: none;
}
#form-contacto input:focus, #form-contacto textarea:focus{
    border-color: var(--color_letras_resaltadas);
    color: var(--color_input_2);
}
#form-contacto input:focus ~ label, #form-contacto textarea:focus ~ label{
    top: -23px;
    left: 5px;
    font-size: 14px;
    color: var(--color_letras_resaltadas);
}
#form-contacto input:-webkit-autofill,
#form-contacto input:-webkit-autofill:hover, 
#form-contacto input:-webkit-autofill:focus{
    -webkit-box-shadow: 0 0 0px 1000px #f4f4f4 inset;
    transition: 0.3s ease;
}
#form-contacto input:-webkit-autofill{
    -webkit-text-fill-color: var(--color_input_1);
    transition: 0.3s ease;
}
#form-contacto input:not(:placeholder-shown) + label,
#form-contacto input:focus + label,
#form-contacto textarea:not(:placeholder-shown) + label,
#form-contacto textarea:focus + label{
    top: -20px;
    left: 5px;
    font-size: 14px;
    opacity: 1;
}
#button-form{
    margin-top: 10px;
    padding: 20px 0px;
    width: 40%;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    border-radius: 4px;
}
@media (max-width: 1300px){
    
    #form-contacto > div{
        flex-direction: column;
    }
    #form-contacto textarea{
        min-height: 200px;
        max-height: 180px;
    }
    #button-form{
        width: 100%;
        font-size: 16px;
    }
    #button-form{
        margin-top: 0px;
    }
}
@media (max-width: 425px){
    #form-contacto{
        padding: 40px 30px;
    }
    #form-contacto input, #form-contacto textarea{
        padding: 5px;
        font-size: 18px;
    }
    #form-contacto label{
        position: absolute;
        top: 6px;
        left: 6px;
        font-size: 18px;
    }
    #form-contacto input:not(:placeholder-shown) + label,
    #form-contacto input:focus + label{
        top: -23px;
        left: 5px;
        font-size: 16px;
        opacity: 1;
    }
    #form-contacto textarea:not(:placeholder-shown) + label,
    #form-contacto textarea:focus + label{
        top: -23px;
        left: 5px;
        font-size: 16px;
        opacity: 1;
    }
    #button-form{
        margin-top: 0px;
        padding: 10px 20px;
        font-size: 14px;
    }
}