#products{
    
  display: grid;
  grid-template-columns: 5% 90% 5%;
  gap:2%
}
#product_focus{
  position: fixed; z-index: 999;
  top: 0; left: 0;
  width: 100vw; height: 100vh;
 
  background: rgba(0, 0, 0, 0.5);
 
  display: flex;
  align-items: center;
  align-items: center;
 
  visibility: hidden;
  opacity: 0;
 
  transition: opacity ease 0.4s;
}
 
#product_focus.show {
  visibility: visible;
  opacity: 1;
}
 
#product_focus img {
  margin-left: 25%;
  width: 50%;
  height: auto;
 
  object-fit: cover;
}


.product_holder_class{
  width: auto;
  position: relative;
  margin: auto;
  justify-content:center;
  grid-column: 2 ;
  grid-row: 2;
  display: grid;
  grid-template-columns: auto auto auto;
  
}


.product_canvas{
  width: 60%;
  height:500px;
  position: relative;
  margin: auto;
}
.product_border_left{
    float:left;
  height:100%;
  position: relative;
  margin: auto;
  grid-column: 1 ;
  grid-row: 1 / span 3;
}
.product_border_right{
    float: right;
  width: 0px;
  height:100%;
  position: relative;
  margin: auto;
  grid-column: 3 ;
  grid-row: 1 / span 3;
}
.product_legend{
  width: auto;
  position: relative;
  margin: auto;
  align-items:center;
  grid-column: 2 ;
  grid-row: 1;
  
}
.product_tab_legend{
  width: auto;
  position: relative;
  margin: auto;
  align-items:center;
  grid-column: 2 ;
  grid-row: 3;

}
.product_buttons{
    width: 100px;
    height: 2em;
    position: relative;
    margin: auto;
    border-radius: 25px;
    margin-left:5px;
    margin-top:5px;
    cursor: pointer;
    font-size: 18px;
}
.product_buttons_tab{
  width: auto;
  height: auto;
  position: relative;
  margin: auto;
  border-radius: 25px;
  margin-left:5px;
  margin-top:5px;
  cursor: pointer;
font-size: 18px;
}

.product {
    float:left;
   position: relative;
   text-align: center;
   color: white;
   

   width: 95%;
   height: auto;
   margin:10px;
   
 	 
  color: white;
   background-color: var(--main-col);
   border-style: solid;
   border-width: 3px;
   border-color: #000;
   
}
.im_text{
    width:100%;
    height:3em;
    font-size: 32px;
    position: absolute;
    bottom: 0px;

  
    background-color: black;
    background-repeat: repeat-x;
    opacity: 0.6;
    
    transition: ease-in 0.5s;
    justify-content: center;
    justify-items: center;
    text-align: center;
    
}

.im_title{
  position: relative;
  top: .65em;
}


.product:hover .im_text {
	
	width:100%;
	height:100%;
	bottom:0%;
	padding-top: 1%;
  opacity: 0.9;
	display: block;
}

#im_text_description{
    display: none;
    font-size: 18px;
}
.product:hover #im_text_description{
	display: block;
}

@media only screen and (max-width: 768px){
    .product_buttons{
        
        font-size: 16px;
    }
    .product_buttons_tab{
        font-size: 16px;
    }
  
    .im_text{
        
        font-size: 20px;
    }
    
}


@media only screen and (max-width: 991px){
    .product_holder_class{
  grid-template-columns: auto;
  
}
}

@media only screen and (max-width:425px){
  
  .product:focus .im_text {
    width:100%;
    height:100%;
    top:0%;
    padding-top: 1%;
      opacity: 0.9;
    display: block;
  }
  
  .product:focus #im_text_description{
    display: block;
  }

}