.res-img-style {
  margin-top: 2px;
}

.res-image-height {
  background-color: #d8d6d659;
  width: 264px;
}
.checkout-btn,
.get-free-help-sect {
  float: right;
}

.btn {
  display: inline-block;
}

.breadcrumb,
.breadcrumb-individual {
  background-color: rgba(255, 255, 255, 0.15);
  border-radius: 12px;
  list-style: none;
}

.breadcrumb {
  font-size: 12px;
  padding: 0 0 0 3px;
  margin-bottom: 0;
}

.slick-list,
ul {
  padding: 0;
  margin: 0;
}

ul.show {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
  transform: translateY(0);
}

ul.hidden {
  opacity: 0;
  display: block !important;
}

.slick-slider {
  display: block;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  display: block;
  overflow: hidden;
}

.choices:focus,
.slick-list:focus {
  outline: 0;
}

.slick-list.dragging {
  cursor: hand;
}

.slick-slider .slick-list,
.slick-slider .slick-track {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:after,
.slick-track:before {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

.rate > label,
[dir="rtl"] .slick-slide {
  float: right;
}

.slick-initialized .slick-slide,
.slick-slide img {
  display: block;
}

.custom-select-wrapper select,
.hide,
.morecontent span,
.rate > input,
.show-read-more .more-text,
.slick-arrow.slick-hidden,
.slick-slide.slick-loading img {
  display: none;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.rating-star,
.rating-star-fh {
  color: #ff912c !important;
}

.total-font-weight,
.total-price-num {
  color: rgba(202, 48, 37, 1);
}

fieldset,
legend {
  margin: 0;
}

.choices__list,
.list-group,
.slick-dots,
ul {
  list-style: none;
}

.slick-dots li button:before,
.slick-next:before,
.slick-prev:before {
  font-family: slick;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.saving-font-detail-view {
  font-size: 12px;
  font-weight: 300;
  line-height: 1.1;
}

.saving_amount_book_detail,
.span-setting {
  font-size: 14px;
}

.total-price-num {
  font-weight: 600 !important;
}

.book-price-testi,
.book_faq,
.font-21,
.font-set-1,
.free-name,
.free-outer,
.free-price,
.price-tab,
.saving-font,
.span-color-p,
.step-item h4,
.text-white,
.total-font-weight {
  font-weight: 600;
}

.margin-5-top,
.margin-top-5 {
  margin-top: 5px;
}

.no-padding,
.padding-0-right,
.s003
  form
  .inner-form
  .input-field.first-wrap
  .choices__list.choices__list--dropdown
  .choices__item--selectable {
  padding-right: 0;
}

.carousel .item {
  color: #999;
  min-height: 120px;
  font-size: 13px;
  text-align: center;
  overflow: hidden;
}

.carousel .testimonial {
  padding: 0 15px 0 60px;
}

.carousel .overview b {
  color: #1269ba;
  font-size: 14px;
}

fieldset {
  padding: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-before: 0;
  -webkit-padding-after: 0;
  border: 0;
}

.book-info-setting,
.edition-book-info-setting,
.flex-col,
.flex-for-books,
.price-setting,
.single-question {
  display: flex;
  flex-direction: column;
}
.edition-book-info-setting {
  width: 150px;
}
.books-area {
  margin-top: 3px;
  background: #fff;
  padding: 0px;
}

.resp-padding-lr,
.zero-padding {
  padding-right: 0;
  padding-left: 0;
  margin-top: 15px;
}

.slick-dots li button,
.slick-next,
.slick-prev {
  font-size: 0;
  line-height: 0;
  display: block;
  outline: 0;
  background: 0 0;
  width: 20px;
  height: 20px;
  cursor: pointer;
}

.slick-next,
.slick-prev {
  position: absolute;
  top: 50%;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  border: none;
  color: #b2b5b7 !important;
}

.slick-next:focus,
.slick-next:hover,
.slick-prev:focus,
.slick-prev:hover {
  color: transparent;
  outline: 0;
  background: 0 0;
}

.slick-next.slick-disabled:before,
.slick-prev.slick-disabled:before {
  opacity: 0.25;
}

.slick-next:before,
.slick-prev:before {
  line-height: 1;
  color: #949494 !important;
  font-size: 30px !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  right: -25px;
  left: auto;
}

.slick-prev:before,
[dir="rtl"] .slick-next:before {
  content: "←";
}

.slick-next:before,
[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  right: auto;
  left: -25px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
}

.book-media,
.padding-right-20 {
  padding-right: 20px;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  padding: 5px;
  color: transparent;
  border: 0;
}

.slick-dots li button:before {
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: "•";
  text-align: center;
  opacity: 0.25;
  color: #000;
}

.slick-dots li.slick-active button:before {
  opacity: 0.75;
  color: #000;
}

.slick-next:hover,
.slick-prev:hover {
  color: #b2b5b7 !important;
  opacity: 0.7 !important;
}

@-webkit-keyframes placeHolderShimmer {
  0% {
    background-position: -468px 0;
  }
  100% {
    background-position: 468px 0;
  }
}

@keyframes placeHolderShimmer {
  0% {
    background-position: -468px 0;
  }
  100% {
    background-position: 468px 0;
  }
}

.ad-inline-display,
.book-media,
.d-flex,
.inline-display,
.nf-section,
.rating_bg_main {
  display: flex;
}

.dollar-font,
.point-font {
  margin-bottom: 3px;
  top: -4px;
  position: relative;
}

.book-media {
  flex-direction: column;
  padding-left: 20px;
  margin-bottom: 30px;
}
.book-font {
  font-size: 14px;
  color: #1269ba;
  height: auto;
  overflow: hidden;
}

.auther-font {
  margin-top: 5px;
  font-size: 12px;
  height: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.edition-price-head-font,
.price-head-font {
  font-size: 13px;
  margin-top: 15px;
}

.dollar-font,
.free-outer,
.price-tab {
  font-size: 15px;
}

.f-18,
.font-18,
.price-font {
  font-size: 18px;
}

.cut-price-font {
  font-size: 15px;
  text-decoration-line: line-through;
  margin-left: 5px;
}

.padding-20-top,
.padding-t-20 {
  padding-top: 20px;
}

.single-book-width {
  width: 20%;
}

.margin-20-top,
.margin-top-20,
.mt-20 {
  margin-top: 110px;
}

.font-21 {
  font-size: 21px;
  color: #c53700;
}

.book-media .image-height {
  height: 140px;
}
.edition-book-media .image-height {
  width: 150px; /* or whatever width you want */
  margin: 0 auto;
}

.f-16,
.font-16 {
  font-size: 16px;
}

.btn:focus {
  border: 1px solid transparent !important;
  box-shadow: transparent !important;
  outline: transparent auto 5px !important;
  color: #000;
  outline-offset: unset !important;
}

.tutor-list-section {
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-top: 20px !important;
}

.ad-tutor-header-section {
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #c2dcf440;
  color: #1269ba;
  font-size: 20px;
}

.res-p-qua-sec,
td,
th {
  text-align: left;
}

.isbn-font {
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}

.customers-detail-divider,
.frequently-detail-divider,
.please-review-detail-divider,
.review-rating-detail-divider {
  border-bottom: 2px solid #ddd;
  margin: 40px auto;
  width: 92%;
}

.rating-star-text {
  padding-left: 10px;
  color: #2575bf;
  font-weight: 600;
  float: right;
  padding-top: 6px;
  font-size: 15px;
  cursor: pointer;
}

.rate {
  display: inline-block;
  border: 0;
  cursor: pointer;
}

.rate > label {
  color: #adaeb1;
}

.rate > label:before {
  display: inline-block;
  font-size: 2rem;
  padding: 0.3rem 0.1rem;
  margin: 0;
  cursor: pointer;
  font-family: FontAwesome;
  content: "\f005 ";
}

.rate .half:before {
  content: "\f089 ";
  position: absolute;
  padding-right: 0;
}

.rating-star-fh {
  margin-bottom: -10px;
}

#submit_btn_checkout {
  font-size: 18px;
  border-radius: 5px !important;
}

.input.delta ~ span.card,
input.amex ~ span.card,
input.discover ~ span.card,
input.electron ~ span.card,
input.mastercard ~ span.card,
input.visa ~ span.card {
  height: 22px;
  width: 36px;
  top: 36px !important;
}

td,
th {
  font-weight: 400;
}

.margin-25-bottom,
.margin-25-right {
  margin-bottom: 25px;
}

.margin-15-bottom,
.margin-15-right {
  margin-bottom: 15px;
}

.margin-15-left {
  margin-left: 15px;
}

.color-blue,
.condition-text a {
  color: #1269ba;
  font-weight: 700;
}

.margin-0-top,
.radio.radio-inline {
  margin-top: 0;
}

.margin-5-bottom {
  margin-bottom: 5px;
}

.btn-primary-self,
.margin-10-top,
.margin-top-10,
.place-order-button-position,
.resp-auth-p {
  margin-top: 10px;
}

.margin-5-right {
  margin-right: 5px;
}

.padding-10-bottom {
  padding-bottom: 10px;
}

.padding-30-left {
  padding-left: 35px;
}

.padding-30-right {
  padding-right: 35px;
}

.edition-font {
  font-size: 18px;
  color: #1269ba;
  margin-left: 10px;
  line-height: 1.2;
}

.isbn-font {
  font-size: 13px;
  line-height: 1.4;
}

.heading-book {
  font-size: 22px;
  color: #3c3b3b;
  line-height: 1.2;
}

.author-font {
  color: #1269ba;
  font-size: 13px;
}

.color-black {
  color: #000;
}

label.error {
  font-size: 12px;
  font-weight: 300;
}

.items-end {
  align-items: flex-end;
}

.head-margins {
  margin-top: 0;
  margin-bottom: 0;
}

.margin-50-top,
.margin-top-50 {
  margin-top: 50px;
}

.font-h4,
.personal-heading-text {
  font-size: 20px;
  color: #333;
  font-weight: 600;
}

.edition-book-media:nth-child(3n + 1),
.edition-book-padding:nth-child(3n + 1),
.no-left-padding,
.no-padding-left {
  padding-left: 0;
}

.col-adjust {
  display: flex;
  justify-content: space-between;
}

.col-sm-10-color,
.rox-border3,
tr:nth-child(2n) {
  background-color: #f5f5f5;
}

.img-style {
  display: block;
  max-width: 100% !important;
  max-height: 100% !important;
  border-radius: 5px;
}

.instock,
.nav-tabs > li > a,
.out-stock,
.type-head {
  font-size: 15px;
  font-weight: 700;
}

.rox-border3 {
  border: 1px solid #ddd;
  padding: 10px 10px 0;
  border-radius: 5px;
}

.instock {
  color: #048204;
}

.free-name {
  color: green;
  font-size: 20px;
}

.price-adjust {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  margin-top: 5px;
}

.tab-content-border {
  border: 2px solid #1269ba;
  border-top: 0;
  left: -2px;
  bottom: 0;
}

.heading-margin {
  margin-bottom: 5px;
  margin-top: 0;
}

.span-color {
  color: #333;
  font-size: 13px;
}

.span-color-p {
  color: #1269ba;
  font-size: 15px;
}

.days-font,
.span-setting {
  color: #6b6b6b;
}

.total-margin {
  margin-top: 20px;
  margin-bottom: 0;
}

.total-font-weight {
  font-size: 16px;
  line-height: 1.1;
}

.total-price-num {
  margin: 0 0 0 5px;
  font-size: 22px;
  line-height: 1.1;
}

.list-price {
  text-decoration: line-through;
  margin-right: 10px;
}

.list-price-margin {
  margin-top: 6px;
  line-height: 1.1;
}

#myDIV,
.flex-end,
.flex-end-div,
.paypal-row-adjust {
  display: flex;
  justify-content: flex-end;
}

.flex-class {
  display: flex !important;
  flex-direction: column !important;
}

.color-blue-1 {
  background-color: #506d8c !important;
}

.fa-check-circle:before {
  content: "\f00c";
  color: #9c3;
}

.fa-check:before {
  content: "\f00c";
  color: #1269ba;
  font-size: 18px;
}

.col-center {
  margin: 0 auto;
  float: none !important;
}

.carousel,
.testimonial-h2-related-books {
  margin: 0;
}

.carousel {
  padding: 0 12px;
}

.carousel .item h4 {
  font-family: "Varela Round", sans-serif;
}

.carousel .item-img {
  width: 87px;
  height: 100px;
}

.carousel .item-img-related-books,
.edition-img-related-books {
  width: 150px;
  height: 200px;
  object-fit: cover;
  border-radius: 4px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
  display: block;
  margin: 0 auto;
}

.carousel .thumb-wrapper {
  margin: 5px;
  text-align: center;
  background: #fff;
}

.carousel .thumb-content {
  padding: 15px 30px;
  font-size: 13px;
}

.carousel .carousel-control i {
  font-size: 36px;
  position: absolute;
  top: 50%;
  display: inline-block;
  margin: -19px 0 0;
  z-index: 5;
  left: 0;
  right: 0;
  text-shadow: none;
  font-weight: 700;
}

.carousel .carousel-control.left i {
  margin-left: -3px;
}

.carousel .carousel-control.right i {
  margin-right: -3px;
}

.carousel .carousel-indicators {
  bottom: -50px;
}

.carousel-indicators li,
.carousel-indicators li.active {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin: 4px;
  border-color: transparent;
}

.carousel-indicators li {
  background: #ababab;
}

.carousel-indicators li.active {
  background: #555;
}

.testimonial-h2,
.testimonial-h2-related-books {
  font-size: 40px;
  text-align: center;
  position: relative;
}

.carousel .carousel-control {
  width: 10px;
  height: 0;
  margin-top: -20px;
  top: 50%;
  background: 0 0;
}

.border-div-right {
  border-right: 1px solid #ddd;
}

.days-font {
  font-size: 12px;
}

.strikethrough:before {
  position: absolute;
  content: "";
  left: 0;
  top: 50%;
  right: 0;
  border-top: 2px solid;
  border-color: inherit;
  -webkit-transform: rotate(-5deg);
  -moz-transform: rotate(-5deg);
  -ms-transform: rotate(-5deg);
  -o-transform: rotate(-5deg);
  transform: rotate(-5deg);
}

#exTab1 .tab-content,
#exTab3 .tab-content {
  color: #fff;
  background-color: #428bca;
  padding: 5px 15px;
}

#exTab1 .nav-pills > li > a {
  border-radius: 0;
}

#exTab3 .nav-pills > li > a {
  border-radius: 4px 4px 0 0;
}

.nav-tabs {
  position: relative;
  left: -2px;
  top: 1px;
  border-bottom: 2px solid #1269ba;
}

.from-font {
  font-weight: 400;
  font-size: 13px;
}

.contain:after,
.contain:focus,
.include-font {
  font-weight: 700;
}

.border-radius-set {
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:focus,
.nav-tabs > li.active > a:hover {
  color: #1269ba;
  cursor: default;
  background-color: #fff;
  border: 2px solid #1269ba;
  border-bottom-color: transparent;
  font-weight: 700;
  margin-right: 0;
  height: 75px;
  width: auto;
  text-align: center;
  font-size: 15px;
  top: 1px;
}

.nav-tabs > li > a {
  line-height: 1.42857143;
  border: 0.5px solid #c5c2c2;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
  color: #333;
  margin-right: 0;
  height: 75px;
  width: auto;
  text-align: center;
  top: -1px;
  background-color: rgba(247, 247, 247);
}

.padding-all {
  padding-top: 10px;
  padding-bottom: 10px;
}

.include-font {
  font-size: 16px;
  margin-top: 25px;
  margin-bottom: 15px;
}

.border-bottom-div {
  border-bottom: 1px solid #ddd;
  width: 215px;
  margin-right: 0;
  display: flex;
  margin-top: 8px;
}

.tab-padding {
  padding: 15px 30px !important;
}

.popular-item-text {
  font-size: 18px;
  line-height: 1.5;
  font-weight: 700;
  color: #555;
  margin: 0;
}

.btn-margin {
  margin-top: 25px;
  margin-bottom: 15px;
}

.saving-percent {
  font-size: 15px;
  color: #333;
  margin-left: 8px;
  font-weight: 600;
}

.font-10 {
  font-size: 10px;
}

.a-button-primary .a-button-inner {
  background: linear-gradient(to bottom, #048204, #048204);
}

.a-button-inner {
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
  height: 35px;
  color: #fff;
  border: 0;
  border-radius: 2px !important;
}

.width-30 {
  width: 45% !important;
}

.column-flex-end {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
}

.row-flex-end {
  display: flex;
  align-items: flex-end;
}

.book-text-font {
  font-size: 14px;
  color: #1269ba;
}

.book-detail-section .image-height {
  height: 370px;
}

.h2-edition-books {
  font-size: 24px;
  position: relative;
  margin: 20px 0 10px;
}

.edition-book-padding {
  padding-left: 30px !important;
  padding-right: 20px;
}

.edition-dollar-font {
  font-size: 15px;
  top: -2px;
  position: relative;
}

.cut-price-font {
  color: #333 !important;
}

.price-font-18 {
  font-size: 18px;
  font-weight: 600;
  color: #c53700;
}

.ad-text-padding {
  padding-left: 30px;
  padding-right: 15px;
}

@media screen and (max-width: 1200px) and (min-width: 990px) {
  .res-image-height,
  .res-img-style {
    width: 220px !important;
  }
}

@media (max-width: 1000px) {
  .resp_book_detail_sec,
  .resp_slider_head {
    text-align: center;
  }

  .book-media {
    align-items: center;
  }

  .h2-edition-books,
  .review-rating-font,
  .testimonial-h2-related-books {
    font-size: 20px !important;
  }

  .w_fb_form .fb_comments {
    margin-top: 10px;
  }

  .book-detail-font,
  .fb_comments_input textarea {
    margin-left: unset !important;
  }

  .fb_comments_input textarea,
  .fb_comments_title,
  .feedback_comments_title {
    width: 100% !important;
  }

  .review-shopping-bg {
    background-image: unset !important;
    background-size: unset !important;
    min-height: unset !important;
    border-radius: unset !important;
  }

  .row-flex-end {
    display: unset !important;
  }
}

@media (max-width: 990px) {
  .res-extab2 {
    margin-top: 20px;
  }

  .free_tag_line {
    display: block;
  }

  .res-img-style {
    width: 264px !important;
  }

  .get-free-help-sect {
    width: 100% !important;
    float: unset !important;
  }

  .resp-padding-lr {
    padding-right: 15px;
    padding-left: 15px;
  }

  .edition-image-height {
    text-align: center;
  }

  .edition-book-padding {
    padding-bottom: 30px;
  }
}

@media (max-width: 768px) {
  .res-p-qua-sec {
    text-align: unset !important;
    white-space: normal;
  }

  .book-detail-divider,
  .customers-detail-divider,
  .frequently-detail-divider,
  .please-review-detail-divider,
  .resp_adver_banner,
  .review-rating-detail-divider {
    display: none !important;
  }

  .resp_review_rating_sec {
    margin-top: 10px !important;
    border-top: 2px solid #ddd;
  }

  .books-area {
    padding-bottom: unset !important;
    padding-top: 0 !important;
  }

  .testimonial-h2-related-books {
    margin-bottom: unset !important;
    font-weight: 700;
  }

  .edition-book-padding {
    width: 100% !important;
    text-align: center;
  }
  .margin-50-top,
  .margin-top-50 {
    margin-top: 15px;
  }
  .breadcrumb-container {
    margin-top: 53px;
  }
}
.subject-category-two {
  font-size: 30px;
  color: #000;
  padding-left: 15px;
  text-decoration: none !important;
  margin: 5px 0 20px 0;
}
.subject-category-border {
  border-left: 3px solid #efefef;
  margin-top: 10px;
  margin-bottom: 10px;
}
.subject-name {
  font-size: 14px;
  color: #414042;
  font-weight: 300;
}
.user-feedback-section-last {
  display: flex;
  align-items: center;
  flex-direction: row;
  gap: 20px;
  border-bottom: 1px solid #d5d5d5;
  padding: 15px 0;
}

.fa-star.rating-color {
  color: #ff912c;
}
.fa-star {
  color: #efefef;
}
.books-cat-divider {
  border: 1px solid #ccc;
  margin: 40px 0;
}
.frequently-detail-divider {
  border: 1px solid #ccc;
  margin: 40px auto;
  width: 92%;
}

.books-feedback-section {
  margin-bottom: 20px;
}
.user-feedback-section-last:last-child {
  border: none;
}

.main-heading-border {
  border-bottom: 3px solid #9ac427;
  padding-bottom: 5px;
}
.faq-link {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  width: 100%;
  padding: 2rem 3rem 2rem 0;
  color: #337ab7 !important;
  font-size: 16px;
  font-weight: 600;
  border-bottom: 1px solid #e5e5e5;
}

.faq-link:hover,
.faq-link:hover::after {
  cursor: pointer;
  color: #03b5d2;
}
.faq-link::after {
  content: "+";
  position: absolute;
  float: right;
  right: 1rem;
  color: #7288a2;
  line-height: 1;
}
.faq-link.active::after {
  content: "-";
  font-size: 18px;
  font-weight: 600;
}

.accordion .content {
  display: none;
  padding: 2rem 0;
  border-bottom: 1px solid #e5e5e5;
  overflow: hidden;
}
.accordion .content p {
  font-size: 14px;
  font-weight: 300;
  margin-bottom: 0;
}
.solution-for-problem {
  padding: 15px 0;
  font-weight: 700;
  text-align: left;
}
@media (min-width: 1024px) and (max-width: 4000px) {
  .content:last-child {
    border-bottom: none !important;
  }
}
.res-p-qua-sec {
  text-align: left;
  padding: 10px 0;
}
/*---------- Loader Css -----------*/

.lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 50px;
}
.lds-ellipsis div {
  position: absolute;
  top: 33px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #1269ba;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}

.book_count {
  position: absolute !important;
  bottom: 0;
  right: 0;
  border: 1.6px solid rgba(46, 106, 180, 1);
  min-height: 31px;
  min-width: 177px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 2px !important;
  border-bottom: none;
  padding: 5px 5px;
  cursor: default !important;
}

.book_count i {
  transform: rotate(20deg);
  margin-right: 5px;
}

.book_count i::before {
  content: "\f0e7";
  font-family: "FontAwesome";
  font-style: normal;
  color: rgba(202, 48, 37, 1);
  font-size: 15px;
}

.book_count span.book_count_text {
  padding: 0;
  font-family: Open Sans;
  font-size: 14px;
  font-weight: 700 !important;
  line-height: 19.07px;
  text-align: left;
  color: rgba(202, 48, 37, 1);
  margin: 0;
  border: none;
  border-radius: 0;
  cursor: default !important;
}

/** Style for Styling related Links in Books*/
.wrapper *,
relatedQuestionHolder .relatedQuestionSliderHolder .relatedQuestionCart:hover {
  text-decoration: none !important;
}
.relatedQuestionHolder .relatedQuestionSliderHolder .relatedQuestionCart {
  text-decoration: none !important;
  gap: 10px;
  width: 100%;
  background: #fff0;
  box-shadow: none;
  padding: 15px 0 15px 0;
  position: relative;
  display: flex;
  align-items: flex-start;
  height: 120px;
}
.relatedQuestionSliderHolder .relatedQuestionCart .relatedQuestionCartHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}
.relatedQuestionSliderHolder
  .relatedQuestionCart
  .relatedQuestionCartHeader
  .heading {
  margin: 0 5px 0 0;
  font-size: 16px;
  background: #1485ed29;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1a2a7c;
  border-radius: 50%;
  font-weight: 600;
}
.relatedQuestionSliderHolder .relatedQuestionCart .relatedQuestionText {
  margin-bottom: 15px;
  font-size: 14px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.5;
  max-height: 4.75em;
  position: relative;
  color: #000;
  font-weight: 500;
  transition: 0.3s all ease;
}
.relatedQuestionSliderHolder .relatedQuestionCart .relatedQuestionCartFooter {
  display: flex;
  justify-content: end;
  position: absolute;
  right: 0;
  bottom: 0;
}
.relatedQuestionCart .relatedQuestionCartFooter .relatedHistory {
  background: #fff;
  width: fit-content;
  color: #000;
  padding: 5px 12px;
  border-radius: 20px;
  position: relative;
  bottom: 28px;
  background: #fff0;
}

.relatedQuestionCart .relatedQuestionCartFooter .relatedHistory p {
  font-size: 14px;
  line-height: normal;
  margin-bottom: 0;
  font-weight: 500;
  color: #00000073;
}
.relatedQuestionCart .relatedQuestionCartFooter .relatedHistory p span {
  font-weight: 500;
}
.relatedQuestionHolder
  .relatedQuestionSliderHolder
  .relatedQuestionCart::after {
  position: absolute;
  content: "";
  width: 98%;
  height: 2px;
  bottom: 10px;
  background: lightgray;
  margin: 0 auto;
  left: 10px;
}

.related_question_heading {
  font-size: 30px;
  color: black;
}

.relatedQuestionHolder .relatedQuestionSliderHolder .relatedQuestionCart {
  height: 90px;
}

.active .fa-heart {
  color: #e74c3c;
}
.wishlist-tab i {
  color: #fff;
  -webkit-text-stroke: 1px #000;
  transition: color 0.3s ease, -webkit-text-stroke 0.3s ease;
  padding: 5px;
}

/* When added to wishlist (red heart) */
.wishlist-tab i.wishlist-added {
  color: #e63946; /* red */
}

.add-to-wishlist-btn.disabled {
  opacity: 0.6;
  pointer-events: none;
  cursor: not-allowed;
}
/* Notification container */
#notification-container {
  position: absolute;
  top: 15%;
  right: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  z-index: 9999;
}

/* Notification box */
.notification {
  display: flex !important;
  flex-direction: row; /* cross left, text right */
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 280px;
  max-width: 380px;
  padding: 14px 18px;
  background: #ffffff;
  border-left: 5px solid #007bff; /* move accent to right side */
  border-radius: 10px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);
  font-family: "Segoe UI", Roboto, sans-serif;
  color: #333;
  opacity: 0;
  transform: translateX(120%);
  transition: all 0.4s ease;
  position: relative;
}

