/*
Theme Name: PeterMason Child Theme (Dark)
Theme URI: http://petermason.themerex.net/
Description: PeterMason Dark Theme - A dark mode version with adjusted colors
Author: 100IT Services Ltd
Author URI: https://100itservices.com/
Template: petermason
Version: 1.4.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: petermason
*/

/* ==========================================================================
   COLOR PALETTE
   --bg-dark:       #121212    --bg-light:      #1e1e1e
   --surface:       #2d2d2d    --surface-light: #3d3d3d
   --border:        #404040    --text-primary:  #e0e0e0
   --text-secondary:#a0a0a0    --text-muted:    #707070
   --accent:        #d8ab4c    --accent-blue:   #6c9fd4
   ========================================================================== */


/* ==========================================================================
   1. BASE & BODY
   ========================================================================== */

html, body, .body_wrap, .page_wrap {
    background-color: #121212 !important;
    color: #e0e0e0 !important;
}

.page_content_wrap, .content, .content_container {
    background-color: #121212 !important;
    padding-top: 1.5rem;
}


/* ==========================================================================
   2. TYPOGRAPHY
   ========================================================================== */

h1, h2, h3, h4, h5, h6,
.post_title, .entry-title, .page_title, .widget_title, .sc_item_title,
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .post_title a, .entry-title a {
    color: #ffffff !important;
}

h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover,
.post_title a:hover, .entry-title a:hover {
    color: #d8ab4c !important;
}

p, .post_content, .entry-content, .page_content, article,
.post_content p, .entry-content p {
    color: #e0e0e0 !important;
}

strong, b {
    color: #ffffff !important;
}

.post_meta, .post_meta_item, .post_date, .post_author, .post_categories,
.post_tags, .comment-metadata, small, .text_muted {
    color: #a0a0a0 !important;
}

a {
    color: #d8ab4c !important;
}

a:hover, a:focus {
    color: #d8ab4c !important;
    font-weight: bold;
}


/* ==========================================================================
   3. HEADER & NAVIGATION
   ========================================================================== */

.logo_text, .site-title a {
    color: #ffffff !important;
}

.menu_main_nav, .sc_layouts_menu_nav {
    background-color: transparent !important;
}

.menu_main_nav > li > a, .sc_layouts_menu_nav > li > a {
    color: #e0e0e0 !important;
}

.menu_main_nav > li > a:hover,
.menu_main_nav > li.current-menu-item > a,
.menu_main_nav > li.current-menu-parent > a,
.menu_main_nav > li.current-menu-ancestor > a,
.sc_layouts_menu_nav > li > a:hover,
.sc_layouts_menu_nav > li.current-menu-item > a {
    color: #d8ab4c !important;
}

.menu_main_nav > li ul, .sc_layouts_menu_nav > li ul, .sc_layouts_menu_popup {
    background-color: #2d2d2d !important;
    border-color: #404040 !important;
}

.menu_main_nav > li ul li a, .sc_layouts_menu_nav > li ul li a {
    color: #e0e0e0 !important;
    border-color: #404040 !important;
}

.menu_main_nav > li ul li a:hover,
.menu_main_nav > li ul li.current-menu-item > a,
.sc_layouts_menu_nav > li ul li a:hover {
    background-color: #3d3d3d !important;
    color: #d8ab4c !important;
}

.menu_mobile, .menu_mobile_inner {
    background-color: #1e1e1e !important;
}

.menu_mobile .menu_mobile_nav_area a {
    color: #e0e0e0 !important;
    border-color: #404040 !important;
}

.menu_mobile .menu_mobile_nav_area a:hover {
    color: #d8ab4c !important;
}

.sc_layouts_iconed_text .sc_layouts_item_icon, .menu_mobile_button {
    color: #e0e0e0 !important;
}

.sc_layouts_iconed_text:hover .sc_layouts_item_icon {
    color: #d8ab4c !important;
}

.sc_layouts_row_fixed_on {
    background-color: rgba(0,0,0,.75) !important;
}


/* ==========================================================================
   4. POSTS & CONTENT
   ========================================================================== */

.post_item, article.post_item {
    background-color: #1e1e1e !important;
}

.post_item_single {
    background-color: transparent !important;
}

.post_featured {
    background-color: #2d2d2d !important;
}

