/* ============================================================
   BIJOUX HÉLÈNE RIU — Theme Override Claude
   Surcharge progressive sur PS9 Classic
   Fonts: Cormorant Garamond, Inter Tight, Italiana
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500&family=Inter+Tight:wght@300;400;500;600&family=Italiana&display=swap');

/* ── VARIABLES ──────────────────────────────────────────── */
:root {
  --night: #0E0B1A;
  --night-2: #16122A;
  --night-3: #1F1934;
  --amethyst: #6B4A8C;
  --amethyst-light: #9B7FB8;
  --amethyst-deep: #3D2B5C;
  --gold: #D4B570;
  --gold-pale: #E8D9A8;
  --gold-deep: #A88845;
  --moon: #F4EFE6;
  --mist: #E8DFE8;
  --obsidian: #1A1520;

  --serif: 'Cormorant Garamond', 'Times New Roman', serif;
  --display: 'Italiana', serif;
  --sans: 'Inter Tight', system-ui, sans-serif;
}

/* ── BASE DARK ──────────────────────────────────────────── */
html, body {
  background: var(--night) !important;
  color: var(--moon) !important;
  font-family: var(--sans) !important;
  font-weight: 300 !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

::selection { background: var(--gold); color: var(--night); }

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--night); }
::-webkit-scrollbar-thumb { background: var(--amethyst-deep); }
::-webkit-scrollbar-thumb:hover { background: var(--amethyst); }

/* ── HEADER ─────────────────────────────────────────────── */
#header,
.header-top,
#header .header-top {
  background: rgba(14, 11, 26, 0.92) !important;
  backdrop-filter: blur(20px) saturate(140%);
  -webkit-backdrop-filter: blur(20px) saturate(140%);
  border-bottom: 1px solid rgba(212, 181, 112, 0.15) !important;
  box-shadow: none !important;
}

#header .logo,
#header .header-logo a {
  font-family: var(--display) !important;
  color: var(--moon) !important;
}

/* Nav links */
#top-menu > li > a,
.js-top-menu a,
#header .top-nav a {
  color: var(--moon) !important;
  font-family: var(--sans) !important;
  font-size: 11px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  transition: color 0.3s ease !important;
}
#top-menu > li > a:hover,
.js-top-menu a:hover {
  color: var(--gold) !important;
}

/* Icons header (panier, compte) */
#header .material-icons,
#header .cart-products-count,
#header .blockcart a,
#header .user-info a {
  color: var(--moon) !important;
}
#header .blockcart a:hover,
#header .user-info a:hover {
  color: var(--gold) !important;
}

/* Dropdown nav */
.popover, .dropdown-menu, #header .top-nav .dropdown-menu {
  background: var(--night-2) !important;
  border: 1px solid rgba(212, 181, 112, 0.2) !important;
}
.dropdown-item, .dropdown-menu a {
  color: var(--moon) !important;
}
.dropdown-item:hover, .dropdown-menu a:hover {
  background: rgba(212, 181, 112, 0.1) !important;
  color: var(--gold) !important;
}

/* ── SECTIONS PRINCIPALES ───────────────────────────────── */
#wrapper, #main, .page-content, #content-wrapper,
section, .section, .container-fluid {
  background: transparent !important;
  color: var(--moon) !important;
}

/* Cartes produits */
.product-miniature,
.js-product-miniature,
article.product-miniature {
  background: linear-gradient(180deg, rgba(31, 25, 52, 0.6) 0%, rgba(14, 11, 26, 0.9) 100%) !important;
  border: 1px solid rgba(232, 223, 232, 0.1) !important;
  color: var(--moon) !important;
  transition: border-color 0.4s ease, transform 0.4s cubic-bezier(0.2, 0.7, 0.2, 1) !important;
  border-radius: 0 !important;
}
.product-miniature:hover,
.js-product-miniature:hover {
  border-color: var(--gold) !important;
  transform: translateY(-5px) !important;
}

.product-miniature .product-title a,
.product-miniature h3 a,
.product-miniature .h3 a {
  color: var(--moon) !important;
  font-family: var(--serif) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  transition: color 0.3s;
}
.product-miniature .product-title a:hover,
.product-miniature h3 a:hover {
  color: var(--gold) !important;
}

