/*
 Theme Name:   Hello Elementor Child
 Template:     hello-elementor
*/

/*******************/
/* ELEMENTOR HACKS */
/*******************/

@media (min-width: 1200px) {
    body:not([class*="elementor-page-"]) .site-main {
        max-width: 1140px !important;
    }
}

@media (max-width: 480px) {
    .company-description .elementor-container {
        border: none !important;
    }
}


/********/
/* GRID */
/********/

.row {
    position: relative;
    width: 100%;
}

.row [class^="col"] {
    float: left;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
    width: 96%;
}

.col-1-sm {
    width: 4.33%;
}

.col-2-sm {
    width: 12.66%;
}

.col-3-sm {
    width: 21%;
}

.col-4-sm {
    width: 29.33%;
}

.col-5-sm {
    width: 37.66%;
}

.col-6-sm {
    width: 50%;
}

.col-7-sm {
    width: 54.33%;
}

.col-8-sm {
    width: 62.66%;
}

.col-9-sm {
    width: 71%;
}

.col-10-sm {
    width: 79.33%;
}

.col-11-sm {
    width: 87.66%;
}

.col-12-sm {
    width: 96%;
}

.row::after {
    content: "";
    display: table;
    clear: both;
}

.hidden-sm {
    display: none;
}

@media only screen and (min-width: 33.75em) {  /* 540px */
    .container {
        width: 80%;
    }
}

@media only screen and (min-width: 45em) {  /* 720px */
    .col-1 {
        width: 4.33%;
    }

    .col-2 {
        width: 12.66%;
    }

    .col-3 {
        width: 25%;
    }

    .col-4 {
        width: 33%;
    }

    .col-5 {
        width: 37.66%;
    }

    .col-6 {
        width: 50%;
    }

    .col-7 {
        width: 54.33%;
    }

    .col-8 {
        width: 62.66%;
    }

    .col-9 {
        width: 71%;
    }

    .col-10 {
        width: 79.33%;
    }

    .col-11 {
        width: 87.66%;
    }

    .col-12 {
        width: 96%;
    }

    .hidden-sm {
        display: block;
    }
}



/**************/
/* TYPOGRAPHY */
/**************/

a {
    color: #007b85;
}

h1 {
    font-weight: 200 !important;
}

h2 {
    font-weight: 200 !important;
    font-size: 1.8rem;
}

h3 {
    font-weight: 200 !important;
}

hr.hr {
    border-top: 1px dotted #dddddd;
    margin: 20px 0;
}

mark {
    background: #eff5f5;
    padding: 5px 10px;
}


/*************/
/* INTERFACE */
/*************/

.jump-to-top {
    position: fixed;
    right: 50px;
    bottom: 50px;
    z-index: 1000;
    font-size: 50px;
    display: none;
}

.jump-to-top > a {
    color: #007b85;
}

.jump-to-top > a:hover {
    color: #0d97a2;
}


/***************/
/* SITE HEADER */
/***************/

@media (min-width: 1200px) {
    .site-header {
        max-width: 1140px !important;
    }
}



/* #### */
/* MENU */
/* #### */

img.custom-logo {
    width: 180px;
}

.menu-item > a {
    color: #505050;
}

.menu-item > a:hover {
    text-decoration: underline;
}

@media (max-width:480px) {
    .site-branding {
        text-align: center;
        width: 100%;
        max-width: none !important;
    }

    .site-navigation {
        margin: 20px 0 5px 0;
    }

    .site-navigation ul.menu {
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        justify-content: center;
        align-content: start
    }

    .footer-navigation ul.menu {
        padding: 0;
    }

    .footer-navigation li {
        display: inline-block !important;
        margin: 0 0 10px 0;
    }

    .footer-navigation li a {
        white-space: nowrap;
    }
}

.wpmenucart-contents:hover {
    text-decoration: none !important;
}

.wpmenucart-contents:hover span {
    text-decoration: underline;
}

/**********/
/* TABLES */
/**********/

table th,
table td {
    border: none;
}

table thead:first-child tr:first-child th {
    border: none;
}

table tbody > tr:nth-child(odd) > td,
table tbody > tr:nth-child(odd) > th {
    background: #f9f9f9;
}

table tbody tr:hover > td,
table tbody tr:hover > th {
    background: #f7f7f7;
}



