/* Custom code goes here. */
html, body, p {
  font-family: 'Open Sans', sans-serif;
  font-size: 1rem;
  color: #444;
  line-height: 1.4;
}
.product-flags { width: auto; } /* fix for Edge */
.material-icons { height: 1.125em; }
#header .header-nav .material-icons,
.product-actions .add-to-cart .material-icons,
#product-availability .material-icons {
  line-height: 1;
}
p, .block-category .block-category-inner #category-description p { margin-bottom: 1em; }
.indent { margin-left: 1.25em; }

@media screen and (max-width: 767px) {
  .container { width: 100%; }
  #category #left-column #search_filters_wrapper { margin-left: 0; margin-right: 0; }
}
#header .header-nav #menu-icon { margin: 0 auto; }
.text-right { text-align: right; }
.alert { font-size: 1rem; }

/* changes for new languages buttons, etc */
#_mobile_language_selector .language-selector-wrapper {
  margin-bottom: 0.5em;
  text-align: center;
}
#header .header-nav .language-selector, .language-selector.dropdown.js-dropdown {
  display: inline-block;
}
span#language-selector-label {
  font-weight: bold;
  padding-right: 8px;
}
@media (max-width: 767px) {
  .dropdown-item, .menu {
    padding: 3px 1rem;
  }
}
#header .header-top .search-widget {
  float: none;
  display: block;
}
.publication-language-selector {
  padding-top: 0.5em;
}
span#publication-selector-label {
  font-weight: bold;
  padding-right: 8px;
}

/* MAIN NAV */
#lnk-spanish-books a,
#lnk-english-books a,
#lnk-libros-en-espanol a,
#lnk-libros-en-ingles a {
  background-color: #2fb5d2;
}
#_desktop_top_menu .top-menu #lnk-spanish-books a:hover,
#_desktop_top_menu .top-menu #lnk-english-books a:hover,
#_desktop_top_menu .top-menu #lnk-libros-en-espanol a:hover,
#_desktop_top_menu .top-menu #lnk-libros-en-ingles a:hover {
  background-color: #159bb9;
}
#_mobile_top_menu #lnk-spanish-books a,
#_mobile_top_menu #lnk-english-books a,
#_mobile_top_menu #lnk-libros-en-espanol a,
#_mobile_top_menu #lnk-libros-en-ingles a {
  background-color: #2fb5d2;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
#_mobile_top_menu .top-menu #lnk-spanish-books a:hover,
#_mobile_top_menu .top-menu #lnk-english-books a:hover,
#_mobile_top_menu .top-menu #lnk-libros-en-espanol a:hover,
#_mobile_top_menu .top-menu #lnk-libros-en-ingles a:hover {
  background-color: #159bb9;
}

/* Heading Colors */
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { line-height: 1.2; color: #777; }
h1.h1[itemprop="name"] { text-transform: none; }

.h2.products-section-title.text-uppercase {
  color: #777;
  text-align: left;
  border-bottom: 1px solid #ddd;
}
a, #products .product-title a,
.featured-products .product-title a,
.product-accessories .product-title a,
.product-miniature .product-title a {
  font-size: 1rem;
  color: #891c1f;
  font-weight: 700;
}
a:hover, #products .product-title a:hover,
.featured-products .product-title a:hover,
.product-accessories .product-title a:hover,
.product-miniature .product-title a:hover,
.links a:hover {
  color: #2fb5d2; /* consider changing links to this blue and using #2592a9 for hover color */
}
#products .dropdown-menu a { font-weight: normal; }
#header a {
  font-weight: 400;
}
#header .header-nav .cart-preview.active a {
  font-weight: 700;
}
.product-description h2 { line-height: 1.1; }
div[itemprop="description"] h2 {
  font-weight: 400;
}
#products .product-title, .featured-products .product-title, .product-accessories .product-title, .product-miniature .product-title { text-transform: none; }
#products .product-price-and-shipping, .featured-products .product-price-and-shipping, .product-accessories .product-price-and-shipping, .product-miniature .product-price-and-shipping {
  color: #555;
}
#products .product-description, .featured-products .product-description, .product-accessories .product-description, .product-miniature .product-description { height: auto; padding-bottom: 0.5rem; }
#products .product-title a, .product-miniature .product-title a {
  font-size: 0.875rem;
}
.gold {
  color: #9c7b5a !important;
}
.page-cms .covers img {
  max-width: 100%;
  height: auto;
}

