/*
 Theme Name:   Sobutex Child
 Theme URI:    http://sobutex.bf
 Description:  Flatsome Child Theme — African Luxury Editorial Design
 Author:       Sobutex SARL
 Template:     flatsome
 Version:      1.0.0
 Text Domain:  sobutex-child
*/

/* ═══════════════════════════════════════════════════════════════
   DESIGN TOKENS
═══════════════════════════════════════════════════════════════ */
:root {
  --ink:        #09090F;
  --ink-deep:   #050508;
  --card:       #111118;
  --card-hi:    #18181F;
  --border:     rgba(212,168,83,.15);
  --gold:       #D4A853;
  --gold-lt:    #F0CC7A;
  --gold-dk:    #9A7530;
  --terra:      #C4622D;
  --terra-lt:   #E07848;
  --cream:      #F5EFE0;
  --cream-dk:   #C8BFA5;
  --green:      #1F6E38;
  --green-lt:   #2D8F4E;
  --radius:     4px;
  --radius-lg:  12px;
}

/* ═══════════════════════════════════════════════════════════════
   GLOBAL BASE
═══════════════════════════════════════════════════════════════ */
html { scroll-behavior: smooth; }

body {
  font-family: 'DM Sans', sans-serif !important;
  background-color: var(--ink) !important;
  color: var(--cream) !important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Cormorant Garamond', serif !important;
  font-weight: 300 !important;
  color: var(--cream) !important;
}

a { transition: color .25s ease !important; }

p { color: var(--cream-dk); line-height: 1.8; }

/* ═══════════════════════════════════════════════════════════════
   CUSTOM CURSOR
═══════════════════════════════════════════════════════════════ */
body { cursor: none !important; }
a, button, .button, input[type="submit"] { cursor: none !important; }

.sbx-cursor {
  position: fixed; top: 0; left: 0;
  width: 12px; height: 12px;
  background: var(--gold);
  border-radius: 50%;
  pointer-events: none;
  z-index: 99999;
  transform: translate(-50%,-50%);
  transition: transform .15s ease;
}
.sbx-cursor-ring {
  position: fixed; top: 0; left: 0;
  width: 36px; height: 36px;
  border: 1.5px solid var(--gold);
  border-radius: 50%;
  pointer-events: none;
  z-index: 99998;
  opacity: .5;
  transform: translate(-50%,-50%);
  transition: width .25s ease, height .25s ease, opacity .25s ease;
}

/* ═══════════════════════════════════════════════════════════════
   SCROLLBAR
═══════════════════════════════════════════════════════════════ */
::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: var(--ink-deep); }
::-webkit-scrollbar-thumb { background: var(--gold-dk); border-radius: 2px; }

/* ═══════════════════════════════════════════════════════════════
   NAVIGATION / HEADER
═══════════════════════════════════════════════════════════════ */
#wrapper {
  background: var(--ink) !important;
}

.header-wrapper,
.header-main,
.header-top,
.nav-bar,
.header-bg {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Sticky nav */
.header-wrapper.is-sticky .header-main,
.header-wrapper.sticky-applied .header-main {
  background: rgba(9,9,15,.92) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  box-shadow: 0 1px 0 var(--border) !important;
}

/* Logo */
.logo-text,
.header-logo a,
.site-title {
  font-family: 'Cinzel', serif !important;
  font-size: 1.4rem !important;
  font-weight: 600 !important;
  color: var(--gold) !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
}

.logo-text:after {
  content: 'Textiles d\'Afrique de l\'Ouest';
  display: block;
  font-family: 'DM Sans', sans-serif;
  font-size: .55rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--cream-dk);
  font-weight: 300;
  margin-top: 2px;
}

/* Main nav links */
.main-nav > li > a,
.nav > li > a,
#top-nav li a,
.header-nav li a {
  font-family: 'DM Sans', sans-serif !important;
  font-size: .75rem !important;
  font-weight: 400 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: var(--cream-dk) !important;
  padding: .5rem 0 !important;
  position: relative !important;
  transition: color .25s !important;
}

.main-nav > li > a::after,
.nav > li > a::after {
  content: '' !important;
  position: absolute !important;
  bottom: -.2rem !important;
  left: 0 !important;
  right: 100% !important;
  height: 1px !important;
  background: var(--gold) !important;
  transition: right .3s ease !important;
}

.main-nav > li > a:hover,
.main-nav > li.active > a,
.nav > li > a:hover {
  color: var(--cream) !important;
}

.main-nav > li > a:hover::after,
.main-nav > li.active > a::after {
  right: 0 !important;
}

/* Dropdowns */
.nav-dropdown,
.sub-menu {
  background: rgba(9,9,15,.96) !important;
  border: 1px solid var(--border) !important;
  border-top: 2px solid var(--gold) !important;
  box-shadow: 0 20px 40px rgba(0,0,0,.5) !important;
  border-radius: 0 0 var(--radius-lg) var(--radius-lg) !important;
}

.nav-dropdown li a,
.sub-menu li a {
  color: var(--cream-dk) !important;
  font-size: .8rem !important;
  padding: .7rem 1.2rem !important;
  border-bottom: 1px solid rgba(212,168,83,.06) !important;
}

.nav-dropdown li a:hover,
.sub-menu li a:hover {
  color: var(--gold) !important;
  background: rgba(212,168,83,.05) !important;
}

/* Cart icon in header */
#cart-header,
.header-cart,
.cart-count,
a.cart-icon {
  color: var(--cream) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  padding: .4rem .7rem !important;
  transition: border-color .25s !important;
}

