/* BASIC */
/* COLOR ROOT */
:root{
    --white: #fff;
    --blue: #007bff;
    --lightDark: #252627;
    --lightWhite: #f8f9fa;
    --footer: #faf1f1;
    --body:#feffff;
    --body-2: #ecf1f1;
    --boxShadow: #c0b5b5;
    --foooterFont: #575454;
    --footerShapeShadow: #c5adad;
    --themeColor-light: #79afc5;
    --themeColor-dark: #609cb3;
    --themeColor-dark-2: #5993aa;
    --grayText: #a19a9a;
    --grayText-2: #8d8383;
    --headerBackground:#fdfdfd;
}

/* BODY */
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    list-style: none;
}

body{
    background-color: var(--body-2);
}

/* FONT */
a , h1 , h2 , h3 , h4{
    /* font-family: HarmonyOS_Sans_SC_Black; */
    text-decoration: none;
    color: #252627;
    color: var(--lightDark);
}



/* FOOTER */

/* TO FIT HALFMOONCSS */
address, dl, ol, p, ul {
    margin-bottom: 0 !important;
}

ol, ul {
    padding-left: 0;
}

footer{
    width: 100%;
    margin: 6.25rem 0 0 0; 
    font-size: 1rem;
    cursor: pointer;
}

.footerContainer{
    width: 100%;
}

.itemContainer , .infoContainer{
    padding: 1.875rem .9375rem;
    display: flex;
    flex-direction: column;
}

/**/
footer .footerItems_row{
    display: inline-flex;
    flex-wrap: wrap;
    margin: auto;
    letter-spacing: .0625rem;
    margin-top: .5rem;
}

footer a , footer li , footer ul{
    color: var(--lightWhite);
}

/* LINKS */
.links{
    background-color: var(--themeColor-light);
}

footer .itemTitle{
    font-weight: 700;
}

/* STUDIO */
.info{
    background-color: var(--themeColor-dark);
}

.infoContainer{
    padding: 1.5625rem 1.25rem;
}

.footer-item-info{
    width: 6.25rem;
    padding-left: .3125rem;
    text-align: center;
}

/* WEBLINKS */
.webLinks{
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 1.875rem 0 2.1875rem 0;
}

.webLinks ul{
    width: 25rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    background-color: #79afc5;
    border-radius: 1.75rem;
    padding: .5rem 1.25rem;
}

.webLinks span{
    display: flex;
}

.webLinks li{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3.75rem;
    height: 3.75rem;
    border-radius: 50%;
    background-color: #5090aa;
}

.GitHub-link , .QQ-link{
    margin-left: .3438rem;
}

.webLinks svg{
    width: 2.0625rem;
    height: 2.0625rem;
}

.GitHub-link svg{
    width: 36px;
    height: 36px;
}

footer .item{
        width: 110px;
        padding: 0 .75rem; 
        border-right: .0625rem solid var(--white); 
        height: 1.25rem;
}

@media only screen and (max-width: 491px) {
    .links .footerItems_row{
        display: grid;
        margin: auto;
    }

    .itemContainer{
        padding: 1.875rem .9375rem;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
    }

    .links .footerItems_row:nth-child(2){
        border-right: .0625rem solid var(--white);
        border-left: .0625rem solid var(--white);
    }

    footer .item{
        width: 6.875rem;
        display: flex;
        justify-content: center;
        height: 1.25rem;
        padding: 0;
        border-right:0;
    }

    footer .itemTitle{
        margin-bottom: 4px;
    }
}

@media only screen and (min-width: 445px) {
    .webLinks p{
        margin-right: .9375rem;
    }
}

@media only screen and (max-width: 445px) {
    .webLinks span{
        margin-top: .5rem;
    }
}



/* HEADER */
.PCheader{
    display: flex;
    width: 100%;
    background-color: var(--headerBackground);
    height: 3.75rem;
    position: relative;
    box-shadow: #817575 0rem -4px 0.4rem 0.1rem;
    align-items: center;
}

.PCheader div{
    display: flex;
}

.headerContainer{
    width: 100%;
    height: inherit;
    flex-direction: row;
    justify-content: space-between;
    margin: 0 5% 0 5%;
    flex-wrap: wrap;
    align-items: center;
}

header img{
    height: 40px;
    vertical-align: 0;
}

/* HEADER TABLE */
.headerSelection{
    height: inherit;
}

.headerSelection ul{
    height: inherit;
    display: flex;
    flex-direction: row;
    margin: 0 !important;
}

.headerSelection li{
    height: inherit;
    font-size: 16px;
}

.headerSelection a{
    padding: 0 20px;
    height: inherit;
    display: flex;
    align-items: center;
    transition: 0.3s ease-in-out;
}

.headerSelection a:hover{
    background-color: var(--themeColor-light);
    color: var(--lightWhite);
}

@media screen and (min-width: 800px) {
    .mobileHeader{
        display: none;
    }
}

@media screen and (max-width: 800px) {
    .PCheader{
        display: none;
    }

    .mobileHeader{
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 4%;
        width: 100%;
        height: 60px;
        background-color: var(--headerBackground);
        position: relative;
        box-shadow: #817575 0rem -4px 0.4rem 0.1rem;
    }

    #toggler:checked + label .box{
        background-color: aliceblue;
    }
    
    #toggler{
        display: none;
    }
    
    .hamburgerContainer{
        display: block;
        width: 20px;
        height: 20px;
        position: relative;
        top: 5px;
    }
    
    .hamburgerContainer span {
        display: block;
        height: 1px;
        background-color: #000;
        position: relative;
        transition: transform .3s ease-in-out,top .3s ease-in-out .3s;
        top: 0;
    }
    
    .hamburgerContainer span:nth-child(2) {
        margin-top: 7px;
    }
    
    #toggler:checked + label .hamburgerContainer span:nth-child(1){
        transform: rotate(45deg);
        top: 4px;
        transition: top .3s ease-in-out,transform .3s ease-in-out .3s;
    }
    
    #toggler:checked + label .hamburgerContainer span:nth-child(2){
        transform: rotate(-45deg);
        top: -4px;
        transition: top .3s ease-in-out,transform .3s ease-in-out .3s;
    }
    
    .nav-items {
        z-index: 999;
        background-color: rgba(0, 0, 0,.50);
        width:100%;
        height: 100vh;
        position: absolute;
        top: 60px;
        left: 0;
        transform: scaleY(0);
        transition: transform .3s ease-in-out .3s, opacity .3s ease-in-out .3s;
        transform-origin:50% 0;
        opacity: 0;
    }

    .nav-items a{
        color: var(--lightWhite);
        display: flex;
        justify-content: center;
    }

    .nav-items ul{
        display: block;
        padding-left: 0;
    }

    .nav-items li{
        padding: 16px;
        background-color: var(--themeColor-light);
        border-bottom: solid 2px var(--themeColor-dark);
        transition: 0.5s ease;
        font-size: 1.125rem;
        font-weight: 550;
    }

    .nav-items li:hover{
        background-color: var(--themeColor-dark-2);
    }

    #toggler:checked ~ .nav-items{
        transform: scaleY(1);
        opacity: 1;
    }
}