/* Main section skills Design =========================================== */

.main__skills {
    background-color: var(--color1);
    padding: 4rem 4rem 6rem 4rem;
}

.skills__title {
    color: var(--text-color);
    font-family: var(--text-font-title);
    font-size: 8.5vw;
    font-weight: 560;
    text-align: center;
    margin: 7rem 0 2rem;
}

.skills__all {
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin-bottom: 2rem;
}

#skills__list {
    width: 100%;
    text-align: center;
    margin: 6rem 0 6rem 0;
}

#list__title {
    position: relative;
    width: 100%;
    font-size: 17px;
}
#list__title::after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--color2);
    margin: 1rem 0;
}

#list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	align-content: stretch;
    margin-top: 2rem;
}

#list__items {
    display: flex;
    flex-direction: column; 
    align-items: center;
    width: 50px;
    margin: 15px 20px 0 20px;
    z-index: 5;
} 

#list__names {
    color: var(--text-color);
    font-size: 17px;
    font-weight: 600;
    margin-top: 0.5rem;
}

.web__list {
    position: relative;
}

#js__heart {
    display: block;
    fill: var(--color-details);
    stroke-miterlimit: 10;
    stroke-dasharray: 338;
    stroke-dashoffset: 0;
    stroke-linecap: round;
    stroke-width: 8px;
    position: absolute;
    top: 40%;
    left: 32%;
    opacity: 1;
    rotate: -13deg;
    width: calc(100% - 22rem);
    transform: translate(-50%, -50%);
    transition: stroke-dashoffset 0s 0.2s, opacity 0.2s;
    z-index: 2;
}

.php svg {
    width: 65px;
    margin: -2.5px 0;
}
.sql svg {
    width: 53px;
    margin: 3.5px 0;
}
.api svg {
    margin: 6px 0;
}
.mvc svg {
    width: 53px;
    margin: 7px 0;
}

/* Responsive tablet +768px ==================================== */
@media only screen and (min-width : 768px) {

    .main__skills {
        padding: 4rem 4rem 7rem 4rem;
    }

    .skills__title {
        margin-bottom:0;
    }
    
    #list__title {
        font-size: 25px;
        padding: 6rem 0 1rem 0;
    }

    #list {
        margin-top: 0;
    }

    #list__items {
        width: 70px;
        margin: 25px 20px 0 20px;
    } 
    
    #list__names {
        font-size: 22px;
    }

    #js__heart {
        fill: none;
        top: 52%;
        left: 60%;
        rotate: +13deg;
        width: calc(100% - 65rem);
        transform: translate(-50%, -50%);}
}

/* Responsive desktop +1024px ==================================== */
@media only screen and (min-width : 1024px) {

    .main__skills {
        padding-left: 0;
        padding-right: 0;
    }

    #skills__list {
        margin: 6rem 0 6rem 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        }

    .skills__title {
        font-size: 4vw;
        margin: 11rem 0 6rem;
    }

    .skills__all {
        margin-bottom: 6rem;
    }

    #list__title {
        font-size: 3rem;
        font-weight: 300;
        padding: 0;
        width: 250px;
        text-align: center;
    }

    #list {
        margin-top: 4rem;
    }

    #list__items {
        width: 5.5rem;
        margin: 0 3rem;
        border: none;
    } 

    #list__names {
        font-size: 2.3rem;
        font-weight: 450;
    }

    #js__heart {
            stroke-dashoffset: 338;
            stroke-width: 4px;
            opacity: 0;
            top: 80%;
            left: 50%;
            rotate: +13deg;
            width: calc(100% - 72rem);
            transform: translate(-50%, -50%);
    }
    .web__list:hover #js__heart{
        stroke-dashoffset: 0;
        opacity: 1;
        transition: opacity 0s, stroke-dashoffset 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
    }
}