#cart-header:hover,
.header-cart:hover {
  border-color: var(--gold-dk) !important;
  color: var(--gold) !important;
}

.cart-count {
  background: var(--gold) !important;
  color: var(--ink-deep) !important;
}

/* Header button / CTA */
.header-button .button,
.button.primary,
#top .button.primary {
  background: linear-gradient(135deg, var(--gold), var(--gold-dk)) !important;
  color: var(--ink-deep) !important;
  border: none !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: .72rem !important;
  font-weight: 500 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  border-radius: var(--radius) !important;
  padding: .8rem 1.8rem !important;
  transition: box-shadow .3s, background .3s !important;
}

.header-button .button:hover,
.button.primary:hover {
  box-shadow: 0 0 30px rgba(212,168,83,.4) !important;
  background: linear-gradient(135deg, var(--gold-lt), var(--gold)) !important;
}

/* Language switcher (WPML) */
.wpml-ls-menu-item a,
.wpml-ls a,
.wpml-ls-current-language a {
  font-family: 'DM Sans', sans-serif !important;
  font-size: .7rem !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  color: var(--cream-dk) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  padding: .4rem .8rem !important;
  transition: all .25s !important;
}

.wpml-ls-menu-item a:hover,
.wpml-ls-current-language a {
  color: var(--gold) !important;
  border-color: var(--gold-dk) !important;
}

/* ═══════════════════════════════════════════════════════════════
   BUTTONS GLOBAL
═══════════════════════════════════════════════════════════════ */
.button,
button,
input[type="submit"],
.woocommerce a.button,
.woocommerce button.button {
  font-family: 'DM Sans', sans-serif !important;
  font-size: .75rem !important;
  font-weight: 500 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  border-radius: var(--radius) !important;
  transition: all .3s ease !important;
}

.woocommerce a.button,
.woocommerce button.button {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  color: var(--gold) !important;
  padding: .75rem 1.5rem !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover {
  background: rgba(212,168,83,.1) !important;
  border-color: var(--gold-dk) !important;
  color: var(--gold) !important;
}

.woocommerce a.button.add_to_cart_button,
.woocommerce button.button.alt,
.woocommerce #respond input#submit,
.woocommerce a.button.alt {
  background: linear-gradient(135deg, var(--gold), var(--gold-dk)) !important;
  color: var(--ink-deep) !important;
  border: none !important;
}

.woocommerce a.button.add_to_cart_button:hover,
.woocommerce button.button.alt:hover {
  box-shadow: 0 0 25px rgba(212,168,83,.35) !important;
}

/* ═══════════════════════════════════════════════════════════════
   WOOCOMMERCE — SHOP ARCHIVE
═══════════════════════════════════════════════════════════════ */
.woocommerce-page,
.archive.woocommerce,
.shop-page {
  background: var(--ink) !important;
}

/* Products grid */
.woocommerce ul.products,
.products.columns-4,
.products.columns-3 {
  gap: 2px !important;
}

.woocommerce ul.products li.product,
.product-small {
  background: var(--card) !important;
  border: none !important;
  border-radius: 0 !important;
  transition: background .3s !important;
  overflow: hidden !important;
}

.woocommerce ul.products li.product:hover {
  background: var(--card-hi) !important;
}

/* Product image */
.woocommerce ul.products li.product .product-image-wrapper,
.product-small .box-image {
  overflow: hidden !important;
  background: linear-gradient(135deg, #1B3A28, #0D1F16) !important;
}

.woocommerce ul.products li.product .attachment-woocommerce_thumbnail,
.product-small img {
  transition: transform .6s cubic-bezier(.25,.46,.45,.94) !important;
}

.woocommerce ul.products li.product:hover img,
.product-small:hover img {
  transform: scale(1.05) !important;
}

/* Product title */
.woocommerce-loop-product__title,
.product-title,
.woocommerce ul.products li.product h2 {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.1rem !important;
  font-weight: 400 !important;
  color: var(--cream) !important;
  padding: 1rem 1.2rem .4rem !important;
}

/* Product price */
.woocommerce ul.products li.product .price,
.product-small .price,
.woocommerce .price {
  color: var(--gold) !important;
  font-size: .95rem !important;
  font-weight: 500 !important;
  font-family: 'DM Sans', sans-serif !important;
  padding: 0 1.2rem .8rem !important;
}

.woocommerce ul.products li.product .price del,
.woocommerce .price del {
  color: var(--cream-dk) !important;
  opacity: .7 !important;
  font-size: .8rem !important;
}

.woocommerce ul.products li.product .price ins,
.woocommerce .price ins {
  text-decoration: none !important;
  color: var(--gold) !important;
}

/* Sale badge */
.woocommerce span.onsale,
.on-sale,
.badge {
  background: var(--terra) !important;
  color: #fff !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: .6rem !important;
  font-weight: 500 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  border-radius: var(--radius) !important;
  padding: .25rem .65rem !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1.4 !important;
}

/* Category label above product */
.product-cat,
.woocommerce ul.products li.product .posted_in,
.product-small .product-cat {
  font-size: .65rem !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  color: var(--gold-dk) !important;
  padding: .8rem 1.2rem .2rem !important;
  display: block !important;
}

/* ═══════════════════════════════════════════════════════════════
   WOOCOMMERCE — SINGLE PRODUCT
═══════════════════════════════════════════════════════════════ */
.single-product .entry-summary,
.single-product .product {
  background: var(--card) !important;
  border-radius: var(--radius-lg) !important;
  padding: 2rem !important;
}

.single-product .product_title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(2rem,4vw,3.5rem) !important;
  font-weight: 300 !important;
  font-style: italic !important;
  color: var(--cream) !important;
}

.single-product .woocommerce-product-details__short-description p {
  color: var(--cream-dk) !important;
  line-height: 1.8 !important;
}

.single-product .woocommerce-variation-price .price,
.single-product .summary .price {
  font-size: 1.8rem !important;
  color: var(--gold) !important;
}

/* Tabs */
.woocommerce-tabs .tabs li a {
  font-family: 'DM Sans', sans-serif !important;
  font-size: .75rem !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: var(--cream-dk) !important;
  border: 1px solid var(--border) !important;
  background: var(--card) !important;
  border-radius: var(--radius) var(--radius) 0 0 !important;
}

.woocommerce-tabs .tabs li.active a {
  color: var(--gold) !important;
  border-color: var(--gold-dk) !important;
  background: var(--card-hi) !important;
}

.woocommerce-tabs .panel {
  background: var(--card-hi) !important;
  border: 1px solid var(--border) !important;
  border-radius: 0 var(--radius-lg) var(--radius-lg) var(--radius-lg) !important;
  color: var(--cream-dk) !important;
}

/* ═══════════════════════════════════════════════════════════════
   WOOCOMMERCE — CART & CHECKOUT
═══════════════════════════════════════════════════════════════ */
.woocommerce-cart-form,
.woocommerce-checkout,
.woocommerce-account {
  color: var(--cream) !important;
}

.woocommerce table.shop_table {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  color: var(--cream) !important;
}

.woocommerce table.shop_table th {
  background: var(--card-hi) !important;
  color: var(--gold) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: .7rem !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  border-color: var(--border) !important;
}

.woocommerce table.shop_table td {
  border-color: var(--border) !important;
  color: var(--cream-dk) !important;
}

/* Input fields */
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
textarea {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--cream) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: .85rem !important;
  padding: .85rem 1rem !important;
  transition: border-color .25s !important;
}

