section{
    display: inline-block;
    vertical-align: top;
}
.photoSection{
    width: 60%;
}
.productInfosSection{
    width: 39%;
    height: 100%;
    text-align: end;
    overflow: scroll;
}

.photos{
    position: relative;
}
.photos img{
    width: 100%;
    position: relative;
    max-width: 1000px;
}

#mobile{
    display: none;
}

.gallery {
	padding: .5rem;
	display: grid;
	grid-template-columns: repeat(10, 80vw);
	grid-template-rows: 1fr;
	grid-column-gap: .5rem;
	grid-row-gap: .5rem;
	overflow: scroll;
	height: fit-content;
	scroll-snap-type: both mandatory;
	scroll-padding: .5rem;
}
.gallery img{
    width: 120%;
    height: 100%;
}
.active {
	scroll-snap-type: unset;
}

li {
	scroll-snap-align: center;
	display: inline-block;
	border-radius: 3px;
	font-size: 0;
}

.productInfosSection{
    position: fixed;
}
.productInfosSection .name{
    font-size: 50px;
    font-weight: bold;
    text-align: right;
    padding: 10px 0px;
    
}
.productInfosSection .price{
    font-size: 20px;
    text-align: right;
    padding: 10px 0px;
}
.productInfosSection .input{
    display: inline-block;
    text-align: right;
    padding: 10px 0px;
}
.productInfosSection #size{
    margin-right: 20px;
    text-align: right;
    padding: 10px 0px;
}
.productInfosSection .input select{
    width: 150px;
    text-align-last:center;
    font-size: 16px !important; 
    padding: 16px 8px !important;
    border: none !important;
    border-bottom: 1px solid black !important;
    background-color: white !important;
    color: black !important;
}
.productInfosSection .input select:focus{
    outline: none;
}
.input button{
    font-size: 16px;
    padding: 16px 8px;
    background-color: rgb(12, 12, 12);
    color: white;
}
.notAvailableBtn button{
    font-size: 16px;
    cursor: not-allowed;
    background-color: rgb(228, 228, 228);
    padding: 16px 8px;
    color: black;
    border: 1px solid transparent;
}
.input button:hover{
    opacity: 60%;
}
.productInfosSection .title{
    font-size: 20px;
    font-weight: bold;
    text-align: right;
    padding: 10px 0px;
}
.productInfosSection .description, .productInfosSection .composite{
    text-align: justify;
    font-size: 16px;
    margin-left: 20px;
    padding: 10px 0px;
}
::-webkit-scrollbar {
  width: 2px;
}
.products{
    margin-bottom: 100px;
}
.product .name, .product .price{
    text-align: center;
}

@media screen and (max-width: 1350px) {
    .productInfosSection{
        padding-right: 5px;
    }
    .productInfosSection .name{
        font-size: 40px;
    }
    .productInfosSection .description{
        padding-bottom: 10px;
    }
}
@media screen and (max-width: 650px) {
    section{
    width: 100%;
    display: block;
    }
    .photoSection{
    width: 100%;
    }
    .productInfosSection{
        width: fit-content;
        position: relative;
        margin: 20px;
    }
    .productInfosSection .name{
        font-size: 30px;
    }   
    .photos img{
    width: 100%;
    }
    #mobile{
    display: initial;
    }
    #desktop{
    display: none;
    }
    .products{
        display: none;
    }
}