/*
Theme Name:   Alpina Motorsport
Theme URI:    https://alpinamotorsports.com
Description:  Alpina Motorsports — race-inspired child theme for Astra
Author:       Alpina Motorsports
Template:     astra
Version:      1.0.0
*/

/* ─── Google Fonts ─────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,400;0,600;0,700;0,800;0,900;1,700&family=Barlow:wght@300;400;500;600&display=swap');

/* ─── Astra Global Color Overrides ─────────────────────── */
:root {
  --ast-global-color-0: #E8000B;
  --ast-global-color-1: #FF1A24;
  --ast-global-color-2: #111111;
  --ast-global-color-3: #FFFFFF;
  --ast-global-color-4: #111111;
  --ast-global-color-5: #FFFFFF;
  --ast-global-color-6: #1A1A1A;
  --ast-global-color-7: #999999;
  --ast-global-color-8: #000000;

  /* Astra internal vars */
  --ast-wc-container-head-bg-color: #111111;
  --ast-code-block-background:      #1C1C1C;
  --ast-comment-inputs-background:  #1C1C1C;
  --ast-title-layout-bg:            #0D0D0D;
  --ast-widget-bg-color:            #1A1A1A;
  --ast-global-dark-bg-style:       #111111;
  --ast-global-dark-lfs:            #1A1A1A;
  --ast-search-border-color:        #333333;
  --ast-lifter-hover-bg:            #1C1C1C;
}

/* ─── Design Tokens ─────────────────────────────────────── */
:root {
  --ms-bg:           #111111;
  --ms-bg-deep:      #0D0D0D;
  --ms-bg-card:      #1A1A1A;
  --ms-bg-elevated:  #222222;
  --ms-text:         #FFFFFF;
  --ms-text-muted:   #AAAAAA;
  --ms-text-subtle:  #666666;
  --ms-red:          #E8000B;
  --ms-red-hot:      #FF1A24;
  --ms-stripe:       #E8000B;
  --ms-border:       #2A2A2A;
  --ms-border-hot:   #E8000B;
  --ms-font-display: 'Barlow Condensed', 'Arial Narrow', sans-serif;
  --ms-font-body:    'Barlow', -apple-system, sans-serif;
  --ms-radius:       2px;
  --ms-transition:   0.15s ease;
}

/* ─── Astra Global Color Palette (DB level) ─────────────── */

/* ─── Base ──────────────────────────────────────────────── */
html,
body,
.ast-page-builder-template {
  background-color: var(--ms-bg) !important;
  color: var(--ms-text) !important;
}

body {
  font-family: var(--ms-font-body) !important;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
}

/* ─── Typography ─────────────────────────────────────────── */
h1, h2, h3, h4, h5, h6,
.entry-title,
.page-title,
.woocommerce-loop-product__title,
.product_title,
.woocommerce-page h1,
.woocommerce-page h2,
.woocommerce-page h3 {
  font-family: var(--ms-font-display) !important;
  color: var(--ms-text) !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

p, li, td, th, label, input, select, textarea, span {
  font-family: var(--ms-font-body) !important;
}

/* ─── Links ──────────────────────────────────────────────── */
a {
  color: var(--ms-red);
  transition: color var(--ms-transition);
}

a:hover, a:focus {
  color: var(--ms-red-hot);
  text-decoration: none;
}

/* ─── Racing Stripe — top of page ───────────────────────── */
body::before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--ms-red);
  z-index: 9999;
}

/* ─── Header ─────────────────────────────────────────────── */
#masthead,
.site-header,
.ast-primary-header-bar,
.ast-header-break-point .ast-primary-header-bar,
.ast-desktop .ast-primary-header-bar {
  background-color: var(--ms-bg-deep) !important;
  border-bottom: 2px solid var(--ms-red) !important;
  box-shadow: 0 2px 20px rgba(232,0,11,0.15) !important;
}

