/* ==========================================================================
   SimpleClothing — Global Custom Styles · v2.0 Classic & Trust
   PALETTE: #0C2645 navy | #B6553A rust | #4f46e5 indigo | #e2e8f0 gray | #f5f5f5 bg
   FONTS:   Georgia (headings + logo) | Inter (body)
   ========================================================================== */

/* === GLOBAL TOKENS & FONTS ============================================== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root {
  --sc-navy:   #0C2645;
  --sc-rust:   #B6553A;
  --sc-indigo: #4f46e5;
  --sc-gray:   #e2e8f0;
  --sc-bg:     #f5f5f5;
  --sc-muted:  #64748b;
  --sc-line:   #f1f5f9;
  --sc-radius: 4px;
  --sc-radius-md: 6px;
  --sc-radius-lg: 8px;
  --sc-shadow: 0 1px 3px rgba(12,38,69,0.06);
  --sc-shadow-md: 0 4px 12px rgba(12,38,69,0.10);
}

body {
  font-family: 'Inter', 'Helvetica Neue', system-ui, -apple-system, sans-serif !important;
  color: var(--sc-navy) !important;
  overflow-x: hidden !important;
}

/* Headings — Georgia serif, navy, classic */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: Georgia, 'Times New Roman', serif !important;
  color: var(--sc-navy) !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
}
h1, .h1 { font-size: calc((1.375rem + 1.5vw) * 0.85) !important; }
h2, .h2 { font-size: calc((1.325rem + 0.9vw) * 0.85) !important; }
h3, .h3 { font-size: calc((1.3rem + 0.6vw) * 0.85) !important; }
h4, .h4 { font-size: calc((1.275rem + 0.3vw) * 0.85) !important; }
h5, .h5 { font-size: calc(1.25rem * 0.85) !important; }
h6, .h6 { font-size: calc(1rem * 0.9) !important; }

a { color: var(--sc-navy); text-decoration: none; transition: color 0.18s; }
a:hover { color: var(--sc-rust); }

hr { border-color: var(--sc-line) !important; opacity: 1 !important; }

/* === BUTTONS — UNIFIED SYSTEM =========================================== */
/* Primary CTA = RUST (add-to-cart, submit, checkout) */
.btn-primary,
button.btn-primary,
input[type="submit"].btn-primary,
.cart-detailed__actions .btn-primary,
.product-add-to-cart .btn-primary,
.add-to-cart {
  background-color: var(--sc-rust) !important;
  border-color: var(--sc-rust) !important;
  color: #fff !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  border-radius: var(--sc-radius) !important;
  padding: 0.7rem 1.5rem !important;
  font-size: 0.85rem !important;
  transition: background-color 0.2s, transform 0.05s !important;
  box-shadow: none !important;
}
.btn-primary:hover, .add-to-cart:hover {
  background-color: #9c4831 !important;
  border-color: #9c4831 !important;
  color: #fff !important;
}
.btn-primary:active, .add-to-cart:active { transform: translateY(1px); }
.btn-primary:disabled, .add-to-cart:disabled {
  background-color: #cbd5e1 !important; border-color: #cbd5e1 !important;
}

