/*
Theme Name: Boldwood 2026 (Divi Child)
Theme URI: https://www.elegantthemes.com/gallery/divi/
Description: Divi Child Theme
Author: Alex Knight for Bookswarm
Template: Divi
Version: 1.0.0
*/

/* =Theme customization starts here
------------------------------------------------------- */

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
  text-transform: none;
}

body h1,
body .h1 {
  font-size: 41px;
  text-transform: none;
}

@media(min-width: 1024px) {

  body h1,
  body .h1 {
    font-size: 61px;
    text-transform: none;
  }
}

body h2,
body .h2,
body h3,
body .h3,
body h4,
body .h4,
body h5,
body .h5,
body h6,
body .h6 {
  margin-bottom: 1.6rem;
}

.centred {
  text-align: center;
}

#page-top {
  background-color: #FFE1D3;
  padding: 60px 20px 45px;
  margin-bottom: 60px;
}

#page-top .container {
  padding-top: 0 !important;
}

/* header */
.et_pb_search form {
  position: relative;
}

.et_pb_search .et_pb_searchsubmit {
  background-color: transparent !important;
  color: transparent !important;
  border: none !important;
  position: absolute;
  right: 0;
  top: 0;
  width: 50px;
  height: 100%;
  z-index: 10;
  cursor: pointer;
}

.et_pb_search form::after {
  content: "\55";
  font-family: "ETmodules";
  color: #000000;
  font-size: 20px;
  position: absolute;
  right: 9px;
  top: 16px;
  transform: translateY(-50%);
  z-index: 1;
  pointer-events: none;
}

.et-menu .menu-item-has-children>a:first-child:after {
  top: -1px;
}

.et_pb_search ::placeholder {
  color: #000;
  opacity: 1;
  /* Firefox */
}

.et_pb_search ::-ms-input-placeholder {
  /* Edge 12 -18 */
  color: #000;
}

/* Masthead */
div#masthead {
  background-image: url('images/header-4.png'), url('images/header-1.png'), url('images/header-3.png'), url('images/header-2.png');
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: left -77px center, left 47px top 6px, top -17px right -10px, bottom -113px right -13px;
  background-size: 198px, 56px, 148px, 185px;

}

div#masthead {
  @media(min-width: 900px) {
    background-position: left -94px center, left 100px top 6px, top -25px right -32px, bottom -130px right -10px;
    background-size: 261px, 80px, 211px, 220px;
  }
}

div#masthead {
  @media(min-width: 1130px) {
    background-position: left -90px center, left 200px top 20px, top -51px right -28px, bottom -140px right 148px;
    background-size: 389px, 124px, 374px, 263px;
  }
}

div#masthead {
  @media(min-width: 1400px) {
    background-position: left -90px center, left 282px top 20px, top -51px right -9px, bottom -140px right 234px;
    background-size: 433px, 153px, 427px, 295px;
  }
}

.et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li>a:hover {
  background-color: transparent;
}

body.home #et-main-area,
body.archive #et-main-area {
  margin-top: 0px;
}

/* homepage */

#slides .bw_slide {
  height: 400px;
}

#slides .bw_slide .mobile {
  display: none;

  @media(max-width: 768px) {
    display: block;
    margin: 0 auto;
  }
}

#slides .bw_slide .desktop {
  display: block;

  @media(max-width: 768px) {
    display: none;
  }
}

.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 35%;
  display: block;
  width: 54px;
  height: 54px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  background-repeat: no-repeat;
}

.slick-prev {
  background-image: url(images/arrow-left-orange-circle.svg);
  left: -62px;
  z-index: 999;

  @media(max-width: 768px) {
    left: -52px;
  }
}

.slick-next {
  background-image: url(images/arrow-right-orange-circle.svg);
  right: -62px;

  @media(max-width: 768px) {
    right: -52px;
  }
}

#slides .slick-prev {
  left: -87px;

  @media(max-width: 768px) {
    left: -52px;
  }

}

#slides .slick-next {
  right: -87px;

  @media(max-width: 768px) {
    right: -52px;
  }
}

#slides .slick-prev,
#slides .slick-next {
  top: 53%;
  width: 72px;
  height: 72px;

  @media(max-width: 768px) {
    width: 44px;
    height: 44px;
  }
}

#homepage-awards .slick-prev,
#homepage-awards .slick-next {
  top: 51%;
}

#homepage-awards.slick-slider img {
  margin: 0 auto;
}

#key-facts-carousel .fact {
  background-color: #FF6C4A;
  font-size: 30px;
  text-align: center;
  padding: 30px;
  display: grid;
  height: 165px;
  align-content: center;
  border-radius: 10px;
  margin: 10px;

  @media(max-width: 768px) {
    font-size: 28px;
  }
}

