/*          CASE HERO           */

#case__hero{
    position: relative;
    display: block;
    width: 100%;
    height: 100svh;
    margin: 0;
    z-index: -1;
    
}
    
    #case__hero img, #case__hero mux-player {
        width: 100%;
        height: 100%;
        object-position: 50% 50%;
        object-fit: cover;
    
    }

    #case__hero mux-player {
        --media-object-fit: cover;
        --media-object-position: center;
    
    }



/*          CASE INFORMATION        */

#case__intro {
    padding-top: calc(var(--space) * 2) !important;
}

#case__information {
    padding-top: var(--box-space) ;
    display: flex;
    flex-direction: row;
    column-gap: var(--box-space);
}

.table li {
    margin-top: var(--unit);
}

#case__competence {
    max-width: 48ch;
}
#collab ul {
    display: block;
    width: max-content;

}



/*          CASE CONTENT            */

#casefilm {
    width: 80%;
    max-width: 1920px;
    max-height: 1080px;
    aspect-ratio: 16/9;}

    #case_film {
        /* height: 100%; */
        width: 100%;
        aspect-ratio: 16 / 9;
    }

    /*  NEED TO FIX HEIGHT ON CONTAINER 
    @media only screen and (min-width: 2000px) {
        #casefilm {
        height: auto;
        }

    }
     */

#description {
    /* max-height: calc(100vh - 64px); */
    display: flex;
    flex-direction: row;
    column-gap: 64px;
}

.desc__img {
    width: 50%;
    display: flex;
    flex-shrink: 0;
    }

.desc__img img, .desc__img video {
    display: flex;
    width: 100%;
    aspect-ratio: 3 / 4;
    object-position: 50% 50%;
    object-fit: cover;
}

.case_images {
    display: flex;
    flex-direction: column;
    row-gap: var(--air);
    width: 100%;
}

.case_images img, .case_images video {
    width: 100%;
    padding-bottom: var(--air);
}

.case_img p, .case_images {
    margin-bottom: var(--space);
}

.case_img {
    width: 100%;
    display: block;
    position: relative;
}

.case_img p, #casefilm p {
    max-width: 55ch;
}


h3 + p, p + p {
    padding-top: var(--air);
}


/* CAROUSEL */

.case .grid {
    
    padding-top: var(--box-space);
    padding-bottom: var(--box-space);
    row-gap: var(--air);
}
    

    .carousel__frame {
        grid-column: span 8;
        aspect-ratio: 1920 / 1080;
        position: relative;
        overflow: hidden;
    }

    .carousel__slide {
        width: 100%;
        position: absolute;
        aspect-ratio: 16 / 9;
        transition: all var(--ani-m) var(--easing);
    }

    .carousel__slide video {
        height: 100%;
        width: 100%;
        object-fit: cover;
        object-position: 50% 50%;
    }

    .carousel__slide img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: 50% 50%;
    }

    #carousel__info{
        position: relative;
        grid-column: span 4;
        align-self: flex-end;
        overflow: hidden;
        }

            #carousel__info .text_hidden {
                position: absolute;
                bottom: 0;
                opacity: 0;
                transform: translateY(25%);
                transition: var(--ani-m) var(--easing);
            }


            #carousel__info .text_show {
                bottom: 0;
                opacity: 1;
                transform: translateY(0%);
                transition: var(--ani-m) var(--ani-s) var(--easing)  ;
            }

                  

    .carousel__nav {
        margin-top: var(--air);
        display: flex;
        column-gap: 4px;
    }

    .carousel__controls {
        grid-column: span 8;
        display: flex;
        justify-content: space-between;
        
    }

    .carousel__buttons {
        display: flex;
        gap: var(--box-space);
    }

    .carousel__buttons button {
        padding: 0;
        filter: none;
        border: 0;
        border-radius: 0;
        background: transparent;
        color: var(--foreground);

    }


    #carousel__buffer {
        width: 20%;
        height: 100%;
    }


        /*          FOOTER          */
      #footer {
            background-color: var(--accent);
            padding: var(--space);
            padding-top: calc(var(--box-space) * 2);
            padding-bottom: calc(var(--box-space) * 2);

        }

        #footer .f_medium {
            max-width: 35ch;
            padding-bottom: var(--box-space);
        }

        #footer p + p {
            padding-bottom: 0 !important;
            margin-bottom: 0;
        }




    @media only screen and (max-width: 900px) {
    
        #case__information {
            flex-direction: column;
            gap: var(--space);
        }

        #case__intro {
            padding-top: 0;
        }

        .case .grid {
            padding-top: var(--box-space);
            padding-bottom: var(--box-space);
            row-gap: var(--air);
        }
        
        #case__hero {}

        #description {
            width: 100%;
            height: auto;
            flex-direction: column;
            gap: 64px;
        }

        #description p {
            width: 80%;
        }
    
        .desc__img {
            width: 100%;
        }
    
        
        .carousel__frame {
            grid-column: span 12;
    
        }

        .carousel__slide {
            grid-row: span 12;
        }

        .carousel__controls {
            grid-row: 2;
            grid-column: span 12;
            padding-bottom: var(--space);
        }

        .carousel__info {
            grid-row: 3;
            grid-column: span 10;
        }

        #carousel__info{
            position: relative;
            grid-column: span 10;
            align-self: flex-start;
        }

    }