/* ###### */
/* FOOTER */
/* ###### */

.footer-navigation {
    margin: 50px 0 50px 0;
    padding: 50px 0 0 0;
    border-top: 1px dotted #dddddd;
    text-align: center;
}

.footer-navigation li {
    display: inline;
}

.footer-navigation li a {
    padding: 0 15px;
}



/* ######### */
/* ELEMENTOR */
/* ######### */

.elementor-widget-button .elementor-button {
    color: #007b85 !important;
    background: #eff5f5 !important;
    border: 1px solid #007b85 !important;
}

.elementor-widget-button .elementor-button:hover {
    background-color: #d2eaec !important;
}


/************/
/* HOMEPAGE */
/************/

.company-description .elementor-container {
    border: 1px solid #dddddd;
}



/*******************/
/* PRODUCT FILTERS */
/*******************/

.product-filters {
    border: 1px solid #bbbbbb;
    padding: 10px 25px;
    margin: 0 0 25px 0;
}

@media (max-width: 768px) {
    .product-filters {
        padding: 5px 15px;
    }
}

.product-filters h2 {
    font-size: 1.3rem;
}

.product-filters a {
    color: #007b85;
    font-size: 14px;
    padding: 2px 5px;
    display: inline-block;
    background: #eff5f5;
    margin: 0 4px 8px 0;
}

.product-filters a:hover {
    background: #cde4e4;
    text-decoration: none !important;
}

.product-filters a.active {
    border: 1px solid #007b85;
    margin: 0 4px 7px 0;
}

.product-filters a.disabled {
    background: #fafafa;
    color: #bbb;
    margin: 0 4px 7px 0;
}

.product-filters .product-lines {
    padding: 0 10px;
}

.product-filters .product-lines:first-child {
    padding-left: 0;
}

.product-filters .product-lines:last-child {
    padding-right: 0;
}

@media (max-width: 768px) {
    .product-filters .product-lines {
        padding: 0;
    }
}

.show-all-filters {
    padding: 8px 12px;
    color: #007b85;
    display: inline-block;
    margin: 0 0 8px 0;
    border: 1px solid #007b85;
}

.show-all-filters:active,
.show-all-filters:hover {
    color: #007b85;
}

@media (max-width: 768px) {
    .show-all-filters {
        margin-top: 10px;
    }

    .show-all-filters,
    .product-filters-clear {
        width: 100%;
        text-align: center;
    }
}

.product-filters-clear-container {

}

.product-filters-clear {
    float: right;
    background: #fafafa;
    padding: 8px 12px;
    color: #850000;
    background: #f1e3e3;
    border: 1px solid #850000;
}

.product-filters-clear:hover {
    background: #e0bbbb;
    color: #903a3a;
}

.product-filters-image {

}

h1.selected-products {
    font-size: 2rem;
}

h1.selected-products span {
    color: #336699;
    font-style: italic;
    background: #fafafa;
    padding: 0 5px;
}



/* ########### */
/* WOOCOMMERCE */
/* ########### */

.woocommerce .pagination {
    padding-top: 20px !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 2rem;
    padding: 0;
}

.woocommerce ul.products li.product h3 {
    font-size: 1.5rem;
    font-style: italic;
}

.woocommerce ul.products.columns-1 li.product, .woocommerce-page ul.products.columns-1 li.product {
    border-bottom: 1px dotted #dddddd;
}

.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
}

.woocommerce .term-description {
    border: 1px solid #bbbbbb;
    padding: 10px 30px;
    margin: 0 0 25px 0;
}

.woocommerce .term-description h3 {
    font-size: 1.5rem;
    font-style: italic;
}

/* HOMEPAGE - PRODUCTS */

.hp-products .product {
    border: 1px solid #dddddd;
    padding: 10px !important;
    background: #ffffff;
}

.hp-products .product h2 {
    margin: 10px 0 0 0 !important;
}

.hp-products .product img {
    width: 100%;
    padding: 0;
}

.hp-products .product .excerpt {
    margin: 20px 0 0 0 !important;
}

/* PAGINATION */

.pagination {
    text-align: center;
}

.pagination > a {
    color: #007b85;
    background: #eff5f5;
    border: 1px solid #007b85;
    padding: 8px 0px;
    margin: 0 5px 15px 5px;
    width: 40px;
    text-align: center;
    border-radius: 5px;
    display: inline-block;
}

