/*
 * Theme Name:  Divi Ecommerce
 * Theme URI:   https://diviecommerce.aspengrovestudio.com/
 * Description: Woocommerce Divi Child Theme
 * Author:      Divi Space
 * Author URI:  https://divi.space
 * Template:    Divi
 * Version:     1.2.6
 * License:     GPLv3
 * License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
 * Tags:        Divi, Ecommerce, Woocommerce, Child Theme
 * Text Domain: divi_ecommerce
 * GitLab Theme URI: https://gitlab.com/aspengrovestudios/diviecommerce/
 * AGS Info: ids.aspengrove 297100 ids.divispace 297076 legacy.key agstheme_diviecommerce_license_key legacy.status agstheme_diviecommerce_license_key_status adminPage admin.php?page=AGS_child_theme docs https://support.aspengrovestudios.com/article/425-divi-ecommerce
 */

/*
Divi Ecommerce Child Theme
Copyright (C) 2021 Divi Space, an Aspen Grove Studios company

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.


==========

CREDITS:

Parts of this theme are based on and/or copied from WordPress, copyright 2011-2021
by the contributors. Licensed under the GNU General Public License (GPL), version
2 or later.

Parts of this theme are based on and/or copied from WooCommerce by Automattic,
copyright 2015 by the contributors. Licensed under the GNU General Public License
(GPL), version 3 or later.

Parts of this theme are based on and/or copied from Divi by Elegant Themes. Licensed
under the GNU General Public License (GPL), version 2.

See the aspen-plugin-installer.php file for additional credit and licensing information.

See the files in the plugin's updater/ and aspen-demo-content/ directories for additional
credit and licensing information.

See the license.txt file in the theme's root directory for the text of the GPL, version 3.

*/

/*
 *
 * IMPORTANT: UTILIZING THE AUTOMATIC UPDATE FEATURE OF THIS CHILD THEME WILL OVERWRITE ANY
 * CUSTOM CODE PLACED WITHIN THIS FILE. IF YOU WISH TO AUTOMATICALLY UPDATE, PLEASE PLACE
 * YOUR CODE IN THEME OPTIONS >> CUSTOM CSS OTHERWISE YOU CAN MANUALLY UPDATE THE THEME FILES
 *
 */

/**
 * #.#  Fixes
 *
 */

 #page-container {
  overflow : hidden;
}

blockquote {
  margin      : 15px 0;
  border-left : 2px solid;
  font-weight : 500;
  line-height : 1.5;
}

/**
* #.#  Page Headers
*
*/

.de-page-header {
  background : #F9F9F9;
  padding    : 50px 0;
}

.de-page-header .et_pb_row {
  padding : 0 !important;
}

.de-page-header .et_pb_module {
  margin-bottom : 0 !important;
}

.de-page-header .et_pb_text,
.de-page-header .et_pb_code {
  text-align : center !important;
}

.de-page-header h1 {
  margin-bottom  : 0 !important;
  padding-bottom : 5px !important;
  line-height    : 1.2;
  font-weight    : 700;
}

.de-page-header .woocommerce-breadcrumb {
  margin      : 0 !important;
  line-height : 1.5;
  font-weight : 400;
}

.de-page-header .woocommerce-breadcrumb a {
  color : inherit;
}

@media (min-width : 981px) {
  .de-page-header h1 {
      font-size : 35px;
  }

  .de-page-header .woocommerce-breadcrumb {
      font-size : 15px;
  }
}

@media (min-width : 768px) and (max-width : 980px) {
  .de-page-header h1 {
      font-size : 32px;
  }

  .de-page-header .woocommerce-breadcrumb {
      font-size : 14px;
  }
}

@media (max-width : 767px) {
  .de-page-header h1 {
      font-size : 27px;
  }

  .de-page-header .woocommerce-breadcrumb {
      font-size : 13px;
  }
}

/* Default Header */

.default-header {
  line-height : 1.5;
  font-weight : 300;
}

.default-header h1 {
  margin-bottom  : 0 !important;
  padding-bottom : 0 !important;
  line-height    : 1.2;
  font-weight    : 700;
  position       : relative;
  display        : inline-block;
}

@media (min-width : 981px) {
  .default-header h1 {
      font-size : 35px;
  }

  .default-header {
      font-size : 17px;
  }
}

@media (min-width : 768px) and (max-width : 980px) {
  .default-header h1 {
      font-size : 32px;
  }

  .default-header {
      font-size : 16px;
  }
}

@media (max-width : 767px) {
  .default-header h1 {
      font-size : 27px;
  }

  .default-header {
      font-size : 15px;
  }
}

.default-header h1:after,
.default-header h1:before {
  position : absolute;
  top      : 50%;
  content  : "";
  width    : 1000%;
  height   : 1px;
}