/* Secondary = NAVY filled (used on dark surfaces or alt actions) */
.btn-secondary {
  background-color: var(--sc-navy) !important;
  border-color: var(--sc-navy) !important;
  color: #fff !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  border-radius: var(--sc-radius) !important;
  padding: 0.7rem 1.5rem !important;
  font-size: 0.85rem !important;
}
.btn-secondary:hover { background-color: #081a31 !important; border-color: #081a31 !important; }

/* Outline = navy bordered (continue shopping, cancel, back) */
.btn-outline-primary, .btn-outline-secondary {
  background-color: transparent !important;
  border: 1px solid var(--sc-navy) !important;
  color: var(--sc-navy) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  border-radius: var(--sc-radius) !important;
  padding: 0.65rem 1.4rem !important;
  font-size: 0.82rem !important;
}
.btn-outline-primary:hover, .btn-outline-secondary:hover {
  background-color: var(--sc-navy) !important; color: #fff !important;
}

/* Link-style buttons */
.btn-link { color: var(--sc-indigo) !important; text-decoration: underline !important; padding: 0 !important; font-weight: 500 !important; }
.btn-link:hover { color: var(--sc-rust) !important; }

/* === FORMS — UNIFIED ==================================================== */
.form-control, .form-select,
input[type="text"], input[type="email"], input[type="password"],
input[type="tel"], input[type="number"], input[type="search"],
input[type="url"], textarea, select {
  border: 1px solid var(--sc-gray) !important;
  border-radius: var(--sc-radius) !important;
  padding: 0.55rem 0.75rem !important;
  font-size: 0.9rem !important;
  color: var(--sc-navy) !important;
  background-color: #fff !important;
  transition: border-color 0.15s, background-color 0.15s !important;
  box-shadow: none !important;
}
.form-control:focus, .form-select:focus,
input:focus, textarea:focus, select:focus {
  border-color: var(--sc-indigo) !important;
  background-color: #f0f4ff !important;
  outline: none !important;
  box-shadow: none !important;
}

label, .form-label {
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  color: var(--sc-navy) !important;
  margin-bottom: 0.3rem !important;
}

.form-check-input:checked {
  background-color: var(--sc-navy) !important;
  border-color: var(--sc-navy) !important;
}

.required { color: var(--sc-rust); }

/* === HEADER (existing — kept) =========================================== */
/* Top utility bar: visible (navy, slim) */
.header-top {
  display: block !important;
  background: var(--sc-navy) !important;
  color: #fff !important;
  padding: 6px 0 !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.3px !important;
  border: none !important;
}
.header-top .container,
.header-top__row { display: flex !important; justify-content: space-between !important; align-items: center !important; flex-wrap: wrap !important; }
.header-top a, .header-top span, .header-top .nav-link { color: #fff !important; font-size: 0.72rem !important; }
.header-top a:hover { color: var(--sc-rust) !important; }

.header-bottom { background: #fff !important; box-shadow: var(--sc-shadow) !important; }
.header-bottom__row { display: flex !important; flex-wrap: wrap !important; align-items: center !important; }
.header-bottom__logo { order: 1 !important; flex-shrink: 0 !important; }
.header-bottom__logo .logo img { max-height: 42px !important; }

@media (min-width: 1025px) {
  .ps-mainmenu--mobile { display: none !important; }
  .ps-mainmenu--desktop .ps-mainmenu__mobile-toggle { display: none !important; }
  nav.ps-mainmenu__desktop.d-none { display: block !important; }
  .ps-mainmenu--desktop .ps-mainmenu__tree { display: flex !important; }
}

/* Search */
.header-bottom .order-2.ms-auto {
  order: 2 !important; flex: 1 1 200px !important; max-width: 630px !important;
  margin-left: 1.5rem !important; margin-right: 0 !important;
  position: relative !important;
}
.header-bottom .ps-searchbar { position: relative !important; }
.ps-searchbar__input {
  height: 2.4rem !important; border-radius: var(--sc-radius-md) !important;
  background: #fff !important; border: 1px solid var(--sc-gray) !important;
  padding-left: 2.5rem !important; font-size: 0.88rem !important;
  width: 100% !important; min-width: 180px !important;
  color: var(--sc-navy) !important;
}
.ps-searchbar__input:focus {
  border-color: var(--sc-indigo) !important;
  box-shadow: 0 0 0 2px rgba(79,70,229,0.15) !important;
  outline: none !important;
}

/* Search dropdown */
.ps-searchbar__dropdown {
  position: absolute !important; top: 100% !important; left: 0 !important;
  width: 100% !important; z-index: 1000 !important;
  max-height: 300px !important; overflow-y: auto !important;
  border-radius: 0 0 var(--sc-radius-md) var(--sc-radius-md) !important;
  box-shadow: var(--sc-shadow-md) !important;
  border: 1px solid var(--sc-gray) !important; border-top: none !important;
  background: #fff !important;
}
.ps-searchbar__results .product-miniature,
.ps-searchbar__results li,
.ps-searchbar__results .search-result-item {
  padding: 0.5rem 0.75rem !important;
  border-bottom: 1px solid var(--sc-bg) !important;
  font-size: 0.85rem !important;
}
.ps-searchbar__results img,
.ps-searchbar__results .product-thumbnail,
.ps-searchbar__results picture { display: none !important; }
.ps-searchbar__results .product-title,
.ps-searchbar__results a {
  font-size: 0.85rem !important; color: var(--sc-navy) !important;
  text-decoration: none !important; padding: 0.5rem 1rem !important;
}
.ps-searchbar__results a:hover,
.ps-searchbar__results li:hover { color: var(--sc-indigo) !important; background: var(--sc-bg) !important; }
.ps-searchbar__results .product-price { font-size: 0.8rem !important; color: var(--sc-rust) !important; }

/* Header actions */
.sc-header-actions {
  order: 3 !important; display: flex !important; align-items: center !important;
  gap: 0.5rem !important; margin-left: auto !important;
  flex: 0 0 auto !important; width: auto !important;
  flex-shrink: 0 !important; flex-wrap: nowrap !important;
}
.sc-header-actions a, .sc-header-actions span, .sc-header-actions button {
  font-size: 0.82rem !important; color: var(--sc-navy) !important; white-space: nowrap !important;
}
.sc-header-actions a:hover { color: var(--sc-rust) !important; }
.sc-header-actions > div { flex-shrink: 0 !important; }
.sc-header-actions .js-language-selector,
.sc-header-actions .js-currency-selector,
.sc-header-actions select {
  width: 65px !important; padding: 0.2rem 0.2rem !important;
  font-size: 0.8rem !important; border: 1px solid var(--sc-gray) !important;
  border-radius: var(--sc-radius) !important; background: #fff !important;
  color: var(--sc-navy) !important; appearance: auto !important;
}

/* Cart counter badge — rust */
.blockcart .cart-products-count,
#_desktop_cart .cart-products-count,
.ps-shoppingcart__count,
.header-cart__count {
  background-color: var(--sc-rust) !important;
  color: #fff !important;
  font-weight: 700 !important;
  border-radius: 10px !important;
  padding: 1px 6px !important;
  font-size: 0.7rem !important;
}

/* Nav — full-width gray bar */
.header-bottom { position: relative !important; }
.ps-mainmenu--desktop {
  order: 10 !important;
  flex: 0 0 100% !important;
  background: transparent !important;
  border: none !important;
  position: relative !important;
  z-index: 1 !important;
}
.ps-mainmenu--desktop::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; bottom: 0 !important;
  left: -50vw !important;
  width: 200vw !important;
  background: var(--sc-gray) !important;
  border-bottom: 1px solid #d1d5db !important;
  z-index: -1 !important;
}
.ps-mainmenu__tree {
  justify-content: flex-start !important; gap: 0 !important;
  padding: 0 !important; margin: 0 !important;
}
.ps-mainmenu__tree-item { border-right: none !important; }
.ps-mainmenu__tree-link {
  text-transform: uppercase !important; font-weight: 600 !important;
  font-size: 0.82rem !important; letter-spacing: 0.4px !important;
  color: var(--sc-navy) !important; padding: 0.85rem 1.1rem !important;
  font-family: 'Inter', sans-serif !important;
  transition: color 0.2s, border-bottom-color 0.2s !important;
  border-bottom: 2px solid transparent !important;
}
.ps-mainmenu__tree-link:hover,
.ps-mainmenu__tree-item:hover .ps-mainmenu__tree-link,
.ps-mainmenu__tree-item.active .ps-mainmenu__tree-link,
.ps-mainmenu__tree-item.current .ps-mainmenu__tree-link { color: var(--sc-rust) !important; border-bottom-color: var(--sc-rust) !important; }
.ps-mainmenu__tree-dropdown-toggle { color: var(--sc-navy) !important; }

/* Submenu — categories */
.ps-mainmenu__tree-item .js-sub-menu.submenu {
  width: auto !important; min-width: 220px !important; max-width: 350px !important;
  left: 0 !important; right: auto !important;
  padding: 0.75rem 0 !important; border-radius: 0 0 var(--sc-radius-lg) var(--sc-radius-lg) !important;
  box-shadow: var(--sc-shadow-md) !important;
  border: 1px solid var(--sc-line) !important;
  border-top: none !important;
}
.ps-mainmenu .submenu__left { column-count: 1 !important; }
.submenu__left-item { padding: 0.3rem 1.2rem !important; }
.ps-mainmenu .submenu a, .ps-mainmenu .submenu__left-item a {
  font-weight: 400 !important; color: var(--sc-navy) !important; font-size: 0.85rem !important;
  font-family: 'Inter', sans-serif !important;
}
.ps-mainmenu__tree-item.type-manufacturers .js-sub-menu.submenu {
  max-width: 700px !important; width: auto !important;
}
.ps-mainmenu__tree-item.type-manufacturers .submenu__left {
  column-count: 3 !important; column-gap: 2rem !important;
}
.ps-mainmenu .submenu a:hover, .ps-mainmenu .submenu__left-item a:hover { color: var(--sc-rust) !important; }

/* === BREADCRUMB ========================================================= */
.breadcrumb {
  background: transparent !important;
  padding: 0.6rem 0 !important;
  margin: 0 !important;
  font-size: 0.78rem !important;
  color: var(--sc-muted) !important;
}
.breadcrumb a { color: var(--sc-muted) !important; }
.breadcrumb a:hover { color: var(--sc-navy) !important; }
.breadcrumb-item.active, .breadcrumb-item:last-child { color: var(--sc-navy) !important; font-weight: 500 !important; }
.breadcrumb-item + .breadcrumb-item::before { color: #cbd5e1 !important; content: "›" !important; }

/* Breadcrumbs visible only on product page (existing rule kept) */
.breadcrumb { display: none !important; }
.page-product .breadcrumb,
.page-cms .breadcrumb,
.page-customer-account .breadcrumb,
.page-contact .breadcrumb,
.page-my-account .breadcrumb,
.page-history .breadcrumb,
.page-addresses .breadcrumb,
.page-identity .breadcrumb { display: flex !important; }

#js-product-list-header,
.page-category h1, .page-manufacturer h1,
.page-best-sales h1, .page-new-products h1,
.page-prices-drop h1 { display: none !important; }

.sc-cat-name { color: var(--sc-navy) !important; }

/* === LISTING / CATEGORY PAGES =========================================== */
.page-manufacturer #center-column,
.page-best-sales #center-column,
.page-new-products #center-column,
.page-prices-drop #center-column {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}
.page-manufacturer.sc-filters-active #center-column,
.page-best-sales.sc-filters-active #center-column,
.page-new-products.sc-filters-active #center-column,
.page-prices-drop.sc-filters-active #center-column {
  flex: 0 0 75% !important;
  max-width: 75% !important;
}
#left-column .ps-categorytree { display: none !important; }

/* Top toolbar on listing */
#js-product-list-top, .products-selection {
  padding: 0.5rem 0 !important;
  border-bottom: 1px solid var(--sc-line) !important;
  margin-bottom: 1rem !important;
}
.total-products p, .products-selection .col-md-6 {
  font-size: 0.82rem !important;
  color: var(--sc-muted) !important;
  margin: 0 !important;
}
.products-sort-order .select-title {
  font-size: 0.82rem !important;
  border: 1px solid var(--sc-gray) !important;
  border-radius: var(--sc-radius) !important;
  padding: 0.35rem 0.7rem !important;
  color: var(--sc-navy) !important;
  background: #fff !important;
}

/* === PRODUCT MINIATURE — UNIFIED CARD =================================== */
.product-miniature,
article.product-miniature {
  margin-bottom: 1rem !important;
}
.product-miniature .card {
  border: 1px solid var(--sc-line) !important;
  border-radius: var(--sc-radius-md) !important;
  background: #fff !important;
  box-shadow: none !important;
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s !important;
  overflow: hidden !important;
  height: 100% !important;
}
.product-miniature .card:hover {
  border-color: var(--sc-gray) !important;
  box-shadow: 0 4px 14px rgba(12,38,69,0.08) !important;
}
.product-miniature__link { color: inherit !important; text-decoration: none !important; display: block !important; }
.product-miniature__image-container,
.product-miniature .thumbnail-container {
  background: var(--sc-bg) !important;
  position: relative !important;
  overflow: hidden !important;
  aspect-ratio: 3/4 !important;
}
.product-miniature__image, .product-miniature .card-img-top {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.4s ease !important;
}
.product-miniature .card:hover .product-miniature__image,
.product-miniature .card:hover .card-img-top { transform: scale(1.04) !important; }

.product-miniature .card-body,
.product-miniature__body {
  padding: 0.7rem 0.75rem 0.85rem !important;
}
.product-miniature__manufacturer,
.product-miniature .product-manufacturer {
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  color: var(--sc-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 0.15rem !important;
  display: block !important;
}
.product-miniature__title,
.product-miniature .product-title,
.product-miniature .product-title a,
.product-miniature h2.product-title,
.product-miniature h3.product-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  color: var(--sc-navy) !important;
  line-height: 1.35 !important;
  margin: 0 0 0.4rem !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 2.4em !important;
}
.product-miniature__title:hover, .product-miniature .product-title a:hover { color: var(--sc-rust) !important; }

/* Prices in card */
.product-miniature .price,
.product-miniature .product-price,
.product-miniature__price {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--sc-navy) !important;
  font-family: 'Inter', sans-serif !important;
}
.product-miniature .product-price-and-shipping .regular-price,
.product-miniature .regular-price {
  font-size: 0.78rem !important;
  font-weight: 400 !important;
  color: #94a3b8 !important;
  text-decoration: line-through !important;
  margin-right: 0.4rem !important;
}
.product-miniature .has-discount .price,
.product-miniature .price.discount,
.product-miniature .product-price.has-discount {
  color: var(--sc-rust) !important;
}