.pagination > a.active {
    background: #d2eaec;
}

.pagination > a:hover {
    background: #d2eaec;
}

/* BUTTONS */

.woocommerce-Button,
.woocommerce-button {
    font-weight: 600 !important;
    font-size: 15px !important;
    color: #007b85 !important;
    background: #eff5f5 !important;
    border: 1px solid #007b85 !important;
    padding: 10px 20px !important;
}

/* ACCOUNT - NAVIGATION */

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.woocommerce-MyAccount-navigation li {
    margin: 0 0 15px 0;
}

.woocommerce-MyAccount-navigation a {
    font-weight: 600 !important;
    font-size: 15px !important;
    color: #007b85 !important;
    background: #eff5f5 !important;
    border: 1px solid #007b85 !important;
    border-radius: 3px;
    width: 100% !important;
    margin: 0 0 10px 0;
    padding: 5px 10px;
}

.woocommerce-MyAccount-navigation li.is-active a {
    background: #D0E1E1 !important;
}

.woocommerce-MyAccount-navigation li a:hover {
    background: #D0E1E1 !important;
    text-decoration: none;
}

/* ACCOUNT - EDIT */

.woocommerce .edit-account fieldset {
    margin-top: 40px;
}

.woocommerce .edit-account button {
    margin: 20px 0 0 0;
}

.woocommerce .edit-account em {
    margin: 8px 0 0 0;
    color: #555555;
    font-size: 13px;
    display: inline-block;
}

/* ADDRESS EDIT */

.woocommerce .woocommerce-address-fields button {
    margin: 20px 0 0 3px;
    color: #007b85 !important;
    background: #eff5f5 !important;
    border: 1px solid #007b85 !important;
    font-weight: 600 !important;
    font-size: 15px !important;
}

.woocommerce .woocommerce-address-fields button:hover {
    text-decoration: none;
    background: #D0E1E1 !important;
}

.woocommerce .woocommerce-EditAccountForm button {
    margin: 30px 0 0 2px !important;
}

/* LINKS */

.woocommerce .product a,
.woocommerce .woocommerce-MyAccount-content a,
.woocommerce .woocommerce-cart-form a {
    color: #007b85 !important;
}

.woocommerce a:hover {
    text-decoration: underline;
}

.woocommerce a.button {
    font-weight: 600 !important;
    font-size: 15px !important;
    color: #007b85 !important;
    background: #eff5f5 !important;
    border: 1px solid #007b85 !important;
    border-radius: 3px;
    margin: 0 0 10px 0;
    padding: 10px 15px !important;
}

.woocommerce a.button:hover {
    text-decoration: none;
    background: #D0E1E1 !important;
}

.woocommerce a.edit {
    font-weight: 600 !important;
    font-size: 15px !important;
    color: #007b85 !important;
    background: #eff5f5 !important;
    border: 1px solid #007b85 !important;
    border-radius: 3px;
    margin: 0 0 10px 0;
    padding: 5px 10px;
}

.woocommerce a.edit:hover {
    text-decoration: none;
    background: #D0E1E1 !important;
}

/* MESSAGES */

.woocommerce-message {
    border-top-color: #007b85 !important;
}

.woocommerce-message::before {
    color: #007b85;
}

/* PRODUCT VIEW */

.woocommerce-product-gallery .flex-control-thumbs {
    margin: 5px 0 0 0 !important;
}

.woocommerce-product-gallery .flex-control-thumbs li {
    margin: 0 5px 0 0 !important;
}

.product .summary .product_meta .posted_in {
    display: none;
}

.product .single_add_to_cart_button {
    font-weight: 600 !important;
    font-size: 15px !important;
    color: #007b85 !important;
    background: #eff5f5 !important;
    border: 1px solid #007b85 !important;
    border-radius: 3px;
    margin: 0 0 10px 0;
    padding: 5px 10px;
}

.product .single_add_to_cart_button:hover {
    text-decoration: none;
    background: #D0E1E1 !important;
}

.woocommerce .quantity .qty {
    padding: 5px 5px;
    font-size: 17px;
}

.woocommerce span.onsale {
    display: none;
}

.woocommerce .product p.price,
.woocommerce .product span.price {
    color: #007b85 !important;
}

/* VARIATIONS */

.woocommerce .product .variations {
    margin: 0 !important;
}