/* Slide-in animation */
.notification.show {
  opacity: 1;
  transform: translateX(0);
}

/* Left side: close button */
.notification-action {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Close button style */
.notification .close-btn {
  background: none;
  border: none;
  color: #666;
  font-size: 20px;
  font-weight: bold;
  cursor: pointer;
  transition: color 0.2s ease;
  padding: 2px;
  line-height: 1;
}

.notification .close-btn:hover {
  color: #000;
}

/* Right side: message */
.notification-content {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.notification-message {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  margin-left: 0 !important;
}

/* Color variants */
.notification.success {
  border-left-color: #28a745;
  background: #e8f7ee;
}

.notification.error {
  border-left-color: #dc3545;
  background: #fbeaea;
}

/* Fullscreen overlay */
#globalLoader {
  display: none; /* hidden by default */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  background: rgba(0, 0, 0, 0.2); /* semi-transparent black fade */
  z-index: 9999;
}

#globalLoader.active {
  display: flex; /* show loader when active */
}

/* Simple blue circular spinner */
.spinner {
  border: 6px solid #f3f3f3; /* light grey background */
  border-top: 6px solid #007bff; /* blue rotating part */
  border-radius: 50%;
  width: 50px;
  height: 50px;
  animation: spin 1s linear infinite;
}