.product-miniature .price,
.product-miniature .product-price-and-shipping .price {
  color: var(--gold) !important;
  font-family: var(--serif) !important;
  font-size: 1.1rem !important;
  font-weight: 400 !important;
}

/* Image produit overlay */
.product-miniature .product-thumbnail {
  position: relative;
  overflow: hidden;
}
.product-miniature .product-thumbnail::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 60%, rgba(14,11,26,0.5) 100%);
  pointer-events: none;
}

/* Bouton ajouter au panier sur card */
.product-miniature .add-to-cart,
.product-miniature .ajax_add_to_cart_button {
  background: transparent !important;
  border: 1px solid var(--gold) !important;
  color: var(--gold) !important;
  font-family: var(--sans) !important;
  font-size: 10px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  transition: all 0.4s cubic-bezier(0.2, 0.7, 0.2, 1) !important;
  border-radius: 0 !important;
}
.product-miniature .add-to-cart:hover,
.product-miniature .ajax_add_to_cart_button:hover {
  background: var(--gold) !important;
  color: var(--night) !important;
}

/* ── BUTTONS GLOBAUX ────────────────────────────────────── */
.btn-primary, .btn.btn-primary, button.btn-primary,
input[type="submit"].btn-primary {
  background: transparent !important;
  border: 1px solid var(--gold) !important;
  color: var(--gold) !important;
  font-family: var(--sans) !important;
  font-size: 11px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  border-radius: 0 !important;
  padding: 13px 28px !important;
  transition: all 0.4s cubic-bezier(0.2, 0.7, 0.2, 1) !important;
}
.btn-primary:hover, .btn.btn-primary:hover, button.btn-primary:hover,
input[type="submit"].btn-primary:hover {
  background: var(--gold) !important;
  color: var(--night) !important;
  border-color: var(--gold) !important;
}

.btn-secondary, .btn.btn-secondary {
  background: transparent !important;
  border: 1px solid rgba(232, 223, 232, 0.3) !important;
  color: var(--moon) !important;
  border-radius: 0 !important;
  transition: all 0.3s ease !important;
}
.btn-secondary:hover, .btn.btn-secondary:hover {
  border-color: var(--amethyst-light) !important;
  color: var(--amethyst-light) !important;
}

/* Bouton panier sticky (override custom-bijoux.css) */
.product-sticky-cart .btn-sticky-cart {
  background: var(--gold) !important;
  color: var(--night) !important;
  border-radius: 0 !important;
}
.product-sticky-cart .btn-sticky-cart:hover {
  background: var(--gold-deep) !important;
}
.product-sticky-cart {
  background: var(--night-2) !important;
  border-top: 1px solid rgba(212, 181, 112, 0.2) !important;
  color: var(--moon) !important;
}
.product-sticky-cart .sticky-price {
  color: var(--gold) !important;
}

/* ── INPUTS / FORMULAIRES ───────────────────────────────── */
input[type="text"], input[type="email"], input[type="password"],
input[type="search"], input[type="tel"], textarea, select,
.form-control {
  background: rgba(22, 18, 42, 0.8) !important;
  border: 1px solid rgba(232, 223, 232, 0.15) !important;
  color: var(--moon) !important;
  border-radius: 0 !important;
  font-family: var(--sans) !important;
  font-size: 13px !important;
  letter-spacing: 0.03em !important;
  transition: border-color 0.3s !important;
}
input:focus, textarea:focus, select:focus, .form-control:focus {
  border-color: var(--gold) !important;
  box-shadow: none !important;
  outline: none !important;
  background: rgba(22, 18, 42, 0.95) !important;
}
input::placeholder, textarea::placeholder { color: rgba(244, 239, 230, 0.35) !important; }

/* ── CATÉGORIE / LISTING ────────────────────────────────── */
#category,
#category #wrapper,
.category-cover,
#products-section {
  background: var(--night) !important;
}

.faceted-overlay, #search_filters,
.faceted-search-filters .collapse {
  background: var(--night-2) !important;
  border: 1px solid rgba(232, 223, 232, 0.08) !important;
}
.faceted-search-filters .h6,
.faceted-search-filters label,
.faceted-search-filters p {
  color: var(--moon) !important;
  font-family: var(--sans) !important;
}
.faceted-search-filters input[type="checkbox"] {
  accent-color: var(--amethyst) !important;
}