.post_header, .entry-header {
    border-color: #404040 !important;
}

.post_meta a, .post_meta_item a {
    color: #a0a0a0 !important;
}

.post_meta a:hover, .post_meta_item a:hover {
    color: #d8ab4c !important;
}

.post_meta_item_categories a, .post_meta_item_tags a, .post_tags a {
    color: #a0a0a0 !important;
    border-color: #404040 !important;
}

.post_meta_item_categories a:hover, .post_meta_item_tags a:hover, .post_tags a:hover {
    color: #d8ab4c !important;
    border-color: #d8ab4c !important;
}

.related_wrap {
    background-color: #1e1e1e !important;
    border-color: #404040 !important;
}

.related_wrap .related_item {
    background-color: #2d2d2d !important;
}


/* ==========================================================================
   5. SIDEBAR & WIDGETS
   ========================================================================== */

.sidebar, .sidebar_inner, .sidebar_wrap,
.widget, .sidebar .widget {
    background-color: #1e1e1e !important;
    border-color: #404040 !important;
}

.widget_title, .widget .widget_title {
    color: #ffffff !important;
    border-color: #404040 !important;
}

.widget ul li, .widget ol li {
    border-color: #404040 !important;
}

.widget ul li a, .widget ol li a {
    color: #e0e0e0 !important;
}

.widget ul li a:hover, .widget ol li a:hover {
    color: #d8ab4c !important;
}

.widget_search .search-field,
.search_form input[type="text"],
.search_form input[type="search"] {
    background-color: #2d2d2d !important;
    border-color: #404040 !important;
    color: #e0e0e0 !important;
}

.widget_search .search-field:focus,
.search_form input[type="text"]:focus,
.search_form input[type="search"]:focus {
    border-color: #d8ab4c !important;
}

.widget_calendar table, .wp-block-calendar table {
    background-color: #2d2d2d !important;
}

.widget_calendar caption, .wp-block-calendar caption {
    color: #ffffff !important;
}

.widget_calendar th, .widget_calendar td,
.wp-block-calendar th, .wp-block-calendar td {
    color: #e0e0e0 !important;
    border-color: #404040 !important;
}

.widget_calendar td a, .wp-block-calendar td a {
    color: #d8ab4c !important;
}

.tagcloud a, .wp-block-tag-cloud a {
    background-color: #2d2d2d !important;
    color: #e0e0e0 !important;
    border-color: #404040 !important;
}

.tagcloud a:hover, .wp-block-tag-cloud a:hover {
    background-color: #d8ab4c !important;
    color: #121212 !important;
    border-color: #d8ab4c !important;
}


/* ==========================================================================
   6. FOOTER
   ========================================================================== */

.footer_wrap, footer, .footer_widgets_wrap, .footer_copyright_wrap {
    background-color: #0d0d0d !important;
    color: #a0a0a0 !important;
}

.footer_wrap .widget_title {
    color: #ffffff !important;
}

.footer_wrap a {
    color: #a0a0a0 !important;
}

.footer_wrap a:hover {
    color: #d8ab4c !important;
}

.footer_copyright_inner {
    border-color: #404040 !important;
    color: #707070 !important;
}


/* ==========================================================================
   7. FORMS & INPUTS
   ========================================================================== */