/* Spinner animation */
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.wishlist-heart {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin: 10px auto 8px 65%;
  background-color: #dcdada;
  border: 2px solid #838080;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
  z-index: 1;
}
.edition-wishlist-heart {
  margin: 10px auto 8px 75% !important;
}

/* Heart icon */
.wishlist-heart i {
  color: #ffffff;
  font-size: 16px;
  transition: color 0.3s ease;
}

/* Active (book added to wishlist) */
.wishlist-heart.active {
  background-color: #fff; /* red circle when active */
  border-color: #ff4d4d;
}

.wishlist-heart.active i {
  color: #ff4d4d; /* white heart inside red circle */
}

/* Hover effect */
.wishlist-heart:hover {
  transform: scale(1.1);
  border-color: #ff4d4d;
}

.wishlist-heart:hover i {
  color: #ff4d4d;
}

.wishlist-tooltip {
  position: absolute;
  top: -35px; /* above the heart */
  right: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  background: #ffffff;
  color: #333;
  padding: 6px 10px;
  border-radius: 6px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  font-size: 14px;
  font-weight: 500;
  max-width: 210px;
  z-index: 9999;
  border-left: 4px solid #28a745; /* green success */
  white-space: nowrap;
  opacity: 0;
  transform: translateY(5px);
  animation: tooltipFade 0.3s forwards;
}

