/*
Theme Name: Excellerate Tech Bootstrap
Theme URI: N/A
Author: WC Bessinger @ Silverback Dev Studios (Pty) Ltd
Author URI: https://silverbackdev.co.za/
Description: This is a basic Bootstrap based theme created for a custom vendor based project and employs multisite.
Version: 1.0
Requires at least: 5.0
Tested up to: 5.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: extech
*/

/* pulsing animation for new orders badge */
.animate__pulse {
    -webkit-animation-name: animate__pulse;
    animation-name: animate__pulse;
}

#prod_list_no_prods_text {
  max-width: 96%;
  margin: 0 auto 20px;
}

@-webkit-keyframes animate__pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes animate__pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

/* infinite animation */
.animate__infinite {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
}

/* animate animated */
.animate__animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

img.prod_img.border {
    width: 100px;
}

img#logoTop {
    max-width: 360px;
    width: 220px;
}

img.card-img-top {
    aspect-ratio: 1;
    object-fit: contain;
}

.cursor-pointer {
    cursor: pointer;
}

.cursor-not-allowed {
    cursor: not-allowed;
}

.product-img-cont {
    border: 1px solid #ccc;
    overflow: hidden;
    border-radius: 5px;
}


h2.woocommerce-loop-product__title {
    text-align: center;
    line-height: 1.5;
    font-size: 1.4em;
    height: 120px;
    padding-top: 10px;
}

input#coupon_code {
    width: 180px;
}

ul.wc_payment_methods.payment_methods.methods label {
    font-weight: 700;
}

.woocommerce a.remove {
    position: relative;
    left: 32px;
    line-height: 0.9;
    width: 1.1em;
    height: 1.1em;
}

div#order_line_items_modal_overlay {
    width: 100vw;
    height: 100vh;
    background: #00000094;
    left: 0;
    top: 0;
}

div#order_line_items_modal {
    left: 25vw;
}

span#new_orders {
    text-align: center;
    line-height: 0.9;
    right: -10px;
    top: -3px;
}

span.shop-loop-price.d-block {
    text-align: center;
    font-size: 1.2em;
    font-weight: 500;
    color: #666;
    padding-bottom: 2em;
}

.prod_table_th {
    color: var(--bs-primary);
    text-decoration: underline;
    cursor: pointer;
}

a#remove_img {
    top: 45px;
    left: 30px;
    border-radius: 50%;
    line-height: 1.5;
    padding: 0;
    width: 30px;
    height: 30px;
    z-index: 100;
}

div#contact-bar-top {
    font-size: 0.85rem !important;
}

.font-italic {
    font-style: italic;
}

div#dashboard-cont {
    margin-bottom: -2.9em;
}

div#four_oh_four {
    min-height: 66vh;
}

a#navbar_register {
    font-weight: 500;
}

div#how_it_works i {
    font-size: 7em;
}

div#landing p {
    font-size: 1.3em;
}

.h1,
h1 {
    font-size: 3.5rem;
}

div#intro_banner_text {
    border-radius: 10px;
}

div#intro_banner_text>h1 {
    line-height: 1.5em;
}

#intro_banner_register_btn,
#hiw_register_btn {
    font-size: 1.7rem;
    font-weight: 500;
}

.landing-icon-div.m-auto {
    border: 8px solid var(--bs-gray);
    border-radius: 10%;
    box-sizing: content-box;
}

div#intro_banner {
    min-height: 600px;
    border-bottom: 5px solid #212529;
}

div#shop_loop_cont {
    min-height: 100vh;
}

a.added_to_cart.wc-forward {
    position: absolute;
    bottom: -15px;
    left: 13px;
    width: 92%;
    z-index: 100;
    background: #00800024;
    text-align: center;
    padding: 0.4em;
    border-radius: 0.3em;
    color: #333;
    text-decoration: none;
    text-transform: uppercase;
    border: 1px solid green;
    font-weight: 500;
}

tr.woocommerce-cart-form__cart-item.cart_item img {
    width: 100px;
}

div#what_we_do p {
    font-size: 2rem;
}

