/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *
 *= require_tree .
 *= require_self
 */
    :root {
        --header1: rgba(38, 38, 38, 0.8);
        --header2: rgba(31, 31, 31, 1);
        --color-card: hsl(265, 96%, 43%);
        --color-boton: hsl(217, 96%, 17%);
        --color-text: hsl(0, 0%, 15%);
        --text-color: hsl(0, 0%, 98%);
        --bg-color: hsl(0, 0%, 100%);
        --transition: 0.4s, background-color 0.2s ease-in-out;
        --primary-color: hsl(265, 96%, 43%);
        --border-radius: 2.5rem;
        --second-color: #fd8f44;
        --dark: #32012F;
        --font:'Courier New', Courier, monospace;;
        --lighther-green: #76ABAE;
        --gradient-blue: linear-gradient(145deg, rgb(0, 0, 0) 10%, rgb(0, 5, 36) 90%);
        --text-gradient: linear-gradient(348deg, rgba(34,31,25,0.5718662464985995) 47%, rgba(253,143,68,1) 100%);
    }
//////////////////////////
/*'Courier New', Courier, monospace;
    margin: 0px;*/



////////////////////////////
    html {
       font-size: 62.5%;
       font-size: 16px;
       height: 100%;  
       width: 100%;  

    }
    body {
        margin: 0;
        width: 100%;
        background-image: linear-gradient(0deg, rgba(31, 31, 31, 0.7819502801120448) 62%, rgba(4, 13, 18, 1) 100%), url("../images/fondo.jpg");
        min-height: 100vh;
    }
    h1,h2,h3,h4{
        text-wrap:balance;
    }
    p{
        text-wrap:pretty
    }
    body.dark {
        --bg-color: hsl(0, 0%, 15%);
        --color-text: hsl(0, 0%, 98%);
    }

  *{
        box-sizing: border-box;
        scroll-behavior: smooth;
        min-width: 0;
        position: relative;
    }

    a, a:visited, a:hover, a:active {
        text-decoration: none;
        transition: var(--transition);
    }

    textarea{
        resize: none;
    }

    .invertir{
        filter: invert(1);
    }
    .blur {
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(2px);
    }
/*///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////animations///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
    @keyframes flotating__icon {
        0%{
            transform: translateY(0);
        }
        50%{
            transform: translateY(-9px);
        }
        100%{
            transform: translateY(0);
        }
    }

    @keyframes text__blur{
        0%{
            opacity: 0;
            filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }
        100%{
            opacity: 1;
            filter: blur(0);
            -webkit-backdrop-filter: blur(0);
        }
    }
/*///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////header///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/

    
    header {
        gap: 15px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
        background: linear-gradient( 90deg,
        var(--header1),
        var(--header2));
        position: fixed;
        width: 100%;
        padding-left: 1rem;
        z-index: 10;
        border-bottom: 1px solid var(--second-color);
        height: 55px;
    }
    .active{
        border-bottom: 2px solid var(--bg-color);
        transition: var(--transition);
    }


    .header__img {
        width: 2.5rem;
        border-radius: 50%;
    }
    .header__link {
        display: flex;
        align-items: center;
    }
    .header__texto {
        text-align: center;
        font-size: 1.5em;
        font-family: var(--font);
        color: var(--bg-color);
        margin: auto;
        margin-left: 10px;
    }
    /*///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////hero///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
    .hero {
        display: flex;
        flex-direction: column-reverse;
        flex-wrap: wrap;
        justify-content: center;

        align-items: center;
        min-height: 100vh;
        min-width: 100%;
        gap: 0;
    }
    .hero__container{
        text-align: center;
        width: 100%;
        max-width: 80%;
    }
    .hero__title{
        font-family: var(--font);
        color: var(--bg-color);
        margin-bottom: 0.5rem;
        padding-top: 0;
        font-size: 1.5rem;
        animation: text__blur 0.8s cubic-bezier(0.55, 0.05, 0.68, 0.53) 1.5s both;
    }
    .hero_titulo_box{
        border-bottom: 2px solid var(--second-color);
        padding: 0;
        width: 100%;
    }
    .hero__description{
        font-size: 2rem;
        flex-wrap: wrap;
        font-family: var(--font);
        color: var(--bg-color);
        margin-top: 1rem;
        width: 100%;
        animation: text__blur 0.8s cubic-bezier(0.55, 0.05, 0.68, 0.53) 2s both;
    }

    .hero__img {
        padding-bottom: 0;
        width: 50%;
        border-radius: 50%;
        animation: text__blur 0.8s cubic-bezier(0.55, 0.05, 0.68, 0.53) 0.5s both;
                 /*flotating__icon 3s ease 1s infinite;*/
    }
    .hero__media_skills{
        margin: 0;
    }
    /*///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////about///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
    .about {
        display: flex;
        position: relative;
        flex-direction: column;
        flex-wrap: nowrap;
        /*margin-bottom: 10rem;*/
        align-items: center;
        padding-top: 5rem;
        height: 100%; 
        width: 100%;
    }
    .about__container {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        height: auto;
        align-self: center;
        flex-wrap: wrap;
    }
    .about__title{
        font-size: 1.5rem;
        max-width: 80%;
        margin: auto;
        border-bottom: 1px solid var(--second-color);
        text-align: center;
        font-family: var(--font);
        color: var(--bg-color);
    }

    .about__description{
        font-size: 1.2rem;
        text-align: left;
        text-wrap:pretty;
        padding-top: 0.5rem;
        padding-bottom: 0 ;
        padding-left: 2rem;
        padding-right: 2rem;
        color: var(--bg-color);
        line-height: normal;
        font-family: var(--font);
    }
    .about__media{
        width: 100%;
        display: flex;
        flex-direction: column;
    }
    .about__media_stadistics{
        margin: auto;
        padding-top: 0;
        align-items: center;
        align-content: center;
        display: flex;
        justify-content: center;
    }
    .about__media_skills{
        margin: auto;
        padding-top: 15px;
        align-items: center;
        align-self: center;
        display: flex;
        margin-left: auto;
    }
    .icon_skill{
        width: 25px;
        height: 25px;
    }