/* CATEGORY DESCRIPTIONS AND ACCORDION */
.accordion { width: 100%; }
.accordion .btn {
  display: block;
  text-align: left;
  font-weight: bold;
}
.accordion a:not([href]):not([tabindex]),
.accordion a:not([href]):not([tabindex]):focus,
.accordion a:not([href]):not([tabindex]):hover {
  color: #777;
}
.accordion a.btn.btn-link::after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f078";
  position: absolute;
  right: 1.5rem;
  transition: transform .2s ease-in-out;
}
.accordion a.btn.btn-link:not(.collapsed)::after {
  transform: rotate(-180deg);
}
.accordion .card-body {
  border-width: 0 1px 1px 1px;
  border-style: solid;
  border-color: rgba(0,0,0,.125);
  padding: 1rem;
}

/* PAGINATION */
.pagination .page-list {
  box-shadow: none;
}
.pagination a:not(.previous):not(.next) {
  letter-spacing: normal;
}
.pagination .current a {
  font-size: 1rem;
  font-weight: 700;
}
.pagination a {
  font-weight: 400;
  display: inline-block;
  padding: 0.125em 0.375em;
}
.pagination>div:first-child {
  line-height: 1.4rem;
}
/* BUTTONS */
.btn { border-radius: 4px; }
.input-group .input-group-btn>.btn { margin-left: 0.25rem; }

/* WRAPPER */
#wrapper {
  background-color: #fff;
  padding-top: 0.5rem;
  box-shadow: none;
}
#wrapper .breadcrumb li::after {
  color: #bbb;
}
#wrapper .breadcrumb { font-size: 0.75rem; }

/* CAROUSEL */
.carousel .carousel-control .icon-next i, .carousel .carousel-control .icon-prev i {
  color: rgba(255,255,255,0.4);
  text-shadow: none;
}
.carousel .carousel-control .icon-prev {
  left: 0;
  margin-left: 0;
}
.carousel .carousel-control .icon-next {
  right: 0;
  margin-right: 0;
}
.carousel .carousel-control .icon-next:hover i, .carousel .carousel-control .icon-prev:hover i {
  color: #fff;
  background-color: rgba(0,0,0,0.1);
}
.carousel-control .icon-next,
.carousel-control .icon-prev {
    width: auto;
    height: auto;
}
@media (min-width:576px) {
  .carousel-control .icon-next,
  .carousel-control .icon-prev {
      width: auto;
      height: auto;
  }
}

/* CUSTOM TEXT BLOCK */
#custom-text {
  margin-bottom: 0; /* 1rem */
  padding: 0; /* 2.5rem 0 */
  text-align: left;
  position: relative;
  float: left;
}
#custom-text h2 {
  color: #071f47;
  text-transform: none;
}
#custom-text p {
  color: #555555;
  font-weight: 400;
  font-size: 1em;
  line-height: 1.5;
}

/* NOTICES */
.notice {
  position: relative;
  padding: .75rem 1.25rem;
  margin-bottom: 0;
  margin-top: 0.25rem;
  border: 1px solid transparent;
  border-radius: .25rem;
}
.notice-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}
.notice-error {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}
#header .notice-error .btn {
  background-color: #B70C08;
  color: #fff;
}
.notice-warning {
  color: #ad7910;
  background-color: #fff3cd;
  border-color: #ffeeba;
}
.notice-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}

