/*!
Theme Name: Bosa Educare
Theme URI: https://bosathemes.com/bosa-educare
Author: Bosa Themes
Author URI: https://bosathemes.com
Description: Bosa Educare is multipurpose education theme. Bosa Educare is beautiful, fast, lightweight, responsive, extremely customizable theme that you can use as a foundation to build versatile sites such as  academy, course, education, education template, elearning, learning, learning management system, teaching, training, training center, university, wordpress startup and preferably ideal for any type of education sites. Bosa Educare is a child theme of Bosa, a free multipurpose WordPress theme. Bosa Educare works perfectly with Gutenberg and the most popular page builder Elementor that can easily drag-and-drop your ideas from the interface. Bosa Educare is built with SEO, speed, and usability in mind with the multiple Header & Footer layouts, predesigned starter sites includes awesome Home & Inner Pages that is incredibly customizable and powerful enough to take a stand among the crowd. Bosa Educare is compatible with all major plugins like WooCommerce, Yoast, Contact form 7, Mailchimp for WordPress, bbPress, etc. Looking for a Multipurpose app theme? Look no further! Browse the demo to see that it's the only theme you will ever need: https://demo.bosathemes.com/bosa/educare/
Version: 1.0.0
Requires PHP: 5.6
Tested up to: 6.5
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Template: bosa
Text Domain: bosa-educare
Tags: blog, portfolio, news, grid-Layout, one-column, two-columns, three-columns, flexible-header, left-sidebar, right-sidebar, custom-background, custom-colors, custom-logo, custom-menu, featured-images, footer-widgets, full-width-template, post-formats, rtl-language-support, theme-options, sticky-post, threaded-comments, translation-ready, block-styles, wide-blocks

Bosa Educare WordPress Theme, Copyright 2024 Bosa Themes
Bosa Educare is distributed under the terms of the GNU General Public License v3

Bosa Educare is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.
*/

.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

body {
  color: #333333;
  font-family: 'Poppins', sans-serif;
}

h1, 
h2, 
h3, 
h4, 
h5, 
h6 {
  color: #111111;
  font-family: 'Jost', serif;
  font-weight: 500;
}

.entry-content h1 a,
.entry-content h2 a,
.entry-content h3 a,
.entry-content h4 a,
.entry-content h5 a,
.entry-content h6 a {
  text-decoration: underline;
}

.entry-content p a, 
.comment-content p a, 
.entry-content li a, 
.comment-content li a, .widget p a, 
.comments-area .comment-list .comment-content a {
  color: #2e92ff;
}
.entry-content p a:hover, 
.entry-content p a:focus, 
.comment-content p a:hover, 
.comment-content p a:focus, 
.entry-content li a:hover, 
.entry-content li a:focus, 
.comment-content li a:hover, 
.comment-content li a:focus, 
.widget p a:hover,
.widget p a:focus,
.comments-area .comment-list .comment-content a:hover,
.comments-area .comment-list .comment-content a:focus {
  color: #086abd;
}

.wp-block-quote {
  padding: 30px 30px 30px 50px;
  margin: 30px 0 30px 30px;
}

.site-header .site-branding .site-title {
  font-family: 'Jost', serif;
  font-size: 25px;
  font-weight: 500;
  line-height: 1.2;
  text-transform: uppercase;
}

.site-header .site-branding .site-description {
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  font-weight: 400;
  text-transform: none;
}

.main-navigation ul.menu > li > a {
  font-family: 'Jost', serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  text-transform: none;
}

.main-navigation ul.menu ul li a {
  font-weight: 500;
}

.section-banner .banner-content .entry-title {
  font-family: 'Jost', serif;
  font-size: 52px;
  font-weight: 500;
  line-height: 1.2;
  text-transform: uppercase;
}

.section-banner .banner-content .entry-meta a {
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
  text-transform: capitalize;
}

.section-banner .banner-content .entry-text p {
  font-family: 'Poppins', sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  text-transform: initial;
}

.feature-posts-content-wrap .feature-posts-content .feature-posts-title {
  font-family: 'Jost', sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4;
  text-transform: capitalize;
}

.post .feature-posts-content .cat-links a {
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
}

.post .feature-posts-content .entry-meta a,
#primary .entry-meta,
.highlight-post-slider .post .entry-meta a {
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
  text-transform: capitalize;
}

#primary article .entry-title {
  font-family: 'Jost', serif;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.4;
  text-transform: capitalize;
}

.highlight-post-slider .post .entry-content .entry-title {
  font-family: 'Jost', serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.4;
  text-transform: none;
}

.highlight-post-slider .post .cat-links a {
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1;
  text-transform: capitalize;
}

.sidebar .widget .widget-title {
  font-family: 'Jost', sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4;
  text-transform: uppercase;
}

.page-title {
  font-family: 'Jost', serif;
  font-size: 42px;
  font-weight: 500;
  text-transform: none;
}

.site-footer .site-info,
.site-footer .footer-menu ul li a {
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  font-size: 15px,
  text-transform: none,
  line-height: 1.6,
}

.site-footer-eight .social-profile {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding-bottom: 20px;
}
.site-footer-eight .footer-menu {
  margin-bottom: 20px;
}
.section-feature-pages-area {
  padding-bottom: 70px;
}
.section-feature-pages-area ~ .section-banner {
  padding-bottom: 70px;
}
.section-feature-pages-area .content-wrap {
  margin-bottom: -30px;
}
.post .feature-pages-content .feature-pages-title {
  background-color: #FFFFFF;
  display: inline-block;
  margin-bottom: 0;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4;
  text-transform: uppercase;
  padding: 10px 20px;
}

.feature-pages-content-wrap,
.travel-content-wrap {
  margin-bottom: 30px;
}