.woocommerce input.input-text:focus,
input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus {
  border-color: var(--gold-dk) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(212,168,83,.1) !important;
}

.woocommerce input.input-text::placeholder,
input::placeholder {
  color: var(--cream-dk) !important;
  opacity: .5 !important;
}

/* Order summary box */
.woocommerce-checkout #order_review,
.cart-collaterals .cart_totals {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  padding: 2rem !important;
}

/* ═══════════════════════════════════════════════════════════════
   WOOCOMMERCE — PRODUCT CATEGORY PAGES
═══════════════════════════════════════════════════════════════ */
.woocommerce ul.products li.product-category .woocommerce-loop-category__title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.3rem !important;
  font-style: italic !important;
  color: var(--cream) !important;
}

.woocommerce ul.products li.product-category {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  transition: border-color .3s, transform .3s !important;
}

.woocommerce ul.products li.product-category:hover {
  border-color: var(--gold-dk) !important;
  transform: translateY(-4px) !important;
}

/* ═══════════════════════════════════════════════════════════════
   SIDEBAR / WIDGETS
═══════════════════════════════════════════════════════════════ */
.sidebar,
.widget-area {
  background: transparent !important;
}

.widget {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  padding: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.widget-title,
.widgettitle {
  font-family: 'DM Sans', sans-serif !important;
  font-size: .7rem !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: var(--gold) !important;
  margin-bottom: 1rem !important;
  padding-bottom: .75rem !important;
  border-bottom: 1px solid var(--border) !important;
}

/* Price filter widget */
.woocommerce .widget_price_filter .ui-slider {
  background: var(--border) !important;
}

.woocommerce .widget_price_filter .ui-slider .ui-slider-range {
  background: var(--gold) !important;
}

.woocommerce .widget_price_filter .ui-slider .ui-slider-handle {
  background: var(--gold) !important;
  border-color: var(--gold-dk) !important;
}

/* Product categories widget */
.woocommerce-widget-layered-nav-list__item a,
.product-categories li a {
  color: var(--cream-dk) !important;
  font-size: .85rem !important;
  transition: color .25s !important;
}

.woocommerce-widget-layered-nav-list__item a:hover,
.product-categories li a:hover {
  color: var(--gold) !important;
}

/* ═══════════════════════════════════════════════════════════════
   BREADCRUMBS
═══════════════════════════════════════════════════════════════ */
.woocommerce-breadcrumb,
.breadcrumbs,
.breadcrumb {
  font-size: .7rem !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: var(--cream-dk) !important;
  background: transparent !important;
}

.woocommerce-breadcrumb a,
.breadcrumbs a {
  color: var(--gold-dk) !important;
}

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

/* ═══════════════════════════════════════════════════════════════
   NOTICES & MESSAGES
═══════════════════════════════════════════════════════════════ */
.woocommerce-message,
.wc-block-components-notice-banner {
  background: rgba(31,110,56,.2) !important;
  border-left-color: var(--green) !important;
  color: var(--cream) !important;
  border-radius: var(--radius) !important;
}

.woocommerce-error {
  background: rgba(196,98,45,.2) !important;
  border-left-color: var(--terra) !important;
  color: var(--cream) !important;
  border-radius: var(--radius) !important;
}

.woocommerce-info {
  background: rgba(212,168,83,.1) !important;
  border-left-color: var(--gold) !important;
  color: var(--cream) !important;
  border-radius: var(--radius) !important;
}

/* ═══════════════════════════════════════════════════════════════
   SECTIONS / ROWS (FLATSOME UX BUILDER)
═══════════════════════════════════════════════════════════════ */
.section,
.row,
.ux-section {
  background-color: var(--ink) !important;
}

.section.dark,
.row.dark,
.ux-section.dark {
  background-color: var(--ink-deep) !important;
}

/* ═══════════════════════════════════════════════════════════════
   FLATSOME BANNERS / SLIDERS
═══════════════════════════════════════════════════════════════ */
.banner,
.is-bg-image {
  border-radius: var(--radius) !important;
  overflow: hidden !important;
}

.banner-inner {
  background: linear-gradient(135deg, rgba(9,9,15,.6), rgba(9,9,15,.2)) !important;
}

/* ═══════════════════════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════════════════════ */
#footer,
.footer-wrapper,
.footer-area,
.absolute-footer {
  background: var(--ink-deep) !important;
  border-top: 1px solid var(--border) !important;
  color: var(--cream-dk) !important;
}

.footer-area h4,
.footer-area .widget-title,
.footer-area .widgettitle {
  font-family: 'DM Sans', sans-serif !important;
  font-size: .7rem !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: var(--gold) !important;
  border-bottom: 1px solid var(--border) !important;
  padding-bottom: .75rem !important;
  margin-bottom: 1.2rem !important;
}

.footer-area a,
.footer-area li a {
  color: var(--cream-dk) !important;
  font-size: .85rem !important;
  transition: color .25s !important;
}

.footer-area a:hover,
.footer-area li a:hover {
  color: var(--gold) !important;
}

.footer-area p {
  color: var(--cream-dk) !important;
  font-size: .85rem !important;
  line-height: 1.8 !important;
}

/* Footer bottom bar */
.absolute-footer,
.footer-bottom-area,
.footer-bottom {
  background: var(--ink-deep) !important;
  border-top: 1px solid var(--border) !important;
  color: var(--cream-dk) !important;
  font-size: .75rem !important;
  opacity: .7 !important;
}

/* Payment icons in footer */
.payment-methods img,
.footer-payments img {
  filter: grayscale(1) brightness(1.5) !important;
  opacity: .6 !important;
  transition: opacity .25s !important;
}

.payment-methods img:hover {
  opacity: 1 !important;
  filter: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   CONTACT FORM 7
═══════════════════════════════════════════════════════════════ */
.wpcf7-form input,
.wpcf7-form textarea,
.wpcf7-form select {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--cream) !important;
  font-family: 'DM Sans', sans-serif !important;
  padding: .85rem 1rem !important;
  width: 100% !important;
  transition: border-color .25s !important;
}

.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
  border-color: var(--gold-dk) !important;
  outline: none !important;
}