input[type="text"], input[type="email"], input[type="url"],
input[type="tel"], input[type="number"], input[type="password"],
input[type="search"], select, textarea {
    background-color: #2d2d2d !important;
    border-color: #404040 !important;
    color: #e0e0e0 !important;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus,
input[type="tel"]:focus, input[type="number"]:focus, input[type="password"]:focus,
input[type="search"]:focus, select:focus, textarea:focus {
    border-color: #d8ab4c !important;
    background-color: #3d3d3d !important;
}

::placeholder { color: #707070 !important; opacity: 1; }
:-ms-input-placeholder { color: #707070 !important; }
::-ms-input-placeholder { color: #707070 !important; }

label {
    color: #e0e0e0 !important;
}

.select2-container .select2-selection--single {
    background-color: #2d2d2d !important;
    border-color: #404040 !important;
}

.select2-container .select2-selection--single .select2-selection__rendered {
    color: #e0e0e0 !important;
}

.select2-dropdown {
    background-color: #2d2d2d !important;
    border-color: #404040 !important;
}

.select2-results__option {
    color: #e0e0e0 !important;
}

.select2-results__option--highlighted {
    background-color: #3d3d3d !important;
}


/* ==========================================================================
   8. BUTTONS
   ========================================================================== */

button, input[type="button"], input[type="submit"], input[type="reset"],
.theme_button, .wp-block-button__link, .more-link, .post_readmore {
    background-color: #d8ab4c !important;
    color: #121212 !important;
    border-color: #d8ab4c !important;
}

button:hover, input[type="button"]:hover, input[type="submit"]:hover,
input[type="reset"]:hover, .theme_button:hover, .wp-block-button__link:hover,
.more-link:hover, .post_readmore:hover {
    background-color: #c49a3d !important;
    color: #121212 !important;
    border-color: #c49a3d !important;
}

.wp-block-button.is-style-outline .wp-block-button__link {
    background-color: transparent !important;
    color: #d8ab4c !important;
    border-color: #d8ab4c !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
    background-color: #d8ab4c !important;
    color: #121212 !important;
}


/* ==========================================================================
   9. TABLES
   ========================================================================== */

table {
    background-color: #1e1e1e !important;
    border-color: #404040 !important;
}

table th {
    background-color: #2d2d2d !important;
    color: #ffffff !important;
    border-color: #404040 !important;
}

table td {
    color: #e0e0e0 !important;
    border-color: #404040 !important;
}

table tr:nth-child(even) {
    background-color: #252525 !important;
}

table tr:hover {
    background-color: #3d3d3d !important;
}


/* ==========================================================================
   10. BLOCKQUOTES & CODE
   ========================================================================== */

blockquote, .wp-block-quote {
    background-color: #1e1e1e !important;
    border-left-color: #d8ab4c !important;
    color: #e0e0e0 !important;
}

blockquote:before {
    color: #d8ab4c !important;
}

blockquote p {
    color: #e0e0e0 !important;
}

blockquote cite, blockquote footer, .wp-block-quote cite {
    color: #a0a0a0 !important;
}

pre, code, kbd, samp, .wp-block-code {
    background-color: #2d2d2d !important;
    color: #e0e0e0 !important;
    border-color: #404040 !important;
}

pre code {
    background-color: transparent !important;
}


/* ==========================================================================
   11. COMMENTS
   ========================================================================== */

.comments_wrap, #comments {
    background-color: transparent !important;
}

.comments_list_wrap .comment {
    border-color: #404040 !important;
}

.comment_author, .comment-author,
.comment_author a, .comment-author a {
    color: #ffffff !important;
}

.comment_author a:hover, .comment-author a:hover {
    color: #d8ab4c !important;
}

.comment-content, .comment_text {
    color: #e0e0e0 !important;
}

.comment-reply-link, .comment_reply {
    color: #d8ab4c !important;
}

.comment-reply-link:hover, .comment_reply:hover {
    color: #c49a3d !important;
}

#respond, .comment-respond {
    background-color: #1e1e1e !important;
    border-color: #404040 !important;
}

.comment-form label {
    color: #e0e0e0 !important;
}


/* ==========================================================================
   12. PAGINATION
   ========================================================================== */

.nav-links, .page-links, .pagination {
    color: #e0e0e0 !important;
}

.nav-links a, .page-links a, .pagination a, .page-numbers {
    background-color: #2d2d2d !important;
    color: #e0e0e0 !important;
    border-color: #404040 !important;
}

.nav-links a:hover, .page-links a:hover, .pagination a:hover, .page-numbers:hover,
.page-numbers.current {
    background-color: #d8ab4c !important;
    color: #121212 !important;
    border-color: #d8ab4c !important;
}


/* ==========================================================================
   13. MISC (Scrollbar, Selection, Breadcrumbs, Social, etc.)
   ========================================================================== */

hr, .wp-block-separator {
    border-color: #404040 !important;
    background-color: #404040 !important;
}

figure figcaption, .wp-caption-text {
    background-color: rgba(0, 0, 0, 0.8) !important;
    color: #e0e0e0 !important;
}

.wp-block-gallery figcaption {
    color: #ffffff !important;
}

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #1e1e1e; }
::-webkit-scrollbar-thumb { background: #404040; border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: #505050; }

::selection { background-color: #d8ab4c !important; color: #121212 !important; }
::-moz-selection { background-color: #d8ab4c !important; color: #121212 !important; }

.breadcrumbs, .breadcrumbs_wrap, .breadcrumbs a {
    color: #a0a0a0 !important;
}

.breadcrumbs a:hover {
    color: #d8ab4c !important;
}

.socials_wrap a, .social_item a, .social_items a {
    color: #a0a0a0 !important;
}

.socials_wrap a:hover, .social_item a:hover, .social_items a:hover {
    color: #d8ab4c !important;
}

.social_items, .socials_share .social_items,
.scheme_default .post_meta_item .socials_share .social_items {
    background-color: #2d2d2d !important;
    border-color: #404040 !important;
}

.social_items::before, .scheme_default .post_meta_item .social_items::before {
    background-color: #2d2d2d !important;
    border-color: #404040 !important;
}

.preloader, .page_preloader {
    background-color: #121212 !important;
}

.back_to_top, .scroll_to_top {
    background-color: #2d2d2d !important;
    color: #e0e0e0 !important;
    border-color: #404040 !important;
}

.back_to_top:hover, .scroll_to_top:hover {
    background-color: #d8ab4c !important;
    color: #121212 !important;
}

.author_bio, .author-bio {
    background-color: #1e1e1e !important;
    border-color: #404040 !important;
}

.author_bio .author_name, .author-bio .author_name {
    color: #ffffff !important;
}

.author_bio .author_description, .author-bio .author_description {
    color: #e0e0e0 !important;
}

.search-results .search-highlight {
    background-color: rgba(216, 171, 76, 0.3) !important;
}

.page_title, .sc_layouts_title_caption {
    color: #ffffff !important;
}


/* ==========================================================================
   14. WOOCOMMERCE - GENERAL
   ========================================================================== */

.woocommerce-message, .woocommerce-info {
    background-color: #1e3a5f !important;
    border-color: #6c9fd4 !important;
    color: #e0e0e0 !important;
}

.woocommerce-error {
    background-color: #3d1e1e !important;
    border-color: #d46c6c !important;
    color: #e0e0e0 !important;
}

.woocommerce .products .product,
.woocommerce ul.products li.product {
    background-color: initial !important;
}

.woocommerce ul.products li.product > .post_item.post_layout_thumbs {
    background-color: #222 !important;
}

.woocommerce .products .product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce div.product .product_title,
.product_title.entry-title {
    color: #ffffff !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product .price,
.summary .price, .entry-summary .price {
    color: #ffffff !important;
    font-size: 28px !important;
    font-weight: 700 !important;
}

.woocommerce .products .product .price,
.woocommerce ul.products li.product .price {
    font-size: 2.5rem !important;
}

.scheme_default .woocommerce div.product p.price,
.scheme_default .woocommerce div.product span.price,
.scheme_default .woocommerce span.amount,
.scheme_default .woocommerce-page span.amount {
    color: white !important;
}

.woocommerce .products .product .price del,
.woocommerce ul.products li.product .price del {
    color: #707070 !important;
}

.woocommerce span.onsale {
    background-color: #d46c6c !important;
    color: #ffffff !important;
}

.product_meta, .product_meta span, .product_meta a {
    color: #a0a0a0 !important;
}

.product_meta a:hover {
    color: #d8ab4c !important;
}

.woocommerce-product-details__short-description,
.woocommerce-product-details__short-description p {
    color: #e0e0e0 !important;
}

.summary.entry-summary, .woocommerce div.product .summary {
    color: #e0e0e0 !important;
}


/* ==========================================================================
   15. WOOCOMMERCE - TABS
   ========================================================================== */

.woocommerce div.product .woocommerce-tabs ul.tabs li,
.woocommerce-tabs ul.tabs li {
    background-color: #2d2d2d !important;
    border-color: #404040 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce-tabs ul.tabs li.active {
    background-color: #121212 !important;
    border-bottom-color: #121212 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce-tabs ul.tabs li a {
    color: #e0e0e0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: #ffffff !important;
}

.woocommerce div.product .woocommerce-tabs .panel,
.woocommerce-tabs .panel, #tab-description,
.woocommerce-Tabs-panel, .woocommerce-Tabs-panel--description,
.panel.entry-content, .woocommerce-tabs-wrapper, .wc-tabs-wrapper {
    background-color: #121212 !important;
    color: #e0e0e0 !important;
}

.woocommerce-Tabs-panel em, .woocommerce-Tabs-panel i,
#tab-description em, #tab-description i,
.panel.entry-content em, .panel.entry-content i,
.entry-content em, .entry-content i, .wc-tab em, .wc-tab i {
    color: #ffffff !important;
    font-style: italic;
}

.woocommerce-Tabs-panel h2, .woocommerce-Tabs-panel h3, .woocommerce-Tabs-panel h4,
#tab-description h2, #tab-description h3, #tab-description h4,
.panel.entry-content h2, .panel.entry-content h3,
.woocommerce-Tabs-panel strong, .woocommerce-Tabs-panel b,
#tab-description strong, #tab-description b {
    color: #ffffff !important;
}

.woocommerce-Tabs-panel p, .woocommerce-Tabs-panel div,
#tab-description p, #tab-description div {
    color: #e0e0e0 !important;
}


/* ==========================================================================
   16. WOOCOMMERCE - CART & CHECKOUT
   ========================================================================== */

.woocommerce table.shop_table {
    background-color: #1e1e1e !important;
    border-color: #404040 !important;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
    border-color: #404040 !important;
}

.woocommerce .cart_totals,
.woocommerce-cart .cart-collaterals .cart_totals {
    background-color: #1e1e1e !important;
}

.scheme_default .woocommerce table.shop_table.cart tbody tr:nth-child(2n+1) > th,
.scheme_default table > tbody > tr:nth-child(2n+1) > td {
    background-color: rgba(249,248,248,0.2) !important;
}

.scheme_default .woocommerce table.shop_table.cart tbody tr:nth-child(2n) > th,
.scheme_default table > tbody > tr:nth-child(2n) > td {
    background-color: #232323 !important;
}

.scheme_default .woocommerce-page table.cart td + td span,
.scheme_default .woocommerce table.cart td + td span {
    color: white !important;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
    background-color: #1e1e1e !important;
    border-color: #404040 !important;
}

/* Checkout payment section */
.scheme_default .woocommerce-checkout #payment {
    background-color: #2d2d2d !important;
}

#payment, .woocommerce-checkout #payment, #payment .payment_methods {
    background-color: #2d2d2d !important;
}

.scheme_default #add_payment_method #payment div.payment_box,
.scheme_default .woocommerce-cart #payment div.payment_box,
.scheme_default .woocommerce-checkout #payment div.payment_box {
    color: #e0e0e0;
    background-color: #1e1e1e !important;
}

.scheme_default #add_payment_method #payment div.payment_box::before,
.scheme_default .woocommerce-cart #payment div.payment_box::before,
.scheme_default .woocommerce-checkout #payment div.payment_box::before {
    border-color: transparent transparent #1e1e1e !important;
}