/* ── PAGE PRODUIT ───────────────────────────────────────── */
#product, #product #wrapper {
  background: var(--night) !important;
}

.product-cover, .images-container {
  border: 1px solid rgba(232, 223, 232, 0.08) !important;
  background: var(--night-2) !important;
}

.page-product .product-name,
#product h1, .product-name h1 {
  font-family: var(--serif) !important;
  color: var(--moon) !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
}

.product-price .current-price,
.product-price .price {
  color: var(--gold) !important;
  font-family: var(--serif) !important;
  font-size: 1.4rem !important;
}

.product-description, .product-description-short,
.product-description p, .product-description-short p {
  color: rgba(244, 239, 230, 0.78) !important;
  font-family: var(--serif) !important;
  font-size: 1rem !important;
  line-height: 1.65 !important;
}

/* Add to cart button produit */
#add-to-cart-or-refresh .btn-primary,
.product-add-to-cart .btn-primary {
  background: transparent !important;
  border: 1px solid var(--gold) !important;
  color: var(--gold) !important;
  border-radius: 0 !important;
  font-family: var(--sans) !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  padding: 16px 32px !important;
}
#add-to-cart-or-refresh .btn-primary:hover,
.product-add-to-cart .btn-primary:hover {
  background: var(--gold) !important;
  color: var(--night) !important;
}

/* Tabs produit */
.product-tabs .nav-tabs {
  border-bottom: 1px solid rgba(212, 181, 112, 0.15) !important;
}
.product-tabs .nav-tabs .nav-link {
  color: rgba(244, 239, 230, 0.5) !important;
  font-family: var(--sans) !important;
  font-size: 11px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.product-tabs .nav-tabs .nav-link.active {
  color: var(--gold) !important;
  border-bottom: 1px solid var(--gold) !important;
  background: transparent !important;
}

/* ── FOOTER ─────────────────────────────────────────────── */
#footer, footer {
  background: var(--obsidian) !important;
  border-top: 1px solid rgba(212, 181, 112, 0.15) !important;
  color: rgba(244, 239, 230, 0.6) !important;
}
#footer a, footer a {
  color: rgba(244, 239, 230, 0.6) !important;
  transition: color 0.3s !important;
}
#footer a:hover, footer a:hover {
  color: var(--gold) !important;
}
#footer h4, #footer .h4, footer h4, footer .h4,
#footer .h3, footer .h3 {
  color: var(--moon) !important;
  font-family: var(--serif) !important;
  font-weight: 400 !important;
  font-size: 1rem !important;
  letter-spacing: 0.05em !important;
}

/* Disclaimer lithothérapie footer */
.disclaimer-litho, #footer .disclaimer-litho,
.bijoux-disclaimer {
  font-size: 11px !important;
  color: rgba(244, 239, 230, 0.35) !important;
  font-family: var(--sans) !important;
  letter-spacing: 0.03em !important;
  border-top: 1px solid rgba(232, 223, 232, 0.06) !important;
  padding-top: 1.5rem !important;
}

/* ── BREADCRUMB ─────────────────────────────────────────── */
.breadcrumb, nav.breadcrumb ol {
  background: transparent !important;
}
.breadcrumb-item a {
  color: rgba(244, 239, 230, 0.45) !important;
  font-size: 11px !important;
  letter-spacing: 0.15em !important;
  font-family: var(--sans) !important;
  text-transform: uppercase !important;
}
.breadcrumb-item.active {
  color: var(--gold) !important;
  font-size: 11px !important;
  letter-spacing: 0.15em !important;
  font-family: var(--sans) !important;
  text-transform: uppercase !important;
}
.breadcrumb-item + .breadcrumb-item::before {
  color: rgba(212, 181, 112, 0.4) !important;
}

/* ── NEWSLETTER BANNER (override custom-bijoux) ─────────── */
#bijoux-newsletter-sticky {
  background: var(--night-2) !important;
  border-top: 1px solid rgba(212, 181, 112, 0.2) !important;
}
#bijoux-newsletter-sticky .bijoux-nl-cta {
  background: var(--gold) !important;
  color: var(--night) !important;
  border-radius: 0 !important;
}
#bijoux-newsletter-sticky .bijoux-nl-cta:hover {
  background: var(--gold-deep) !important;
}