.default-header h1:before {
  right : 105%;
  right : calc(100% + 25px);
}

.default-header h1:after {
  left : 105%;
  left : calc(100% + 25px);
}

.default-header.et_pb_bg_layout_light h1:after,
.default-header.et_pb_bg_layout_light h1:before {
  background : rgba(0, 0, 0, 0.075);
}

.default-header.et_pb_bg_layout_dark h1:after,
.default-header.et_pb_bg_layout_dark h1:before {
  background : rgba(255, 255, 255, 0.1);
}

/**
* #.# Pagination
*
*/

.wp-pagenavi,
.woocommerce .woocommerce-pagination ul.page-numbers,
.woocommerce-page .woocommerce-pagination ul.page-numbers {
  border     : none;
  text-align : center;
}

.woocommerce .woocommerce-pagination ul.page-numbers li,
.woocommerce-page .woocommerce-pagination ul.page-numbers li {
  border  : none;
  padding : 4px;
}

.wp-pagenavi a,
.wp-pagenavi span.current,
.woocommerce .woocommerce-pagination ul.page-numbers span.current,
.woocommerce-page .woocommerce-pagination ul.page-numbers span.current,
.woocommerce .woocommerce-pagination ul.page-numbers a,
.woocommerce-page .woocommerce-pagination ul.page-numbers a {
  padding        : 0 15px;
  height         : 40px !important;
  font-size      : 14px;
  line-height    : 40px !important;
  border-radius  : 1px !important;
  font-weight    : 600 !important;
  background     : transparent !important;
  transition     : 0.3s all;
  overflow       : hidden;
  display        : inline-block;
  vertical-align : middle;
}

.woocommerce .woocommerce-pagination ul.page-numbers a,
.woocommerce-page .woocommerce-pagination ul.page-numbers a,
.wp-pagenavi a {
  border : 1px solid rgba(0, 0, 0, 0.1) !important;
  color  : #000 !important;
}

.woocommerce .woocommerce-pagination ul.page-numbers span.current,
.woocommerce-page .woocommerce-pagination ul.page-numbers span.current,
.wp-pagenavi span.current {
  border-width : 1px !important;
  border-style : solid !important;
}

.woocommerce .woocommerce-pagination ul.page-numbers a:hover,
.woocommerce-page .woocommerce-pagination ul.page-numbers a:hover,
.wp-pagenavi a:hover {
  color : #FFF !important;
}

/**
* #.#  Sidebar
*
*/

@media (max-width : 980px) {
  .archive #sidebar,
  .single #sidebar,
  .blog #sidebar {
      margin-top : 30px;
  }
}

.divi-ecommerce-sidebar h4.widgettitle,
#sidebar h4.widgettitle {
  font-weight    : 600;
  text-transform : uppercase;
  margin-bottom  : 10px;
  font-size      : 17px;
  line-height    : 1.1;
}

.tagcloud a {
  background    : transparent !important;
  border        : 1px solid rgba(0, 0, 0, 0.1);
  border-radius : 1px;
}

.divi-ecommerce-sidebar li.cat-item,
#sidebar li.cat-item {
  margin : 0 !important;
}

.divi-ecommerce-sidebar li.cat-item a,
#sidebar li.cat-item a {
  padding            : 8px 0;
  margin             : 0;
  display            : block;
  font-size          : 14px;
  line-height        : 1.4;
  position           : relative;
  -webkit-transition : all 0.2s ease;
  -o-transition      : all 0.2s ease;
  transition         : all 0.2s ease;
}

.divi-ecommerce-sidebar ul.children,
#sidebar ul.children {
  margin-left : 15px;
}

.divi-ecommerce-sidebar li.cat-item a:before,
#sidebar li.cat-item a:before {
  position           : absolute;
  top                : 50%;
  left               : -10px;
  font-family        : "ETmodules";
  content            : "\35";
  font-weight        : bold;
  font-size          : 16px;
  margin-top         : -8px;
  line-height        : 1;
  opacity            : 0;
  -webkit-transition : all 0.2s ease;
  -o-transition      : all 0.2s ease;
  transition         : all 0.2s ease;
}

.divi-ecommerce-sidebar li.cat-item.current-cat a:before,
.divi-ecommerce-sidebar li.cat-item a:hover:before,
#sidebar li.cat-item a:hover:before,
#sidebar li.cat-item.current-cat > a:before {
  opacity : 1 !important;
}

.divi-ecommerce-sidebar li.cat-item.current-cat .children a:before {
  opacity : 0 !important;
}

.divi-ecommerce-sidebar li.cat-item a:hover,
.divi-ecommerce-sidebar li.cat-item.current-cat > a,
#sidebar li.cat-item a:hover,
#sidebar li.cat-item.current-cat > a {
  padding-left : 10px !important;
}