/* Product flags (NEW/SALE/PROMO) */
.product-flags {
  position: absolute !important;
  top: 8px !important; left: 8px !important;
  z-index: 2 !important;
  list-style: none !important;
  padding: 0 !important; margin: 0 !important;
  display: flex !important; flex-direction: column !important; gap: 4px !important;
}
.product-flag {
  display: inline-block !important;
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 3px 7px !important;
  border-radius: 2px !important;
  color: #fff !important;
  background: var(--sc-navy) !important;
  border: none !important;
}
.product-flag.discount, .product-flag.discount-percentage,
.product-flag.on-sale, .product-flag.sale {
  background: var(--sc-rust) !important;
}
.product-flag.new { background: var(--sc-navy) !important; }
.product-flag.online-only, .product-flag.pack { background: var(--sc-indigo) !important; }

/* === PRODUCT PAGE ======================================================= */
.page-product main { background: #fff !important; }

.product__name, .page-product h1 {
  font-family: Georgia, serif !important;
  font-size: 1.5rem !important;
  font-weight: 600 !important;
  color: var(--sc-navy) !important;
  line-height: 1.2 !important;
  margin: 0.3rem 0 0.5rem !important;
}
.product__manufacturer-name, .product-manufacturer .manufacturer-logo + a,
.product-manufacturer a {
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  color: var(--sc-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}
.product__reference, .product-reference {
  font-size: 0.78rem !important; color: var(--sc-muted) !important;
}
.product__reference span, .product-reference span { color: var(--sc-navy) !important; font-weight: 500 !important; }

/* Prices block */
.product__prices, .product-prices {
  padding: 0.85rem 0 !important;
  border-top: 1px solid var(--sc-line) !important;
  border-bottom: 1px solid var(--sc-line) !important;
  margin: 1rem 0 !important;
}
.product__prices .current-price, .product-prices .current-price,
.product-price .current-price {
  font-size: 1.7rem !important;
  font-weight: 700 !important;
  color: var(--sc-navy) !important;
  font-family: 'Inter', sans-serif !important;
}
.product__prices .has-discount .current-price,
.product-prices .has-discount .current-price { color: var(--sc-rust) !important; }
.product__prices .regular-price, .product-prices .regular-price {
  font-size: 1rem !important; color: #94a3b8 !important; text-decoration: line-through !important; margin-left: 0.6rem !important;
}
.product__prices .discount, .product-prices .discount,
.product-discount-percentage {
  display: inline-block !important;
  background: #fef2f0 !important;
  color: var(--sc-rust) !important;
  padding: 2px 8px !important;
  border-radius: 3px !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-left: 0.5rem !important;
}

/* Variants — color swatches & size selector */
.product__variants, .product-variants {
  margin: 1rem 0 !important;
}
.product__variants .control-label,
.product-variants .control-label {
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  color: var(--sc-navy) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.4px !important;
  margin-bottom: 0.4rem !important;
  display: block !important;
}
.product-variants-item { margin-bottom: 0.85rem !important; }
.product-variants-item .input-color,
.product-variants-item .color {
  width: 26px !important; height: 26px !important;
  border-radius: 50% !important;
  border: 1px solid var(--sc-gray) !important;
  cursor: pointer !important;
}
.product-variants-item .input-color:checked + label,
.product-variants-item input:checked + .color,
.product-variants-item .input-container input:checked + span.color {
  box-shadow: 0 0 0 1.5px #fff inset, 0 0 0 2.5px var(--sc-navy) !important;
}
.product-variants-item label, .product-variants-item .input-container label {
  border: 1px solid var(--sc-gray) !important;
  padding: 0.4rem 0.85rem !important;
  font-size: 0.82rem !important;
  border-radius: var(--sc-radius) !important;
  color: var(--sc-navy) !important;
  background: #fff !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: border-color 0.15s !important;
}
.product-variants-item input:checked + label,
.product-variants-item .input-container input:checked + label {
  border: 2px solid var(--sc-navy) !important;
  padding: calc(0.4rem - 1px) calc(0.85rem - 1px) !important;
  font-weight: 600 !important;
}

/* Quantity */
.product-actions__quantity, .product-quantity {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
}
.quantity-button__group .btn-square-icon,
.product-quantity .qty-btn,
.product-quantity .input-group-btn-vertical button {
  width: 36px !important; height: 38px !important;
  border: 1px solid var(--sc-gray) !important;
  background: #fff !important;
  color: var(--sc-navy) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  padding: 0 !important;
}
.quantity-button__group input.form-control,
.product-quantity input.form-control {
  width: 50px !important; height: 38px !important;
  text-align: center !important;
  border: 1px solid var(--sc-gray) !important;
  border-left: none !important; border-right: none !important;
  font-weight: 600 !important;
  color: var(--sc-navy) !important;
  border-radius: 0 !important;
}
.quantity-button__group .decrement { border-radius: var(--sc-radius) 0 0 var(--sc-radius) !important; border-right: none !important; }
.quantity-button__group .increment { border-radius: 0 var(--sc-radius) var(--sc-radius) 0 !important; border-left: none !important; }

/* Add to cart row */
.product__add-to-cart, .product-add-to-cart {
  margin: 1rem 0 !important;
}
.product-actions__button.add .btn,
.product-add-to-cart .btn-primary,
.product-add-to-cart .add-to-cart {
  width: 100% !important;
  padding: 0.85rem 1.5rem !important;
  font-size: 0.95rem !important;
}

/* Product tabs */
.product__tabs, .product-tabs {
  margin-top: 2rem !important;
  border-top: 1px solid var(--sc-line) !important;
}
.product__tab-nav, .nav-tabs.product__tab-nav {
  border-bottom: 1px solid var(--sc-gray) !important;
  gap: 0 !important;
}
.product__tab-nav .nav-link {
  border: none !important;
  border-bottom: 2px solid transparent !important;
  color: var(--sc-muted) !important;
  background: transparent !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.4px !important;
  padding: 0.85rem 1.2rem !important;
  border-radius: 0 !important;
}
.product__tab-nav .nav-link:hover { color: var(--sc-navy) !important; }
.product__tab-nav .nav-link.active {
  color: var(--sc-navy) !important;
  border-bottom-color: var(--sc-rust) !important;
  background: transparent !important;
}
.tab-content { padding: 1.25rem 0 !important; font-size: 0.92rem !important; line-height: 1.7 !important; color: #334155 !important; }
.tab-content h2, .tab-content h3 { margin-top: 1.2rem !important; }

/* Product images / thumbs */
.product-images, .product__images {
  border-radius: var(--sc-radius-md) !important;
  overflow: hidden !important;
}
.product-thumbnails .thumb,
.product__thumbs img {
  border: 1px solid var(--sc-gray) !important;
  border-radius: 3px !important;
  cursor: pointer !important;
  transition: border-color 0.15s !important;
}
.product-thumbnails .thumb:hover,
.product__thumbs img:hover { border-color: var(--sc-navy) !important; }
.product-thumbnails .thumb.selected,
.product-thumbnails .thumb.active,
.product__thumbs img.selected,
.product__thumbs img.active { border: 2px solid var(--sc-navy) !important; }

/* Trust badges below add-to-cart */
.product-additional-info,
.product__additional-info {
  background: var(--sc-bg) !important;
  border-radius: var(--sc-radius-md) !important;
  padding: 0.85rem 1rem !important;
  font-size: 0.82rem !important;
  color: var(--sc-muted) !important;
  margin-top: 1rem !important;
}
.product-additional-info i, .product-additional-info .material-icons {
  color: var(--sc-navy) !important; font-size: 1rem !important; margin-right: 0.4rem !important;
}

/* === FACETED FILTERS (existing — kept) ================================== */
#search_filters_wrapper {
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
#search_filters_wrapper > .block-title,
#search_filters_wrapper > h2,
#search_filters_wrapper > .h6 {
  padding: 0.5rem 0 !important;
  margin: 0 0 0.25rem 0 !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: var(--sc-navy) !important;
  background: none !important;
  border: none !important;
}
#search_filters_wrapper .accordion-item,
#search_filters_wrapper .facet {
  border: none !important;
  border-bottom: 1px solid #f0f0f0 !important;
}
#search_filters_wrapper .accordion-button,
#search_filters_wrapper .facet-title {
  padding: 0.7rem 0 !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: var(--sc-navy) !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
}
#search_filters_wrapper .accordion-button::after { color: #94a3b8 !important; }
#search_filters_wrapper .accordion-body,
#search_filters_wrapper .facet-body,
#search_filters_wrapper .sc-facet-body {
  padding: 0 0 0.5rem 0 !important;
  max-height: 220px !important;
  overflow-y: auto !important;
}
#search_filters_wrapper input[type="text"],
#search_filters_wrapper input[type="search"],
#search_filters_wrapper .sc-facet-search {
  position: sticky !important;
  top: 0 !important;
  z-index: 2 !important;
  background: #fff !important;
  margin-bottom: 0.4rem !important;
  border: 1px solid var(--sc-gray) !important;
  border-radius: var(--sc-radius) !important;
  padding: 0.35rem 0.5rem !important;
  font-size: 0.82rem !important;
  width: 100% !important;
}
#search_filters_wrapper label {
  font-size: 0.85rem !important;
  color: var(--sc-navy) !important;
  font-weight: 400 !important;
  padding: 0.2rem 0 !important;
}
#search_filters_wrapper label:hover { color: var(--sc-indigo) !important; }
#search_filters_wrapper .magnitude,
#search_filters_wrapper .facet-count {
  color: var(--sc-rust) !important;
  font-weight: 600 !important;
}