/* ── ALERTES / BADGES ───────────────────────────────────── */
.badge-danger, .badge.badge-danger,
span.discount-percentage, span.discount-amount {
  background: var(--amethyst) !important;
  border-radius: 0 !important;
}
.badge-success, .badge.badge-success {
  background: rgba(107, 74, 140, 0.6) !important;
  border-radius: 0 !important;
}
.alert-info {
  background: rgba(31, 25, 52, 0.8) !important;
  border: 1px solid rgba(107, 74, 140, 0.3) !important;
  color: var(--moon) !important;
}

/* ── PAGE CHECKOUT & PANIER ─────────────────────────────── */
#order-confirmation, #cart, #checkout {
  background: var(--night) !important;
  color: var(--moon) !important;
}
.cart-grid-body, .card, .cart-summary, .checkout-step {
  background: var(--night-2) !important;
  border: 1px solid rgba(232, 223, 232, 0.08) !important;
  border-radius: 0 !important;
  color: var(--moon) !important;
}
.card-header, .checkout-step__title {
  background: var(--night-3) !important;
  border-bottom: 1px solid rgba(212, 181, 112, 0.15) !important;
  color: var(--moon) !important;
  font-family: var(--serif) !important;
}
.cart-total .label, .cart-total .value,
.cart-subtotals .label, .cart-subtotals .value {
  color: var(--moon) !important;
}
.cart-total .value {
  color: var(--gold) !important;
  font-family: var(--serif) !important;
}

/* ── SEARCH ─────────────────────────────────────────────── */
#search_widget input[type="text"] {
  background: rgba(22, 18, 42, 0.8) !important;
  border: 1px solid rgba(232, 223, 232, 0.12) !important;
  color: var(--moon) !important;
}
.ui-autocomplete, .ac-suggestions {
  background: var(--night-2) !important;
  border: 1px solid rgba(212, 181, 112, 0.2) !important;
}
.ui-menu-item a, .ac-suggestion {
  color: var(--moon) !important;
}
.ui-menu-item a:hover, .ac-suggestion:hover {
  background: rgba(212, 181, 112, 0.1) !important;
  color: var(--gold) !important;
}

/* ── H1/H2 TITRES DE PAGE ───────────────────────────────── */
h1, .h1 {
  font-family: var(--serif) !important;
  color: var(--moon) !important;
  font-weight: 400 !important;
}
h2, .h2 {
  font-family: var(--serif) !important;
  color: var(--moon) !important;
  font-weight: 400 !important;
}
h3, .h3, h4, .h4 {
  color: var(--moon) !important;
  font-family: var(--sans) !important;
}

/* ── PAGINATION ─────────────────────────────────────────── */
.pagination .page-link {
  background: transparent !important;
  border: 1px solid rgba(232, 223, 232, 0.12) !important;
  color: var(--moon) !important;
  border-radius: 0 !important;
}
.pagination .page-item.active .page-link {
  background: var(--gold) !important;
  border-color: var(--gold) !important;
  color: var(--night) !important;
}
.pagination .page-link:hover {
  background: rgba(212, 181, 112, 0.15) !important;
  color: var(--gold) !important;
}

/* ── HOMEPAGE SECTIONS — Hero override ──────────────────── */
/* Si un hook ou module injecte un hero block maison */
.bijoux-hero-block {
  background: var(--night) !important;
  color: var(--moon) !important;
  font-family: var(--display) !important;
}
.bijoux-hero-block h1 {
  font-size: clamp(52px, 9vw, 120px) !important;
  line-height: 0.95 !important;
  letter-spacing: -0.02em !important;
  font-family: var(--display) !important;
  color: var(--moon) !important;
}
.bijoux-hero-block .gold-accent {
  color: var(--gold) !important;
  font-family: var(--serif) !important;
  font-style: italic !important;
}
.bijoux-hero-block .eyebrow {
  font-size: 11px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold);
  font-family: var(--sans);
  font-weight: 400;
}

