/*
 * 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.10
 * 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/>.


==========

For the text of the GNU General Public License version 3, and licensing/copyright
information for third-party code used in this product, see ./license.txt.

==========
*/

/*
 *
 * 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;
}

.wp-pagenavi span.pages {
    border : none;
}

/**
 * #.#  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;
    padding   : 50px 0;
}

.not-found-404 .et_pb_row {
    margin : 0 auto;
    width  : 80%;
}

.not-found-404 .et_pb_text_align_center {
    text-align : center;
}

.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;
}
