/* Fallback styles */
.book {
  display: inline-block;
  box-shadow: 5px 5px 20px #333;
  margin: 10px;
}
.book img { vertical-align: middle; }

.csstransforms3d .books {
  perspective: 100px;
  -moz-perspective: 100px;
  transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -webkit-transform-style: preserve-3d;
}

.csstransforms3d .book {
  position: relative;
  perspective: 100px;
  -moz-perspective: 100px;
  transform: rotateY(-3deg);
  -moz-transform: rotateY(-3deg);
  -webkit-transform: perspective(100) rotateY(-3deg);
  outline: 1px solid transparent; /* Helps smooth jagged edges in Firefox */
  box-shadow: none;
  margin: 0;
}

.csstransforms3d  .book img {
  position: relative;
  max-width: 100%;
}

.csstransforms3d .book:before,
.csstransforms3d .book:after {
  position: absolute;
  top: 2%;
  height: 96%;
  content: ' ';
  z-index: -1;
}

.csstransforms3d  .book:before {
  width: 100%;
  left: 7.5%;
  background-color: #5a2d18;
  box-shadow: 5px 5px 20px #333;
}

.csstransforms3d  .book:after {
  width: 5%;
  left: 100%;
  background-color: #EFEFEF;
  box-shadow: inset 0px 0px 5px #aaa;
  transform: rotateY(20deg);
  -moz-transform: rotateY(20deg);
  -webkit-transform: perspective(100) rotateY(20deg);
}

.book-container-rubrique {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 5px;
}
.book-container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 5px;
}

.book-info {
  display: flex;
  background-color: #F8F9FA;
  padding: 15px;
  border-radius: 5px;
}
.book-info .description > p {
  color: red;
}
.book-info .description > .book-title {
  color: #333;
  margin: 0px;
  font-size: 14pt;
}
.book-info .description > small {
  color: #666;
}
.other-books {
  display: inline-block;
  margin: 5px 0px 5px 5px;
  padding: 5px;
  border: 1px solid #ccc;
}
.other-books:hover {
  background-color: #025D7E;
  color: white;
  text-decoration: none;
}

@media screen and (max-width:950px) {
  .book-container {
    padding: 10px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5px;
  }
}
@media screen and (max-width:610px) {
  .book-container {
    display: grid;
    grid-template-columns: 1fr;
  }
}