/* ── HOMEPAGE — Modules natifs PS ───────────────────────── */
/* ps_imageslider */
#carousel .carousel-inner, #ps_imageslider {
  background: var(--night) !important;
}
#carousel .carousel-caption h2,
#carousel .carousel-caption p {
  font-family: var(--serif) !important;
  color: var(--moon) !important;
}
#carousel .carousel-indicators li,
#carousel .carousel-indicators button {
  background: rgba(212, 181, 112, 0.4) !important;
  border: none !important;
}
#carousel .carousel-indicators .active,
#carousel .carousel-indicators li.active,
#carousel .carousel-indicators button.active {
  background: var(--gold) !important;
}

/* ps_featuredproducts, ps_newproducts */
.featured-products, .new-products,
section.featured-products, section.new-products {
  background: var(--night) !important;
  color: var(--moon) !important;
}
.featured-products h2, .new-products h2,
.featured-products .section-title, .new-products .section-title {
  font-family: var(--serif) !important;
  color: var(--moon) !important;
  font-weight: 400 !important;
  font-size: clamp(1.8rem, 4vw, 3rem) !important;
  letter-spacing: -0.01em !important;
}
/* Divider or sous les titres */
.featured-products h2::after, .new-products h2::after {
  content: '';
  display: block;
  width: 60px;
  height: 1px;
  background: linear-gradient(90deg, var(--gold), transparent);
  margin-top: 12px;
}

/* ps_categoryproducts */
.category-products, .home-categories {
  background: var(--night) !important;
}

/* ps_customtext / blocs HTML maison */
.block-custom-text {
  background: transparent !important;
  color: var(--moon) !important;
}

/* ── MOBILE ─────────────────────────────────────────────── */
@media (max-width: 767.98px) {
  .product-miniature:hover {
    transform: none !important;
  }
  .featured-products h2, .new-products h2 {
    font-size: 1.8rem !important;
  }
}

/* ============================================================
   BHR CATEGORY HERO
   ============================================================ */
.bhr-cat-hero {
  position: relative;
  background: var(--night-2);
  border-bottom: 1px solid rgba(212,181,112,.15);
  overflow: hidden;
  margin-bottom: 2rem;
}
.bhr-cat-hero__glow {
  position: absolute;
  top: -80px; left: -80px;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(107,74,140,.35) 0%, transparent 70%);
  pointer-events: none;
}
.bhr-cat-hero__inner {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 3rem 1.5rem 2.5rem;
}
.bhr-cat-breadcrumb {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin-bottom: 1.5rem;
  font-family: var(--sans);
  font-size: .75rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--gold-pale);
  opacity: .7;
}
.bhr-cat-breadcrumb__link {
  color: var(--gold-pale);
  text-decoration: none;
}
.bhr-cat-breadcrumb__link:hover { opacity: 1; color: var(--gold); }
.bhr-cat-breadcrumb__sep { opacity: .5; }
.bhr-cat-hero__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  align-items: start;
}
.bhr-eyebrow {
  font-family: var(--sans);
  font-size: .7rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: .75rem;
}
.bhr-cat-hero__title {
  font-family: var(--serif);
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 300;
  color: var(--moon);
  line-height: 1.1;
  margin: 0;
}
.bhr-gold-italic {
  font-style: italic;
  color: var(--gold);
}
.bhr-cat-hero__desc {
  font-family: var(--sans);
  font-size: .9rem;
  color: rgba(244,239,230,.6);
  line-height: 1.7;
  margin: 0;
  padding-top: .5rem;
}
.bhr-cat-cover {
  margin-top: 2rem;
  border-radius: 4px;
  overflow: hidden;
  max-height: 220px;
}
.bhr-cat-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media (max-width: 767.98px) {
  .bhr-cat-hero__grid { grid-template-columns: 1fr; }
  .bhr-cat-hero__inner { padding: 2rem 1rem; }
}

/* ============================================================
   BHR PRODUCT CARD (miniature)
   ============================================================ */