.stadistics{
    width: 90%;
}
/*////////////////////////////////////////portafolio////////////////////////////////*/
    .wrapper {
        width: 100%;
        height: 100%;
        display: flex;
        padding-top: 15px;
        justify-content: center;
    }
    .portafolio{
        position: relative;
        display: flex;
        align-items: center;
        flex-direction: column;
        padding-top: 5rem;
        width: 100%;
        justify-content: unset;
        margin-bottom: 5rem;
        height: 100%;
        min-height: 600px;
    }
    .portafolio__container {
        display: flex;
        flex-wrap: nowrap;
        justify-content: start;
        padding-top: 10px;
        height: 100%;
        width: 80%;
        flex-direction: column;
        gap: 0.2rem;
        margin-top: 15px;
    }
    .portafolio__container input {
        display: none;
    }

    .portafolio__container input:checked + .card {
        width: 100%;
        height: 400px;
    }
    .portafolio__container input:not(:checked) + .card {
        height: 80px;
        width: 100%;
    }
    .portafolio__container input:checked + .card::after {
        opacity: 1; /* en 0 Quita el oscurecimiento cuando está seleccionado */
        cursor: default;
        background: linear-gradient(360deg, rgba(0, 0, 0, 1), transparent);
    }

    .portafolio__container input:not(:checked) + .card::after {
        opacity: 1; /* en 1 Mantiene el oscurecimiento cuando no está seleccionado */
    }
    .portafolio__container label {
        position: relative;
        border-radius: 0.75rem;
        background-size: cover;
        background-position: center;
        border-radius: 2rem;
        overflow: hidden;
        margin: 0 5px;
        display: flex;
        align-items: flex-end;
        transition: all 0.6s cubic-bezier(.28,-0.03,0,.99);
        box-shadow: 0px 10px 30px -5px rgba(0,0,0,0.8);
        width: 80px;
        height: 400px;
    }
    .portafolio__container label::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5); /* Oscurecimiento inicial */
        transition: opacity 0.5s ease;
    }

    .portafolio__title{
        border-bottom: 1px solid var(--second-color);
        text-align: center;
        font-family: var(--font);
        color: white;
        margin: 0;
        max-width: 80%;
        font-size: 1.5rem;;
    }
    .card {
        border-radius: var(--border-radius);
    }
    .card .description {
        display: flex;
        justify-content: flex-start;
        flex-direction: column;
        overflow: hidden;
        height: 55%;
        width: 70%;
        opacity: 0;
        transition: opacity 0.4s ease, transform 0.4s ease;
        transform: translate(5%, 240%);
    }
    .portafolio__container input:checked + .card .description {
        opacity: 1;
        transform: translate(5%, 100%);
        transition-delay: .4s;
        z-index: 2;
    }
    .card > .row {
        color: white;
        display: flex;
        flex-wrap: nowrap;
        width: 100%;
        height: 100%;
    }
    .card > .row > .icon {
        background: var(--color-text);
        color: white;
        border-radius: 50%;
        width: 20px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 20px;
    }
    .card .row .icons__container {
        opacity: 0;/*cambiar a 0 para ocultar*/
        transform: translate(140%,0);
        transition: opacity 0.4s ease, transform 0.4s ease;
        gap: 5px;
        display: flex;
        margin-left: auto;
        flex-direction: column;
    }
    .portafolio__container input:checked + .card .row .icons__container {
        transform: translate(-20%,0);
        gap: 5px;
        display: flex;
        margin-left: auto;
        flex-direction: column;
        margin-right: 0;
        margin-top: 15px;
        opacity: 1;
        transition-delay: .4s;
        z-index: 2;
    }
    .btn__container{
        width: 70%;
        display: flex;
        align-items: center;
        justify-content: unset;
        gap: 0;
        flex-direction: column;
        padding-top: 10px;
    }
    .card__btn{
        color: var(--bg-color);
        background-color: var(--second-color);
        border-radius: var(--border-radius);
        border: 1px solid var(--bg-color);
        text-align: center;
        font-family: var(--font);
        margin: 0.2rem;
        margin-bottom: 10px;
        padding: 0.5rem;
        font-size: 1rem;
        transition: .4s ease-in-out;
        width: 125px;
        height: 55px;
        align-content: center;
    }
    .card__btn:hover {
        background: var(--text-gradient);
    }

    .icon__caja{
        background: darkgrey;/*#7d7d7d*/
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0px 0px 3px 1px #000000e3;
        border: 1px solid black;
        width: 3rem;
        height: 3rem;
        min-width: 3rem;
        min-height: 3rem; 
        overflow: hidden;   
    }
    .icono_skill{
        border-radius: 30%;
        height: 35px;
        width: 35px;
    }
    .description p {
        color: #b0b0ba;
        padding-top: 5px;
    }
    .description h4 {
        margin: 0;
        margin-bottom: 0.5rem;
        text-transform: uppercase;
        color: navajowhite;
        text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.8); /* Sombra de texto */
        border-radius: 0.75rem;
        /*background: linear-gradient(360deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5));*/
        /*box-shadow: 0px 10px 30px -5px rgba(0,0,0,0.8);*/
        font-family: var(--font);

    }
    /*///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////footer///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/

    .main-footer{
        background: #151515;
        color: var(--bg-color);
        padding: 30px 20px;
        clear: both;
        display: grid;
        grid-template-columns: repeat(1, 3fr);
        grid-gap: 20px;
      }
    .footer__title{
      color: var(--second-color);
      border-bottom: 1px dotted #555;
      padding-bottom: 20px;
    }
    .footer__txt{
      color: var(--bg-color);
    }
    .footer__container--links{
        display: none;
    }
    .footer__link{
        color: var(--bg-color);
        text-decoration: none;
        display: block;
        padding: 10px 0;
        font-size: 0.8rem;
        font-family: var(--font);
    }
    .footer__link:hover{
        font-size: 1.3rem;
        color: var(--second-color);
        transition: var(--transition);
    }
    
    .footer_item{
        list-style: none ; 
        transition: all 1s;
    }
    .copy{
        color: #555;
        grid-column-start:span 3;
        text-align: center;
    }

@media screen and (min-width: 480px){
    /*hero*/
    .hero {
        
    }
    .hero__title{
        font-size: 1.8rem;
    }
    .icon_skill{
        width: 35px;
        height: 35px;
    }
    .hero__img {
        width: 40%;
    }
    /*about*/
    .about__title{
        font-size: 1.8rem;
    }
    .about__description{
        font-size: 1.6rem;
    }
    .about__media_skills{
        margin: auto;
        padding-top: 15px;
    }
    .stadistics{
        height: 250px;
    }
    /*proyectos*/
    .portafolio{
        
    }
    .portafolio__title{
        font-size: 1.8rem;
    }
   .card > .row > .description {
        height: 43%;
        width: 100%;
    }
    .portafolio__container input:checked + .card .row .icons__container {
        margin-right: 15px;
    }
    .btn__container{
        width: 100%;
        flex-direction: unset;
    }
    .card .description {
        transform: translate(5%, 230%);
    }

    .portafolio__container input:checked + .card .description {
        transform: translate(5%, 150%);
    }
    .description h4{
        font-size: 1.3rem;
    }
    .about__title{
    font-size: 2rem;
}
.portafolio__title{
    font-size: 2rem;
}
.hero__title{
    font-size: 2rem;
}
    
}
@media screen and (min-width: 768px){
    .hero__img {
        width: 30%;
    }
    /*about*/
    .about{
        /*min-height: 1100px;*/
    }
    .stadistics{
        height: 300px;
    }
    .icon_skill{
        width: 40px;
        height: 40px;
    }
    /*proyectos*/
    .portafolio{
       /* min-height: 1200px;*/
    }
    .portafolio__container input:checked + .card .description {
        width: 80%;
    }
    .description h4{
        font-size: 1.5rem;
        width: 100%;
    }
    .about__title{
    font-size: 2.5rem;
}
.portafolio__title{
    font-size: 2.5rem;
}
.hero__title{
    font-size: 2.5rem;
}
}
@media screen and (min-width: 1024px){
    /*hero*/
    .hero__img {
        width: 25%;
    }
    /*about*/
    .about {
        flex-direction: row;
        justify-content: center;
        min-height: 100vh;
        margin-bottom: 0;
        padding-top: 0;
        align-items: center;
        padding-left: 5%;
    }
    .about__media{
        align-items: center;
    }
    /*proyectos*/
    .portafolio{
        min-height: 100vh;
    }
    .portafolio__container{
        flex-direction: row;
        justify-content: center;
    }
    .portafolio__container input:checked + .card {
        width: 50%;
        height: 400px;
    }
    .portafolio__container input:not(:checked) + .card {
        height: 400px;
        width: 80px;
    }
    .description h4{
        font-size: 1.7rem;
    }
   /*footer*/
   .main-footer{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 20px;
   }
   .footer__link{
        font-size: 0.8rem;
        font-family: var(--font);
   }

.about__title{
    font-size: 3rem;
}
.portafolio__title{
    font-size: 3rem;
}
.hero__title{
    font-size: 3rem;
}
}