/* Error state */
.wishlist-tooltip.error {
  border-left-color: #ff4d4d;
}

/* Icon inside tooltip */
.wishlist-tooltip i {
  color: #28a745;
}

.wishlist-tooltip.error i {
  color: #ff4d4d;
}

/* Tooltip animation */
@keyframes tooltipFade {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.review-location {
  font-size: 13px;
  color: #666;
  display: flex;
  align-items: center;
  gap: 10px;
}

.review-location .review-flag {
  width: 18px !important;
  height: 12px !important;
  object-fit: cover;
  border-radius: 2px;
}

.review-location span {
  display: inline-block;
}

.feedback-section .review-date {
  font-size: 12px;
  color: #888;
  margin-top: 2px;
}

/* GPT Reviews Classic Styles */
.books-feedback-section-classic {
  padding: 50px 20px;
  background: #fafafa;
}

.reviews-header-classic {
  text-align: center;
  margin-bottom: 32px;
  padding-bottom: 16px;
  border-bottom: 2px solid #e0e0e0;
}

.reviews-title-classic {
  font-size: 28px;
  font-weight: 600;
  color: #2c3e50;
  margin: 0 0 6px 0;
}

.reviews-subtitle-classic {
  font-size: 14px;
  color: #7f8c8d;
  margin: 0;
}

/* New Review Card Styles - Scoped to GPT reviews only */
.books-feedback-section-classic .reviews-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 1100px;
  margin: 0 auto;
}

