/* =====================================================
   ABSORB - Global Brand CSS (Phase 2)
   Applies the approved ABSORB Design System globally on
   Shoptimizer + WooCommerce + Elementor using the tokens
   in assets/absorb-tokens.css. No layout/template edits.
   ===================================================== */
:root{
  --wp--preset--font-family--inter: var(--absorb-font-sans);
  --wp--preset--font-family--cardo: var(--absorb-font-sans);
}
body{ font-family: var(--absorb-font-sans); color: var(--absorb-ink); background-color: var(--absorb-offwhite); }
h1,h2,h3,h4,h5,h6,.entry-title,.product_title,.wp-block-heading,.elementor-heading-title{ font-family: var(--absorb-font-sans); color: var(--absorb-ink); }
a{ color: var(--absorb-emerald); transition: color var(--absorb-transition); }
a:hover,a:focus{ color: var(--absorb-emerald-600); }
.button,button.button,input[type='submit'],input[type='button'],.wp-block-button__link,.wp-element-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.single_add_to_cart_button,.checkout-button,.added_to_cart,.wc-block-components-button,.elementor-button{ font-family: var(--absorb-font-sans) !important; font-weight: var(--absorb-weight-semibold) !important; background-color: var(--absorb-emerald) !important; color:#ffffff !important; border:1.5px solid var(--absorb-emerald) !important; border-radius: var(--absorb-radius) !important; transition: background-color var(--absorb-transition), border-color var(--absorb-transition) !important; box-shadow:none !important; text-transform:none !important; }
.button:hover,button.button:hover,input[type='submit']:hover,.wp-block-button__link:hover,.wp-element-button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.single_add_to_cart_button:hover,.checkout-button:hover,.wc-block-components-button:hover,.elementor-button:hover{ background-color: var(--absorb-emerald-600) !important; border-color: var(--absorb-emerald-600) !important; color:#ffffff !important; }
.button:focus-visible,button:focus-visible,input[type='submit']:focus-visible,.wp-block-button__link:focus-visible,.wc-block-components-button:focus-visible,.elementor-button:focus-visible,a:focus-visible{ outline:2px solid var(--absorb-emerald) !important; outline-offset:2px !important; }
input[type='text'],input[type='email'],input[type='tel'],input[type='password'],input[type='search'],input[type='number'],input[type='url'],input[type='date'],textarea,select,.select2-container .select2-selection,.wc-block-components-text-input input,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{ font-family: var(--absorb-font-sans); color: var(--absorb-ink); background:#ffffff; border:1px solid var(--absorb-mist) !important; border-radius: var(--absorb-radius) !important; }
input:focus,textarea:focus,select:focus,.wc-block-components-text-input input:focus,.woocommerce form .form-row input.input-text:focus{ border-color: var(--absorb-emerald) !important; box-shadow:0 0 0 3px rgba(11,92,68,0.12) !important; outline:none !important; }
.widget_product_search input[type='search']{ border:1px solid var(--absorb-mist) !important; border-radius: var(--absorb-radius) !important; }
.woocommerce-Price-amount,.price .amount,.wc-block-components-product-price,.wc-block-formatted-money-amount{ font-family: var(--absorb-font-mono); color: var(--absorb-ink); }
.price del,.price del .amount,.wc-block-components-product-price del{ color: var(--absorb-slate); font-family: var(--absorb-font-mono); }
.price ins,.price ins .amount{ text-decoration:none; color: var(--absorb-ink); }
.woocommerce ul.products li.product .woocommerce-loop-product__title,.wc-block-grid__product-title{ font-family: var(--absorb-font-sans); color: var(--absorb-ink); }
.onsale,span.onsale,.wc-block-components-product-sale-badge{ background-color: var(--absorb-emerald) !important; color:#ffffff !important; border-radius: var(--absorb-radius-sm) !important; font-family: var(--absorb-font-mono) !important; font-weight: var(--absorb-weight-medium) !important; text-transform:none !important; }
.woocommerce-breadcrumb{ color: var(--absorb-slate); font-size:13px; }
.woocommerce-breadcrumb a{ color: var(--absorb-slate); }
.woocommerce-breadcrumb a:hover{ color: var(--absorb-emerald); }
.woocommerce-message{ border-top-color: var(--absorb-emerald); }
.woocommerce-info{ border-top-color: var(--absorb-info); }
.woocommerce-error{ border-top-color: var(--absorb-error); }
.woocommerce-message::before{ color: var(--absorb-emerald); }
.woocommerce-info::before{ color: var(--absorb-info); }
.wc-block-components-notice-banner.is-success{ border-color: var(--absorb-emerald); }
.wc-block-components-notice-banner.is-error{ border-color: var(--absorb-error); }
.wc-block-components-notice-banner.is-info{ border-color: var(--absorb-info); }
.quantity input.qty{ border:1px solid var(--absorb-mist) !important; border-radius: var(--absorb-radius-sm) !important; }
.woocommerce-tabs ul.tabs li a{ color: var(--absorb-slate); font-family: var(--absorb-font-sans); }
.woocommerce-tabs ul.tabs li.active a,.woocommerce-tabs ul.tabs li a:hover{ color: var(--absorb-emerald); }
.woocommerce-tabs ul.tabs li.active{ border-bottom:2px solid var(--absorb-emerald); }
.site-header a:hover{ color: var(--absorb-emerald); }
.site-footer a:hover{ color: var(--absorb-emerald-bright); }
/* Shoptimizer archive sale badge (theme accent -> emerald) */
.sale-item,.product-label,.product-label.type-bubble,span.sale-item.product-label{ background-color: var(--absorb-emerald) !important; color:#ffffff !important; border-radius: var(--absorb-radius-sm) !important; font-family: var(--absorb-font-mono) !important; font-weight: var(--absorb-weight-medium) !important; }

/* Base typography + background enforced above theme (Kirki) defaults */
html body{ font-family: var(--absorb-font-sans) !important; background-color: var(--absorb-offwhite) !important; }
html body h1,html body h2,html body h3,html body h4,html body h5,html body h6,html body .entry-title,html body .product_title,html body .woocommerce-loop-product__title,html body .elementor-heading-title,html body .wp-block-heading,html body .site-title{ font-family: var(--absorb-font-sans) !important; }

/* ===== Phase 2 refinements ===== */
/* Full charcoal ABSORB footer */
.site-footer{ background-color: var(--absorb-charcoal) !important; color: var(--absorb-offwhite) !important; }
.site-footer h1,.site-footer h2,.site-footer h3,.site-footer h4,.site-footer h5,.site-footer h6,.site-footer .widget-title,.site-footer .gamma{ color: var(--absorb-offwhite) !important; }
.site-footer p,.site-footer li,.site-footer span,.site-footer td{ color: var(--absorb-offwhite); }
.site-footer a{ color: var(--absorb-emerald-bright) !important; }
.site-footer a:hover{ color:#ffffff !important; }
/* Bronze product star ratings */
.star-rating::before,.star-rating span::before,.star-rating,.woocommerce .star-rating span::before,p.stars a::before{ color: var(--absorb-bronze) !important; }
/* Below-header ABSORB trust bar (restrained) */
.header-widget-region{ background: var(--absorb-cloud) !important; border-bottom:1px solid var(--absorb-mist) !important; }
.header-widget-region .widget{ margin:0 !important; }
.absorb-trustbar{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:0; margin:0; padding:2px 0; font-family: var(--absorb-font-mono); font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color: var(--absorb-graphite); }
.absorb-trustbar span{ padding:4px 20px; position:relative; }
.absorb-trustbar span + span::before{ content:''; position:absolute; left:0; top:50%; transform:translateY(-50%); width:4px; height:4px; border-radius:50%; background: var(--absorb-emerald); }
@media (max-width:640px){ .absorb-trustbar{ font-size:10px; } .absorb-trustbar span{ padding:3px 11px; } }