.wpcf7-submit {
  background: linear-gradient(135deg, var(--gold), var(--gold-dk)) !important;
  color: var(--ink-deep) !important;
  font-weight: 500 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  border: none !important;
  padding: .9rem 2rem !important;
  border-radius: var(--radius) !important;
  transition: box-shadow .3s !important;
}

.wpcf7-submit:hover {
  box-shadow: 0 0 25px rgba(212,168,83,.4) !important;
}

/* ═══════════════════════════════════════════════════════════════
   PAGINATION
═══════════════════════════════════════════════════════════════ */
.woocommerce-pagination .page-numbers,
.pagination .page-numbers {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  color: var(--cream-dk) !important;
  border-radius: var(--radius) !important;
  padding: .5rem .9rem !important;
  transition: all .25s !important;
}

.woocommerce-pagination .page-numbers:hover,
.woocommerce-pagination .page-numbers.current {
  background: var(--gold) !important;
  color: var(--ink-deep) !important;
  border-color: var(--gold) !important;
}

/* ═══════════════════════════════════════════════════════════════
   SEARCH
═══════════════════════════════════════════════════════════════ */
.search-form input,
.woocommerce-product-search input {
  background: var(--card) !important;
  border: 1px solid var(--border) !important;
  color: var(--cream) !important;
  border-radius: var(--radius) !important;
}

/* ═══════════════════════════════════════════════════════════════
   SCROLL REVEAL UTILITY (added via JS)
═══════════════════════════════════════════════════════════════ */
.sbx-reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .7s ease, transform .7s ease;
}
.sbx-reveal.sbx-visible {
  opacity: 1;
  transform: none;
}

/* ═══════════════════════════════════════════════════════════════
   HOMEPAGE CUSTOM SECTIONS (front-page.php)
═══════════════════════════════════════════════════════════════ */