.books-feedback-section-classic .review-card {
  background: #ffffff;
  border: 1px solid #e0e0e0;
  padding: 20px;
  transition: box-shadow 0.2s ease;
}

.books-feedback-section-classic .review-card:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.books-feedback-section-classic .review-main {
  display: flex;
  gap: 18px;
}

.books-feedback-section-classic .review-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #34495e;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 16px;
  flex-shrink: 0;
}

.books-feedback-section-classic .review-content {
  flex: 1;
  min-width: 0;
}

.books-feedback-section-classic .review-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  gap: 16px;
}

.books-feedback-section-classic .review-author-section {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.books-feedback-section-classic .review-author {
  font-size: 15px;
  font-weight: 600;
  color: #2c3e50;
}

.books-feedback-section-classic .review-stars {
  display: flex;
  align-items: center;
  gap: 4px;
}

.books-feedback-section-classic .star-icon {
  width: 16px;
  height: 16px;
  color: #ddd;
}

.books-feedback-section-classic .star-icon.filled {
  color: #f39c12;
}

.books-feedback-section-classic .rating-number {
  font-size: 13px;
  color: #7f8c8d;
  font-weight: 600;
  margin-left: 2px;
}

.books-feedback-section-classic .verified-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  font-size: 11px;
  color: #047857;
  font-weight: 500;
  white-space: nowrap;
}