.feature-pages-layout-one .feature-pages-image,
.section-feature-posts-two-area .feature-posts-image {
  background-color: #cccccc;
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  z-index: 1;
}
.feature-pages-layout-one .feature-pages-image:before,
.section-feature-posts-two-area .feature-posts-image:before {
  background-color: rgba(0, 0, 0, 0.2);
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 1;
  position: absolute;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  z-index: 1;
}
.feature-pages-layout-one .feature-pages-content,
.section-feature-posts-two-area .feature-posts-content {
  padding: 0 20px;
  position: relative;
  z-index: 2;
  width: 100%;
}
.section-feature-posts-two-area {
  padding-bottom: 50px;
}
.section-feature-posts-two-area .feature-posts-image {
  height: 260px;
}
.section-feature-posts-two-area .feature-big-posts .feature-posts-image {
  height: 550px;
}
.section-feature-posts-two-area .feature-posts-content .feature-posts-title {
  margin-bottom: 15px;
}
.section-feature-posts-two-area .feature-posts-content  .cat-links {
  display: block;
  margin-bottom: 10px;
}
.section-feature-posts-two-area .feature-posts-content  .cat-links a {
  background-color: #EB5A3E;
  margin: 2px;
  padding: 5px;
  letter-spacing: 0.8px;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}
