* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
main {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100vh;
}
.slider__container {
    width: 75%;
    height: 75%;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
    border-radius: 50px;
    padding: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.4s ease;
}
input {
    display: none;
}
.slider__wrap {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 5rem;
}
.img__wrap {
    width: 100%;
    height: 70%;
    display: flex;
    overflow: hidden;
}
.img__container {
    flex-basis: 0%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
img {
    width: 50%;
    max-width: 30rem;
    height: auto;
    object-fit: scale-down;
    margin: 0 auto;
    transition: all 0.4s ease-in;
}
.slider__control-wrap {
    display: flex;
    justify-content: space-between;
}
.meme__title-wrap {
    width: 50%;
    overflow: hidden;
   display: flex;
}
.meme__title {
    flex-basis: 0%;
    width: 0%;
    opacity: 0;
    font-size: 2rem;
    order: 1;
}
.meme__input-wrap {
    display: flex;
    gap: 1rem;

}

label {
    display: flex;
    height: 3rem;
    width: 3rem;
    cursor: pointer;
    align-items: center;
    justify-content: center;
}
label:hover .radio__button {
    border: 6px solid black;
}
label:active .radio__button {
    background-color: black;
}
.radio__button {
    height: 2rem;
    width: 2rem;
    border: 4px solid #999;
    border-radius: 50%;
}

#firstInput:checked ~ * #firstLabel > .radio__button{
    border: 6px solid black;
}
#secondInput:checked ~ * #secondLabel > .radio__button{
    border: 6px solid black;
}
#thirdInput:checked ~ * #thirdLabel > .radio__button{
    border: 6px solid black;
}
#fourthInput:checked ~ * #fourthLabel > .radio__button{
    border: 6px solid black;
}


#firstInput:checked ~ * #firstImg {
    transition: all 0.4s ease-in;
    opacity: 1;
    flex-basis: 100%;
}

#secondInput:checked ~ * #secondImg {
    transition: all 0.4s ease-in;
    opacity: 1;
    flex-basis: 100%;
}

#thirdInput:checked ~ * #thirdImg {
    opacity: 1;
    transition: all 0.4s ease-in;
    flex-basis: 100%;
}

#fourthInput:checked ~ * #fourthImg {
    transition: all 0.4s ease-in;
    opacity: 1;
    flex-basis: 100%;
}

#firstInput:checked ~ * #firstTitle {
    flex-basis: 100%;
    width: 100%;
    transition: all 0.4s ease-in;
    opacity: 1;
    order: 0;
}

#secondInput:checked ~ * #secondTitle {
    flex-basis: 100%;
    width: 100%;
    transition: all 0.4s ease-in;
    opacity: 1;
    order: 0;
}

#thirdInput:checked ~ * #thirdTitle {
    flex-basis: 100%;
    width: 100%;
    transition: all 0.4s ease-in;
    opacity: 1;
    order: 0;
}

#fourthInput:checked ~ * #fourthTitle {
    flex-basis: 100%;
    width: 100%;
    transition: all 0.4s ease-in;
    opacity: 1;
    order: 0;
}

@media (width >= 320px) and ( width <= 768px )  {
    main {
       
    }
    .slider__container {
        padding: 1rem;
        
    }
    input {
        
    }
    .slider__wrap {
        gap: 2rem;
    }
    .img__wrap {
        width: 100%;
        height: 70%;
        display: flex;
        overflow: hidden;
    }
    .img__container {
        flex-basis: 0%;
        height: 100%;
    }
    img {
        width: 100%;
        max-width: 30rem;
    }
    .slider__control-wrap {
        display: flex;
        flex-direction: column-reverse;
        justify-content: space-between;
    }
    .meme__title-wrap {
        width: 100%;
        overflow: hidden;
       display: flex;
       justify-content: center;
       align-items: center;
    }
    .meme__title {
        flex-basis: 0%;
        width: 0%;
        opacity: 0;
        font-size: 2rem;
        order: 1;
        text-align: center;
    }
    .meme__input-wrap {
        display: flex;
        gap: 1rem;
        justify-content: center;
       align-items: center;
    }
    
    label {
        display: flex;
        height: 3rem;
        width: 3rem;
        cursor: pointer;
        align-items: center;
        justify-content: center;
    }
    .radio__button {
        height: 2rem;
        width: 2rem;
        border: 4px solid #999;
        border-radius: 50%;
    }
    
    #firstInput:checked ~ * #firstLabel > .radio__button{
        border: 6px solid black;
    }
    #secondInput:checked ~ * #secondLabel > .radio__button{
        border: 6px solid black;
    }
    #thirdInput:checked ~ * #thirdLabel > .radio__button{
        border: 6px solid black;
    }
    #fourthInput:checked ~ * #fourthLabel > .radio__button{
        border: 6px solid black;
    }
    
    
    #firstInput:checked ~ * #firstImg {
        transition: all 0.4s ease-in;
        opacity: 1;
        flex-basis: 100%;
    }
    
    #secondInput:checked ~ * #secondImg {
        transition: all 0.4s ease-in;
        opacity: 1;
        flex-basis: 100%;
    }
    
    #thirdInput:checked ~ * #thirdImg {
        opacity: 1;
        transition: all 0.4s ease-in;
        flex-basis: 100%;
    }
    
    #fourthInput:checked ~ * #fourthImg {
        transition: all 0.4s ease-in;
        opacity: 1;
        flex-basis: 100%;
    }
    
    #firstInput:checked ~ * #firstTitle {
        flex-basis: 100%;
        width: 100%;
        transition: all 0.4s ease-in;
        opacity: 1;
        order: 0;
    }
    
    #secondInput:checked ~ * #secondTitle {
        flex-basis: 100%;
        width: 100%;
        transition: all 0.4s ease-in;
        opacity: 1;
        order: 0;
    }
    
    #thirdInput:checked ~ * #thirdTitle {
        flex-basis: 100%;
        width: 100%;
        transition: all 0.4s ease-in;
        opacity: 1;
        order: 0;
    }
    
    #fourthInput:checked ~ * #fourthTitle {
        flex-basis: 100%;
        width: 100%;
        transition: all 0.4s ease-in;
        opacity: 1;
        order: 0;
    }
}