.books-feedback-section-classic .verified-badge svg {
  width: 12px;
  height: 12px;
  color: #10b981;
}

.books-feedback-section-classic .review-metadata {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: #7f8c8d;
  margin-bottom: 10px;
}

.books-feedback-section-classic .review-flag {
  width: 18px;
  height: 13px;
  object-fit: cover;
  border: 1px solid #e0e0e0;
}

.books-feedback-section-classic .review-location {
  font-weight: 500;
  color: #5a6c7d;
}

.books-feedback-section-classic .metadata-dot {
  color: #bdc3c7;
}

.books-feedback-section-classic .review-date {
  color: #95a5a6;
}

.books-feedback-section-classic .review-text {
  font-size: 14px;
  line-height: 1.6;
  color: #34495e;
  margin-bottom: 12px;
}

.books-feedback-section-classic .review-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 12px;
  border-top: 1px solid #f0f0f0;
}

.books-feedback-section-classic .helpful-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  background: #ffffff;
  border: 1px solid #d0d0d0;
  font-size: 13px;
  color: #5a6c7d;
  cursor: pointer;
  transition: all 0.2s ease;
  font-weight: 500;
}

.books-feedback-section-classic .helpful-button:hover {
  background: #f8f9fa;
  border-color: #34495e;
  color: #34495e;
}