/* Stripe container */
.wc_payment_method.payment_method_stripe,
.payment_method_stripe,
#payment .payment_method_stripe,
.woocommerce-checkout-payment .wc_payment_method,
#payment .wc_payment_methods .wc_payment_method {
    background-color: #1e1e1e !important;
}

.wc-stripe-elements-field, .wc-stripe-payment-element,
.stripe-card-group, #wc-stripe-card-element, #wc-stripe-payment-element,
.wc_payment_method .payment_box, #payment .payment_box {
    background-color: #1e1e1e !important;
    border-radius: 4px;
}

.payment_box.payment_method_stripe,
div.payment_box.payment_method_stripe {
    background-color: #1e1e1e !important;
    color: #e0e0e0 !important;
}

.wc-stripe-payment-element label,
.payment_method_stripe label,
#payment label {
    color: #d8ab4c !important;
}

#payment .wc_payment_methods label {
    color: #e0e0e0 !important;
}

.payment_box p {
    color: #a0a0a0 !important;
}

/* Trial notice */
.wcplm-trial-notice, div.wcplm-trial-notice {
    background-color: #2d2d2d !important;
    border: 1px solid #d8ab4c !important;
}

.wcplm-trial-notice h4 {
    color: #d8ab4c !important;
}

.wcplm-trial-notice p {
    color: #e0e0e0 !important;
}