#key-facts-carousel .fact:nth-child(even) {
  background-color: #FF967A;
}

#key-facts-carousel .slick-prev,
#key-facts-carousel .slick-next {
  top: 51%;
}

.slick-slider .book {
  text-align: center;
  padding: 0 12px;
}

.slick-slider .book .bookcontainer {
  margin-bottom: 15px;
}

.slick-slider .book .bookdetails .h3 {
  font-size: 25px;
  line-height: 30px;
  padding-bottom: 0;
  margin-bottom: 5px;
  color: #000;
}

.slick-slider .book .bookdetails .author {
  font-size: 20px;
  line-height: 28px;
}

#books .slick-prev,
#books .slick-next {
  top: 43%;
}

#books .book.slick-slide .bookcontainer img {
  display: inline;
}

.news-panel {
  background-color: #FFF0E9;
  border-radius: 20px;
  margin: 10px;
}

.news-panel .info p {
  font-size: 18px;
}

.news-panel .info p.title {
  font-size: 25px;
}

.news-panel p.title a {
  color: #000;
}

.news-panel {
  padding: 0;
}

.news-panel .info {
  padding: 15px;
}

div.catalogue-books {
  display: grid;
  grid-template-columns: 24.5% 24.5% 24.5% 24.5%;
  grid-column-gap: 2%;
}

div.catalogue-books .book-image img {
  transform: rotate(-8deg);
  box-shadow: 4px 4px 9px -5px rgba(0, 0, 0, 0.59);
}


#book-detail {
  padding-top: 70px;
}

#book-detail h1 {
  font-size: 61px;
  margin-bottom: 20px;
}

#book-detail p.name {
  font-size: 32px;
}

#book-detail p.name a {
  color: #000;
}

/* book detail */
#book-detail .description {
  margin-bottom: 60px;
}

/* The collapsed state */
.toolset-content-inner.is-collapsed {
  display: -webkit-box;
  -webkit-line-clamp: 14;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: all 0.3s ease;

  /* Adds the fade-out effect */
  -webkit-mask-image: linear-gradient(to bottom, black 80%, transparent 100%);
  mask-image: linear-gradient(to bottom, black 80%, transparent 100%);
}

/* The button styling */
.toolset-read-more-btn {
  display: inline-block;
  margin-top: 24px;
  font-weight: bold;
  color: #ff6c4a;
  text-decoration: underline;
}

.toolset-read-more-btn:hover {
  text-decoration: underline;
}

@media(max-width: 1024px) {

  #book-detail .description p,
  #book-detail .description h1,
  #book-detail .description h2:first-of-type {
    font-size: 20px;
  }
}

#book-detail .description p,
#book-detail .description h1,
#book-detail .description h2:first-of-type,
#book-detail .description h3:first-of-type {
  font-size: 24px;
  font-weight: 400;
  line-height: 1.4em;
}

/* tabs defaults */
#edition-tabs {
  border: 1px solid #d1d1d1;
  background: #fff;
  margin: 20px 0;
}

#edition-tabs .tab-nav {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  background: #e0e0e0;
  border-bottom: 1px solid #d1d1d1;
  flex-wrap: wrap;
}

#edition-tabs .tab-link {
  padding: 13px 17px;
  cursor: pointer;
  font-weight: 600;
  color: #000000;
  background: #e0e0e0;
  border-right: 1px solid #d1d1d1;
  transition: background 0.2s ease;
  text-transform: uppercase;
}

#edition-tabs .tab-link.active {
  background: #f5f5f5;
  color: #000000;
  border-bottom: 1px solid #f5f5f5;
  margin-bottom: -1px;
}

#edition-tabs .tab-link:not(.active):hover {
  background: #d6d6d6;
}

#edition-tabs .tab-content {
  padding: 30px;
  display: none;
  color: #333;
  line-height: 1.6;
}

#edition-tabs .tab-content div.button span {
  display: block;
  color: white;
  background-color: black;
  padding: 10px 25px;
  border-radius: 24px;
  font-size: 16px;
  font-family: 'Montserrat';
  font-weight: 600;
  margin-top: 14px;
  display: block;
  width: 144px;
  text-align: center;
}

#edition-tabs .tab-content div.button .links {
  display: none;
}

#edition-tabs .tab-content div.button .links a {
  display: block;
  color: #000;
  text-decoration: underline;
  font-size: 20px;
}

#edition-tabs .tab-content div.button:hover {
  cursor: pointer;
}

#edition-tabs .tab-content div.button:hover .links {
  display: block;
  background-color: #fff;
  border: 1px solid lightgray;
  position: absolute;
  padding: 19px;
  z-index: 10;
}