.bhr-card {
  background: var(--night-2);
  border: 1px solid rgba(212,181,112,.1);
  border-radius: 6px;
  overflow: hidden;
  transition: border-color .3s, box-shadow .3s;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.bhr-card:hover {
  border-color: rgba(212,181,112,.35);
  box-shadow: 0 8px 32px rgba(0,0,0,.4);
}
.bhr-card__visual {
  position: relative;
}
.bhr-card__img-wrap {
  display: block;
  position: relative;
  overflow: hidden;
  aspect-ratio: 1 / 1;
}
.bhr-card__img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.bhr-card:hover .bhr-card__img-wrap img {
  transform: scale(1.05);
}
.bhr-card__overlay {
  position: absolute;
  inset: 0;
  background: rgba(14,11,26,.5);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity .3s;
}
.bhr-card:hover .bhr-card__overlay {
  opacity: 1;
}
.bhr-card__view-label {
  font-family: var(--sans);
  font-size: .8rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--gold);
  border: 1px solid var(--gold);
  padding: .4rem 1rem;
  border-radius: 2px;
}
.bhr-card__info {
  padding: 1rem 1.25rem 1.25rem;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: .4rem;
}
.bhr-card__name {
  font-family: var(--serif);
  font-size: 1rem;
  font-weight: 400;
  color: var(--moon);
  margin: 0;
  line-height: 1.3;
}
.bhr-card__name a {
  color: inherit;
  text-decoration: none;
}
.bhr-card__name a:hover { color: var(--gold); }
.bhr-card__price {
  font-family: var(--sans);
  font-size: .9rem;
  color: var(--gold);
  margin: 0;
}
.bhr-card__regular-price {
  text-decoration: line-through;
  color: rgba(244,239,230,.4);
  font-size: .8rem;
  margin-right: .4rem;
}
.bhr-quickview {
  font-family: var(--sans);
  font-size: .7rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--gold-pale);
  text-decoration: none;
  background: rgba(212,181,112,.1);
  border: 1px solid rgba(212,181,112,.2);
  padding: .25rem .6rem;
  border-radius: 2px;
  transition: background .2s;
}
.bhr-quickview:hover {
  background: rgba(212,181,112,.2);
  color: var(--gold);
}
/* Keep highlighted-informations styled */
.highlighted-informations {
  padding: .5rem .75rem;
  background: rgba(14,11,26,.7);
}

/* ============================================================
   BHR FOOTER
   ============================================================ */
.bhr-footer.footer-container {
  background: var(--night) !important;
  border-top: 1px solid rgba(212,181,112,.15);
  color: var(--moon);
  padding: 0 !important;
}
.bhr-footer__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3rem 1.5rem 2rem;
}
.bhr-footer__grid {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 3rem;
  align-items: start;
}
.bhr-footer__logo {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin-bottom: 1.25rem;
}
.bhr-footer__brand-name {
  font-family: var(--serif);
  font-size: 1.1rem;
  font-weight: 400;
  color: var(--moon);
}
.bhr-footer__brand-sub {
  font-family: var(--sans);
  font-size: .65rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--gold);
  opacity: .8;
}
.bhr-footer__address {
  font-family: var(--sans);
  font-size: .8rem;
  color: rgba(244,239,230,.55);
  line-height: 1.8;
  font-style: normal;
}
.bhr-footer__tel {
  color: var(--gold-pale);
  text-decoration: none;
}
.bhr-footer__tel:hover { color: var(--gold); }
.bhr-footer__hook-cols .row { margin: 0; }
.bhr-footer__divider {
  height: 1px;
  background: linear-gradient(90deg, var(--gold) 0%, transparent 60%);
  margin: 2rem 0;
  opacity: .2;
}
.bhr-footer__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}
.bhr-footer__copy {
  font-family: var(--sans);
  font-size: .75rem;
  color: rgba(244,239,230,.4);
  letter-spacing: .05em;
}
.bhr-footer__legal {
  font-family: var(--sans);
  font-size: .75rem;
  color: rgba(244,239,230,.4);
}
.bhr-footer__legal a { color: rgba(244,239,230,.4); text-decoration: none; }
.bhr-footer__legal a:hover { color: var(--gold); }
@media (max-width: 767.98px) {
  .bhr-footer__grid { grid-template-columns: 1fr; gap: 2rem; }
  .bhr-footer__bottom { flex-direction: column; align-items: flex-start; }
}

/* ============================================================
   MOBILE FIXES — 2026-04-25
   Audit UX 375px / 414px
   ============================================================ */

/* ── HEADER STICKY ──────────────────────────────────────── */
#header {
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
}