.section-advert {
  padding-bottom: 70px;
}
.section-advert a {
  display: inline-block;
}
.site-content .grid-thumbnail .hentry  {
  border-bottom: none;
  margin-bottom: 40px;
  padding-bottom: 0;
}
.site-content .grid-thumbnail .list-post .featured-image a {
  display: block;
}
.site-content .grid-thumbnail .list-post .featured-image img {
  width: 100%;
}
.site-content .grid-thumbnail .list-post {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.site-content .grid-thumbnail .list-post .featured-image {
  width: 100px;
}
.site-content .grid-thumbnail .list-post .entry-content {
  width: -moz-calc(100% - 100px);
  width: -webkit-calc(100% - 100px);
  width: calc(100% - 100px);
  padding-left: 20px;
}
.site-content .grid-thumbnail .list-post .entry-content h3{
  margin-bottom: 8px;
}
@media screen and (min-width: 576px) {
  .site-content .grid-thumbnail:nth-last-of-type(2) .hentry {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}
@media screen and (min-width: 992px) {
  .site-footer-eight .footer-menu {
    text-align: left;
    display: block;
  }
  .site-footer-eight .footer-menu ul li:first-child {
    border-left: none;
  }
}
@media screen and (max-width: 991px) {
  .site-footer-eight .bottom-footer-image-wrap {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {

  .section-feature-pages-area {
    padding-bottom: 50px;
  }
  .section-feature-pages-area ~ .section-banner {
    padding-bottom: 50px;
  }
}

@media screen and (max-width: 574px) {
  #masthead.site-header .site-branding .site-description {
    font-size: 12px;
    margin-top: 5px;
  }
}

/*header category css*/
.header-category-nav .navbar-nav {
  margin: 0;
}
.header-category-nav .navbar-nav ul {
  padding: 0;
  margin: 0;
}
.header-category-nav .navbar-nav li {
  list-style: none;
  position: relative;
}
.header-category-nav .navbar-nav li a {
  border-bottom: 1px solid rgba(243, 243, 243, 0.8);
  display: block;
}
.header-category-nav .navbar-nav > li > a {
  background-color: #333;
  border-bottom: none;
  color: #FFF;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  padding: 13px 20px;
  letter-spacing: 0.5px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.header-category-nav .navbar-nav > li > a:hover,
.header-category-nav .navbar-nav > li > a:focus {
  background-color: #086abd;
  color: #FFF;
}
.header-category-nav .navbar-nav > li > a i {
  margin-right: 10px;
}
.header-category-nav .navbar-nav li li a {
  color: #333;
  font-size: 14px;
  font-weight: 500;
  padding: 10px 20px;
}
.header-category-nav .navbar-nav li li a:hover,
.header-category-nav .navbar-nav li li a:focus {
  color: #086abd;
}

/*header menu css*/
.bottom-header .main-navigation ul.menu > li > a {
  padding: 12px 24px 12px 0;
}

.header-category-nav ul li a {
  font-family: 'Jost', serif;
  font-weight: 500;
  font-size: 15px;
}

body[class*=woocommerce] ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Jost', serif;
  font-weight: 500;
  font-size: 21px;
  line-height: 1.4;
  text-transform: none;
}

body[class*=woocommerce] ul.products li.product .price {
  font-family: 'Jost', serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.3;
  text-transform: none;
}

body[class*=woocommerce] .product-inner .button, body[class*=woocommerce] .product-inner .added_to_cart {
  font-family: 'Jost', serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.5;
  text-transform: uppercase;
}

/*services css*/ 
.section-services-area{
  padding-bottom: 70px;
}
.section-services-area .content-wrap {
  margin-bottom: -30px;
}
.services-content-wrap {
  margin-bottom: 30px;
}
.section-services-area .services-content-wrap {
  box-shadow: 0px 0px 13px -4px rgba(0, 0, 0, 0.2);
  padding: 25px;
}
.services-content-wrap .featured-image {
  overflow: hidden;
  border-radius: 100%;
  margin-right: 30px;
  margin-left: 30px;
  margin-bottom: 30px;
}
.services-content-wrap .button-container {
  padding-top: 10px;
  margin-top: 30px;
  margin-bottom: -10px;
  position: relative;
}
.services-content-wrap .button-container:before {
  border-top: 1px solid rgba(243, 243, 243, 0.8);
  content: "";
  position: absolute;
  right: 0;
  left: 0;
  bottom: 100%;
  margin-right: -25px;
  margin-left: -25px;
}
.services-content-wrap .button-container a {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#offcanvas-menu .header-text {
  background-color: #ffffff;
  margin-bottom: 30px;
  padding: 15px;
}
@media screen and (min-width: 992px) {
  .site-footer-eight .footer-menu {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .section-services-area {
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 479px) {
  .site-header .header-right svg {
    width: 14px;
  }
  .header-cart a.cart-contents span.count {
    left: 6px;
  }
  #offcanvas-menu {
    padding-right: 10px;
    padding-left: 10px;
  }
}

/*info content section*/
.section-info-graphic-area {
  margin-bottom: 70px;
}
.section-info-graphic-area .row {
  row-gap: 40px;
}
.section-info-graphic-area .info-content-wrap {
  padding: 28px 24px;
  overflow: hidden;
  background-color: #fff;
  -webkit-box-shadow: 0px 10px 20px -10px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 10px 20px -10px rgba(0, 0, 0, 0.25);
  position: relative;
  z-index: 1;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}
.section-info-graphic-area .info-content-wrap:hover {
  margin-top: -15px;
}
.section-info-graphic-area .info-content-wrap:before {
  content: "";
  position: absolute;
  z-index: -1;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #fcfcfc;
  -webkit-transform: rotate(45deg) scale(0);
      -ms-transform: rotate(45deg) scale(0);
          transform: rotate(45deg) scale(0);
  opacity: 0.02;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}
.section-info-graphic-area .info-content-wrap:hover:before {
  -webkit-transform: rotate(0deg) scale(1);
      -ms-transform: rotate(0deg) scale(1);
          transform: rotate(0deg) scale(1);
  opacity: 1;
}
.section-info-graphic-area .info-content-wrap .entry-title {
  position: relative;
  z-index: 1;
  padding-bottom: 5px;
}
.section-info-graphic-area .info-content-wrap .entry-title:before {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 0px;
  height: 2px;
  width: 100%;
  background-color: #EB5A3E;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}
.section-info-graphic-area .info-content-wrap .entry-header p {
  margin-bottom: 0;
}

/*event section css*/
.section-event-area {
    padding-bottom: 70px;
}
.section-event-area .row {
  row-gap: 30px;
}
.section-event-area .event-iconbox {
  display: flex;
  align-items: center;
  gap: 25px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  padding: 25px;
  width: 100%;
  transition: all 0.5s;
  background: linear-gradient(to left, #fff 50%, #fafafa 50%) right;
  background-size: 200%;
  transition: all 0.5s ease-out;
}
.section-event-area .event-iconbox:hover {
  background-position: left;
}
.section-event-area .event-iconbox .event-icon {
  background-color: #F2F2F2;
  border-radius: 50%;
  color: #333;
  font-size: 30px;
  width: 78px;
  height: 78px;
  line-height: 78px;
  text-align: center;
  flex-shrink: 0;
  transition: all 0.5s;
}
.section-event-area .event-iconbox:hover .event-icon {
  transform: rotate(360deg);
}
.event-iconbox .entry-content .entry-title {
  margin-bottom: 8px;
}
.event-iconbox .entry-content .entry-title a {
  text-decoration: none;
}
@media screen and (max-width: 479px) {
  .section-event-area .event-iconbox {
    flex-direction: column;
  }
  .section-event-area .entry-content {
    text-align: center;
  }
}
/*advertisement-section css*/
.section-advertisement-area {
  padding-bottom: 70px;
}
.section-advertisement-area .row {
  row-gap: 40px;
}
.advertisement-content-wrap .featured-image {
  border: 1px solid rgba(243, 243, 243, 0.6);
  border-radius: 10px;
  padding: 15px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
  text-align: center;
  position: relative;
  z-index: 1;
  transition: box-shadow 0.4s ease-out;
}
.advertisement-content-wrap .featured-image:hover {
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15);
}
.advertisement-content-wrap .featured-image img {
  border-radius: 10px;
}
.advertisement-content-wrap .featured-image .overlay-txt {
  position: absolute;
  padding: 5px 10px;
  background-color: #EB5A3E;
  color: #fff;
  top: -25px;
  right: -15px;
  border-radius: 50%;
  font-size: 12px;
  line-height: 1;
  height: 55px;
  width: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .advertisement-content-wrap .featured-image .overlay-txt {
    right: -10px;
    top: -15px;
  }
}


/* Slider Css */

/* ===== GLOBAL & SHARED STYLES ===== */
.site {
    background-color: #ffffff;
}

.book-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}
.single-books .site-content {
    padding-bottom: 30px;
    padding-top: 30px;
    border-top: 0px solid #f2f2f2;
}
.section-title,
.details-title,
.toc-title {
    margin-top: 0;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f0f0f0;
    color: #333;
    font-weight: 600;
}

.section-title { font-size: 24px; }
.details-title { font-size: 22px; }
.toc-title { font-size: 18px; }

.view-all-link {
    color: #333;
    text-decoration: none;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 5px;
    transition: color 0.3s;
}

.view-all-link:hover {
    color: #2980b9;
}

.view-all-link span,
.view-all-link .arrow {
    transition: transform 0.3s;
}

.view-all-link:hover span,
.view-all-link:hover .arrow {
    transform: translateX(3px);
}

/* Rating Stars */
.stars-container {
    position: relative;
    display: inline-block;
    font-size: 24px;
    color: #ddd;
}

.stars-empty { color: #ddd; }
.stars-filled {
    position: absolute;
    top: 0;
    left: 0;
    color: #ffc107;
    overflow: hidden;
    white-space: nowrap;
}

.rating-stars {
    color: #f39c12;
    letter-spacing: 2px;
}

/* Book Cards & Slides */
.book-slide-item,
.book-card {
    height: 100%;
    background: white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s, box-shadow 0.3s;
    display: flex;
    flex-direction: column;
}

.book-slide-item:hover,
.book-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.book-image {
    height: 300px;
    overflow: hidden;
    position: relative;
}

.book-cover {
    width: 100%;
    height: 100%;
    /*object-fit: cover;*/
    transition: transform 0.5s ease;
}

.book-slide-item:hover .book-cover,
.book-card:hover .book-cover {
    transform: scale(1.05);
}

.book-info {
    padding: 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.book-title {
    margin: 0 0 8px 0;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 600;
	color: #333;
}

.book-title a {
    color: #2c3e50;
    text-decoration: none;
    transition: color 0.3s;
}

.book-title a:hover {
    color: #3498db;
}

.book-price {
    font-size: 18px;
    font-weight: 700;
    color: #e74c3c;
    margin-bottom: 15px;
}

/* Book Actions */
.book-actions {
    display: flex;
    gap: 10px;
    margin-top: auto;
	align-items: center; 
	margin-bottom: 15px;
}

.btn-view,
.btn-cart,
.book-link {
    padding: 8px 12px;
    border-radius: 4px;
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s;
    border: none;
    cursor: pointer;
}

.btn-view {
    flex: 1;
    background: #3498db;
    color: white;
}

.btn-cart {
    flex: 1;
    background: #2ecc71;
    color: white;
}

.book-link {
    display: inline-block;
    background: #0073aa;
    color: white;
}

.btn-view:hover,
.btn-cart:hover,
.book-link:hover {
    transform: translateY(-2px);
    color: white;
}

.btn-view:hover { background: #2980b9; }
.btn-cart:hover { background: #27ae60; }
.book-link:hover { background: #005177; }

/* Swiper Navigation */
.swiper-button-prev,
.swiper-button-next {
    width: 40px;
    height: 40px;
    background: white;
    border-radius: 50%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    color: #2c3e50;
    transition: all 0.3s;
    margin-top: -20px;
}

.swiper-button-prev:after,
.swiper-button-next:after {
    font-size: 16px;
    font-weight: bold;
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
    background: #3498db;
    color: white;
}

.swiper-button-prev { left: 5px; }
.swiper-button-next { right: 5px; }
.swiper-button-disabled { opacity: 0.3; cursor: not-allowed; }

/* Swiper Pagination */
.swiper-pagination { bottom: 0 !important; }
.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #bdc3c7;
    opacity: 1;
}
.swiper-pagination-bullet-active { background: #3498db; }

/* ===== BOOKS SLIDER SECTION ===== */
.books-slider-section {
    margin: 0px;
    padding: 20px 0;
}

.slider-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    padding: 0 15px;
}

.slider-title {
    font-size: 28px;
    color: #2c3e50;
    margin: 0;
    font-weight: 700;
}

.books-slider-container {
    position: relative;
    padding: 0px 0px;
}

.books-swiper {
    padding: 20px 10px 40px;
}

.swiper-slide { height: auto; }

/* Book Slide Specific */
.book-rating-badge {
    position: absolute;
    bottom: 10px;
    left: 10px;
    background: rgba(255, 255, 255, 0.95);
    padding: 4px 8px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 600;
    color: #2c3e50;
}

.book-authors {
    font-size: 13px;
    color: #444;
    margin-bottom: 10px;
}

.book-authors span { color: #95a5a6; font-style: italic; }
.book-authors a {
    color: #212324;
    text-decoration: none;
}

.book-excerpt {
    font-size: 13px;
    color: #5d6d7e;
    line-height: 1.5;
    margin-bottom: 15px;
    flex-grow: 1;
}

.no-image {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 600;
}

.no-books-found {
    text-align: center;
    padding: 40px;
    color: #7f8c8d;
    font-style: italic;
}

/* ===== BOOK DETAIL PAGE ===== */
.book-nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: white;
    border-bottom: 1px solid #eaeaea;
    padding: 15px 20px;
    z-index: 1000;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.book-nav-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    gap: 30px;
    overflow-x: auto;
}

.book-nav-item {
    text-decoration: none;
    color: #7f8c8d;
    font-weight: 500;
    font-size: 14px;
    padding: 8px 0;
    white-space: nowrap;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease;
}

.book-nav-item.book-nav-selected {
    color: #3498db;
    border-bottom-color: #3498db;
}

.book-nav-item:hover { color: #3498db; }

.book-main { margin-top: 80px; }

/* Book Hero */
.book-hero {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
    align-items: flex-start;
}

.book-cover-section {
    flex: 0 0 300px;
    padding: 20px;
    background-color: #fff;
}

.book-info-section {
    flex: 1;
    padding: 20px;
    background-color: #fff;
}

.hero-book-title {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #2c3e50;
}

.book-subtitle {
    font-size: 20px;
    color: #7f8c8d;
    margin-bottom: 15px;
    font-weight: 400;
}

.book-meta {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
    color: #333;
    font-size: 14px;
}
.book-rating {
	margin-bottom: 20px; 
}
.book-author {
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 30px;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 8px;
    min-height: 200px;
}

.rating-value {
    font-weight: 600;
    font-size: 18px;
}

.rating-count {
    color: #7f8c8d;
    font-size: 14px;
}

.book-tags {
    display: flex;
    gap: 10px;
    margin-bottom: 25px;
    flex-wrap: wrap;
}

.book-tag {
    background: #f5f5f5;
    padding: 6px 25px;
    border-radius: 20px;
    font-size: 14px;
    border: 1px solid #f5f5f5;
}

/* Content Layout */
.book-content {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
}

.content-main { padding-right: 20px; }
.content-sidebar {
    padding-left: 20px;
    border-left: 1px solid #eaeaea;
}

/* Key Takeaways */
.key-takeaways { margin-bottom: 40px; }

.takeaway-card {
    margin-bottom: 30px;
    padding: 25px;
    background: #f9f9f9;
    border-radius: 8px;
    border-left: 4px solid #3498db;
}

.takeaway-header {
    display: flex;
    gap: 20px;
    margin-bottom: 15px;
    align-items: flex-start;
}

.takeaway-number {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    background: #3498db;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 18px;
}

.takeaway-title {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
    color: #2c3e50;
}

.takeaway-content { padding-left: 56px; }
.takeaway-text {
    margin-bottom: 15px;
    color: #2c3e50;
}

.continue-btn {
    color: #3498db;
    text-decoration: none;
    font-weight: 500;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.continue-btn:hover { text-decoration: underline; }

/* Sidebar Components */
.full-access-card {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 30px;
    border-radius: 12px;
    margin-bottom: 30px;
    text-align: center;
}

.full-access-title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px;
}

.full-access-subtitle {
    font-size: 14px;
    opacity: 0.9;
    margin-bottom: 20px;
}

.btn-try-access {
    display: inline-block;
    background: white;
    color: #667eea;
    padding: 12px 30px;
    border-radius: 25px;
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    transition: transform 0.3s ease;
}

.btn-try-access:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

.quick-actions {
    background: white;
    border: 0px solid #eaeaea;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 10px;
}

.quick-action-item {
    display: flex;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid #eaeaea;
    text-decoration: none;
    color: #2c3e50;
    transition: color 0.3s ease;
}

.quick-action-item:last-child { border-bottom: none; }
.quick-action-item:hover { color: #3498db; }

.action-icon {
    margin-right: 12px;
    font-size: 20px;
}

/* Additional Page Elements */
.content-section {
    margin-bottom: 10px;
    padding: 15px;
    background: white;
    border: 0px solid #eaeaea;
    /*border-radius: 8px;*/
}

.section-nav {
    display: flex;
    gap: 20px;
    margin-bottom: 0px;
    border-bottom: 0px solid #eaeaea;
}

.section-nav-item {
    padding: 10px 0;
    text-decoration: none;
    color: #333;
    font-weight: 500;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease;
}

.section-nav-item.active {
    color: #333;
    border-bottom-color: #333;
}

.toc-list {
    list-style: none;
    padding-left: 20px;
    margin: 0;
}

.toc-item {
    padding: 8px 0;
    color: #7f8c8d;
    position: relative;
}

.toc-item:before {
    content: "•";
    color: #3498db;
    position: absolute;
    left: -20px;
}

/* Action Buttons */
.read-book,
.buy-book {
    text-align: center;
    margin-top: 10px;
    border: solid 2px #ccc;
    border-radius: 20px;
    padding: 5px;
}

.write-book-review {
    text-align: center;
    margin-top: 10px;
    padding: 5px;
}

.btn-listen {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #eee;
    padding: 6px 30px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 500;
    transition: background 0.3s ease;
}

.btn-listen:hover { background: #f3f3f3; }
.listen-duration {
    font-size: 14px;
    opacity: 0.9;
}

/* Author Section */
.author-books-section {
    margin: 50px 0;
    padding: 0 15px;
}

.section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    padding: 0 10px;
}

.author-books-slider {
    position: relative;
    padding: 0 40px;
}

.book-genres {
    font-size: 14px;
    color: #666;
    margin-bottom: 10px;
    flex-grow: 1;
}

/* Author Bio */
.author-image { float: left; margin-right: 20px; margin-bottom: 15px; }
.author-photo {
    width: 150px;
    height: 150px;
    object-fit: cover;
    border-radius: 50%;
    border: 3px solid #ddd;
}

.author-description {
    margin-top: 15px;
    line-height: 1.6;
}

/* Book Details Box */
.book-details-box,
.toc-sidebar-widget,
.additional-info {
    background: #fff;
    border-radius: 10px;
    padding: 25px;
    margin-bottom: 30px;
    box-shadow: 0 3px 15px rgba(0,0,0,0.08);
    border: 1px solid #eaeaea;
}

.details-list { margin-bottom: 25px; }
.detail-item {
    display: flex;
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f5f5f5;
    line-height: 1.5;
}

.detail-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.detail-label {
    flex: 0 0 120px;
    font-weight: 600;
    color: #555;
    font-size: 14px;
}

.detail-value {
    flex: 1;
    color: #333;
    font-size: 14px;
}

.detail-value a {
    color: #3498db;
    text-decoration: none;
    transition: color 0.3s ease;
}

.detail-value a:hover {
    color: #2980b9;
    text-decoration: underline;
}

/* Quick Action Buttons */
.book-quick-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;
}

.btn-download,
.btn-amazon,
.share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 5px 15px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 500;
    font-size: 14px;
    transition: all 0.3s ease;
    text-align: center;
	margin-bottom: 10px;
}
.social-share span.fab {
    margin-right: 5px;
}
.btn-download {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
}

.btn-amazon {
    background: linear-gradient(135deg, #FF9900 0%, #FF6600 100%);
    color: white;
}

.btn-download:hover,
.btn-amazon:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.share-btn.facebook { background: #3b5998; color: white; }
.share-btn.twitter { background: #1da1f2; color: white; }
.share-btn.linkedin { background: #0077b5; color: white; }

.share-btn:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

.dashicons {
    margin-right: 8px;
    font-size: 18px;
    width: 18px;
    height: 18px;
}

/* TOC Sidebar */
.sidebar-toc-content {
    max-height: 400px;
    overflow-y: auto;
}

.sidebar-toc { padding-left: 0; }

.toc-level-1 { margin-bottom: 8px; }
.toc-level-2 {
    margin-left: 20px;
    margin-bottom: 5px;
    font-size: 14px;
}

.toc-link {
    display: flex;
    align-items: flex-start;
    padding: 8px 12px;
    background: #f8f9fa;
    border-radius: 6px;
    color: #333;
    text-decoration: none;
    transition: all 0.3s ease;
    border-left: 3px solid transparent;
    margin-bottom: 4px;
}

.toc-link:hover {
    background: #e9ecef;
    border-left-color: #667eea;
    transform: translateX(3px);
}

.toc-link.active {
    background: #667eea;
    color: white;
    border-left-color: #764ba2;
}
/*
.toc-icon {
    margin-right: 10px;
    font-size: 16px;
    flex-shrink: 0;
    margin-top: 2px;
}
*/
.toc-text {
    flex: 1;
    line-height: 1.4;
    font-size: 12px;
}

/* Scrollbar */
.sidebar-toc-content::-webkit-scrollbar { width: 6px; }
.sidebar-toc-content::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}
.sidebar-toc-content::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 3px;
}
.sidebar-toc-content::-webkit-scrollbar-thumb:hover { background: #a1a1a1; }

.no-toc {
    color: #666;
    font-style: italic;
    text-align: center;
    padding: 20px;
    margin: 0;
}
.simple-stars {
    display: inline-flex;
    gap: 1px;
    font-size: 14px;
}

.star {
    color: #ddd;
}

.star.full {
    color: #ffc107;
}

.star.half {
    position: relative;
    color: #ddd;
}

.star.half:before {
    content: '★';
    position: absolute;
    left: 0;
    width: 50%;
    overflow: hidden;
    color: #ffc107;
}

.rating-text {
    font-size: 13px;
    font-weight: 600;
    color: #333;
    margin-left: 5px;
}

.rating-count {
    font-size: 11px;
    color: #666;
    margin-left: 3px;
}

.rating-badge-minimal {
    display: inline-flex;
    align-items: center;
    gap: 8px;
	margin-bottom: 20px;
}

.rating-stars-minimal {
    display: flex;
    gap: 2px;
    font-size: 16px;
}

.star {
    color: #e0e0e0;
}

.star.full {
    color: #ffc107;
}

.star.half {
    position: relative;
    color: #e0e0e0;
}

.star.half:before {
    content: '★';
    position: absolute;
    left: 0;
    width: 50%;
    overflow: hidden;
    color: #ffc107;
}

.star.empty {
    color: #e0e0e0;
}

.rating-score-minimal {
    display: flex;
    align-items: baseline;
    gap: 2px;
    font-size: 14px;
    font-weight: 500;
}

.score {
    color: #333;
    font-weight: 600;
}

.count {
    color: #666;
    font-size: 12px;
}

/* ===== RESPONSIVE DESIGN ===== */
@media (min-width: 992px) {
    .book-content { grid-template-columns: 2fr 1fr; }
}

@media (max-width: 768px) {
    .slider-header,
    .section-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    
    .books-slider-container,
    .author-books-slider {
        padding: 0 30px;
    }
    
    .book-hero {
        flex-direction: column;
        gap: 30px;
    }
    
    .book-cover-section {
        flex: none;
        text-align: center;
    }
    
    .book-cover {
        max-width: 250px;
    }
    
    .hero-book-title { font-size: 28px; }
    .book-actions { flex-direction: column; align-items: flex-start;}
    .content-sidebar {
        padding-left: 0;
        border-left: none;
        border-top: 1px solid #eaeaea;
        padding-top: 30px;
        margin-top: 30px;
    }
    
    .takeaway-header { flex-direction: column; gap: 10px; }
    .takeaway-content { padding-left: 0; }
    .detail-item { flex-direction: column; }
    .detail-label { flex: none; margin-bottom: 5px; }
    .book-quick-actions { flex-direction: row; flex-wrap: wrap; }
    .btn-download, .btn-amazon { flex: 1; min-width: 150px; }
    .book-image { height: 180px; }
    .swiper-button-prev, .swiper-button-next { width: 35px; height: 35px; }
	.section-nav-item {
    text-decoration: none;
    color: #333;
    font-weight: 500;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease;
    display: inline-block;
    background-color: #eee;
    padding: 5px 20px;
    margin-bottom: 5px;
    border-radius: 6px;
}
.section-nav {
	display: block;
}
}

@media (max-width: 576px) {
    .books-slider-container { padding: 0 30px; }
    .author-books-slider { padding: 0 15px; }
    .swiper-button-prev,
    .swiper-button-next {
        display: none;
    }
    
    .book-actions { flex-direction: column; }
    .toc-level-2 { margin-left: 15px; }
    .toc-link { padding: 6px 10px; }
    .toc-sidebar-widget { padding: 15px; }
} 




/* Books Archive Styles */
.books-archive-container {
    max-width: 1200px; /* Increased from 1200px to accommodate 4 columns */
    margin: 0 auto;
    padding: 20px;
}

.books-archive-header {
    text-align: center;
    margin-bottom: 40px;
}

.archive-title {
    font-size: 2.5rem;
    margin-bottom: 10px;
    color: #333;
}

.archive-description {
    font-size: 1.1rem;
    color: #666;
    max-width: 800px;
    margin: 0 auto;
}

/* Custom Search */
.books-custom-search {
    margin: 30px 0;
    text-align: center;
}

.books-search-form {
    max-width: 600px;
    margin: 0 auto;
    position: relative;
}

.books-search-input {
    width: 100%;
    padding: 15px 20px;
    padding-right: 60px;
    font-size: 1rem;
    border: 2px solid #ddd;
    border-radius: 50px;
    transition: border-color 0.3s ease;
}

.books-search-input:focus {
    outline: none;
    border-color: #0073aa;
}

.books-search-submit {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    background: #0073aa;
    color: white;
    border: none;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    cursor: pointer;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease;
}

.books-search-submit:hover {
    background: #005a87;
}

/* Author Bio Section */
.author-bio-section {
    background: #f8f9fa;
    border-radius: 10px;
    padding: 30px;
    margin-bottom: 40px;
}

.author-bio-container {
    display: flex;
    gap: 30px;
    align-items: flex-start;
}

.author-image {
    flex: 0 0 150px;
}

.author-photo {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
}

.author-info {
    flex: 1;
}

.author-name {
    font-size: 2rem;
    margin-bottom: 15px;
    color: #333;
}

.author-description {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #555;
    margin-bottom: 15px;
}

.author-extended-bio {
    font-size: 1rem;
    line-height: 1.7;
    color: #666;
}

.author-links {
    margin-top: 20px;
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.author-website,
.social-link {
    padding: 8px 16px;
    background: #0073aa;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    font-size: 0.9rem;
    transition: background-color 0.3s ease;
}

.author-website:hover,
.social-link:hover {
    background: #005a87;
}

/* Books Grid */
.books-grid {
    margin: 40px 0;
}

/* CHANGED: 4 columns instead of auto-fill */
.books-grid-inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 equal columns */
    gap: 25px; /* Reduced from 30px for better fit */
}

/* Book Card */
.book-card {
    background: white;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.book-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

.book-card-inner {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.book-cover-wrapper {
    position: relative;
    padding-top: 140%; /* Reduced from 150% for better proportions */
    overflow: hidden;
}

.book-cover-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
}

.book-cover {
    width: 100%;
    height: 100%;
    /*object-fit: cover;*/
    transition: transform 0.5s ease;
}

.book-card:hover .book-cover {
    transform: scale(1.05);
}

.book-cover-placeholder {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.2rem;
}

.book-info {
    padding: 15px; /* Reduced from 20px for better fit */
    flex: 1;
    display: flex;
    flex-direction: column;
}

.book-title {
    font-size: 1.1rem; /* Reduced from 1.3rem for 4-column layout */
    margin-bottom: 8px;
    line-height: 1.4;
}

.book-title a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
}

.book-title a:hover {
    color: #0073aa;
}

.book-authors {
    font-size: 0.9rem; /* Reduced from 0.95rem */
    color: #666;
    margin-bottom: 8px; /* Reduced from 10px */
}

.by-text {
    font-weight: 500;
}

/* Rating styling - Added for your rating badge */
.rating-badge-minimal {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 8px 0 12px 0; /* Adjusted margins */
}

.rating-stars-minimal {
    display: flex;
    gap: 2px;
}

.rating-stars-minimal .star {
    font-size: 14px; /* Slightly smaller for 4-column layout */
}

.rating-stars-minimal .star.full {
    color: #ffc107;
}

.rating-stars-minimal .star.half {
    color: #ffc107;
    position: relative;
}

.rating-stars-minimal .star.half:after {
    content: '☆';
    position: absolute;
    left: 0;
    color: #ddd;
}

.rating-stars-minimal .star.empty {
    color: #ddd;
}

.rating-score-minimal {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
}

.rating-score-minimal .score {
    font-weight: bold;
    color: #333;
}

.rating-score-minimal .count {
    color: #666;
}

.book-meta {
    margin-top: auto;
    padding-top: 8px;
    border-top: 1px solid #eee;
    font-size: 0.8rem; /* Smaller for 4-column layout */
    color: #777;
}

.meta-item {
    display: inline-block;
    margin-right: 10px;
}

.book-genres {
    margin: 8px 0; /* Adjusted margins */
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.genre-tag {
    background: #f0f0f0;
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.7rem; /* Smaller for 4-column layout */
    color: #555;
}

.book-excerpt {
    font-size: 0.85rem; /* Reduced from 0.95rem */
    line-height: 1.5;
    color: #666;
    margin-top: auto;
}

/* Load More */
.load-more-container {
    text-align: center;
    margin: 50px 0;
}

.load-more-btn {
    padding: 15px 40px;
    background: #0073aa;
    color: white;
    border: none;
    border-radius: 50px;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.load-more-btn:hover:not(:disabled) {
    background: #005a87;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 115, 170, 0.3);
}

.load-more-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.loading-spinner {
    margin-top: 20px;
}

.spinner {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #0073aa;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 1s linear infinite;
    margin: 0 auto 10px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Responsive Design - UPDATED for 4-column layout */
@media (max-width: 1200px) {
    .books-grid-inner {
        grid-template-columns: repeat(3, 1fr); /* 3 columns on large tablets/desktops */
        gap: 20px;
    }
    
    .books-archive-container {
        max-width: 1200px;
        padding: 20px;
    }
}

@media (max-width: 992px) {
    .books-grid-inner {
        grid-template-columns: repeat(2, 1fr); /* 2 columns on tablets */
        gap: 20px;
    }
    
    .author-bio-container {
        flex-direction: column;
        text-align: center;
    }
    
    .author-image {
        flex: 0 0 auto;
        margin: 0 auto;
    }
    
    .archive-title {
        font-size: 2rem;
    }
}

@media (max-width: 768px) {
    .books-grid-inner {
        grid-template-columns: repeat(2, 1fr); /* Keep 2 columns */
        gap: 15px;
    }
    
    .book-info {
        padding: 12px;
    }
    
    .book-title {
        font-size: 1rem;
    }
    
    .books-archive-container {
        padding: 15px;
    }
}

@media (max-width: 576px) {
    .books-grid-inner {
        grid-template-columns: 1fr; /* 1 column on mobile */
        max-width: 350px;
        margin: 0 auto;
    }
    
    .books-archive-container {
        padding: 15px;
    }
}



/* Live Search Styles */
.books-search-form {
    position: relative;
}

.books-live-search-results {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    max-height: 500px;
    overflow-y: auto;
    z-index: 1000;
    margin-top: 5px;
}

.live-search-results-header {
    padding: 15px;
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.live-search-results-header h4 {
    margin: 0;
    font-size: 1rem;
    color: #333;
}

.view-all-link {
    font-size: 0.9rem;
    color: #0073aa;
    text-decoration: none;
}

.view-all-link:hover {
    text-decoration: underline;
}

.live-search-results-grid {
    display: grid;
    gap: 10px;
    padding: 15px;
}

/* Small Book Card for Live Search */
.book-card-small {
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.book-card-small:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.book-card-small-link {
    display: flex;
    align-items: center;
    gap: 15px;
    text-decoration: none;
    color: inherit;
}

.book-card-small-image {
    width: 60px;
    height: 80px;
    flex-shrink: 0;
}

.book-card-small-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4px;
}

.book-card-small-info {
    flex: 1;
}

.book-card-small-title {
    margin: 0 0 5px 0;
    font-size: 1rem;
    color: #333;
}

.book-card-small-author {
    margin: 0 0 5px 0;
    font-size: 0.9rem;
    color: #666;
}

.book-card-small-rating {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 0.9rem;
    color: #ffc107;
}

.book-card-small-rating span {
    color: #666;
    font-size: 0.85rem;
}

/* Loading and Message States */
.live-search-loading,
.live-search-message,
.live-search-error {
    padding: 20px;
    text-align: center;
    color: #666;
}

.live-search-error {
    color: #dc3545;
}

/* Search Results Page */
.search-term {
    color: #0073aa;
    font-weight: 600;
}

.no-books-found {
    text-align: center;
    padding: 60px 20px;
    background: #f8f9fa;
    border-radius: 10px;
    margin: 40px 0;
}

.no-books-found h3 {
    margin-bottom: 15px;
    color: #333;
}

.btn-browse-all {
    display: inline-block;
    margin-top: 20px;
    padding: 10px 25px;
    background: #0073aa;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    transition: background 0.3s ease;
}

.btn-browse-all:hover {
    background: #005a87;
}

/* Books Pagination */
.books-pagination {
    text-align: center;
    margin: 50px 0;
}

.books-pagination .page-numbers {
    display: inline-block;
    padding: 8px 16px;
    margin: 0 5px;
    background: white;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-decoration: none;
    color: #333;
    transition: all 0.3s ease;
}

.books-pagination .page-numbers:hover {
    background: #f8f9fa;
}

.books-pagination .page-numbers.current {
    background: #0073aa;
    color: white;
    border-color: #0073aa;
}

.books-pagination .page-numbers.dots {
    background: transparent;
    border: none;
}




.book-toc-header {
    /*padding: 30px 20px 0 30px;*/
    text-align: left;
    position: relative;
    display: flex;
    align-items: flex-start;
    margin: 0;
    width: 100%;
}
.book-toc-header-left {
    flex: 0 0 auto;
    margin-right: 22px;
    order: 0;
}
.book-toc-header-right {
    flex: 1 1 auto;
}
.book-toc-cover-container {
    position: relative;
    display: inline-block;
}
.book-toc-cover {
    max-height: 360px;
    height: 100px;
    width: 60px;
    width: 68px;
    width: auto;
    opacity: 1;
    border-radius: 2px;
    box-shadow: 0 2px 12px 2px rgba(0, 0, 0, .082);
    margin-top: 2px;
    margin-top: 0;
    cursor: pointer;
    position: relative;
    z-index: 2;
}
.book-toc-header-title {
    letter-spacing: -.1px;
    font-family: var(--font-serif);
    font-size: 24px;
    line-height: 31px;
    font-weight: 500;
    color: var(--text-color);
    padding-top: 1px;
    letter-spacing: -.5px;
    font-size: 22px;
    line-height: 29px;
    font-weight: 600;
}
.book-toc-header-author {
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
    font-family: var(--font-sans);
    color: var(--text-color);
    padding: 5px 0 0 0;
    font-size: 15px;
    line-height: 22px;
    padding: 6px 0 0 0;
}
.book-toc-header-author span {
    font-style: normal;
    font-weight: 400;
    color: var(--text-color2);
}
.book-toc-header-cta {
    padding-left: 28px;
    display: flex;
    align-items: center;
    gap: 4px;
}
.book-buy-button-wrap {
    position: relative;
    display: inline-block;
}
.book-buy-button:hover {
    border-color: rgba(0, 0, 0, .2);
}
.book-buy-button {
    display: inline-block;
    background: var(--input-bg);
    border-radius: 100px;
    padding: 0;
    margin: 12px 0 6px 0;
    font-size: 14px;
    line-height: 14px;
    font-weight: 400;
    cursor: pointer;
    border: 1px solid rgba(0, 0, 0, .1);
    position: relative;
    height: 32px;
    overflow: hidden;
    text-decoration: none;
    transition: border-color .17s ease, background-color .17s ease;
    user-select: none;
    box-shadow: 0 4px 20px -2px rgba(0, 0, 0, .07);
    /*padding: 8px 12px 0 33px;*/
	padding: 8px 12px 0 12px; 
}
.book-listen-button { 
    display: inline-block;
    background: var(--input-bg);
    border-radius: 100px;
    padding: 8px 12px 0 33px;
    margin: 2px 0 2px 0;
    font-size: 14px;
    line-height: 14px;
    font-weight: 400;
    cursor: pointer;
    border: 1px solid rgba(0, 0, 0, .1);
    height: 32px;
    width: auto;
    overflow: hidden;
    text-decoration: none;
    transition: border-color .17s ease, background-color .17s ease;
    user-select: none;
    box-shadow: 0 4px 20px -2px rgba(0, 0, 0, .07);
    z-index: 10;
    position: relative;
}