.woocommerce .product .variations .label {
    display: none;
}

.woocommerce .product .variations .value {
    background: none;
}

.woocommerce .product .variations .value .reset_variations {
    display: none !important;
    height: 0 !important;
    font-size: 0 !important;
}

.woocommerce .product .woocommerce-variation-price {
    margin: 0 0 10px 0;
}

.woocommerce .product .variations select {
    display: none !important;
}

.woocommerce .variation-radios input {
    margin: 0 5px 0 0;
}

.woocommerce .variation-radios label {
    font-weight: normal !important;
}

.woocommerce .woocommerce-variation.single_variation {
    display: none !important;
}

/* TABS */

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: #f0f0f0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    font-weight: normal;
    padding: 10px 10px;
}

.woocommerce .product_meta {
    margin: 0 0 10px 0;
}

.woocommerce .product_meta a {
    color: #007b85;
    font-size: 14px;
    padding: 2px 5px;
    display: inline-block;
    background: #eff5f5;
    margin: 0 4px 8px 0;
}

/* CHECKOUT */

.woocommerce button.button,
.woocommerce .checkout-button {
    font-weight: 600 !important;
    font-size: 15px !important;
    color: #007b85 !important;
    background: #eff5f5 !important;
    border: 1px solid #007b85 !important;
    border-radius: 3px;
    margin: 0 0 10px 0;
    padding: 10px 15px;
}

.woocommerce button.button:disabled {
    padding: 10px 15px !important;
}

.woocommerce table.shop_table {
    border: none;
}

.woocommerce table .product-price,
.woocommerce table .product-quantity,
.woocommerce table .product-subtotal {
    text-align: right;
}

.woocommerce .shop_table .coupon {
    display: none;
}

.woocommerce .woocommerce-remove-coupon {
    display: none;
}

.woocommerce .cart-subtotal td,
.woocommerce .cart-discount td,
.woocommerce .order-total td {
    text-align: right;
}

.woocommerce .woocommerce-checkout-review-order-table .product-total {
    text-align: right;
}

.woocommerce .woocommerce-checkout-review-order-table .fee td {
    text-align: right;
}

.woocommerce .woocommerce-checkout-review-order-table .order-total td {
    font-weight: normal;
}

#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment {
    background: #f9f9f9;
}

#add_payment_method #payment div.payment_box, .woocommerce-cart #payment div.payment_box, .woocommerce-checkout #payment div.payment_box {
    background: #f0f0f0;
}

#add_payment_method #payment div.payment_box::before, .woocommerce-cart #payment div.payment_box::before, .woocommerce-checkout #payment div.payment_box::before {
    border-bottom-color: #f0f0f0;
}

.easypack-widget {
    margin: 20px 0 0 0;
    padding: 20px;
    border: 1px solid #ddd;
}

.woocommerce_place_order_button_container {
    margin: 30px 0 0 0;
}

.woocommerce_place_order_button_container button {
    text-align: right;
}

/* CHECKOUT SUMMARY */

.woocommerce-order-overview {
    padding: 0;
}

.woocommerce-thankyou-order-received {
    color: #007b85;
    background: #eff5f5;
    border: 1px solid #007b85;
    padding: 10px 20px;
}

.woocommerce-order-details .woocommerce-table__product-name a {
    color: #007b85;
}



/* ######## */
/* WP FORMS */
/* ######## */

div.wpforms-container-full .wpforms-form .wpforms-field-label {
    font-weight: normal;
}

button.wpforms-submit {
    color: #007b85 !important;
    background: #eff5f5 !important;
    border: 1px solid #007b85 !important;
    border-radius: 3px !important;
    padding: 12px 24px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
}

button.wpforms-submit:hover {
    background-color: #d2eaec !important;
}

div.wpforms-container-full .wpforms-form label.wpforms-error {
    margin: 10px 0 0 0;
}

.wpforms-confirmation-container-full {
    background: #ffffff;
    border: 1px solid #5aab18;
    color: #314e1a;
}


/**********/
/* OTHERS */
/**********/

.account-pending-notification {
    text-align: center;
    width: 50%;
    margin: 0 auto 10px auto;
    padding: 15px 20px;
    border: 1px solid #007b85 !important;
    background: #eff5f5 !important;
}

.account-pending-notification p:last-child {
    margin: 0 0 5px 0;
}