/* === PAGINATION ========================================================= */
.pagination, ul.pagination {
  display: flex !important;
  gap: 4px !important;
  margin: 1.5rem 0 !important;
  padding: 0 !important;
  list-style: none !important;
  justify-content: center !important;
}
.pagination .page-item .page-link,
.pagination li a, .pagination li span {
  border: 1px solid var(--sc-gray) !important;
  border-radius: var(--sc-radius) !important;
  color: var(--sc-navy) !important;
  background: #fff !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  padding: 0.45rem 0.8rem !important;
  min-width: 36px !important;
  text-align: center !important;
  text-decoration: none !important;
}
.pagination .page-item.active .page-link,
.pagination li.active a, .pagination li.current span {
  background: var(--sc-navy) !important;
  border-color: var(--sc-navy) !important;
  color: #fff !important;
}
.pagination .page-item .page-link:hover,
.pagination li a:hover {
  background: var(--sc-bg) !important;
  border-color: var(--sc-navy) !important;
}

/* === FOOTER (full restyle) ============================================== */
.footer__main {
  background: var(--sc-navy) !important;
  color: #cbd5e1 !important;
  padding: 2.5rem 0 0 !important;
  margin-top: 3rem !important;
}
.footer__main .container { color: #cbd5e1 !important; }
.footer__main h1, .footer__main h2, .footer__main h3, .footer__main h4, .footer__main h5,
.footer__main .footer-block__title,
.footer-block__title { color: #fff !important; }
.footer__main h3, .footer__main h4, .footer-block__title,
.footer__main .h3, .footer__main .h4 {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding-bottom: 0.6rem !important;
  margin-bottom: 0.8rem !important;
  border-bottom: 1px solid rgba(255,255,255,0.15) !important;
  color: #fff !important;
}
.footer__main a, .footer-block a, .footer__main p, .footer__main li {
  color: #cbd5e1 !important;
  font-size: 0.85rem !important;
  line-height: 2 !important;
  text-decoration: none !important;
}
.footer__main a:hover, .footer-block a:hover { color: var(--sc-rust) !important; }
.footer__main ul { padding-left: 0 !important; list-style: none !important; }
.footer-block, .footer__block, .links {
  margin-bottom: 1.5rem !important;
}

/* Newsletter input in footer */
.footer__main input[type="text"], .footer__main input[type="email"] {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  color: #fff !important;
  border-radius: var(--sc-radius) !important;
  padding: 0.55rem 0.75rem !important;
  font-size: 0.85rem !important;
}
.footer__main input::placeholder { color: rgba(255,255,255,0.5) !important; }
.footer__main input:focus { background: rgba(255,255,255,0.1) !important; border-color: var(--sc-rust) !important; }
.footer__main button, .footer__main .btn { background: var(--sc-rust) !important; border-color: var(--sc-rust) !important; color: #fff !important; font-weight: 600 !important; }

/* Copyright bar */
.footer__main .copyright, .footer__main p.copyright {
  background: #0a1f3a !important;
  margin: 2rem -100vw 0 !important;
  padding: 0.85rem 100vw !important;
  font-size: 0.75rem !important;
  color: #94a3b8 !important;
  text-align: center !important;
  border: none !important;
}
.footer__main .copyright a { color: #94a3b8 !important; }

/* Footer toggle (+/-) buttons (existing kept) */
.footer-block__title button {
  border: none !important;
  background: none !important;
  box-shadow: none !important;
  padding: 0.2rem !important;
  outline: none !important;
  position: relative !important;
  width: 24px !important;
  height: 24px !important;
}
.footer-block__title button::after { content: none !important; }
.footer-block__title button .material-icons,
.footer-block__title button svg { display: none !important; }
.footer-block__title button::before {
  content: '+' !important;
  font-size: 1.2rem !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,0.6) !important;
  display: block !important;
  line-height: 1 !important;
}
.footer-block__title button:not(.collapsed)::before { content: '\2212' !important; }
.footer-block:last-child .footer-block__content,
.ps-contactinfo-block .footer-block__content { display: block !important; }

/* === CMS / STATIC PAGES (Despre noi, Termeni, Politici) ================= */
.page-cms #wrapper, .page-cms main {
  padding: 1.5rem 0 !important;
}
.page-cms #content { background: #fff !important; }
.page-cms .cms-content, #content.page-cms,
.page-cms .page-content {
  font-size: 0.95rem !important;
  line-height: 1.75 !important;
  color: #334155 !important;
  max-width: 920px !important;
  margin: 0 auto !important;
}
.page-cms h1, .page-cms .page-header h1 {
  font-family: Georgia, serif !important;
  font-size: 1.8rem !important;
  color: var(--sc-navy) !important;
  margin-bottom: 1.2rem !important;
  padding-bottom: 0.6rem !important;
  border-bottom: 2px solid var(--sc-navy) !important;
}
.page-cms h2 { font-size: 1.25rem !important; margin-top: 1.5rem !important; }
.page-cms ul, .page-cms ol { padding-left: 1.4rem !important; }
.page-cms li { margin-bottom: 0.4rem !important; }

/* === CONTACT PAGE ======================================================= */
.page-contact #content,
.page-contact #main { padding: 1rem 0 !important; }
.page-contact .contact-form, .page-contact #content-wrapper {
  background: #fff !important;
}
.contact-form, .page-contact form {
  background: #fff !important;
  border: 1px solid var(--sc-line) !important;
  border-radius: var(--sc-radius-lg) !important;
  padding: 1.5rem !important;
}
.contact-rich .block, .contact-rich {
  background: var(--sc-bg) !important;
  border-radius: var(--sc-radius-md) !important;
  padding: 0.85rem 1rem !important;
  margin-bottom: 0.7rem !important;
  border: none !important;
}
.contact-rich .icon, .contact-rich i, .contact-rich .material-icons {
  width: 32px !important; height: 32px !important;
  background: var(--sc-navy) !important;
  color: #fff !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0.9rem !important;
}

/* === CUSTOMER ACCOUNT PAGES ============================================= */
.page-my-account #content, .page-customer-account #content,
.page-history #content, .page-addresses #content,
.page-identity #content { background: transparent !important; }

/* My account links grid */
.page-my-account .links {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 0.75rem !important;
  list-style: none !important;
  padding: 0 !important;
}
.page-my-account .links li a,
.page-my-account .links a {
  display: block !important;
  background: #fff !important;
  border: 1px solid var(--sc-line) !important;
  border-radius: var(--sc-radius-md) !important;
  padding: 1rem !important;
  text-decoration: none !important;
  color: var(--sc-navy) !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  transition: border-color 0.15s, box-shadow 0.15s !important;
}
.page-my-account .links li a:hover,
.page-my-account .links a:hover {
  border-color: var(--sc-navy) !important;
  box-shadow: var(--sc-shadow) !important;
  color: var(--sc-navy) !important;
}
.page-my-account .links i, .page-my-account .links .material-icons {
  display: inline-flex !important;
  width: 32px !important; height: 32px !important;
  background: var(--sc-navy) !important;
  color: #fff !important;
  border-radius: var(--sc-radius) !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1rem !important;
  margin-bottom: 0.5rem !important;
}

/* Tables in account (orders history, addresses) */
.page-customer-account .table, .page-history .table,
.page-addresses .table, .page-order-detail .table {
  font-size: 0.88rem !important;
  border-collapse: collapse !important;
  width: 100% !important;
}
.page-customer-account .table th, .page-history .table th, .table thead th {
  background: var(--sc-bg) !important;
  color: var(--sc-navy) !important;
  font-weight: 700 !important;
  font-size: 0.75rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  padding: 0.65rem 0.75rem !important;
  border: none !important;
  border-bottom: 1px solid var(--sc-gray) !important;
}
.page-customer-account .table td, .page-history .table td, .table tbody td {
  padding: 0.65rem 0.75rem !important;
  border-bottom: 1px solid var(--sc-line) !important;
  color: var(--sc-navy) !important;
  vertical-align: middle !important;
}

/* Order status badges */
.label, .order-status, .badge {
  display: inline-block !important;
  padding: 3px 8px !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.4px !important;
  border-radius: 3px !important;
}

/* === ALERTS / MESSAGES ================================================== */
.alert {
  border-radius: var(--sc-radius-md) !important;
  border: 1px solid transparent !important;
  padding: 0.75rem 1rem !important;
  font-size: 0.88rem !important;
}
.alert-success { background: #ecfdf5 !important; color: #047857 !important; border-color: #a7f3d0 !important; }
.alert-info, .alert-primary { background: #eff6ff !important; color: var(--sc-indigo) !important; border-color: #c7d2fe !important; }
.alert-warning { background: #fffbeb !important; color: #b45309 !important; border-color: #fde68a !important; }
.alert-danger { background: #fef2f2 !important; color: #b91c1c !important; border-color: #fecaca !important; }

/* === MODAL ============================================================== */
#blockcart-modal, #blockcart-modal ~ .modal-backdrop { display: none !important; }

.modal-content { border-radius: var(--sc-radius-lg) !important; border: none !important; box-shadow: 0 8px 32px rgba(12,38,69,0.2) !important; }
.modal-header { border-bottom: 1px solid var(--sc-line) !important; padding: 1rem 1.25rem !important; }
.modal-header .modal-title { font-family: Georgia, serif !important; color: var(--sc-navy) !important; }
.modal-footer { border-top: 1px solid var(--sc-line) !important; }

/* === TOAST (existing) =================================================== */
.sc-toast {
  position: fixed; top: 20px; right: 20px; z-index: 9999;
  background: var(--sc-navy); color: #fff; padding: 12px 20px; border-radius: var(--sc-radius-lg);
  font-size: 0.9rem; font-weight: 500; box-shadow: var(--sc-shadow-md);
  opacity: 0; transform: translateY(-10px);
  transition: opacity 0.3s, transform 0.3s;
  pointer-events: none;
}
.sc-toast.show { opacity: 1; transform: translateY(0); }

/* === GLOBAL FOCUS (existing) ============================================ */
input:focus, select:focus, textarea:focus, .form-control:focus,
.ps-searchbar__input:focus,
.quantity-button__group input:focus {
  border-color: var(--sc-indigo) !important;
  box-shadow: none !important;
  outline: none !important;
  background-color: #f0f4ff !important;
}

/* Checkout colors → moved to modules/thecheckout/views/css/custom.less.css */

/* === RESPONSIVE ========================================================= */
@media (max-width: 1024px) {
  .header-top {
    /* show on mobile too — simple, no actions */
    display: block !important;
    text-align: center !important;
    font-size: 0.68rem !important;
  }
  .sc-header-actions { display: none !important; }
  .ps-searchbar--mobile { display: none !important; }
  .sc-mobile-selectors { display: none !important; }

  .sc-menu-top select {
    width: 55px !important; font-size: 0.8rem !important;
    padding: 0.15rem !important; border: 1px solid var(--sc-gray) !important;
    border-radius: var(--sc-radius) !important; height: 28px !important;
  }

  .header-bottom__row {
    display: flex !important; flex-wrap: wrap !important;
    align-items: center !important; padding: 0.4rem 0.5rem !important;
  }
  .header-bottom__logo { order: 1 !important; flex: 0 0 auto !important; margin-right: auto !important; }
  .header-bottom__logo .logo img { max-height: 34px !important; }

  .ps-mainmenu--desktop {
    display: flex !important; order: 2 !important;
    flex: 0 0 auto !important; align-items: center !important;
    background: none !important; border: none !important;
    width: auto !important; padding: 0 !important;
  }
  .ps-mainmenu--desktop::before { display: none !important; }
  .ps-mainmenu--desktop .ps-mainmenu__tree { display: none !important; }
  .ps-mainmenu--desktop .ps-mainmenu__mobile-toggle { display: block !important; }
  .ps-mainmenu--desktop .menu-toggle .material-icons { color: var(--sc-navy) !important; font-size: 1.5rem !important; }

  #_mobile_ps_customersignin { display: none !important; }
  #_mobile_ps_shoppingcart { display: flex !important; order: 3 !important; flex: 0 0 auto !important; }

  .sc-mobile-search {
    order: 10 !important; flex: 0 0 100% !important;
    margin: 0.3rem 0 0 !important;
  }
  .sc-mobile-search .ps-searchbar,
  .sc-mobile-search .ps-searchbar__form { display: flex !important; width: 100% !important; }
  .ps-searchbar__input {
    min-width: 0 !important; height: 2.2rem !important;
    width: 100% !important; display: block !important;
  }

  .header-bottom .order-2.ms-auto,
  #_desktop_ps_searchbar { display: none !important; }

  .ps-mainmenu--mobile.offcanvas {
    display: flex !important; flex-direction: column !important;
  }
  .sc-mobile-menu {
    flex: 1 1 auto !important; overflow-y: auto !important; min-height: 0 !important;
  }
  .ps-mainmenu__additionnals {
    flex-shrink: 0 !important; background: #fff !important;
    padding: 0.5rem 1rem !important; border-top: 1px solid var(--sc-gray) !important;
    text-align: center !important;
  }
  .ps-mainmenu__additionnals .ps-mainmenu__selects,
  .ps-mainmenu__additionnals .ps-currencyselector,
  .ps-mainmenu__additionnals .ps-languageselector,
  .ps-mainmenu__additionnals #_mobile_ps_languageselector,
  .ps-mainmenu__additionnals #_mobile_ps_currencyselector { display: none !important; }

  /* Product page mobile */
  .product__name, .page-product h1 { font-size: 1.25rem !important; }
  .product__prices .current-price, .product-prices .current-price { font-size: 1.4rem !important; }
  .product__tab-nav .nav-link { padding: 0.7rem 0.8rem !important; font-size: 0.78rem !important; }

  /* Footer mobile — collapse columns */
  .footer__main { padding: 1.5rem 0 0 !important; }
  .footer__main h3, .footer__main h4, .footer-block__title { font-size: 0.82rem !important; padding: 0.6rem 0 !important; }
}

/* Tablet (768-1024) */
@media (min-width: 768px) and (max-width: 1024px) {
  .header-top {
    display: block !important;
    text-align: center !important;
  }
  .sc-header-actions { display: none !important; }
  .ps-searchbar--mobile { display: none !important; }

  .header-bottom__row {
    display: flex !important; flex-wrap: wrap !important;
    align-items: center !important; padding: 0.4rem 0.5rem !important;
  }
  .header-bottom__logo { order: 1 !important; flex: 0 0 auto !important; margin-right: auto !important; }
  .header-bottom__logo .logo img { max-height: 36px !important; }

  .ps-mainmenu--desktop {
    display: flex !important; order: 2 !important;
    flex: 0 0 auto !important; align-items: center !important;
    background: none !important; border: none !important;
    width: auto !important; padding: 0 !important;
  }
  .ps-mainmenu--desktop::before { display: none !important; }
  .ps-mainmenu--desktop .ps-mainmenu__tree { display: none !important; }
  .ps-mainmenu--desktop .ps-mainmenu__mobile-toggle { display: block !important; }
  .ps-mainmenu--desktop .menu-toggle .material-icons { color: var(--sc-navy) !important; font-size: 1.5rem !important; }

  #_mobile_ps_customersignin { display: none !important; }
  #_mobile_ps_shoppingcart { display: flex !important; order: 3 !important; flex: 0 0 auto !important; }

  .sc-mobile-search { order: 10 !important; flex: 0 0 100% !important; margin: 0.3rem 0 0 !important; }
  .sc-mobile-search .ps-searchbar,
  .sc-mobile-search .ps-searchbar__form { display: flex !important; width: 100% !important; }
  .ps-searchbar__input { min-width: 0 !important; height: 2.2rem !important; width: 100% !important; display: block !important; }

  .header-bottom .order-2.ms-auto,
  #_desktop_ps_searchbar { display: none !important; }
}

/* === END ================================================================ */