.books-feedback-section-classic .helpful-button svg {
  width: 14px;
  height: 14px;
  color: #7f8c8d;
}

.books-feedback-section-classic .helpful-button.active {
  background: #ecfdf5;
  color: #047857;
  border-color: #6ee7b7;
}

.books-feedback-section-classic .helpful-button.active svg {
  color: #10b981;
}

.books-feedback-section-classic .helpful-count {
  font-size: 12px;
  color: #95a5a6;
}

@media (max-width: 768px) {
  .books-feedback-section-classic .reviews-list {
    gap: 20px;
  }

  .books-feedback-section-classic .review-card {
    padding: 20px;
  }

  .books-feedback-section-classic .review-main {
    flex-direction: column;
    gap: 0;
  }

  .books-feedback-section-classic .review-avatar {
    width: 52px;
    height: 52px;
    font-size: 18px;
    margin-bottom: 14px;
  }

  .books-feedback-section-classic .review-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 12px;
  }

  .books-feedback-section-classic .review-author-section {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
  }

  .books-feedback-section-classic .review-author {
    font-size: 16px;
  }

  .books-feedback-section-classic .review-stars {
    gap: 3px;
  }

  .books-feedback-section-classic .star-icon {
    width: 18px;
    height: 18px;
  }

  .books-feedback-section-classic .rating-number {
    font-size: 14px;
  }

  .books-feedback-section-classic .verified-badge {
    align-self: flex-start;
    padding: 5px 11px;
    font-size: 12px;
  }

  .books-feedback-section-classic .review-metadata {
    margin-bottom: 14px;
    font-size: 13px;
  }

  .books-feedback-section-classic .review-text {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 14px;
  }

  .books-feedback-section-classic .review-actions {
    padding-top: 14px;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .books-feedback-section-classic .helpful-button {
    padding: 8px 16px;
    font-size: 14px;
  }

  .books-feedback-section-classic .helpful-count {
    font-size: 13px;
  }
}