#edition-tabs .tab-content.active {
  display: block !important;
}

/* tabs overrides */

#book-detail #edition-tabs {
  background-color: transparent;
  border: 0;
  margin: 40px 0;
}

#book-detail #edition-tabs .tab-nav {
  background-color: transparent;
  border: 0;
}

@media(max-width: 1024px) {
  #book-detail #edition-tabs .tab-nav .tab-link {
    font-size: 16px;
    padding: 6px 17px;
  }
}

#book-detail #edition-tabs .tab-nav .tab-link {
  padding: 13px 17px;
  background-color: #FF967A;
  border-radius: 20px;
  margin-bottom: 10px;
  font-size: 17px;
  line-height: 20px;
  font-weight: 400;
  border: 0;
  margin-right: 5px;
  display: grid;
  text-align: center;
  align-items: center;
}

#book-detail #edition-tabs .tab-link.active,
#book-detail #edition-tabs .tab-nav .tab-link:hover {
  background-color: #FFE1D3;
}

#book-detail #edition-tabs .tab-content {
  background-color: #FFE1D3;
  border: 0;
}

@media(max-width: 1024px) {
  #book-detail #edition-tabs .tab-content p {
    font-size: 20px;
  }
}

#book-detail #edition-tabs .tab-content p {
  font-size: 24px;
  margin-bottom: 5px;
  padding-bottom: 0;
}

.custom-rrp p,
.custom-rrp span,
.custom-rrp bdi {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
}

#book-detail .left .cover img {
  display: block;
}

@media(max-width: 1024px) {
  #book-detail .left .meta {
    padding: 20px;
  }
}

#book-detail .left .meta {
  background-color: #FF9177;
  padding: 25px;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
  margin-bottom: 30px;
}

@media(max-width: 1024px) {
  #book-detail .left .meta p {
    font-size: 20px;
  }
}

#book-detail .left .meta p {
  font-size: 24px;
  margin-bottom: 4px;
  padding-bottom: 0;
}

#book-detail .left .meta p a {
  color: #000;
  text-decoration: underline;
}

#book-detail .left .meta .share {
  padding-top: 15px;
}

#book-detail .left .meta .share a.addtoany_share_save span {
  background-color: #000 !important;
}

#book-detail #reviews-wrap {
  background-color: #FFE1D3;
  padding: 45px 0;
  min-height: 323px;
  text-align: center;
  display: grid;
  margin-bottom: 60px;
}

#book-detail #reviews-wrap .review p {
  font-size: 24px;
}

#book-detail #reviews-wrap .review p span {
  display: block;
  margin-top: 15px;
  font-style: italic;
}

#book-detail #bottom {
  padding-top: 40px;
  margin-bottom: 60px;
}


/* archive */

#archive h1.centre {
  text-align: center;
  font-family: ;
}

#archive .top-filters .pagination {
  display: none;
}

#archive .top-filters {
  padding: 30px 0;
  text-align: right;
}


#archive .bottom-filters .sorting {
  display: none;
}

#archive .bottom-filters,
.bottom-filters {
  padding: 30px 0;
  text-align: center;
}

#archive .bottom-filters .pagination-wrap,
.bottom-filters .pagination-wrap {
  display: grid;
  justify-content: center;
}

#archive .bottom-filters .pagination-wrap .page-item.active .page-link,
.bottom-filters .pagination-wrap .page-item.active .page-link {
  background-color: #ff6c4a;
  border-color: #ff6c4a;
  color: #fff;
}

#archive .bottom-filters .pagination-wrap .page-item .page-link,
.bottom-filters .pagination-wrap .page-item .page-link {
  color: #ff6c4a;
}

div.bookpanel .cover {
  margin-bottom: 12px;
}

div.bookpanel .bookdetails {
  padding-bottom: 25px;
}

div.bookpanel .bookdetails p.title {
  padding-bottom: 5px;
}

div.bookpanel .bookdetails p.title a {
  color: #000;
  text-decoration: underline;
}

div.bookpanel .bookdetails p.name {
  font-size: 20px;
}


/* genres grid */
#genres-grid {
  @media(min-width: 700px) {
    display: grid;
    grid-template-columns: 48% 48%;
    grid-column-gap: 4%;
  }
}

#genres-grid .genre-item {
  margin-bottom: 15px;
  display: block;
  position: relative;
}

#genres-grid .genre-item div.overlay {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.7);
  z-index: 1;
  bottom: 0;
  font-size: 26px;
  line-height: 34px;
  color: #000;
  align-items: center;
  text-align: center;
  padding: 30px;
}

#genres-grid .genre-item:hover div.overlay {
  display: grid;
}