.coupon {
    display: none;
}

h1.woocommerce-cart-title.page-title.mb-5.pb-5.border-bottom.border-2 {
    font-size: 40px;
}

.product-img-cont img {
    width: 100%;
    height: auto;
}

/* ************** */
/* RESPONSIVENESS */
/* ************** */

/* 1440 */
@media screen and (max-width: 1440px) {
    h1.text-light.text-opacity-75 {
        font-size: 2.5em !important;
    }
}

/* 1366 */
@media screen and (max-width: 1366px) {}

/* 1280 */
@media screen and (max-width: 1280px) {
    h1.text-light.text-opacity-75 {
        font-size: 2.2em !important;
    }
}

/* 1024 */
@media screen and (max-width: 1024px) {
    h1.text-light.text-opacity-75 {
        font-size: 1.8em !important;
    }

    div#what_we_do p {
        font-size: 1.5rem;
    }

    #hiw_register_btn {
        font-size: 1.5rem;
        font-weight: 500;
    }

    .h1,
    h1 {
        font-size: 2.5rem;
    }

    .h3,
    h3 {
        font-size: calc(1.1rem + .6vw);
    }

    table#table-sales,
    div#sales-overview,
    .row.orders,
    .row.qr-code.mb-5.pb-5,
    form#acc-update-shop,
    form#acc-update-shop input,
    .row.users,
    div#new-user-form-cont,
    div#new-user-form-cont input, .row.products, .row.products input, tbody#prod_list_body a {
        font-size: 14px;
    }

}

/* 991 */
@media screen and (max-width: 991px) {

    .navbar-toggler {
        background-color: #275ea0;
    }

    div#what_we_do {
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }

    a#hiw_register_btn {
        width: 100% !important;
    }

}

/* 800 */
@media screen and (max-width: 800px) {}

/* 768 */
@media screen and (max-width: 768px) {
    .actions {
        display: none !important;
    }
}

/* 767 */
@media screen and (max-width: 767px) {

    .product-img-cont img {
        width: 100%;
        height: auto;
    }
    
    h2.woocommerce-loop-product__title {
        font-size: 2em;
        height: 60px;
    }
    
    span.shop-loop-price.d-block {
        font-size: 2em;
        padding-bottom: 1em;
    }
    
    a.btn.btn-primary.w-100.fw-medium.fs-6.text-uppercase.shadow-sm.button.product_type_simple.add_to_cart_button.ajax_add_to_cart {
        font-size: 1.6em !important;
    }
    
    .row.products > div {
        padding-bottom: 4em;
        padding-left: 0;
        padding-right: 0;
        left: 12px;
    }

    a.added_to_cart.wc-forward {
        position: absolute;
        bottom: 260px;
    }
}

/* 575 */
@media screen and (max-width: 575px) {

    .woocommerce a.remove{
        left: 0;
    }

    .col-8 {
        flex: 0 0 100%;
        max-width: 100%;
        margin-left: 0;
    }

    .col-6 {
        flex: 0 0 100%;
        max-width: 100%;
        width: 100%;
        margin-left: 0;
    }

    .col-4 {
        flex: 0 0 100%;
        max-width: 100%;
        margin-left: 0;
    }

    .col {
        flex: 0 0 100%;
        max-width: 100%;
        margin-left: 0;
    }

    div#hiw_register_cont a {
        width: 100% !important;
    }

    .h3,
    h3 {
        font-size: calc(1.7rem + .6vw);
    }

    #how_it_works>div>div>div {
        margin-bottom: 3em;
    }

    #how_it_works>div>div>div:last-child {
        margin-bottom: initial;
    }

    div#intro_banner_text {
        margin-bottom: 3em;
        text-align: center;
        font-size: 0.8rem;
    }

    div#contact-bar-top>.row>.col {
        max-width: 50%;
        flex: 0 0 50%;
    }
}

/* 540 */
@media screen and (max-width: 540px) {}

/* 425 */
@media screen and (max-width: 425px) {}

/* 375 */
@media screen and (max-width: 375px) {}

/* 320 */
@media screen and (max-width: 320px) {}