/* PRODUCT PAGES */
.product-accessories p.h5.text-uppercase {
  margin: 1em 0;
}
#product #content { margin: 0; max-width: 100%; }
.product-price { font-size: 1.25rem; color: #555; }
.tabs .nav-tabs .nav-link.active {
  border: 1px solid #8f724c;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
  background-color: #9B7D57;
  color: #fff;
}
.tabs .nav-tabs .nav-link:hover {
  border: 1px solid #2099b4;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
  background-color: #2fb5d2;
  color: #fff;
}
.tabs .nav-tabs { border-bottom: 2px solid #dbd6ce; }
.nav-tabs .nav-link { border-bottom: 0; }
.tabs .nav-tabs .nav-link { background-color: #f1f1f1; border: 1px solid #ddd; border-bottom: 0; border-radius: 4px; }
.nav-tabs .nav-item + .nav-item { margin-left: 0; }
.tabs {
  box-shadow: none;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 1.25rem 1rem;
}
.card-block { padding: 0 0 1rem 0; }
.card { border-width: 0 0 1px 0; border-color: #ddd; }
.block-category { min-height: 0; }
.block-category h1 { margin-bottom: 0; }
#left-column { padding-left: 0; }
.label, label { font-size: 1rem; }

h2.subtitle { color: #555; font-weight: normal; }
h2.subtitle span { color: #9b7d57; }
.products-sort-order .select-title { line-height: 1.438; }
.product-features>dl.data-sheet dt.name {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 25%;
  flex: 1 0 25%;
  font-weight: 600;
  text-align: right;
  font-size: .9375rem;
}
.product-features>dl.data-sheet dd.value {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 55%;
  flex: 1 0 55%;
  font-size: .9375rem;
}
.product-features>dl.data-sheet dt.name, .product-features>dl.data-sheet dd.value {
  margin: 0.125em;
}
.product-features>dl.data-sheet dd.value:nth-of-type(2n), .product-features>dl.data-sheet dt.name:nth-of-type(2n) {
  background: #f1f1f1;
}
.product-description .sub-heading {
  color: #082047;
}
.product-description h2 {
  color: #a1793e;
  font-weight: normal;
}
.product-description ul {
  list-style-type: disc;
  margin-left: 1.5em;
  color: #555;
}
#products .thumbnail-container .product-thumbnail, .featured-products .thumbnail-container .product-thumbnail, .product-accessories .thumbnail-container .product-thumbnail, .product-miniature .thumbnail-container .product-thumbnail {
  height: calc(100% - 75px);
}
#products .highlighted-informations, .featured-products .highlighted-informations, .product-accessories .highlighted-informations, .product-miniature .highlighted-informations {
  background: #fff;
  background: rgba(255,255,255,0.85);
}
.product-prices div.current-price {
  margin-bottom: 0;
}

/* EBOOK LINKS BOX */
.callout {
  background-color: #f5f5f5;
  border: 1px solid #e4e4e4;
  border-radius: 4px;
  padding: 1em;
  margin: 1em 0;
}
.badges-section h3 {
  color: #9c7b5a;
  text-align: left;
  margin-bottom: 0;
}
.badges {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.badges img {
  max-height: 75px;
  width: auto;
}
.badges div span {
  font-size: 0.875rem;
  color: #444;
}
/* Small only */
@media screen and (max-width: 29.688em) {
  .badges {
    justify-content: center;
  }
  .badges-section h3 {
    text-align: center;
  }
}

/* STYLES FOR Pack contains */
.card-body .product-pack {
  margin-top: 0;
  font-size: 0.875rem;
}
.product-pack {
  margin-top: 1rem;
}
.thumb-mask > .mask {
  border: 0;
  margin: .25rem 0;
}
.product-pack .pack-product-container .pack-product-name {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 60%;
  flex: 0 0 60%;
}
.product-pack .pack-product-container .pack-product-name a {
  font-size: 0.875rem;
}
.product-pack .pack-product-container .pack-product-price {
  padding: 0 0.5rem;
}
.product-pack .pack-product-container .pack-product-quantity {
  border-left: 1px solid #f1f1f1;
  padding: 0 0.5rem;
  white-space: nowrap;
}
article .card {
  margin-bottom: 0;
}
article:last-of-type .card {
  border-bottom-width: 0;
}

/* CMS PAGES */
#main .page-content { margin-bottom: 2rem; }
.page-content.page-cms { padding: 0 }

/* CART PAGE */
.card.cart-summary, .card.js-cart {
  padding: 1rem;
  box-shadow: none;
  border: 1px solid #ddd;
  background-color: #f1f1f1;
  border-radius: 4px;
}
.card-block.cart-summary-totals .cart-summary-line, .card-block.cart-summary-totals .cart-summary-line.cart-total { padding: .5rem 0; }
.card-block.cart-summary-totals { padding: 0; }

/* BOX SHADOWS */
.product-cover img, #products .page-not-found  { box-shadow: none; }
.block-categories, #search_filters, .card { box-shadow: none; }
#search_filters, .contact-rich {
  padding: 0.875rem 0.75rem;
  border: 1px solid #ddd;
  border-radius: 4px;
  background-color: #f1f1f1;
}
#products .page-not-found { max-width: 100%; }
#products .thumbnail-container, .featured-products .thumbnail-container, .product-accessories .thumbnail-container, .product-miniature .thumbnail-container { box-shadow: none; }
#products .highlighted-informations, .featured-products .highlighted-informations, .product-accessories .highlighted-informations, .product-miniature .highlighted-informations { box-shadow: none; }
#products .thumbnail-container:hover, .featured-products .thumbnail-container:hover, .product-accessories .thumbnail-container:hover, .product-miniature .thumbnail-container:hover { box-shadow: 2px 2px 8px 0 rgba(0,0,0,.2); }

/* FILTERS - FACETED SEARCH */
.custom-checkbox input[type=checkbox]+span {
  border: 2px solid #777;
}
#search_filters .facet .facet-label a {
  width: calc(100% - 32px);
  color: #891c1f; 
}

/* STORE INFORMATION PAGE */
#stores .page-stores { width: 100%; }
#stores .page-stores .card { border-width: 0; }
#stores .page-stores .store-item-footer { margin-top: 0; padding-top: 0; justify-content: flex-start; }
#stores .page-stores .store-item-container { align-items: normal; }
#store-hours th { text-align: right; }
#store-hours td { padding: 0.125em 0.5em; }
#stores .store-picture { text-align: center; }
#stores .page-stores .store-item-footer li { margin-bottom: .5rem; }
@media (max-width: 575px) {
  #stores .page-stores .store-item-footer .card-block {
    padding: 0.75em 0;
  }
  #stores .store-picture img { margin-bottom: 1em; }
}
/* CONTACT PAGE */
.contact-rich .block a, .contact-rich .block a[href^="mailto:"] {
  font-size: 0.875rem;
  margin-top: 0;
}
#store-hours { font-size: 0.875rem; }
#store-hours ul { margin-bottom: 0; }
.contact-rich h4 {
  margin-bottom: 1rem;
  color: #071f47;
}
.contact-rich h4:last-of-type { margin-top: 1.75rem; }

/* YOUR ACCOUNT */
.page-addresses .address .address-body h4 { font-size: 1.5rem; }

/* MOBILE LOGO */
#_mobile_logo { background-color: #fff; text-align: center; }
.mobile-right-divs div { display: inline-block; }

/* HEADER NAV */
#header .header-nav {
  border-bottom: 1px solid #ddd;
  background-color: #f1f1f1;
}
body#checkout #header .header-nav {
  padding: 0;
  margin-bottom: 30px;
  border-bottom: 1px solid #ddd;
  box-shadow: none;
}
body#checkout #header .header-nav #_desktop_contact_link #contact-link {
  margin-top: 0.9375rem;
}

 /* STYLES FOR MAIN MENU */
 .nav-bar-full {
  background-color: #891c1f;
  margin-top: 0.5rem;
 }