/**
* #.#  Bottom Blurbs
*
*/

.bottom-blurbs .et_pb_column {
  padding       : 30px 12px;
  border        : 1px solid rgba(0, 0, 0, 0.05);
  border-radius : 3px;
}

.bottom-blurbs .et_pb_module_header {
  padding-bottom : 5px;
}

@media (min-width : 650px) {
  .bottom-blurbs .et_pb_main_blurb_image {
      margin-bottom  : 0;
      vertical-align : middle;
  }
}

@media (min-width : 981px) and (max-width : 1250px) {
  .bottom-blurbs .et_pb_main_blurb_image,
  .bottom-blurbs .et_pb_blurb_container {
      display : block;
      padding : 0;
  }

  .bottom-blurbs .et_pb_main_blurb_image {
      margin : 0 auto 15px;
  }

  .bottom-blurbs .et_pb_blurb_content,
  .bottom-blurbs .et_pb_blurb_container {
      text-align : center !important;
  }
}

@media (min-width : 480px) and (max-width : 650px) {
  .bottom-blurbs .et_pb_main_blurb_image,
  .bottom-blurbs .et_pb_blurb_container {
      display : block;
      padding : 0;
  }

  .bottom-blurbs .et_pb_main_blurb_image {
      margin : 0 auto 15px;
  }

  .bottom-blurbs .et_pb_blurb_content,
  .bottom-blurbs .et_pb_blurb_container {
      text-align : center !important;
  }
}

/**
* #.#  Page 404
*
*/

.not-found-404 .et_pb_section {
  font-size : 16px;
}

.not-found-404 p.large-404 {
  font-size     : 140px;
  font-weight   : 700;
  margin-bottom : 10px;
  display       : block;
  position      : relative;
  overflow      : hidden;
  padding       : 0;
  line-height   : 150px !important;
}

.not-found-404 h2 {
  font-weight    : bold;
  line-height    : 1.25;
  padding-bottom : 10px;
  color          : #000;
  font-size      : 40px;
}

.not-found-404 .buttons-container {
  display    : block;
  margin-top : 25px;
}

.not-found-404 .buttons-container a {
  border        : 1px solid;
  padding       : 8px 20px !important;
  line-height   : 1.2;
  font-size     : 16px;
  transition    : 0.5s, ease-in;
  border-radius : 1px;
}

.not-found-404 .buttons-container a:hover {
  padding : 8px 20px !important;
}

@media (max-width : 500px) {
  .not-found-404 .et_pb_section {
      font-size : 15px;
      padding   : 50px 0;
  }

  .not-found-404 .buttons-container {
      text-align : center;
      margin-top : 30px;
  }

  .not-found-404 p.large-404 {
      font-size   : 90px !important;
      line-height : 90px !important;
  }

  .not-found-404 h2 {
      font-size : 30px;
  }
}

/**
* #.#  Page Contact
*
*/

@media (min-width : 981px) {
  .contact-blurbs-row .et_pb_column:last-child {
      border : none;
  }

  .contact-blurb {
      padding    : 50px 20px;
      background : #FFF;
  }

  .contact-blurb {
      margin-top : -50px !important;
      background : #FFF;
      position   : relative;
      z-index    : 5;
      transition : 0.5s ease-in-out;
  }

  .contact-blurb:hover {
      margin-top         : -75px !important;
      padding-bottom     : 75px;
      -webkit-box-shadow : 0 15px 50px 0 rgba(0, 0, 0, 0.15);
      box-shadow         : 0 15px 50px 0 rgba(0, 0, 0, 0.15);
      overflow           : visible;
  }
}

.contact-blurb .et_pb_module_header {
  font-weight : 600;
}

.contact-blurb .et_pb_main_blurb_image {
  padding-right  : 15px;
  border-right   : 1px solid rgba(0, 0, 0, 0.1);
  vertical-align : middle;
}

.contact-blurb .et_pb_blurb_container {
  padding-left : 25px;
}

@media (max-width : 980px) {
  .contact-blurb {
      margin-bottom : 30px !important;
  }

  .contact-blurb .et_pb_blurb_content {
      max-width : none;
  }
}

@media (max-width : 400px) {
  .contact-blurb {
      text-align     : center;
      border-bottom  : 1px solid rgba(0, 0, 0, 0.1);
      padding-bottom : 10px;
  }

  .contact-blurb .et_pb_main_blurb_image,
  .contact-blurb .et_pb_blurb_container {
      border     : none;
      display    : block;
      padding    : 0;
      margin     : 0 auto 15px !important;
      text-align : center !important;
  }
}

/* Form */