/* --- Ticker --- */
.sbx-ticker {
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--ink-deep);
  overflow: hidden;
  white-space: nowrap;
  padding: .9rem 0;
}
.sbx-ticker-track {
  display: inline-flex;
  gap: 4rem;
  animation: sbxTicker 30s linear infinite;
}
.sbx-ticker-item {
  font-size: .7rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--cream-dk);
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.sbx-ticker-item span { color: var(--gold); }
.sbx-ticker-dot {
  width: 4px; height: 4px;
  background: var(--gold-dk);
  border-radius: 50%;
  flex-shrink: 0;
}
@keyframes sbxTicker {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* --- Hero --- */
.sbx-hero {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 1fr 1fr;
  position: relative;
  overflow: hidden;
}
.sbx-hero-left {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 8rem clamp(2rem,5vw,5rem) 6rem;
  position: relative;
  z-index: 2;
}
.sbx-tag {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-size: .7rem;
  font-weight: 500;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--gold);
  padding: .4rem 1rem;
  border: 1px solid var(--border);
  border-radius: 50px;
  margin-bottom: 2.5rem;
  width: fit-content;
}
.sbx-tag::before {
  content: '';
  display: block;
  width: 6px; height: 6px;
  background: var(--gold);
  border-radius: 50%;
}
.sbx-hero-title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(3.2rem, 6vw, 6rem) !important;
  font-weight: 300 !important;
  font-style: italic !important;
  line-height: 1.02 !important;
  letter-spacing: -.02em !important;
  margin-bottom: 1.8rem !important;
  color: var(--cream) !important;
}
.sbx-hero-title em {
  color: var(--gold) !important;
  font-style: italic !important;
}
.sbx-hero-sub {
  font-size: 1rem;
  font-weight: 300;
  color: var(--cream-dk);
  line-height: 1.7;
  max-width: 480px;
  margin-bottom: 2.5rem;
}
.sbx-hero-ctas {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: 4rem;
}
.sbx-btn {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  font-family: 'DM Sans', sans-serif;
  font-size: .75rem;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  padding: 1rem 2.2rem;
  border-radius: var(--radius);
  transition: all .3s ease;
  text-decoration: none;
}
.sbx-btn-gold {
  background: linear-gradient(135deg, var(--gold), var(--gold-dk));
  color: var(--ink-deep) !important;
}
.sbx-btn-gold:hover {
  box-shadow: 0 0 35px rgba(212,168,83,.4);
  color: var(--ink-deep) !important;
}
.sbx-btn-outline {
  border: 1px solid rgba(212,168,83,.5);
  color: var(--gold) !important;
}
.sbx-btn-outline:hover {
  border-color: var(--gold);
  box-shadow: 0 0 20px rgba(212,168,83,.15);
}

/* Hero stats */
.sbx-hero-stats {
  display: flex;
  gap: 2.5rem;
  flex-wrap: wrap;
}
.sbx-stat-num {
  font-family: 'Cormorant Garamond', serif;
  font-size: 2.4rem;
  font-weight: 300;
  color: var(--gold);
  line-height: 1;
}
.sbx-stat-label {
  font-size: .65rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--cream-dk);
  margin-top: .3rem;
}