/* ── TOUCH TARGETS HEADER (min 44px) ───────────────────── */
@media (max-width: 767.98px) {
  /* Icônes compte + panier */
  #header .user-info,
  #header .blockcart {
    min-height: 44px;
    display: flex !important;
    align-items: center;
  }
  #header .user-info a,
  #header .blockcart a {
    min-height: 44px;
    min-width: 44px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 8px !important;
  }

  /* Burger menu touch target */
  #mobile_top_menu_wrapper .js-top-menu-toggle,
  button.js-top-menu-toggle,
  .material-icons.search,
  #search_widget button {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
  }

  /* Nav mobile dropdown items */
  .dropdown-item,
  #mobile_top_menu_wrapper a,
  #top-menu a {
    font-size: 13px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    min-height: 44px;
    display: flex !important;
    align-items: center;
  }

  /* Bouton sort/filtre (Pertinence) */
  select.form-control,
  #js-product-list-top select,
  #js-product-list-bottom select,
  .products-sort-order .select-title {
    min-height: 44px !important;
    font-size: 14px !important;
  }

  /* Bouton primary (Commander, Ajouter, etc.) */
  .btn-primary, .btn.btn-primary, button.btn-primary,
  input[type="submit"].btn-primary,
  .add-to-cart, #add-to-cart-or-refresh .btn-primary,
  .product-add-to-cart .btn-primary {
    min-height: 44px !important;
    padding: 12px 24px !important;
  }

  /* Pagination links */
  .pagination .page-link {
    min-height: 44px !important;
    min-width: 44px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
  }

  /* Breadcrumb font */
  .breadcrumb-item a,
  .breadcrumb-item.active {
    font-size: 12px !important;
  }
}

/* ── OVERFLOW CLIP SUR GLOWS ────────────────────────────── */
.bhr-cat-hero {
  overflow: hidden !important;
}
.bhr-pierres {
  overflow: hidden !important;
}

/* ── FONTS LISIBLES MOBILE ──────────────────────────────── */
@media (max-width: 767.98px) {
  /* Nav items dropdown */
  #top-menu > li > a,
  .js-top-menu a {
    font-size: 13px !important;
  }

  /* Textes secondaires (prix, labels) */
  .product-miniature .price,
  .product-miniature .product-price-and-shipping .price {
    font-size: 1rem !important;
  }

  /* Input search */
  #search_widget input[type="text"] {
    font-size: 16px !important; /* empêche zoom iOS */
    height: 44px !important;
  }
  input[type="text"], input[type="email"], input[type="password"],
  input[type="search"], input[type="tel"], textarea, select,
  .form-control {
    font-size: 16px !important; /* empêche zoom iOS sur focus */
    min-height: 44px !important;
  }

  /* Homepage sections padding */
  .bhr-collections,
  .bhr-intentions,
  .bhr-pierres__inner {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* Collections grid → 2 colonnes compact */
  .bhr-collections__grid {
    gap: 10px !important;
  }
  .bhr-coll-card__content h3 {
    font-size: 28px !important;
  }

  /* Intentions cards */
  .bhr-intent-card h3 {
    font-size: 28px !important;
  }
  .bhr-intent-card {
    padding: 20px 14px !important;
    min-height: 140px !important;
  }

  /* Hero title clamp plus agressif */
  .bhr-hero__title {
    font-size: clamp(44px, 13vw, 72px) !important;
  }

  /* Marquee mobile : garder visible */
  .bhr-marquee-wrap {
    display: block !important;
  }
}

/* ── FOOTER ACCORDION MOBILE ────────────────────────────── */
@media (max-width: 767.98px) {
  #footer .links .title,
  #footer .block-title {
    cursor: pointer;
    min-height: 44px;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 12px 0 !important;
    border-bottom: 1px solid rgba(212,181,112,0.1) !important;
  }
  #footer .links .title::after,
  #footer .block-title::after {
    content: '+';
    font-family: var(--sans);
    font-size: 18px;
    color: var(--gold);
    opacity: 0.7;
    flex-shrink: 0;
  }
  #footer .links .collapse:not(.show) {
    display: none;
  }
}

/* ============================================================
   BHR DISCLAIMER
   ============================================================ */
.bhr-disclaimer {
  background: rgba(107,74,140,.08);
  border-top: 1px solid rgba(107,74,140,.2);
  padding: .75rem 1.5rem;
  text-align: center;
}
.bhr-disclaimer p {
  font-family: var(--sans);
  font-size: .75rem;
  color: rgba(244,239,230,.45);
  letter-spacing: .04em;
  margin: 0;
}
