/* SECTION */

.section-padding{
  padding:90px 0 70px;
}

/* SEARCH */

.search-box{
  background:white;
  padding:30px;
  border-radius:24px;
  box-shadow:0 5px 20px rgba(0,0,0,.05);
  margin-bottom:40px;
}

.form-control,
.form-select{
  border-radius:16px;
  min-height:52px;
  border:1px solid #e5e7eb;
}

.form-control:focus,
.form-select:focus{
  border-color:var(--primary);
  box-shadow:none;
}

.btn-search{
  background:var(--primary);
  color:white;
  border:none;
  min-height:52px;
  border-radius:16px;
  font-weight:600;
}

.btn-search:hover{
  background:#ea6f1f;
  color:white;
}

/* CATEGORY */

.category-wrapper{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:40px;
}

.category-btn{
  background:white;
  border:none;
  padding:12px 20px;
  border-radius:50px;
  font-weight:600;
  color:var(--secondary);
  box-shadow:0 4px 15px rgba(0,0,0,.05);
  transition:.3s;
}

.category-btn:hover,
.category-btn.active{
  background:var(--primary);
  color:white;
}

/* BOOK CARD */

.book-card{
  border:none;
  border-radius:24px;
  overflow:hidden;
  background:white;
  box-shadow:0 5px 20px rgba(0,0,0,.05);
  transition:.3s;
  height:100%;
}

.book-card:hover{
  transform:translateY(-5px);
}

.book-cover{
  width:100%;
  height:300px;
  object-fit:cover;
}

.book-content{
  padding:25px;
}

.book-category{
  background:rgba(253,128,46,.15);
  color:var(--primary);
  padding:8px 14px;
  border-radius:50px;
  font-size:.78rem;
  font-weight:600;
  display:inline-block;
}

.book-meta{
  color:#6c757d;
  font-size:.92rem;
  margin-bottom:10px;
}

.book-meta i{
  color:var(--primary);
}

.btn-book{
  background:var(--primary);
  color:white;
  border:none;
  border-radius:14px;
  font-weight:600;
}

.btn-book:hover{
  background:#ea6f1f;
  color:white;
}

/* INFO BOX */

.info-box{
  border:none;
  border-radius:24px;
  background:white;
  padding:30px;
  box-shadow:0 5px 20px rgba(0,0,0,.05);
  height:100%;
}

.info-icon{
  width:65px;
  height:65px;
  border-radius:18px;
  background:rgba(253,128,46,.15);
  color:var(--primary);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  margin-bottom:20px;
}

/* MOBILE */

@media(max-width:768px){

  .section-padding{
    padding:70px 0 50px;
  }

}