.ast-above-header-bar,
.ast-above-header {
  background-color: var(--ms-bg-deep) !important;
  border-bottom: 1px solid var(--ms-border) !important;
}

/* Logo */
.site-title a,
.ast-site-identity .site-title a {
  color: var(--ms-text) !important;
  font-family: var(--ms-font-display) !important;
  font-weight: 900 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* Cart icon */
.ast-site-header-cart a,
.ast-cart-menu-wrap .count {
  color: var(--ms-text) !important;
}

.ast-cart-menu-wrap .count {
  background: var(--ms-red) !important;
  color: #fff !important;
  font-weight: 700 !important;
}

/* Sticky header */
.ast-header-sticked #masthead,
.ast-header-sticked .ast-primary-header-bar {
  background-color: rgba(13, 13, 13, 0.97) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border-bottom: 2px solid var(--ms-red) !important;
}

/* ─── Navigation ─────────────────────────────────────────── */
#ast-primary-nav-menu .menu-item a,
.ast-primary-menu-enabled .ast-main-nav-wrap .menu-item > a,
.ast-nav-list > li > a,
#ast-desktop-navigation .ast-nav-list > li > a {
  color: var(--ms-text) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  transition: color var(--ms-transition) !important;
  background-color: transparent !important;
}

#ast-primary-nav-menu .menu-item a:hover,
.ast-nav-list > li > a:hover {
  color: var(--ms-red) !important;
}

/* Active nav — red left border accent */
.ast-nav-list > li.current-menu-item > a,
.ast-nav-list > li.current-menu-ancestor > a,
.ast-nav-list > li.current-menu-parent > a,
#ast-desktop-navigation .ast-nav-list > li.current-menu-ancestor > a,
#ast-desktop-navigation .ast-nav-list > li.current-menu-item > a {
  color: var(--ms-red) !important;
  background-color: transparent !important;
  border-bottom: 2px solid var(--ms-red) !important;
}

/* Dropdown menus */
.ast-primary-menu-enabled .ast-main-nav-wrap ul.sub-menu,
.ast-nav-list ul.sub-menu,
.ast-desktop .ast-nav-list > li > ul.sub-menu,
ul.sub-menu,
.sub-menu {
  background-color: #0D0D0D !important;
  background: #0D0D0D !important;
  border: 1px solid var(--ms-border) !important;
  border-top: 2px solid var(--ms-red) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.9) !important;
  opacity: 1 !important;
}

.ast-nav-list ul.sub-menu li a {
  color: var(--ms-text-muted) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--ms-border) !important;
}

.ast-nav-list ul.sub-menu li a:hover {
  color: var(--ms-red) !important;
  background: #1A1A1A !important;
  padding-left: 22px !important;
  transition: padding var(--ms-transition) !important;
}

/* Mobile nav */
.ast-menu-toggle, button.menu-toggle {
  color: var(--ms-text) !important;
  background: transparent !important;
  border-color: var(--ms-red) !important;
}

#ast-hfb-mobile-header,
.ast-mobile-popup-drawer {
  background-color: #0D0D0D !important;
}