.de-contact-form p input, .de-contact-form p textarea,
.divi-ecommerce-form input[type="text"], .divi-ecommerce-form input[type="email"], .divi-ecommerce-form select, .divi-ecommerce-form textarea,
.divi-ecommerce-form p.et_pb_newsletter_field input[type="text"], .divi-ecommerce-form p.et_pb_newsletter_field input[type="email"], .divi-ecommerce-form p.et_pb_newsletter_field select, .divi-ecommerce-form p.et_pb_newsletter_field textarea {
  background    : transparent;
  font-size     : 14px;
  border        : 1px solid rgba(0, 0, 0, 0.15) !important;
  border-radius : 1px;
  overflow      : hidden;
  position      : relative;
  box-shadow    : none;
  color         : inherit;
}

.de-contact-form p input,
.divi-ecommerce-form input[type="text"], .divi-ecommerce-form input[type="email"], .divi-ecommerce-form select {
  line-height : 1;
  height      : 49px !important;
  padding     : 0 20px !important;
}

.de-contact-form p textarea, .divi-ecommerce-form textarea {
  line-height : 1.5 !important;
  padding     : 20px !important;
}

.de-contact-form .et_pb_button, .divi-ecommerce-form .et_pb_button, .divi-ecommerce-form .et_button_no_icon .et_pb_button,
.de-contact-form .et_pb_button:hover, .divi-ecommerce-form .et_pb_button:hover, .divi-ecommerce-form .et_button_no_icon .et_pb_button:hover {
  line-height : 1.5 !important;
  padding     : 11px 20px !important;
}

/**
* #.# Divi Forms
*
* since 1.2.6
*/

@media (min-width : 767px) {
  .divi-ecommerce-newsletter-form-inline .et_pb_newsletter_fields .et_pb_newsletter_field,
  .divi-ecommerce-newsletter-form-inline .et_pb_newsletter_fields .et_pb_newsletter_button_wrap {
      margin     : 8px;
      flex-basis : auto;
      flex-grow  : 1
  }

  .divi-ecommerce-newsletter-form-inline .et_pb_button {
      min-width : 160px;
  }

  .divi-ecommerce-newsletter-form-inline .et_pb_newsletter_fields .et_pb_newsletter_button_wrap {
      max-width : 200px;
  }
}

/**
* #.#  Page About
*
*/

@media (min-width : 981px) {
  .about-page-content .et_pb_column {
      margin-top : -150px;
  }
}

.about-page-blurb .et_pb_module_header {
  position       : relative;
  padding-bottom : 15px;
  margin-bottom  : 10px;
}

.about-page-blurb .et_pb_module_header:before {
  content    : "";
  position   : absolute;
  bottom     : 0;
  width      : 50px;
  height     : 1px;
  background : rgba(0, 0, 0, 0.1);
}

.about-page-blurb.et_pb_text_align_left .et_pb_module_header:before {
  left : 0;
}

.about-page-blurb.et_pb_text_align_right .et_pb_module_header:before {
  right : 0;
}

.about-page-blurb.et_pb_text_align_center .et_pb_module_header:before {
  left        : 50%;
  margin-left : -25px;
}

.about-page-blurb .et_pb_main_blurb_image {
  display       : block;
  margin-bottom : 15px !important;
}

.about-page-blurb.et_pb_text_align_left .et_pb_main_blurb_image {
  text-align : left;
}

.about-page-blurb.et_pb_text_align_right .et_pb_main_blurb_image {
  text-align : left;
}

.brand-logo {
  padding        : 20px 15px;
  border-radius  : 3px;
  transition     : all 0.5s ease;
  border         : 1px solid rgba(0, 0, 0, 0.1);
  -webkit-filter : grayscale(100%);
  filter         : grayscale(100%);
}

.brand-logo:hover {
  -webkit-filter : grayscale(0%);
  filter         : grayscale(0%);
}

.brand-logo img {
  height          : 85px;
  width           : auto;
  margin          : 0 auto;
  max-width       : 100%;
  object-fit      : contain;
  object-position : center;
}


.dsdep-cart-contents {
  color: inherit !important;
}
.dsdep-cart-contents:hover {
  color: #ef3f49 !important;
}
.dsdep-cart-contents:before {
  content: "";
  font-family: "ETmodules";
  display: inline-block;
  margin-right: 14px;
  color: #ef3f49;
  font-size: 21px !important;
  vertical-align: middle;
  line-height: normal;
}
.dsdep-cart-contents .number {
  background-color: #ef3f49;
  width: 16px;
  height: 16px;
  text-align: center;
  line-height: 16px;
  border-radius: 50%;
  font-weight: bold;
  font-size: 12px;
  color: #F9F9F9;
  position: absolute;
  top: 12px;
  right: 0;
}