/* ==========================================================================
   17. WOOCOMMERCE - BUTTONS
   ========================================================================== */

.woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce #respond input#submit {
    background-color: #d8ab4c !important;
    color: white !important;
}

.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce input.button:hover, .woocommerce #respond input#submit:hover {
    background-color: #c49a3d !important;
    color: #121212 !important;
}

#btn-buy, .woocommerce .woocommerce-message .button,
.woocommerce ul.products li.product .button,
.woocommerce div.product form.cart .button {
    padding: 1.5rem;
    letter-spacing: 0.15em;
    font-size: 1.25rem !important;
}

.single_add_to_cart_button, .woocommerce .single_add_to_cart_button,
button.single_add_to_cart_button, .single-product .cart button[type="submit"],
.single-product button.button.alt {
    background-color: #2d2d2d !important;
    color: #ffffff !important;
    border: 2px solid #d8ab4c !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 15px 30px !important;
}

.single_add_to_cart_button:hover, .woocommerce .single_add_to_cart_button:hover,
button.single_add_to_cart_button:hover, .single-product .cart button[type="submit"]:hover,
.single-product button.button.alt:hover {
    background-color: #d8ab4c !important;
    color: #121212 !important;
    border-color: #d8ab4c !important;
}

.single-product ul.products li.product .post_data .add_to_cart_button {
    padding: 0 !important;
}