/* Ensure rating section anchor is clickable */
.review-rating-progress a.js-scroll-to-book-reviews {
  display: block;
  text-decoration: none;
  cursor: pointer;
  position: relative;
  z-index: 1;
}

.review-rating-progress #input2 {
  position: relative;
  z-index: 1;
}

/* Christamas Alert */
.christmas-offer-alert {
      max-width: 95%;
      margin: auto;
      position: relative;
      overflow: hidden;
      background: linear-gradient(135deg, #0b3e2a 0%, #0f6d3d 70%, #0b3e2a 100%);
      color: #fffae6;
      border: none;
      box-shadow: 0 8px 18px rgba(0, 0, 0, 0.14);
  }

.christmas-offer-alert i.fa-info-circle {
    color: #fffae6;
}

/* Falling snow overlay */
.christmas-offer-alert::before,
.christmas-offer-alert::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-repeat: repeat;
    background-size: 160px 160px;
    opacity: 0.55;
    animation: snowfall 7s linear infinite;
}

.christmas-offer-alert::after {
    background-size: 120px 120px;
    animation-duration: 5s;
    animation-direction: reverse;
}

@keyframes snowfall {
    from {
        transform: translate3d(0, -30px, 0);
    }
    to {
        transform: translate3d(0, 60px, 0);
    }
}

/* Snowflake pattern */
.christmas-offer-alert::before {
    background-image:
            radial-gradient(2px 2px at 10% 20%, rgba(255, 255, 255, 0.9) 50%, transparent 51%),
            radial-gradient(2.5px 2.5px at 70% 10%, rgba(255, 255, 255, 0.8) 50%, transparent 51%),
            radial-gradient(1.8px 1.8px at 30% 70%, rgba(255, 255, 255, 0.85) 50%, transparent 51%),
            radial-gradient(2.2px 2.2px at 80% 60%, rgba(255, 255, 255, 0.75) 50%, transparent 51%),
            radial-gradient(1.5px 1.5px at 50% 40%, rgba(255, 255, 255, 0.9) 50%, transparent 51%);
}

.christmas-offer-alert::after {
    background-image:
            radial-gradient(2px 2px at 20% 30%, rgba(255, 255, 255, 0.8) 50%, transparent 51%),
            radial-gradient(1.5px 1.5px at 60% 80%, rgba(255, 255, 255, 0.7) 50%, transparent 51%),
            radial-gradient(2px 2px at 85% 45%, rgba(255, 255, 255, 0.8) 50%, transparent 51%);
}