/* Hero right panel */
.sbx-hero-right {
  position: relative;
  overflow: hidden;
}
.sbx-hero-visual {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #1F3A28 0%, #0D3D25 40%, #1a1205 100%);
}
.sbx-hero-visual::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cdefs%3E%3Cpattern id='hp' patternUnits='userSpaceOnUse' width='40' height='40'%3E%3Ccircle cx='20' cy='20' r='8' fill='none' stroke='%23D4A853' stroke-width='.8' opacity='.3'/%3E%3Ccircle cx='0' cy='0' r='3' fill='none' stroke='%23D4A853' stroke-width='.5' opacity='.2'/%3E%3Ccircle cx='40' cy='0' r='3' fill='none' stroke='%23D4A853' stroke-width='.5' opacity='.2'/%3E%3C/pattern%3E%3C/defs%3E%3Crect width='80' height='80' fill='url(%23hp)'/%3E%3C/svg%3E");
  opacity: .5;
}
.sbx-hero-mosaic {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sbx-mosaic-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  gap: 6px;
  width: 400px;
  height: 460px;
  transform: rotate(-5deg) translateX(30px);
  animation: sbxFloat 6s ease-in-out infinite;
}
@keyframes sbxFloat {
  0%,100% { transform: rotate(-5deg) translateX(30px) translateY(0); }
  50%      { transform: rotate(-5deg) translateX(30px) translateY(-18px); }
}
.sbx-mc { border-radius: 4px; overflow: hidden; }
.sbx-mc::before {
  content: '';
  display: block;
  width: 100%; height: 100%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath d='M15 0 L30 15 L15 30 L0 15 Z' fill='none' stroke='rgba(255,255,255,.12)' stroke-width='.8'/%3E%3C/svg%3E") repeat;
}
.sbx-mc:nth-child(1) { background: linear-gradient(135deg,#1B6B44,#0D3D25); grid-column:span 2; }
.sbx-mc:nth-child(2) { background: linear-gradient(135deg,#C4622D,#8B3B15); }
.sbx-mc:nth-child(3) { background: linear-gradient(135deg,#D4A853,#9A7530); }
.sbx-mc:nth-child(4) { background: linear-gradient(135deg,#1A237E,#0D1456); grid-row:span 2; }
.sbx-mc:nth-child(5) { background: linear-gradient(135deg,#6A1B4D,#3D0E2D); }
.sbx-mc:nth-child(6) { background: linear-gradient(135deg,#BF360C,#7F1A06); }
.sbx-mc:nth-child(7) { background: linear-gradient(135deg,#1B5E20,#0A3010); grid-column:span 2; }
.sbx-hero-gradient {
  position: absolute;
  top: 0; bottom: 0; left: -1px;
  width: 100px;
  background: linear-gradient(to right, var(--ink), transparent);
  z-index: 2;
}

/* --- Section Headers --- */
.sbx-section {
  padding: clamp(4rem,8vw,8rem) clamp(1.5rem,5vw,4rem);
  max-width: 1320px;
  margin: 0 auto;
}
.sbx-sec-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 3rem;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.sbx-sec-title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(2rem,4vw,3.2rem) !important;
  font-weight: 300 !important;
  color: var(--cream) !important;
  margin-top: .75rem !important;
}
.sbx-sec-title em { color: var(--gold) !important; font-style: italic !important; }
.sbx-gold-line {
  width: 50px; height: 2px;
  background: linear-gradient(to right, var(--gold), transparent);
  margin: 1rem 0;
}

/* --- Categories Grid --- */
.sbx-cats-wrap {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px;
}
.sbx-cat {
  position: relative;
  overflow: hidden;
  aspect-ratio: 3/4;
  display: block;
  text-decoration: none;
}
.sbx-cat:nth-child(1) { grid-column: span 2; aspect-ratio: auto; min-height: 320px; }
.sbx-cat:nth-child(5) { grid-column: span 2; aspect-ratio: 5/2; }
.sbx-cat:nth-child(7) { grid-column: span 2; aspect-ratio: 5/2; }
.sbx-cat-bg {
  position: absolute;
  inset: 0;
  transition: transform .6s cubic-bezier(.25,.46,.45,.94);
}
.sbx-cat:hover .sbx-cat-bg { transform: scale(1.05); }
.sbx-cat:nth-child(1) .sbx-cat-bg { background: linear-gradient(160deg,#0D3D25,#2D6A4F,#0A2518); }
.sbx-cat:nth-child(2) .sbx-cat-bg { background: linear-gradient(160deg,#4A0E0E,#C4622D); }
.sbx-cat:nth-child(3) .sbx-cat-bg { background: linear-gradient(160deg,#1A237E,#3949AB); }
.sbx-cat:nth-child(4) .sbx-cat-bg { background: linear-gradient(160deg,#6A1B4D,#AD1457); }
.sbx-cat:nth-child(5) .sbx-cat-bg { background: linear-gradient(160deg,#7F1A06,#D84315); }
.sbx-cat:nth-child(6) .sbx-cat-bg { background: linear-gradient(160deg,#1B5E20,#388E3C); }
.sbx-cat:nth-child(7) .sbx-cat-bg { background: linear-gradient(160deg,#33691E,#8D6E63); }
.sbx-cat:nth-child(8) .sbx-cat-bg { background: linear-gradient(160deg,#311B92,#7B1FA2); }
.sbx-cat-pattern {
  position: absolute;
  inset: 0;
  opacity: .18;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M30 5 L55 50 L5 50 Z' fill='none' stroke='%23D4A853' stroke-width='1'/%3E%3Ccircle cx='30' cy='30' r='12' fill='none' stroke='%23D4A853' stroke-width='.7'/%3E%3C/svg%3E") repeat;
}
.sbx-cat-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.75) 0%, transparent 60%);
}
.sbx-cat-info {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: 1.5rem;
}
.sbx-cat-num {
  font-size: .6rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--gold);
  opacity: .8;
  margin-bottom: .4rem;
}
.sbx-cat-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(1.2rem,2.2vw,1.8rem);
  font-weight: 300;
  font-style: italic;
  color: #fff;
  line-height: 1.1;
}
.sbx-cat-count {
  font-size: .65rem;
  letter-spacing: .08em;
  color: rgba(255,255,255,.6);
  margin-top: .3rem;
}
.sbx-cat-arrow {
  position: absolute;
  top: 1.2rem; right: 1.2rem;
  width: 34px; height: 34px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: rotate(-45deg);
  transition: all .3s;
}
.sbx-cat:hover .sbx-cat-arrow {
  opacity: 1;
  transform: rotate(0deg);
  background: var(--gold);
  border-color: var(--gold);
}
.sbx-cat-arrow svg { width: 14px; height: 14px; stroke: var(--ink-deep); }

/* --- Latest Products --- */
.sbx-products-wrap {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px;
}
.sbx-prod {
  background: var(--card);
  position: relative;
  overflow: hidden;
  transition: background .3s;
  display: block;
  text-decoration: none;
}
.sbx-prod:hover { background: var(--card-hi); }
.sbx-prod-img {
  aspect-ratio: 1;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg,#1B3A28,#0D1F16);
}
.sbx-prod-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s cubic-bezier(.25,.46,.45,.94);
}
.sbx-prod:hover .sbx-prod-img img { transform: scale(1.05); }
.sbx-prod-badge {
  position: absolute;
  top: .9rem; left: .9rem;
  background: var(--terra);
  color: #fff;
  font-size: .6rem;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: .25rem .6rem;
  border-radius: var(--radius);
}
.sbx-prod-actions {
  position: absolute;
  bottom: .9rem; right: .9rem;
  display: flex;
  gap: .4rem;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .3s, transform .3s;
}
.sbx-prod:hover .sbx-prod-actions { opacity: 1; transform: translateY(0); }
.sbx-prod-btn {
  width: 34px; height: 34px;
  background: rgba(9,9,15,.8);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(8px);
  transition: all .25s;
  text-decoration: none;
}
.sbx-prod-btn:hover { background: var(--gold); border-color: var(--gold); }
.sbx-prod-btn svg { width: 14px; height: 14px; stroke: var(--cream); }
.sbx-prod-btn:hover svg { stroke: var(--ink-deep); }
.sbx-prod-info { padding: 1.2rem 1.4rem 1.5rem; }
.sbx-prod-cat {
  font-size: .6rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--gold-dk);
  margin-bottom: .4rem;
}
.sbx-prod-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.1rem;
  font-weight: 400;
  color: var(--cream);
  margin-bottom: .7rem;
  text-decoration: none;
}
.sbx-prod-pricing { display: flex; align-items: center; gap: .65rem; }
.sbx-prod-price { font-size: .95rem; font-weight: 500; color: var(--gold); }
.sbx-prod-old { font-size: .78rem; color: var(--cream-dk); text-decoration: line-through; }
.sbx-prod-disc { font-size: .62rem; color: var(--terra-lt); font-weight: 500; }

/* No-image placeholder */
.sbx-prod-img.no-img {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 220px;
}
.sbx-prod-img.no-img span {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.5rem;
  font-style: italic;
  color: rgba(212,168,83,.3);
  text-align: center;
  padding: 1rem;
}

/* --- About Section --- */
.sbx-about { background: var(--ink); }
.sbx-about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(3rem,6vw,6rem);
  align-items: center;
}
.sbx-about-visual { position: relative; height: 500px; }
.sbx-about-main {
  position: absolute;
  top: 0; left: 0; right: 5rem; bottom: 5rem;
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg,#1F3A28,#0D3D25,#0A2010);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.sbx-about-main::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cpath d='M40 5 L75 65 L5 65 Z' fill='none' stroke='rgba(212,168,83,.15)' stroke-width='1'/%3E%3Cpath d='M40 20 L65 60 L15 60 Z' fill='none' stroke='rgba(212,168,83,.1)' stroke-width='.7'/%3E%3C/svg%3E") repeat;
}
.sbx-about-main-inner {
  text-align: center;
  z-index: 1;
}
.sbx-about-brand {
  font-family: 'Cinzel', serif;
  font-size: 2.5rem;
  font-weight: 600;
  color: rgba(212,168,83,.3);
  letter-spacing: .15em;
}
.sbx-about-sub-brand {
  font-size: .65rem;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: rgba(212,168,83,.2);
  margin-top: .4rem;
}
.sbx-about-accent {
  position: absolute;
  bottom: 0; right: 0;
  width: 180px; height: 180px;
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg,#C4622D,#8B3B15);
  border: 3px solid var(--ink);
  overflow: hidden;
}
.sbx-about-accent::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Crect x='5' y='5' width='30' height='30' fill='none' stroke='rgba(255,255,255,.15)' stroke-width='.8'/%3E%3C/svg%3E") repeat;
}
.sbx-about-badge {
  position: absolute;
  top: 1.5rem; right: 1.5rem;
  background: rgba(9,9,15,.85);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 1rem 1.4rem;
  backdrop-filter: blur(12px);
  text-align: center;
}
.sbx-about-badge-n {
  font-family: 'Cormorant Garamond', serif;
  font-size: 2.2rem;
  font-weight: 300;
  color: var(--gold);
  line-height: 1;
}
.sbx-about-badge-l {
  font-size: .6rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--cream-dk);
  margin-top: .2rem;
}
.sbx-about-text {
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.8;
  color: var(--cream-dk);
  margin: 1.5rem 0 2rem;
}
.sbx-highlights { display: flex; flex-direction: column; gap: .9rem; margin-bottom: 2rem; }
.sbx-highlight {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.3rem;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  transition: border-color .25s, background .25s;
}
.sbx-highlight:hover { border-color: var(--gold-dk); background: rgba(212,168,83,.04); }
.sbx-highlight-icon {
  width: 34px; height: 34px;
  flex-shrink: 0;
  background: rgba(212,168,83,.1);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
}
.sbx-highlight-icon svg { width: 16px; height: 16px; stroke: var(--gold); fill: none; }
.sbx-highlight-text { font-size: .87rem; color: var(--cream-dk); }
.sbx-highlight-text strong { color: var(--cream); display: block; margin-bottom: .15rem; font-weight: 500; }

/* --- Testimonials --- */
.sbx-testis {
  background: var(--ink-deep);
  position: relative;
  overflow: hidden;
}
.sbx-testis::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Crect x='0' y='0' width='20' height='20' fill='%23D4A853' opacity='.025'/%3E%3Crect x='40' y='0' width='20' height='20' fill='%23D4A853' opacity='.025'/%3E%3Crect x='20' y='20' width='20' height='20' fill='%23D4A853' opacity='.025'/%3E%3Crect x='60' y='20' width='20' height='20' fill='%23D4A853' opacity='.025'/%3E%3C/svg%3E");
}
.sbx-testis-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 1.5rem;
}
.sbx-testi {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 2.2rem;
  transition: border-color .3s, transform .3s;
}
.sbx-testi:hover { border-color: var(--gold-dk); transform: translateY(-4px); }
.sbx-stars { color: var(--gold); font-size: 1rem; margin-bottom: 1.2rem; letter-spacing: .2em; }
.sbx-testi-text {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.15rem;
  font-style: italic;
  font-weight: 300;
  line-height: 1.65;
  color: var(--cream);
  margin-bottom: 1.8rem;
}
.sbx-testi-author { display: flex; align-items: center; gap: .9rem; }
.sbx-avatar {
  width: 42px; height: 42px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Cinzel', serif;
  font-size: .85rem;
  font-weight: 600;
  flex-shrink: 0;
}
.sbx-testi-name { font-size: .85rem; font-weight: 500; color: var(--cream); }
.sbx-testi-role { font-size: .7rem; color: var(--cream-dk); }

/* --- Gallery Strip --- */
.sbx-gallery {
  display: flex;
  gap: 2px;
  height: 300px;
  overflow: hidden;
}
.sbx-gallery-item {
  flex: 1;
  position: relative;
  overflow: hidden;
  transition: flex .5s cubic-bezier(.25,.46,.45,.94);
}
.sbx-gallery-item:hover { flex: 2.5; }
.sbx-gallery-swatch {
  position: absolute;
  inset: 0;
  transition: transform .5s ease;
}
.sbx-gallery-item:hover .sbx-gallery-swatch { transform: scale(1.04); }
.sbx-gallery-item:nth-child(1) .sbx-gallery-swatch { background: linear-gradient(160deg,#0D3D25,#2D6A4F); }
.sbx-gallery-item:nth-child(2) .sbx-gallery-swatch { background: linear-gradient(160deg,#4A0E0E,#C4622D); }
.sbx-gallery-item:nth-child(3) .sbx-gallery-swatch { background: linear-gradient(160deg,#1A237E,#3F51B5); }
.sbx-gallery-item:nth-child(4) .sbx-gallery-swatch { background: linear-gradient(160deg,#6A1B4D,#C2185B); }
.sbx-gallery-item:nth-child(5) .sbx-gallery-swatch { background: linear-gradient(160deg,#4E342E,#A1887F); }
.sbx-gallery-item:nth-child(6) .sbx-gallery-swatch { background: linear-gradient(160deg,#33691E,#7CB342); }
.sbx-gallery-label {
  position: absolute;
  bottom: 1.2rem; left: 1.2rem;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity .3s, transform .3s;
}
.sbx-gallery-item:hover .sbx-gallery-label { opacity: 1; transform: translateY(0); }
.sbx-gallery-label-text {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.2rem;
  font-style: italic;
  color: #fff;
}

/* --- Contact / Newsletter --- */
.sbx-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(3rem,6vw,6rem);
}
.sbx-contact-items { display: flex; flex-direction: column; gap: 1rem; margin: 2rem 0; }
.sbx-contact-item {
  display: flex;
  align-items: flex-start;
  gap: .9rem;
  padding: 1.1rem 1.3rem;
  border: 1px solid var(--border);
  border-radius: var(--radius);
}
.sbx-contact-icon {
  width: 34px; height: 34px;
  flex-shrink: 0;
  background: rgba(212,168,83,.08);
  border-radius: var(--radius);
  display: flex; align-items: center; justify-content: center;
}
.sbx-contact-icon svg { width: 16px; height: 16px; stroke: var(--gold); fill: none; }
.sbx-contact-lbl {
  font-size: .62rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--gold-dk);
  margin-bottom: .2rem;
}
.sbx-contact-val { font-size: .88rem; color: var(--cream); }

.sbx-nl-title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(1.8rem,3vw,2.6rem) !important;
  font-weight: 300 !important;
  font-style: italic !important;
  margin: .9rem 0 .6rem !important;
  color: var(--cream) !important;
}
.sbx-nl-desc { font-size: .9rem; color: var(--cream-dk); line-height: 1.7; margin-bottom: 1.8rem; }
.sbx-nl-form { display: flex; }
.sbx-nl-input {
  flex: 1;
  background: var(--card);
  border: 1px solid var(--border);
  border-right: none;
  border-radius: var(--radius) 0 0 var(--radius);
  padding: .9rem 1.1rem;
  font-family: 'DM Sans', sans-serif;
  font-size: .85rem;
  color: var(--cream);
  outline: none;
  transition: border-color .25s;
}
.sbx-nl-input:focus { border-color: var(--gold-dk); }
.sbx-nl-input::placeholder { color: var(--cream-dk); opacity: .5; }
.sbx-nl-btn {
  background: var(--gold);
  color: var(--ink-deep);
  font-family: 'DM Sans', sans-serif;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: .9rem 1.3rem;
  border-radius: 0 var(--radius) var(--radius) 0;
  border: none;
  transition: background .25s;
}
.sbx-nl-btn:hover { background: var(--gold-lt); }
.sbx-nl-note { font-size: .68rem; color: var(--cream-dk); opacity: .6; margin-top: .6rem; }
.sbx-wholesale-box {
  margin-top: 2.5rem;
  padding: 1.8rem;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
}
.sbx-wholesale-box-tag {
  font-size: .65rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: .9rem;
}
.sbx-wholesale-box p { font-size: .88rem; margin-bottom: 1.3rem; }

/* --- Payment Strip --- */
.sbx-payment {
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  padding: 1.1rem 0;
  background: var(--ink-deep);
}
.sbx-payment-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.5rem;
  flex-wrap: wrap;
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 clamp(1.5rem,5vw,4rem);
}
.sbx-payment-label {
  font-size: .65rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--cream-dk);
}
.sbx-payment-badges { display: flex; gap: 1rem; align-items: center; flex-wrap: wrap; }
.sbx-pay-badge {
  height: 26px;
  padding: .2rem .65rem;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .62rem;
  font-weight: 600;
  letter-spacing: .05em;
  color: var(--cream-dk);
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
  .sbx-hero { grid-template-columns: 1fr; min-height: auto; }
  .sbx-hero-right { display: none; }
  .sbx-hero-left { padding: 7rem 2rem 5rem; }
  .sbx-cats-wrap { grid-template-columns: repeat(2,1fr); }
  .sbx-cat:nth-child(1),
  .sbx-cat:nth-child(5),
  .sbx-cat:nth-child(7) { grid-column: span 2; }
  .sbx-products-wrap { grid-template-columns: repeat(2,1fr); }
  .sbx-about-grid { grid-template-columns: 1fr; }
  .sbx-about-visual { height: 320px; }
  .sbx-testis-grid { grid-template-columns: 1fr; }
  .sbx-contact-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .sbx-products-wrap { grid-template-columns: 1fr; }
  .sbx-hero-stats { gap: 1.5rem; }
  .sbx-cats-wrap { grid-template-columns: 1fr; }
  .sbx-cat:nth-child(1),
  .sbx-cat:nth-child(5),
  .sbx-cat:nth-child(7) { grid-column: span 1; }
}