.woocommerce a.added_to_cart, .woocommerce-page a.added_to_cart {
    padding: 0.75em 0 0 1em !important;
}


/* ==========================================================================
   18. WOOCOMMERCE - QUANTITY INPUTS
   ========================================================================== */

.woocommerce-cart .quantity,
.woocommerce table.cart .quantity {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    width: auto !important;
    margin: 0 auto !important;
}

.woocommerce .quantity input.qty,
.woocommerce-cart .quantity input.qty,
.woocommerce table.cart .quantity input.qty {
    order: 2 !important;
    width: 50px !important;
    height: 38px !important;
    text-align: center !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background-color: #333 !important;
    border: 1px solid #555 !important;
    border-radius: 0 !important;
    -webkit-appearance: none !important;
    -moz-appearance: textfield !important;
    margin: 0 !important;
    padding: 0 5px !important;
    opacity: 1 !important;
}

.woocommerce-cart .quantity input.qty:focus,
.woocommerce table.cart .quantity input.qty:focus {
    outline: 2px solid #d8ab4c !important;
    outline-offset: -2px !important;
    border-color: #d8ab4c !important;
    background-color: #444 !important;
}

.woocommerce .quantity input.qty::-webkit-inner-spin-button,
.woocommerce .quantity input.qty::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.woocommerce .quantity .q_dec,
.woocommerce .quantity .q_inc {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 38px !important;
    background-color: #444 !important;
    color: #fff !important;
    border: 1px solid #555 !important;
    cursor: pointer !important;
    font-size: 18px !important;
    font-weight: bold !important;
    user-select: none !important;
    transition: all 0.2s ease !important;
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
}

.woocommerce .quantity .q_dec {
    order: 1 !important;
    border-radius: 4px 0 0 4px !important;
    border-right: none !important;
}

.woocommerce .quantity .q_inc {
    order: 3 !important;
    border-radius: 0 4px 4px 0 !important;
    border-left: none !important;
}

.woocommerce .quantity .q_dec:hover,
.woocommerce .quantity .q_inc:hover {
    background-color: #d8ab4c !important;
    color: #121212 !important;
}

.woocommerce .quantity .q_dec:active,
.woocommerce .quantity .q_inc:active {
    transform: scale(0.95) !important;
    background-color: #c49a3d !important;
}

/* Clear button pseudo-elements from parent theme */
.woocommerce-cart .woocommerce-cart-form div.quantity span.q_inc::before,
.woocommerce-cart .woocommerce-cart-form div.quantity span.q_dec::before,
.woocommerce div.product form.cart div.quantity span.q_inc::before,
.woocommerce div.product form.cart div.quantity span.q_dec::before,
.woocommerce-page div.product form.cart div.quantity span.q_inc::before,
.woocommerce-page div.product form.cart div.quantity span.q_dec::before {
    content: '' !important;
}