/* page heading */
.heading-bg {
  padding: 50px 20px;
  background-color: #FFE1D3;
}

/* authors listing */

#a-z-letters {
  width: 100%;
  margin-bottom: 30px;
}

#a-z-letters ul {
  list-style: none;
  text-align: center;
  padding-left: 0;
}

#a-z-letters ul li {
  display: inline-block;
}

#a-z-letters ul li a {
  background-color: #FF9479;
  color: #000;
  border-radius: 5px;
  margin: 5px;
  width: 32px;
  display: block;
  padding: 5px;
}

#a-z-letters ul li.active a,
#a-z-letters ul li a:hover {
  background-color: #FF6E4B;
}

/* contributors */
#author-detail .top {
  background-color: #FFE1D3;
  padding: 60px 20px 45px;
  margin-bottom: 60px;
}

#author-detail .top .grid {
  @media(min-width: 650px) {
    display: grid;
    grid-template-columns: 230px auto;
    grid-column-gap: 30px;
  }
}

#author-detail .top h1 {
  font-size: 61px;
  text-align: center;
  margin-bottom: 40px;
}

#author-detail .top .image img {
  display: block;

  @media(max-width: 649px) {
    max-width: min-content;
    margin: 0 auto 20px;
  }
}

#author-detail .top #connect {
  background-color: #FF957A;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
  text-align: center;
  padding: 9px 5px 12px;
  margin-bottom: 20px;

  @media(max-width: 649px) {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
  }
}

#author-detail .top #connect a {
  display: inline-block;
  vertical-align: middle;
}

#author-detail .top #connect a img {

  margin-bottom: 0;
}

#author-detail .top #connect p {
  font-size: 13px;
  text-transform: uppercase;
  margin-bottom: 6px;
  color: #000;
  font-family: 'Montserrat';
  line-height: 17px;
}

.authorcontainer {
  margin-bottom: 7px;
}

.authorcontainer a {
  display: block;
  margin: 0 auto;
  text-align: center;
}

.authordetails p.name {
  font-size: 26px;
  text-align: center;
}

.authordetails p.name a {
  color: #000;
}

/* news */

#news-new .newsblock .inner {
  padding: 10px;
  background-color: #FFF0E9;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
}

#news-new .newsblock .news-thumb {
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}

#news-new .newsblock p.title a {
  color: #000;
  font-size: 25px;
}

#news-new .newsblock p.title a:hover {
  color: #000;
  text-decoration: underline;
}


/* footer */

footer.et-l.et-l--footer h6 {
  margin-bottom: 0 !important;
}

footer.et-l.et-l--footer p a {
  color: #000;
}

.et_pb_menu .et_pb_menu__menu>nav>ul#menu-useful-links {
  display: block;
  border-left: 4px solid #fff;
}

.et_pb_menu .et_pb_menu__menu>nav>ul#menu-useful-links li {
  display: block;
  margin-top: 0;
  margin-bottom: 8px;
}

.et_pb_menu .et_pb_menu__menu>nav>ul#menu-useful-links li:last-of-type {
  margin-bottom: ;
}

.et_pb_menu .et_pb_menu__menu>nav>ul#menu-useful-links li a {
  color: #000;
  font-size: 18px;
}

footer.et-l.et-l--footer .et_pb_menu__wrap {
  display: block;
  width: 100%;
}

footer.et-l.et-l--footer .et_pb_menu__wrap .et_mobile_nav_menu {
  display: block;
}

footer.et-l.et-l--footer .et_mobile_nav_menu .mobile_menu_bar {
  display: none !important;
}

@media(max-width: 980px) {
  footer.et-l.et-l--footer .et_mobile_nav_menu .et_mobile_menu {
    display: block !important;
    background: transparent;
    position: relative;
    border: 0;
    padding: 0;
    border-left: 4px solid #fff;
    padding-left: 15px;
    box-shadow: none;
  }
}

footer.et-l.et-l--footer .et_mobile_nav_menu .et_mobile_menu li a {
  border-bottom: 0;
}

#footer-form input[type=text],
#footer-form input[type=email] {
  background-color: #FF9177;
  border: 0;
  box-shadow: 0;
}

#footer-form p.gform_description {
  font-size: 20px;
  line-height: 26px;
  margin-bottom: 20px;
}

#footer-form .gform_wrapper.gravity-theme .gfield_required .gfield_required_text {
  color: #000;
}

#footer-form .gform_wrapper.gravity-theme .gform-footer input[type=submit] {
  background-color: #000;
  color: #fff;
  border: 0;
  font-size: 16px;
  font-family: 'Montserrat';
  text-transform: uppercase;
  border-radius: 20px;
  padding: 10px 15px 6px 15px;
}