/* Desktop Menu */
#_desktop_top_menu { width: 100%; }
#_desktop_top_menu ul { margin-bottom: 0; }
#_desktop_top_menu .top-menu a[data-depth="0"] {
  color: #fff;
  padding: .525rem 1.275rem;
  font-size: 0.875rem;
  text-transform: uppercase;
  font-weight: 700;
}
#_desktop_top_menu .top-menu a[data-depth="0"]:hover {
  color: #fff;
  background-color: #751316;
}
.top-menu .sub-menu {
  margin-left: 0;
  width: 25rem;
  min-width: auto;
  background-color: #e9e4d9;
  border: 1px solid #e0dbd0;
}
.top-menu a.dropdown-submenu {
  color: #604831;
  text-transform: none;
  font-weight: 500;
  font-size: 1rem;
}
#header .dropdown-item.dropdown-submenu {
  color: #604831;
}
#header .dropdown-item.dropdown-submenu:hover { background-color: rgba(124, 94, 66, 0.1); }
.top-menu .sub-menu ul[data-depth="1"] { margin: 0; }
.top-menu .sub-menu ul[data-depth="1"] > li { float: none; margin:0; }
.top-menu a[data-depth="1"] { padding: 0.25rem 0.875rem;}
.popover { left: auto; }
/* Mobile Menu */
#mobile_top_menu_wrapper { margin-top: 1rem; }
#mobile_top_menu_wrapper .top-menu .sub-menu ul[data-depth="1"]>li a {
  font-weight: 400;
}

/* BREADCRUMBS */
#wrapper .breadcrumb li a {
  color: #444;
  font-size: 0.75rem;
  font-weight: 400;
}
#wrapper .breadcrumb li a:hover {
  color: #2fb5d2;
  text-decoration: underline;
}

/* FOOTER */
#footer {
  background-color: #fff;
  padding-top: 0;
}
.footer-container {
  background-color: #eeeae4;
  box-shadow: none;
  border-top: 1px solid #ddd5c9;
}
.footer-container li a, .links a {
  color: #9b7d57;
  font-size: 0.875rem;
}
.footer-container .h3, .h3.myaccount-title a {
  color: #071f47;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.1;
}
.block-contact .block-contact-title, #block_myaccount_infos .myaccount-title a { color: #071f47; }
.block-contact { font-size: 0.875rem; }
.dropdown { color: #9b7d57; }
.copyright-text { font-size: 0.875rem; margin-top: 1rem; }
.copyright-text a { font-size: 0.875rem; }

/* SEARCH UI WIDGET */
.ui-widget {
  font-size: 1em;
}