.woocommerce-cart table.cart td.product-quantity,
.woocommerce table.cart td.product-quantity {
    text-align: center !important;
    vertical-align: middle !important;
    min-width: 150px !important;
}


/* ==========================================================================
   19. WOOCOMMERCE - PRODUCT PAGE LAYOUT
   ========================================================================== */

.sc_layouts_row.sc_layouts_row_fixed_on .sc_layouts_logo img {
    max-height: 75px !important;
}

.sc_layouts_row_type_compact .sc_layouts_logo img {
    padding-top: 1rem !important;
}

.related.products h2 {
    text-align: left !important;
}

.single-product ul.products li.product .post_data .post_header h3,
.single-product ul.products li.product .post_data .post_header .woocommerce-loop-product__title {
    font-size: 1.5rem;
}

.sc_icons.sc_align_center .sc_icons_item_description {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100%;
}


/* ==========================================================================
   20. WOOCOMMERCE - PRODUCT GRID (RESPONSIVE FIX)
   ========================================================================== */

body.woocommerce ul.products li.product:not(.product-category) .post_data,
.woocommerce-page ul.products li.product:not(.product-category) .post_data {
    padding: 1rem !important;
    text-align: center;
    overflow: visible;
}

/* Product card - FLEXBOX LAYOUT for proper height distribution */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
}

