/* Altunbalcı design system — user specification, v1.3 */
:root {
  --bg-primary-dark: #0D0F12;
  --bg-primary-light: #FAFAFA;
  --bg-card: #F4F4F6;
  --accent-gold-primary: #D4AF37;
  --accent-gold-hover: #C59B27;
  --accent-platinum: #E5E8EB;
  --brand-emerald: #0B3B2B;
  --text-heading: #0D0F12;
  --text-body: #4A4A4A;
  --text-on-dark: #FFFFFF;
  --text-body-on-dark: #CCCCCC;
  --wine: var(--brand-emerald);
  --ink: var(--text-heading);
  --muted: var(--text-body);
  --cream: var(--bg-primary-light);
  --line: var(--accent-platinum);
  --gold: var(--accent-gold-primary);
}
body, .site-header, .header-main, .content-area, .intro-line,
.alb-category-strip a, .stones-section, .custom-section, dialog {
  background: var(--bg-primary-light);
  color: var(--text-body);
}
h1, h2, h3, .section h2, .hero h1, .alb-editorial-hero h1,
.woocommerce div.product .product_title {
  color: var(--text-heading);
  letter-spacing: .05em;
}
.site-header, .alb-category-strip a { color: var(--text-heading); }
.alb-special-nav, .alb-announcement { background: var(--bg-card) !important; }
.stone-intro, .product-meta, .stone-card > p, .story-copy > p:not(.eyebrow),
.services p, .world > p:not(.eyebrow), .alb-campaign-caption { color: var(--text-body); }
.hero, .alb-editorial-hero, .alb-premium, footer {
  background: var(--bg-primary-dark);
  color: var(--text-body-on-dark);
}
.hero h1, .alb-editorial-hero h1, .alb-premium :is(h1,h2,h3), footer :is(h1,h2,h3) {
  color: var(--text-on-dark);
}
.alb-editorial-hero .hero-copy > p:not(.eyebrow) { color: var(--text-body-on-dark); }
.alb-editorial-hero::after {
  inset: 0;
  background: linear-gradient(180deg, transparent 25%, rgba(13,15,18,.28) 50%, rgba(13,15,18,.94) 100%);
}
footer .footer-bottom { color: var(--text-body-on-dark); border-color: #4A4A4A; }
.product-image, .detail-image, .stone-picture, .stone-modal-art, .custom-preview,
.woocommerce div.product div.images, .woocommerce div.product div.images img,
.woocommerce ul.products li.product, .woocommerce ul.products li.product img,
.wc-block-components-product-image, .wc-block-components-product-image img,
.wc-block-grid__product-image, .wc-block-grid__product-image img,
.wc-block-cart-item__image img, .wc-block-components-order-summary-item__image img,
.cart-row svg, .woocommerce-cart .product-thumbnail img, .alb-favorites-list img {
  background: var(--bg-card);
}
.product-image, .stone-card, .woocommerce ul.products li.product,
.wc-block-product, .wc-block-grid__product {
  box-shadow: 0 4px 20px rgba(0,0,0,.05);
}
.stone-card { background: var(--bg-primary-light); }
.price, .woocommerce ul.products li.product .price,
.woocommerce div.product p.price, .woocommerce div.product span.price,
.wc-block-components-product-price, .custom-price strong {
  color: var(--accent-gold-primary);
  background: var(--bg-primary-dark);
  display: inline-block;
  padding: 6px 10px;
  font-weight: 600;
}
/* Dark price labels preserve contrast for the requested gold numerals. */
.button, .button.light, .woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce input.button.alt, .wp-block-button__link,
.wc-block-components-button:not(.is-link), .wc-block-components-checkout-place-order-button {
  background: var(--brand-emerald);
  color: var(--text-on-dark);
  border: 1px solid var(--brand-emerald);
  border-radius: 0;
  font-weight: 700 !important;
  transition: filter .2s ease, background-color .2s ease;
}
.button:hover, .button.light:hover, .woocommerce a.button:hover,
.woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.wp-block-button__link:hover, .wc-block-components-button:not(.is-link):hover {
  background: var(--brand-emerald);
  color: var(--text-on-dark);
  filter: brightness(.9);
}
.hero .button, .alb-editorial-hero .button.light, .alb-premium .button, footer .button {
  background: var(--accent-gold-primary);
  color: #000000;
  border: 1px solid var(--accent-gold-primary);
  padding: 15px 24px;
  font-weight: 700;
}
.hero .button:hover, .alb-editorial-hero .button.light:hover,
.alb-premium .button:hover, footer .button:hover {
  background: var(--accent-gold-hover);
  border-color: var(--accent-gold-hover);
  color: #000000;
  filter: none;
}
a:not(.button):hover, .text-link:hover { color: var(--brand-emerald); }
footer a:hover, .alb-premium a:hover { color: var(--accent-gold-primary); }
:where(a,button,input,select,textarea):focus-visible { outline: 2px solid var(--brand-emerald); outline-offset: 4px; }
.hero :focus-visible, footer :focus-visible, .alb-premium :focus-visible { outline-color: var(--accent-gold-primary); }
.alb-product-badges { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0; }
.alb-product-badge { display: inline-flex; align-items: center; padding: 6px 9px; background: var(--accent-platinum); color: var(--text-heading); font: 500 11px/1.5 Arial,sans-serif; letter-spacing: .02em; }
.alb-product-badge--quality { background: var(--bg-card); }
.woocommerce span.onsale, .product-tag, .badge { background: var(--brand-emerald); color: var(--text-on-dark); }
.product-tag { padding: 5px 8px; }
.woocommerce input, .woocommerce select, .woocommerce textarea, .alb-filters input, .alb-filters select { background: var(--bg-primary-light); color: var(--text-heading); border-color: var(--accent-platinum); }
@media (prefers-reduced-motion: reduce) { .button, .wc-block-components-button { transition: none; } }