.ast-mobile-popup-content .menu-item a {
  color: var(--ms-text) !important;
  border-bottom: 1px solid var(--ms-border) !important;
  font-family: var(--ms-font-display) !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* ─── Buttons ────────────────────────────────────────────── */
.ast-button,
.button,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.wp-block-button__link,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce #payment #place_order,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout #payment #place_order,
.woocommerce .wc-block-components-button,
a.checkout-button {
  background-color: var(--ms-red) !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: var(--ms-radius) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  padding: 14px 32px !important;
  clip-path: polygon(8px 0%, 100% 0%, calc(100% - 8px) 100%, 0% 100%);
  transition: background-color var(--ms-transition), transform var(--ms-transition) !important;
  cursor: pointer;
}

.ast-button:hover,
.button:hover,
button:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover {
  background-color: var(--ms-red-hot) !important;
  color: #FFFFFF !important;
  transform: translateY(-1px);
}

/* ─── Forms & Inputs ─────────────────────────────────────── */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
textarea,
select,
.woocommerce form .input-text {
  background-color: var(--ms-bg-elevated) !important;
  color: var(--ms-text) !important;
  border: 1px solid var(--ms-border) !important;
  border-radius: var(--ms-radius) !important;
  font-family: var(--ms-font-body) !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus,
.woocommerce form .input-text:focus {
  border-color: var(--ms-red) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(232,0,11,0.2) !important;
}

input::placeholder, textarea::placeholder {
  color: var(--ms-text-subtle) !important;
}

label {
  color: var(--ms-text-muted) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* ─── Page / Content Backgrounds ────────────────────────── */
html,
body,
#content,
.site-content,
.ast-container,
main#main,
.entry-content,
.page-content,
.ast-article-post,
.ast-article-single,
.ast-separate-container .site-content,
.ast-separate-container #primary {
  background-color: var(--ms-bg) !important;
  color: var(--ms-text) !important;
}

/* ─── WooCommerce Container ──────────────────────────────── */
.ast-woocommerce-container,
.woocommerce-page .ast-container,
.woocommerce .ast-container,
html body .ast-woocommerce-container,
html body.woocommerce .ast-woocommerce-container,
html body.woocommerce-page .ast-woocommerce-container {
  background-color: var(--ms-bg) !important;
}

/* ─── Shop / Archive ─────────────────────────────────────── */
.woocommerce-page #primary,
.woocommerce-page .site-main,
.woocommerce ul.products,
.woocommerce-page ul.products {
  background-color: var(--ms-bg) !important;
}

/* Product grid cards — aggressive angular styling */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.products li.product {
  background-color: var(--ms-bg-card) !important;
  border: 1px solid var(--ms-border) !important;
  border-top: 3px solid var(--ms-red) !important;
  border-radius: 0 !important;
  overflow: hidden;
  transition: border-color var(--ms-transition), transform var(--ms-transition) !important;
  position: relative;
}

.woocommerce ul.products li.product:hover,
.products li.product:hover {
  border-color: var(--ms-red) !important;
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(232,0,11,0.2) !important;
}

/* Red corner accent on product card */
.woocommerce ul.products li.product::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 20px 20px;
  border-color: transparent transparent var(--ms-red) transparent;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.products li.product h2 {
  color: var(--ms-text) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  padding: 12px 16px 4px !important;
  line-height: 1.2 !important;
}

.woocommerce ul.products li.product .price,
.products li.product .price {
  color: var(--ms-red) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  padding: 0 16px 12px !important;
  letter-spacing: 0.05em !important;
}

.woocommerce ul.products li.product .price del {
  color: var(--ms-text-subtle) !important;
}

/* Category labels */
.ast-woo-product-category,
.woocommerce ul.products li.product .ast-woo-product-category {
  color: var(--ms-red) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}

/* Add to cart on loop */
.woocommerce ul.products li.product .button {
  margin: 0 16px 16px !important;
  width: calc(100% - 32px) !important;
  text-align: center !important;
  display: block !important;
}

/* Sale badge */
.woocommerce span.onsale, .onsale {
  background-color: var(--ms-red) !important;
  color: #fff !important;
  border-radius: 0 !important;
  font-family: var(--ms-font-display) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* Out of stock badge */
.ast-shop-product-out-of-stock,
.woocommerce ul.products li.product .ast-shop-product-out-of-stock {
  background: rgba(13,13,13,0.9) !important;
  border: 1px solid var(--ms-red) !important;
  color: var(--ms-red) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
}

/* Shop toolbar */
.woocommerce-result-count {
  color: var(--ms-text-muted) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 13px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.woocommerce-ordering select,
select.orderby {
  background: var(--ms-bg-elevated) !important;
  color: #CCCCCC !important;
  border-color: var(--ms-border) !important;
  font-family: var(--ms-font-display) !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}

/* Breadcrumbs */
.woocommerce-breadcrumb,
.woocommerce .woocommerce-breadcrumb {
  color: var(--ms-text-subtle) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

.woocommerce-breadcrumb a {
  color: var(--ms-text-muted) !important;
}

.woocommerce-breadcrumb a:hover {
  color: var(--ms-red) !important;
}

/* ─── Single Product ─────────────────────────────────────── */
.single-product .woocommerce-product-gallery {
  background: var(--ms-bg-card) !important;
  border: 1px solid var(--ms-border) !important;
  border-top: 3px solid var(--ms-red) !important;
  border-radius: 0 !important;
}

.single-product .product_title {
  color: var(--ms-text) !important;
  font-family: var(--ms-font-display) !important;
  font-size: clamp(32px, 5vw, 56px) !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

.single-product .woocommerce-product-details__short-description,
.single-product .woocommerce-product-details__short-description p {
  color: var(--ms-text-muted) !important;
  font-family: var(--ms-font-body) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

.single-product .price {
  color: var(--ms-red) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 28px !important;
  font-weight: 900 !important;
  letter-spacing: 0.05em !important;
}

.single-product .price del {
  color: var(--ms-text-subtle) !important;
}

.product_meta, .product_meta span, .product_meta a {
  color: var(--ms-text-muted) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* Qty input */
.quantity input.qty {
  background: var(--ms-bg-elevated) !important;
  color: var(--ms-text) !important;
  border: 1px solid var(--ms-border) !important;
  border-radius: var(--ms-radius) !important;
  font-family: var(--ms-font-display) !important;
  font-weight: 700 !important;
}

/* Product tabs */
.woocommerce-tabs ul.tabs {
  background: transparent !important;
  border-bottom: 2px solid var(--ms-border) !important;
}

.woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: 1px solid var(--ms-border) !important;
  border-bottom: none !important;
  border-radius: 0 !important;
}

.woocommerce-tabs ul.tabs li.active {
  background: var(--ms-bg-card) !important;
  border-bottom-color: var(--ms-bg-card) !important;
  border-top: 2px solid var(--ms-red) !important;
}

.woocommerce-tabs ul.tabs li a {
  color: var(--ms-text-muted) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

.woocommerce-tabs ul.tabs li.active a {
  color: var(--ms-red) !important;
}

.woocommerce-tabs .panel {
  background: var(--ms-bg-card) !important;
  border: 1px solid var(--ms-border) !important;
  border-top: none !important;
  padding: 24px !important;
}

.woocommerce-tabs .panel p,
.woocommerce-tabs .panel li,
.woocommerce-tabs .panel td,
.woocommerce-tabs .panel h2 {
  color: var(--ms-text-muted) !important;
}

/* Related products heading */
.related.products h2,
.upsells.products h2 {
  color: var(--ms-text) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 28px !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  border-left: 4px solid var(--ms-red) !important;
  padding-left: 16px !important;
  border-bottom: none !important;
  margin-bottom: 24px !important;
}

/* Star ratings */
.star-rating span::before,
.woocommerce-product-rating .star-rating span::before {
  color: var(--ms-red) !important;
}

.star-rating::before {
  color: var(--ms-border) !important;
}

/* ─── Cart ───────────────────────────────────────────────── */
.woocommerce-cart .woocommerce,
.woocommerce-cart #primary {
  background: var(--ms-bg) !important;
}

table.cart,
.woocommerce table.shop_table {
  background: var(--ms-bg-card) !important;
  border: 1px solid var(--ms-border) !important;
  border-top: 3px solid var(--ms-red) !important;
  border-collapse: separate !important;
  border-radius: 0 !important;
}

table.cart th,
.woocommerce table.shop_table th {
  background: #0D0D0D !important;
  color: var(--ms-text-muted) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--ms-border) !important;
}

table.cart td,
.woocommerce table.shop_table td {
  color: var(--ms-text) !important;
  border-bottom: 1px solid var(--ms-border) !important;
}

.cart-collaterals .cart_totals {
  background: var(--ms-bg-card) !important;
  border: 1px solid var(--ms-border) !important;
  border-top: 3px solid var(--ms-red) !important;
  padding: 24px !important;
  border-radius: 0 !important;
}

.cart_totals h2 {
  color: var(--ms-text) !important;
  font-family: var(--ms-font-display) !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* ─── Sidebar & Widgets ──────────────────────────────────── */
#secondary, .widget-area { background: var(--ms-bg) !important; }

.widget {
  background: var(--ms-bg-card) !important;
  border: 1px solid var(--ms-border) !important;
  border-top: 2px solid var(--ms-red) !important;
  border-radius: 0 !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
}

.widget-title, .widgettitle {
  color: var(--ms-text) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--ms-border) !important;
  padding-bottom: 10px !important;
  margin-bottom: 12px !important;
}

.widget ul li a { color: var(--ms-text-muted) !important; }
.widget ul li a:hover { color: var(--ms-red) !important; }

/* ─── Footer ─────────────────────────────────────────────── */
#colophon,
.site-footer,
.ast-footer-overlay,
.ast-footer-outer-spacing,
.footer-widget-area,
.ast-above-footer,
.ast-below-footer,
.footer-adv,
.footer-adv-overlay {
  background-color: #0D0D0D !important;
  border-top: 2px solid var(--ms-red) !important;
  color: var(--ms-text-muted) !important;
}

.ast-footer-widget-area,
.footer-widgets-area {
  background: #0D0D0D !important;
  border-bottom: 1px solid var(--ms-border) !important;
}

/* Footer links */
html body .site-footer a,
html body #colophon a,
html body .ast-footer-widget-area a,
html body .footer-widget-area a,
html body .footer-adv a {
  color: var(--ms-text-muted) !important;
}

html body .site-footer a:hover,
html body #colophon a:hover,
html body .ast-footer-widget-area a:hover,
html body .footer-widget-area a:hover {
  color: var(--ms-red) !important;
}

/* Footer widget titles */
.site-footer .widget-title,
.ast-footer-widget-area .widget-title,
.footer-widget-area .widget-title {
  color: var(--ms-text) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  border-bottom: 1px solid var(--ms-border) !important;
  padding-bottom: 10px !important;
  margin-bottom: 14px !important;
}

/* Footer widgets — no box */
.site-footer .widget,
.ast-footer-widget-area .widget,
.footer-widget-area .widget {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin-bottom: 16px !important;
}

/* Copyright bar */
.ast-copyright-wrapper,
.site-info,
.ast-footer-copyright,
.site-below-footer-wrap {
  background: #0D0D0D !important;
  border-top: 1px solid var(--ms-border) !important;
  color: var(--ms-text-subtle) !important;
  font-family: var(--ms-font-display) !important;
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* ─── Pagination ─────────────────────────────────────────── */
.woocommerce-pagination .page-numbers,
.ast-pagination .page-numbers,
.page-numbers {
  color: #C0C0C0 !important;
  background: var(--ms-bg-card) !important;
  border: 1px solid #555 !important;
  border-radius: 0 !important;
  font-family: var(--ms-font-display) !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
}

.woocommerce-pagination .page-numbers.current,
.page-numbers.current,
.page-numbers:hover {
  background: var(--ms-red) !important;
  border-color: var(--ms-red) !important;
  color: #fff !important;
}

/* ─── Notices ────────────────────────────────────────────── */
.woocommerce-message, .woocommerce-info {
  background: var(--ms-bg-elevated) !important;
  border-top-color: var(--ms-red) !important;
  color: var(--ms-text) !important;
}

.woocommerce-error {
  background: var(--ms-bg-elevated) !important;
  border-top-color: #FF4444 !important;
  color: var(--ms-text) !important;
}

/* ─── Spectra / UAGB blocks ──────────────────────────────── */
.uagb-ifb-desc,
.uagb-ifb-desc p,
[class*="uagb-"] p {
  color: #BBBBBB !important;
}

/* ─── Blog / Posts ───────────────────────────────────────── */
.ast-article-post,
.ast-article-single,
article.post,
article.page {
  background: var(--ms-bg-card) !important;
  border: 1px solid var(--ms-border) !important;
  border-top: 3px solid var(--ms-red) !important;
  border-radius: 0 !important;
}

.entry-header .entry-title a { color: var(--ms-text) !important; }
.entry-header .entry-title a:hover { color: var(--ms-red) !important; }
.entry-meta, .entry-meta a, .posted-on, .byline { color: var(--ms-text-subtle) !important; }
.entry-content p, .entry-content li { color: var(--ms-text-muted) !important; }

/* ─── Afterpay — hide everywhere ────────────────────────── */
.afterpay-placement,
.afterpay-paragraph,
.afterpay-widget,
afterpay-placement,
afterpay-modal,
afterpay-widget,
[class*="afterpay"],
[id*="afterpay"],
[class*="Afterpay"],
[id*="Afterpay"] {
  display: none !important;
}

/* ─── WooCommerce blocks ─────────────────────────────────── */
.wc-block-grid .wc-block-grid__product {
  background: var(--ms-bg-card) !important;
  border: 1px solid var(--ms-border) !important;
  border-top: 3px solid var(--ms-red) !important;
  border-radius: 0 !important;
}

.wc-block-grid .wc-block-grid__product-title {
  color: var(--ms-text) !important;
  font-family: var(--ms-font-display) !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.wc-block-grid .wc-block-grid__product-price {
  color: var(--ms-red) !important;
  font-family: var(--ms-font-display) !important;
  font-weight: 800 !important;
}

/* ─── Dividers ───────────────────────────────────────────── */
hr, .wp-block-separator {
  border-color: var(--ms-border) !important;
}

/* ─── Section heading accent — left red bar ─────────────── */
h2.woocommerce-loop-product__title,
.woocommerce-page h2:not(.product_title):not(.cart_totals h2) {
  position: relative;
}

/* ─── Selection ──────────────────────────────────────────── */
::selection {
  background-color: var(--ms-red);
  color: #fff;
}

/* ─── Spectra / UAGB Container Blocks (homepage sections) ─
   These blocks default to white backgrounds from the plugin's
   generated CSS. Override all root-level and nested containers. */
.wp-block-uagb-container,
.uagb-is-root-container,
.wp-block-uagb-container.alignfull,
.wp-block-uagb-container.alignfull.uagb-is-root-container,
.uagb-block-e2a9e61d,
.uagb-block-d8b461b7,
.uagb-block-36cbf284,
.uagb-block-d6faf0c3 {
  background-color: var(--ms-bg) !important;
  background: var(--ms-bg) !important;
}

/* Inner containers within UAGB blocks — also force dark */
.wp-block-uagb-container .wp-block-uagb-container,
.uagb-is-root-container .wp-block-uagb-container {
  background-color: transparent !important;
  background: transparent !important;
}

/* UAGB text inside these blocks */
.wp-block-uagb-container h1,
.wp-block-uagb-container h2,
.wp-block-uagb-container h3,
.wp-block-uagb-container h4,
.wp-block-uagb-container p {
  color: var(--ms-text) !important;
}

/* "Why Choose" section — slightly elevated dark card feel */
.uagb-block-d6faf0c3 {
  background-color: var(--ms-bg-deep) !important;
  border-top: 2px solid var(--ms-red) !important;
  border-bottom: 2px solid var(--ms-red) !important;
}

/* ─── Scrollbar ──────────────────────────────────────────── */
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: var(--ms-bg-deep); }
::-webkit-scrollbar-thumb { background: #333; border-radius: 0; }
::-webkit-scrollbar-thumb:hover { background: var(--ms-red); }