.post_item.post_layout_thumbs {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.post_item.post_layout_thumbs .post_data {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    padding-bottom: 1rem !important;
}

/* Product title area - allow it to grow */
.post_item.post_layout_thumbs .post_header {
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    min-height: auto !important;
}

/* Product title - allow wrapping */
.post_item.post_layout_thumbs .post_header h3,
.post_item.post_layout_thumbs .post_header .woocommerce-loop-product__title {
    margin-bottom: 0.5rem !important;
    line-height: 1.3 !important;
    overflow: visible !important;
    text-overflow: unset !important;
    white-space: normal !important;
    display: block !important;
    -webkit-line-clamp: unset !important;
}

/* Price - stays at bottom of header area */
.post_item.post_layout_thumbs .price {
    margin-top: auto !important;
    padding: 0.75rem 0 !important;
}

/* BUY NOW button - remove fixed heights, use auto */
.post_item.post_layout_thumbs .add_to_cart_button,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button {
    min-height: auto !important;
    max-height: none !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: auto !important;
    margin-bottom: 0.5rem !important;
    padding: 1rem 1.5rem !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* View cart link */
.post_item.post_layout_thumbs .added_to_cart {
    display: block;
    margin-top: 0.5rem !important;
    text-align: center;
}


    .woocommerce ul.products li.product:not(.product-category) .post_data {
        height: 14em !important;
    }


/* ==========================================================================
   21. CONTACTS
   ========================================================================== */
   
.widget_contacts {
  padding: 2rem;
}


/* ==========================================================================
   22. WooCommerce bakery overrides
   ========================================================================== */
   
.vc_custom_1482224342343 {
  background-color: rgba(20,20,20,.8) !important;
}


/* Override WPBakery hardcoded white background in parent theme layouts */
.vc_custom_1482224342343 {
    background-color: transparent !important;
}


/* ==========================================================================
   23. RESPONSIVE BREAKPOINTS
   ========================================================================== */

/* Desktop - 4 columns */
.woocommerce ul.products.columns-4 li.product,
.woocommerce ul.products li.product.column-1_4,
.woocommerce .related.products ul.products li.product,
.woocommerce .upsells.products ul.products li.product {
    width: calc(25% - 1rem) !important;
    margin-right: 1rem !important;
}

/* Large Tablet (810px - 1024px) - 3 columns */
@media screen and (max-width: 1024px) and (min-width: 811px) {
    .woocommerce ul.products.columns-4 li.product,
    .woocommerce ul.products li.product.column-1_4,
    .woocommerce .related.products ul.products li.product,
    .woocommerce .upsells.products ul.products li.product {
        width: calc(33.333% - 1rem) !important;
        margin-right: 1rem !important;
    }
    
    .woocommerce .products .product .price,
    .woocommerce ul.products li.product .price {
        font-size: 2rem !important;
    }
    
    .woocommerce ul.products li.product .button {
        font-size: 1rem !important;
        padding: 0.875rem 1rem !important;
    }
    
    .woocommerce ul.products li.product:not(.product-category) .post_data {
        height: 11em !important;
    }
}

/* Tablet (600px - 810px) - 2 columns */
@media screen and (max-width: 810px) and (min-width: 601px) {
    .woocommerce ul.products.columns-4 li.product,
    .woocommerce ul.products li.product.column-1_4,
    .woocommerce .related.products ul.products li.product,
    .woocommerce .upsells.products ul.products li.product {
        width: calc(50% - 0.75rem) !important;
        margin-right: 0.75rem !important;
    }
    
    .woocommerce .products .product .price,
    .woocommerce ul.products li.product .price {
        font-size: 1.75rem !important;
    }
    
    .woocommerce ul.products li.product .button {
        font-size: 0.9rem !important;
        padding: 0.75rem 0.875rem !important;
        letter-spacing: 0.1em !important;
    }
    
    .post_item.post_layout_thumbs .post_header h3,
    .post_item.post_layout_thumbs .post_header .woocommerce-loop-product__title {
        font-size: 1.5rem !important;
    }
    
    .woocommerce ul.products li.product:not(.product-category) .post_data {
        height: 11em !important;
    }
    
}

/* Mobile (max 600px) - 1 column */
@media screen and (max-width: 600px) {
    .woocommerce ul.products.columns-4 li.product,
    .woocommerce ul.products li.product.column-1_4,
    .woocommerce .related.products ul.products li.product,
    .woocommerce .upsells.products ul.products li.product {
        width: 100% !important;
        margin-right: 0 !important;
        margin-bottom: 1.5rem !important;
    }
    
    .woocommerce .products .product .price,
    .woocommerce ul.products li.product .price {
        font-size: 2rem !important;
    }
    
    .woocommerce ul.products li.product .button {
        font-size: 1rem !important;
        padding: 1rem 1.5rem !important;
    }
    
    .post_item.post_layout_thumbs .post_header h3,
    .post_item.post_layout_thumbs .post_header .woocommerce-loop-product__title {
        font-size: 1.5rem !important;
    }
    
    .woocommerce ul.products li.product:not(.product-category) .post_data {
        height: 10em !important;
    }
    
}

/* Mobile - Quantity inputs */
@media screen and (max-width: 768px) {
    .woocommerce-cart .quantity,
    .woocommerce table.cart .quantity {
        width: 100px !important;
    }
    
    .woocommerce-cart .quantity input.qty,
    .woocommerce table.cart .quantity input.qty {
        width: 40px !important;
        font-size: 14px !important;
    }
    
    .woocommerce .quantity .q_dec,
    .woocommerce .quantity .q_inc {
        width: 28px !important;
        font-size: 16px !important;
    }
    
    .woocommerce ul.products li.product .button {
        font-size: 2rem !important;
    }
}

/* Mobile (max 480px) - 1 column */
@media screen and (max-width: 480px) {

    .post_item.post_layout_thumbs .post_header h3,
    .post_item.post_layout_thumbs .post_header .woocommerce-loop-product__title {
        font-size: 2rem !important;
    }
    
    
    .woocommerce ul.products li.product .button {
        font-size: 2rem !important;
    }

}



.vc_custom_1482224342343, 
.sc_layouts_row_type_compact, 
.sc_layouts_row_delimiter, 
.sc_layouts_row_fixed,
.top_panel_custom, 
.single-product .sc_layouts_row {
  background-color: rgba(0,0,0,.2) !important;
}

.sc_layouts_row_type_compact.sc_layouts_row_fixed_on,
.sc_layouts_row_type_normal.sc_layouts_row_fixed_on {
  padding-top: 0;
  padding-bottom: 0;
  background-color: rgba(22,22,22,0.8) !important;
}

.vc_custom_1482224342343 {
  background-color: #121212 !important;
}


.scheme_default .woocommerce .order_details.woocommerce-thankyou-order-details {
  color: #e4e4e4;
  background-color: black !important;
}

.scheme_default .select2-results {
  background: black !important;
}

.select2-container--default .select2-results__option[aria-selected="true"], .select2-container--default .select2-results__option[data-selected="true"] {
  background-color: #777;
}


/* RANK MATH */

#rank-math-analytics-stats {
    background-color: black !important;
}
