.creations-container{
    display: grid;
    padding: 20px;
    width: 100%;
    justify-items: center;
    justify-content: center;
    grid-gap:30px;
    grid-template-columns: repeat(auto-fit, minmax(300px,1fr));
}

.creations{
    width: 300px;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    transition: translate .25s ease-in-out, filter .15s ease-in-out, scale .25s ease-in-out;
}

@media (pointer: fine){
    .creations:hover{
        translate: 0 -5px;
    }
    .creations:hover .creations-title:not(i){
        translate: 5px 3.5px;
        scale:1.04;
    }
}

.creations-container > .creations{
    width: 100%;
}


.creations-media-containers{
    overflow: hidden;
    width: 100%;
    aspect-ratio: 1/1;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.creations-media-containers > img{
    width: 100%;
    aspect-ratio: 1/1;
}

.creations-info-container{
    width: 100%;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    overflow: hidden;
    justify-content: center;
    align-items: flex-start;
    color: var(--light-grey);
    color: white;
    position: relative;
}

.creations-title{
    text-wrap: nowrap;
    font-weight: 600;
    transition: .25s ease-in-out;
}

@media only screen and (min-width: 600px){
    .creations{
        width: 325px;
    }
}

.home-title-container{
    --font-size:20px;
    font-size: var(--font-size);
    display:flex;
    padding:0 20px;
    text-align:left;
    width:100%;
    font-weight:800;
    color:white;
    justify-content:flex-start;
    align-items:center;
    gap: calc(var(--font-size) / 3);
}

.home-title-icon{
    display:inline-block;
    height: calc(var(--font-size) * 1.5);
    color:white;
    line-height:1;
}

body path{
    fill: #fff;
}

.social-media-container{
    width:100%;
    display:flex;
    align-items:center;
    gap:20px;
    padding:0 0 0 20px;
}
.social-media-container > a{
    font-size: 20px;
    font-weight:500;
    display:flex;
    gap:10px;
    align-items:center;
}
.social-media-container svg{
    width: 20px;
    aspect-ratio:1/1;
}

/* media ----------------------------------------------------------------------------------------------------------------------------- */

[data-fade] > img{
    opacity:0;
}

[data-contains] > img, [data-contains] > video{
    width: calc(100% + 2px);
}

[data-contains]{
    position: relative;
    display:flex;
    justify-content: center;
    align-items: center;
}

[data-size]{
    aspect-ratio: 1/1;
    transition: .4s ease-in-out;
}

.media-loading-overlay{
    inset:0;
    background: grey;
    position: absolute;
    animation: loading-state-animation 2s ease-in-out infinite;
    transition: opacity .35s ease-out;
}

/* scroller ----------------------------------------------------- */
.horizontal-scroller-shell{
    width: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    -webkit-mask-image: -webkit-linear-gradient(to bottom, black 60%, transparent);
    mask-image: linear-gradient(to bottom, black 60%, transparent);
}
.horizontal-scroller-shell[data-fill]{
    background: var(--fill-1);
    box-shadow: var(--box-shadow);
    border-radius: var(--border-radius);
}
.horizontal-scroller{
    width: calc(100%);
    padding: 0 20px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    position: relative;
    overflow: hidden;
    scroll-behavior: smooth;
    --space: 50px;
}
.horizontal-scroller > div{
    min-width: 100%;
    flex: 0 0 auto;
    width: fit-content;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
}
.horizontal-scroller[data-left] > div{
    justify-content: flex-start;
}
.scroller-prev-btn,.scroller-next-btn{
    width: 30px;
    aspect-ratio: 1/1;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    color: white;
    transition: opacity .2s ease-in-out;
}
.scroller-prev-btn{
    left: 0;
}
.scroller-next-btn{
    right: 0;
}
.scroller-prev-btn svg,.scroller-next-btn svg{
    width: 18px;
    aspect-ratio: 1/1;
    filter: drop-shadow(var(--box-shadow));
}

/* the code under this line is active when screen goes over 600px (pc) ----------------------------------------------------------------------------*/

@media only screen and (min-width: 600px){

    .scroller-prev-btn,.scroller-next-btn{
        width: 30px;
        font-size: 25px;
    }

    .scroller-prev-btn{
        left: 5px;
    }

    .scroller-next-btn{
        right: 5px;
    }

}
