/* Inkwood Lab ? Retro automotive art */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=DM+Sans:ital,wght@0,400;0,500;0,700;1,400&display=swap');

:root {
  --inkwood-black: #0a0a0a;
  --inkwood-cream: #f5f0e1;
  --inkwood-green: #2d8a4e;
  --inkwood-yellow: #e8b923;
  --inkwood-orange: #e86a2a;
  --inkwood-red: #d42b2b;
  --inkwood-blue: #2b6fd4;
  --inkwood-muted: #8a8580;
}

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

h1, h2, h3, h4, h5, h6,
.page-title,
.card-block h1,
.product-title {
  font-family: 'Bebas Neue', sans-serif;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* Rainbow stripe accent bar */
#header::before {
  content: '';
  display: block;
  height: 5px;
  background: linear-gradient(
    to right,
    var(--inkwood-green) 20%,
    var(--inkwood-yellow) 20% 40%,
    var(--inkwood-orange) 40% 60%,
    var(--inkwood-red) 60% 80%,
    var(--inkwood-blue) 80%
  );
}

#header {
  background: var(--inkwood-black) !important;
  box-shadow: none !important;
  border-bottom: 1px solid rgba(245, 240, 225, 0.08);
}

.header-nav,
.header-top {
  background: var(--inkwood-black) !important;
  border: none !important;
}

.header-nav a,
.header-top a,
#header .material-icons,
.top-menu a[data-depth="0"] {
  color: var(--inkwood-cream) !important;
}

.top-menu a[data-depth="0"]:hover,
.header-nav a:hover {
  color: var(--inkwood-yellow) !important;
}

/* Header ? cart, search, account */
#header .header-nav .blockcart {
  background: #1a1a1a !important;
  border: 1px solid rgba(245, 240, 225, 0.2) !important;
  border-radius: 4px;
  height: auto !important;
  padding: 0.5rem 0.85rem !important;
}

#header .header-nav .blockcart a,
#header .header-nav .blockcart .header,
#header .header-nav .blockcart span,
#header .header-nav .blockcart .cart-products-count {
  color: var(--inkwood-cream) !important;
}

#header .header-nav .blockcart .shopping-cart,
#header .header-nav .cart-preview .shopping-cart {
  color: var(--inkwood-cream) !important;
}

#header .header-nav .blockcart a:hover,
#header .header-nav .blockcart:hover {
  color: var(--inkwood-yellow) !important;
}

#header .header-nav .blockcart.active,
#header .header-nav .cart-preview.active {
  background: var(--inkwood-yellow) !important;
  border-color: var(--inkwood-yellow) !important;
}

#header .header-nav .blockcart.active a,
#header .header-nav .blockcart.active span,
#header .header-nav .blockcart.active .shopping-cart,
#header .header-nav .cart-preview.active a,
#header .header-nav .cart-preview.active i {
  color: var(--inkwood-black) !important;
}

#header .user-info a,
#header .header-nav #_desktop_contact_link a {
  color: var(--inkwood-cream) !important;
}

#header .user-info a:hover {
  color: var(--inkwood-yellow) !important;
}

/* Search bar */
#search_widget form input[type="text"],
#search_widget form input,
.header-top .search-widgets form input[type="text"] {
  background: #1a1a1a !important;
  color: var(--inkwood-cream) !important;
  border: 1px solid rgba(245, 240, 225, 0.2) !important;
  border-radius: 4px !important;
}

#search_widget form input::placeholder,
.header-top .search-widgets form input::placeholder {
  color: var(--inkwood-muted) !important;
}

#search_widget form input:focus,
.header-top .search-widgets form input:focus {
  border-color: var(--inkwood-yellow) !important;
  background: #222 !important;
  outline: none;
  box-shadow: 0 0 0 2px rgba(232, 185, 35, 0.15);
}

#search_widget form i,
#search_widget form button .material-icons {
  color: var(--inkwood-muted) !important;
}

.ui-autocomplete.searchbar-autocomplete {
  background: #1a1a1a !important;
  border: 1px solid rgba(245, 240, 225, 0.15) !important;
}

.ui-autocomplete.searchbar-autocomplete li a,
.ui-autocomplete.searchbar-autocomplete li a.ui-state-focus {
  color: var(--inkwood-cream) !important;
}

.ui-autocomplete.searchbar-autocomplete li a:hover {
  background: #2a2a2a !important;
  color: var(--inkwood-yellow) !important;
}

/* Main menu in header */
.top-menu[data-depth="0"] > li > a,
.top-menu a[data-depth="0"] {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.1rem;
  letter-spacing: 0.06em;
}

#header .top-menu .sub-menu {
  background: #1a1a1a !important;
  border: 1px solid rgba(245, 240, 225, 0.1);
}

#header .top-menu .sub-menu a {
  color: var(--inkwood-cream) !important;
}

#header .top-menu .sub-menu a:hover {
  background: #2a2a2a !important;
  color: var(--inkwood-yellow) !important;
}

#_desktop_logo img {
  max-height: 70px;
  width: auto;
}

#wrapper {
  background: var(--inkwood-black) !important;
  padding-top: 0;
}

/* Hero banner */
.inkwood-hero {
  position: relative;
  padding: 4rem 1rem 3rem;
  text-align: center;
  background: radial-gradient(ellipse at center, #1a1a1a 0%, var(--inkwood-black) 70%);
  margin-bottom: 2rem;
  overflow: hidden;
}

.inkwood-hero::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(
    to right,
    var(--inkwood-green),
    var(--inkwood-yellow),
    var(--inkwood-orange),
    var(--inkwood-red),
    var(--inkwood-blue)
  );
}

.inkwood-hero h1 {
  font-size: clamp(2.5rem, 8vw, 5rem);
  color: var(--inkwood-cream);
  margin-bottom: 0.5rem;
  line-height: 1;
}

.inkwood-hero .tagline {
  font-size: 1.1rem;
  color: var(--inkwood-muted);
  max-width: 560px;
  margin: 0 auto 1.5rem;
  line-height: 1.6;
}

.inkwood-hero .cta-group a {
  display: inline-block;
  margin: 0.35rem;
  padding: 0.75rem 1.75rem;
  border-radius: 2px;
  text-decoration: none;
  font-weight: 700;
  font-size: 0.85rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transition: transform 0.2s, box-shadow 0.2s;
}

.inkwood-hero .cta-primary {
  background: var(--inkwood-cream);
  color: var(--inkwood-black);
}

.inkwood-hero .cta-secondary {
  border: 2px solid var(--inkwood-cream);
  color: var(--inkwood-cream);
}

.inkwood-hero .cta-group a:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 20px rgba(232, 185, 35, 0.25);
}

/* Product cards ? full dark treatment for readability */
.products .product-miniature,
.featured-products .product-miniature,
.product-miniature {
  background: #1a1a1a !important;
  border: 1px solid rgba(245, 240, 225, 0.12) !important;
  border-radius: 6px;
  overflow: hidden;
  transition: border-color 0.2s, transform 0.2s;
}

.products .product-miniature:hover,
.featured-products .product-miniature:hover {
  border-color: var(--inkwood-yellow) !important;
  transform: translateY(-3px);
}

.product-miniature .thumbnail-container,
.product-miniature .thumbnail-top,
.product-miniature .product-description {
  background: #1a1a1a !important;
}

.product-miniature .thumbnail-top {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  background: #0a0a0a !important;
}

.product-miniature .thumbnail-container .product-thumbnail {
  position: relative;
  height: 100% !important;
  min-height: 220px;
  background: #0a0a0a !important;
  display: block;
  overflow: hidden;
}

.product-miniature .product-thumbnail {
  background: #0a0a0a;
  display: block;
  height: 100%;
}

.product-miniature .product-thumbnail picture,
.product-miniature .product-thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center;
  background: #0a0a0a !important;
  display: block;
}

.product-miniature .product-description {
  padding: 0.85rem 1rem 1.1rem !important;
}

.product-miniature .product-title,
.product-miniature .product-title a,
.product-miniature h2.product-title a,
.product-miniature h3.product-title a {
  color: var(--inkwood-cream) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

.product-miniature .product-title a:hover {
  color: var(--inkwood-yellow) !important;
}

.product-miniature .product-price-and-shipping .price,
.product-miniature .price,
.product-miniature .current-price {
  color: var(--inkwood-yellow) !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
}

.product-miniature .regular-price {
  color: var(--inkwood-muted) !important;
}

/* "Tous les produits" link */
.featured-products .all-product-link,
.all-product-link a {
  color: var(--inkwood-cream) !important;
  font-weight: 600;
  text-decoration: none;
}

.featured-products .all-product-link a:hover,
.all-product-link a:hover {
  color: var(--inkwood-yellow) !important;
}

/* Product flags — black / yellow theme */
.product-miniature .product-flags {
  z-index: 3;
  top: 0.55rem;
  left: 0;
  width: 100%;
  margin: 0 !important;
  padding: 0 0.55rem;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  align-items: flex-start;
  box-sizing: border-box;
}

/* Hide full-width salmon PROMO strip only */
.product-miniature .product-flags .product-flag.on-sale,
#product .product-flags .product-flag.on-sale {
  display: none !important;
}

.product-miniature .product-flags .product-flag {
  position: static !important;
  margin: 0 !important;
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0.3rem 0.6rem !important;
  border-radius: 2px !important;
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 1rem !important;
  letter-spacing: 0.06em !important;
  line-height: 1.1 !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35) !important;
}

/* -50% chip */
.product-miniature .product-flags .product-flag.discount,
.product-miniature .product-flags .product-flag.discount-percentage,
.product-miniature .product-flags .product-flag.discount-amount,
.product-miniature .discount-product,
.product-miniature .discount-percentage,
.product-miniature .discount-amount {
  display: inline-block !important;
  background: var(--inkwood-yellow) !important;
  color: #0a0a0a !important;
  border: none !important;
}

.product-miniature .product-flags .product-flag.new {
  background: var(--inkwood-green) !important;
  color: #fff !important;
}

/* Product page discount */
#product .product-flags .product-flag.discount,
#product .product-flags .product-flag.discount-percentage,
#product .product-flags .product-flag.discount-amount,
#product .discount.discount-percentage,
#product .has-discount .discount {
  background: var(--inkwood-yellow) !important;
  color: #0a0a0a !important;
  border: none !important;
  border-radius: 2px !important;
  padding: 0.3rem 0.6rem !important;
  font-family: 'Bebas Neue', sans-serif !important;
  letter-spacing: 0.05em !important;
  font-weight: 400 !important;
}

#product .product-flags .product-flag.new {
  background: var(--inkwood-green) !important;
  color: #fff !important;
}
.product-miniature .highlighted-informations,
.product-miniature .quick-view {
  color: var(--inkwood-cream) !important;
}

/* Quick view bar on hover ? was white with gray text */
.product-miniature .highlighted-informations {
  background: rgba(10, 10, 10, 0.92) !important;
  border-top: 1px solid rgba(245, 240, 225, 0.12);
  backdrop-filter: blur(4px);
}

.product-miniature .highlighted-informations .quick-view {
  color: var(--inkwood-cream) !important;
  font-weight: 600;
  text-decoration: none;
}

.product-miniature .highlighted-informations .quick-view:hover {
  color: var(--inkwood-yellow) !important;
}

.product-miniature .highlighted-informations .quick-view .material-icons {
  color: var(--inkwood-yellow) !important;
  vertical-align: middle;
}

/* Wishlist heart button on product cards */
.product-miniature .wishlist-button-add {
  background-color: #2a2a2a !important;
  border: 1px solid rgba(245, 240, 225, 0.2) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4) !important;
}

.product-miniature .wishlist-button-add:hover {
  background-color: var(--inkwood-yellow) !important;
  border-color: var(--inkwood-yellow) !important;
  opacity: 1 !important;
}

.product-miniature .wishlist-button-add .material-icons,
.product-miniature .wishlist-button-add svg {
  color: var(--inkwood-cream) !important;
  fill: var(--inkwood-cream) !important;
}

.product-miniature .wishlist-button-add:hover .material-icons,
.product-miniature .wishlist-button-add:hover svg {
  color: var(--inkwood-black) !important;
  fill: var(--inkwood-black) !important;
}

.card,
.block-category,
#left-column .block,
.page-content.card {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.08) !important;
  border-radius: 4px;
}

.card .h3,
.card h3 a {
  color: var(--inkwood-cream) !important;
}

.product-price,
.current-price {
  color: var(--inkwood-yellow) !important;
  font-weight: 700;
}

.regular-price {
  color: var(--inkwood-muted) !important;
}

/* Buttons */
.btn-primary,
.btn-primary:hover,
.btn-primary:focus {
  background: var(--inkwood-cream) !important;
  border-color: var(--inkwood-cream) !important;
  color: var(--inkwood-black) !important;
}

.btn-secondary,
.btn-outline-primary {
  border-color: var(--inkwood-cream) !important;
  color: var(--inkwood-cream) !important;
  background: transparent !important;
}

/* Footer */
#footer {
  background: #050505 !important;
  border-top: 4px solid transparent;
  border-image: linear-gradient(
    to right,
    var(--inkwood-green),
    var(--inkwood-yellow),
    var(--inkwood-orange),
    var(--inkwood-red),
    var(--inkwood-blue)
  ) 1;
}

#footer,
#footer a,
#footer .h3,
.block-contact-title {
  color: var(--inkwood-cream) !important;
}

#footer a:hover {
  color: var(--inkwood-yellow) !important;
}

/* Newsletter block (displayFooterBefore) */
#footer .block_newsletter,
#footer [id^="blockEmailSubscription_"] {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.1) !important;
  border-radius: 6px;
  padding: 1.75rem 1.5rem !important;
  margin-bottom: 1.5rem;
}

#footer .block_newsletter #block-newsletter-label,
#footer .block_newsletter > .row > p {
  color: var(--inkwood-cream) !important;
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.5rem;
  letter-spacing: 0.04em;
  margin-bottom: 0;
  line-height: 1.3;
}

#footer .block_newsletter .input-wrapper input[type="email"] {
  background: #1a1a1a !important;
  border: 1px solid rgba(245, 240, 225, 0.2) !important;
  color: var(--inkwood-cream) !important;
  border-radius: 4px 0 0 4px;
  padding: 0.65rem 1rem;
  width: 100%;
}

#footer .block_newsletter .input-wrapper input[type="email"]::placeholder {
  color: var(--inkwood-muted) !important;
}

#footer .block_newsletter input.btn-primary[name="submitNewsletter"] {
  background: var(--inkwood-cream) !important;
  color: var(--inkwood-black) !important;
  border: none !important;
  border-radius: 0 4px 4px 0;
  font-weight: 700;
  letter-spacing: 0.06em;
  padding: 0.65rem 1.25rem;
}

#footer .block_newsletter input.btn-primary[name="submitNewsletter"]:hover {
  background: var(--inkwood-yellow) !important;
}

#footer .block_newsletter .col-xs-12 > p,
#footer .block_newsletter p:not(.alert) {
  color: var(--inkwood-muted) !important;
  font-size: 0.8rem;
  line-height: 1.5;
  margin-top: 0.75rem;
  margin-bottom: 0;
}

#footer .block_newsletter .alert-success {
  background: rgba(45, 138, 78, 0.2) !important;
  border-color: var(--inkwood-green) !important;
  color: var(--inkwood-cream) !important;
}

#footer .block_newsletter .alert-danger {
  background: rgba(212, 43, 43, 0.15) !important;
  border-color: var(--inkwood-red) !important;
  color: var(--inkwood-cream) !important;
}

/* Social follow (Instagram) */
#footer .ps-social-follow,
#footer .block-social {
  background: transparent !important;
  text-align: left !important;
}

#footer .block-social ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

/* Icons are white SVGs ? need dark tile background */
#footer .block-social ul li {
  background-color: #2a2a2a !important;
  border: 1px solid rgba(245, 240, 225, 0.15) !important;
  border-radius: 6px;
  width: 2.75rem !important;
  height: 2.75rem !important;
  background-size: 55% !important;
  background-position: center !important;
  transition: background-color 0.2s, border-color 0.2s, transform 0.2s;
}

#footer .block-social ul li:hover {
  background-color: var(--inkwood-yellow) !important;
  border-color: var(--inkwood-yellow) !important;
  transform: translateY(-2px);
}

#footer .block-social ul li.instagram:hover {
  background-color: #e1306c !important;
  border-color: #e1306c !important;
}

#footer .block-social ul li a {
  display: block;
  width: 100%;
  height: 100%;
}

#footer .ps-social-follow h4 {
  color: var(--inkwood-cream) !important;
  font-family: 'Bebas Neue', sans-serif;
  letter-spacing: 0.04em;
}

#footer .ps-social-follow ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#footer .ps-social-follow li a {
  color: var(--inkwood-cream) !important;
  font-weight: 600;
}

#footer .ps-social-follow li a:hover {
  color: var(--inkwood-yellow) !important;
}

#footer .footer-container {
  background: transparent !important;
}

#footer .text-sm-center,
#footer .text-sm-center a {
  color: var(--inkwood-muted) !important;
  font-size: 0.8rem;
}

#footer .text-sm-center a:hover {
  color: var(--inkwood-cream) !important;
}

/* Footer link blocks */
#footer .block-contact,
#footer .linklist,
#footer .blockcms {
  background: transparent !important;
}

#footer .block-contact .block-contact-title,
#footer .h3,
#footer h3,
#footer .h4 {
  color: var(--inkwood-cream) !important;
}

#footer .block-contact p,
#footer .block-contact a,
#footer .linklist a {
  color: #c8c3b8 !important;
}

/* Product page */
#product,
#product #main,
.product-container {
  color: var(--inkwood-cream);
}

#product h1.h1,
#product .page-title {
  color: var(--inkwood-cream) !important;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  line-height: 1.15;
  margin-bottom: 0.75rem;
}

#product .product-prices,
#product .product-prices .current-price,
#product .product-prices .price {
  color: var(--inkwood-yellow) !important;
  font-size: 1.75rem !important;
  font-weight: 700;
}

#product .product-prices .tax-shipping-delivery-label,
#product .product-discount {
  color: var(--inkwood-muted) !important;
}

#product .product-information,
#product .page-content,
#product .product-actions {
  background: transparent !important;
}

#product #product-description-short,
#product .product-information > .product-description {
  color: #c8c3b8 !important;
  font-size: 1.05rem;
  line-height: 1.65;
  margin-bottom: 1.25rem;
}

#product .product-quantity label,
#product .control-label,
#product .product-add-to-cart,
#product .social-sharing {
  color: var(--inkwood-cream) !important;
}

#product .input-group .form-control,
#product #quantity_wanted {
  background: #1a1a1a !important;
  color: var(--inkwood-cream) !important;
  border-color: rgba(245, 240, 225, 0.2) !important;
}

#product .input-group-btn .btn {
  background: #2a2a2a !important;
  color: var(--inkwood-cream) !important;
  border-color: rgba(245, 240, 225, 0.2) !important;
}

#product .tabs {
  margin-top: 2rem;
  background: #141414;
  border: 1px solid rgba(245, 240, 225, 0.1);
  border-radius: 6px;
  overflow: hidden;
}

#product .tabs .nav-tabs {
  background: #1a1a1a;
  border-bottom: 1px solid rgba(245, 240, 225, 0.1);
}

#product .tabs .nav-link {
  color: var(--inkwood-muted) !important;
  border: none !important;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.85rem;
  letter-spacing: 0.05em;
}

#product .tabs .nav-link.active,
#product .tabs .nav-link:hover {
  color: var(--inkwood-cream) !important;
  background: transparent !important;
  border-bottom: 3px solid var(--inkwood-orange) !important;
}

#product .tab-content {
  padding: 1.5rem;
  background: #141414;
}

#product .tab-content .product-description,
#product .tab-content p,
#product .tab-content li,
#product #product-details,
#product .product-features dt,
#product .product-features dd {
  color: #c8c3b8 !important;
  line-height: 1.7;
}

#product .product-features dt {
  color: var(--inkwood-cream) !important;
  font-weight: 600;
}

#product .social-sharing li a {
  color: var(--inkwood-cream) !important;
}

/* Reassurance block on product page */
#product .blockreassurance,
#product .blockreassurance p,
#product .blockreassurance span {
  color: #c8c3b8 !important;
}

#product .blockreassurance .block-title {
  color: var(--inkwood-cream) !important;
  font-weight: 600;
}

#product .product-cover,
#product .product-cover .layer,
#product .product-images {
  background: #0a0a0a !important;
}

#product .product-cover img,
#product .product-cover .js-qv-product-cover {
  width: 100%;
  object-fit: contain;
  background: #0a0a0a !important;
}

#product .product-cover img {
  max-height: 600px;
  object-fit: cover;
}

#product .product-images > li.thumb-container img,
#product .js-thumb {
  border: 2px solid rgba(245, 240, 225, 0.15);
  border-radius: 4px;
  background: #0a0a0a;
}

#product .js-thumb.selected,
#product .js-thumb:hover {
  border-color: var(--inkwood-yellow) !important;
}

#product .product-flags .product-flag.new {
  background: var(--inkwood-green) !important;
  color: #fff !important;
}

#product .product-accessories .h5 {
  color: var(--inkwood-cream) !important;
}

.thumb-container img {
  border: 1px solid rgba(245, 240, 225, 0.08);
  border-radius: 2px;
}

/* Breadcrumb ? brighter on all pages */
.breadcrumb {
  background: transparent !important;
}

.breadcrumb,
.breadcrumb a {
  color: #a8a39a !important;
}

.breadcrumb a:hover {
  color: var(--inkwood-cream) !important;
}

.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  color: var(--inkwood-muted) !important;
}

/* Forms */
.form-control {
  background: #1a1a1a !important;
  border-color: rgba(245, 240, 225, 0.15) !important;
  color: var(--inkwood-cream) !important;
}

.form-control:focus {
  border-color: var(--inkwood-yellow) !important;
  box-shadow: 0 0 0 2px rgba(232, 185, 35, 0.2) !important;
}

/* Section titles on homepage */
#content .h1.text-uppercase,
.featured-products .h1,
#content .products-section-title {
  color: var(--inkwood-cream) !important;
  border-bottom: 3px solid var(--inkwood-orange);
  display: inline-block;
  padding-bottom: 0.25rem;
  margin-bottom: 1.5rem;
}

/* General page text */
.page-content p {
  color: var(--inkwood-muted) !important;
}

/* Custom text block */
#custom-text {
  background: #141414;
  padding: 2rem;
  border-radius: 4px;
  border-left: 4px solid var(--inkwood-green);
  margin-bottom: 2rem;
}

#custom-text h2 {
  color: var(--inkwood-cream);
}

#custom-text p {
  color: var(--inkwood-muted);
  line-height: 1.7;
}

/* Instagram link highlight */
.inkwood-instagram {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--inkwood-yellow) !important;
  font-weight: 600;
}

/* Category tree & catalog sidebar */
#left-column .block,
.block-categories,
#search_filters,
#search_filters_brands,
#search_filters_suppliers,
#search_filters_wrapper {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.1) !important;
  border-radius: 6px;
}

.block-categories .h6,
#search_filters > .h6,
#search_filters_brands > .h6,
#search_filters_suppliers > .h6,
.facets-title {
  color: var(--inkwood-cream) !important;
  font-family: 'Bebas Neue', sans-serif;
  letter-spacing: 0.04em;
}

.category-top-menu a,
.block-categories .category-sub-menu a,
.block-categories .category-sub-link,
#search_filters .facet .facet-label a,
#search_filters_brands .facet .facet-label a,
#search_filters_suppliers .facet .facet-label a,
.block-categories a {
  color: #c8c3b8 !important;
}

.category-top-menu a:hover,
.block-categories .category-sub-menu a:hover,
#search_filters .facet .facet-label a:hover {
  color: var(--inkwood-yellow) !important;
}

#search_filters .facet .facet-title {
  color: var(--inkwood-cream) !important;
}

.block-categories .collapse-icons .material-icons,
.block-categories .arrows .material-icons {
  color: var(--inkwood-muted) !important;
}

/* Catalog listing header & toolbar */
#js-product-list-header,
#main > h1,
#main > .h1,
#main > h2.h2 {
  color: var(--inkwood-cream) !important;
  font-family: 'Bebas Neue', sans-serif;
  letter-spacing: 0.04em;
  border-bottom: 3px solid var(--inkwood-orange);
  display: inline-block;
  padding-bottom: 0.25rem;
  margin-bottom: 1.25rem;
}

.products-selection .total-products p,
.products-selection .showing,
.products-selection .sort-by {
  color: var(--inkwood-muted) !important;
}

.products-sort-order,
.brands-sort,
.suppliers-sort {
  color: var(--inkwood-muted) !important;
}

.products-sort-order .select-title,
.brands-sort .select-title,
.suppliers-sort .select-title {
  background: #1a1a1a !important;
  color: var(--inkwood-cream) !important;
  border: 1px solid rgba(245, 240, 225, 0.2) !important;
  border-radius: 4px;
}

.products-sort-order .dropdown-menu,
.products-sort-order .select-list {
  background: #1a1a1a !important;
  border: 1px solid rgba(245, 240, 225, 0.15) !important;
}

.products-sort-order .select-list:hover,
.products-sort-order .select-list.current {
  background: #2a2a2a !important;
  color: var(--inkwood-yellow) !important;
}

.products-sort-order .select-list {
  color: var(--inkwood-cream) !important;
}

/* Pagination */
.pagination .page-list a,
.pagination a {
  color: var(--inkwood-cream) !important;
  background: #1a1a1a !important;
  border-color: rgba(245, 240, 225, 0.15) !important;
}

.pagination .current a,
.pagination a:hover {
  background: var(--inkwood-yellow) !important;
  color: var(--inkwood-black) !important;
  border-color: var(--inkwood-yellow) !important;
}

.pagination .disabled a {
  color: var(--inkwood-muted) !important;
  opacity: 0.5;
}

/* Active filters */
.active_filters {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.1);
  border-radius: 6px;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
}

.active_filters .filter-block,
.active_filters p {
  color: var(--inkwood-muted) !important;
}

.active_filters .filter-block .close {
  color: var(--inkwood-cream) !important;
}

/* Category page header block ? h1 is a direct child (not inside .block-category-inner) */
.block-category.card,
.block-category.card-block {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.1) !important;
  color: var(--inkwood-cream) !important;
}

#js-product-list-header .block-category h1,
#js-product-list-header .block-category .h1,
.block-category > h1,
.block-category > .h1,
.block-category h1.h1,
.block-category .block-category-inner h1 {
  color: var(--inkwood-cream) !important;
  font-family: 'Bebas Neue', sans-serif;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

#js-product-list-header #category-description,
#js-product-list-header #category-description.text-muted,
.block-category #category-description,
.block-category .text-muted,
.block-category .block-category-inner,
.block-category .block-category-inner .category-description,
.block-category .block-category-inner p {
  color: #c8c3b8 !important;
}

/* Mobile menu */
#mobile_top_menu_wrapper {
  background: var(--inkwood-black) !important;
}

#mobile_top_menu_wrapper .top-menu a {
  color: var(--inkwood-cream) !important;
}

/* Product comments / reviews */
#product-comments-list-header {
  color: var(--inkwood-cream) !important;
  background: transparent !important;
}

#product-comments-list-header .comments-nb,
#product-comments-list-header .material-icons {
  color: var(--inkwood-cream) !important;
}

#empty-product-comment,
.product-comment-list-item {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.1) !important;
  border-radius: 6px;
  color: #c8c3b8 !important;
  padding: 1.5rem !important;
  text-align: center;
}

#empty-product-comment {
  font-size: 1rem;
  line-height: 1.6;
}

.product-comment-list-item .comment-content .h4,
.product-comment-list-item .comment-content p {
  color: var(--inkwood-cream) !important;
}

.product-comment-list-item .comment-infos,
.product-comment-list-item .comment-content .comment-buttons a {
  color: var(--inkwood-muted) !important;
}

.product-comments-additional-info {
  color: var(--inkwood-cream) !important;
}

.product-comments-additional-info .link-comment,
.product-comments-additional-info .link-comment:hover {
  color: var(--inkwood-yellow) !important;
}

.product-comments-additional-info .link-comment.post-product-comment {
  border-left-color: rgba(245, 240, 225, 0.2) !important;
}

#product-comments-list-footer .btn-comment,
#empty-product-comment .btn-comment,
.product-comment-list-item .btn-comment {
  background: var(--inkwood-cream) !important;
  color: var(--inkwood-black) !important;
  box-shadow: none !important;
}

#product-comments-list-footer .btn-comment:hover,
#empty-product-comment .btn-comment:hover {
  background: var(--inkwood-yellow) !important;
}

#product-comments-list-pagination ul li span {
  color: var(--inkwood-muted) !important;
}

#product-comments-list-pagination ul li.active span {
  color: var(--inkwood-yellow) !important;
}

/* Comment modals */
.product-comment-modal .modal-content {
  background: #1a1a1a !important;
  color: var(--inkwood-cream) !important;
  border: 1px solid rgba(245, 240, 225, 0.1);
}

.product-comment-modal .modal-header .h2,
.product-comment-modal label.form-label,
.product-comment-modal .modal-dialog .h3,
#post-product-comment-modal .criterion-rating label {
  color: var(--inkwood-cream) !important;
}

.product-comment-modal input,
.product-comment-modal textarea {
  background: #141414 !important;
  border-color: rgba(245, 240, 225, 0.2) !important;
  color: var(--inkwood-cream) !important;
}

.product-comment-modal .btn-comment-inverse {
  background: transparent !important;
  border-color: var(--inkwood-cream) !important;
  color: var(--inkwood-cream) !important;
}

/* Customer account ? login, register, forms */
.page-authentication #content,
.page-registration #content,
.page-customer-account #content,
#identity #content,
#addresses #content,
#history #content {
  color: var(--inkwood-cream);
}

.page-authentication .page-header h1,
.page-registration .page-header h1,
#main .page-header .h1 {
  color: var(--inkwood-cream) !important;
  font-family: 'Bebas Neue', sans-serif;
  letter-spacing: 0.04em;
  border-bottom: 3px solid var(--inkwood-orange);
  display: inline-block;
  padding-bottom: 0.25rem;
}

.login-form,
.register-form,
#customer-form,
.address-form form,
.page-addresses .address {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.1) !important;
  border-radius: 6px;
  padding: 1.5rem;
}

.login-form label,
.register-form label,
.form-control-label,
label.form-control-label {
  color: var(--inkwood-cream) !important;
}

.login-form .form-control,
.register-form .form-control,
#customer-form .form-control,
.form-control-select,
select.form-control {
  background: #1a1a1a !important;
  color: var(--inkwood-cream) !important;
  border: 1px solid rgba(245, 240, 225, 0.2) !important;
  border-radius: 4px;
}

.login-form .form-control:focus,
.register-form .form-control:focus,
#customer-form .form-control:focus {
  border-color: var(--inkwood-yellow) !important;
  box-shadow: 0 0 0 2px rgba(232, 185, 35, 0.15) !important;
  background: #222 !important;
}

/* Browser autofill ? remove white/blue flash */
#customer-form input,
#login-form input,
.register-form input,
.login-form input {
  transition: background-color 99999s ease-in-out 0s;
}

.login-form input:-webkit-autofill,
.login-form input:-webkit-autofill:hover,
.login-form input:-webkit-autofill:focus,
.register-form input:-webkit-autofill,
.register-form input:-webkit-autofill:hover,
.register-form input:-webkit-autofill:focus,
#customer-form input:-webkit-autofill,
#customer-form input:-webkit-autofill:hover,
#customer-form input:-webkit-autofill:focus,
#login-form input:-webkit-autofill,
#login-form input:-webkit-autofill:hover,
#login-form input:-webkit-autofill:focus,
input[type="email"]:-webkit-autofill,
input[type="email"]:-webkit-autofill:hover,
input[type="email"]:-webkit-autofill:focus,
input[type="password"]:-webkit-autofill,
input[type="password"]:-webkit-autofill:hover,
input[type="password"]:-webkit-autofill:focus,
.form-control:-webkit-autofill,
.form-control:-webkit-autofill:hover,
.form-control:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px #1a1a1a inset !important;
  box-shadow: 0 0 0 1000px #1a1a1a inset !important;
  -webkit-text-fill-color: var(--inkwood-cream) !important;
  caret-color: var(--inkwood-cream);
  border: 1px solid rgba(245, 240, 225, 0.2) !important;
}

#customer-form input.form-control,
#login-form input.form-control,
.register-form input.form-control,
input[type="email"].form-control,
input[type="password"].form-control,
.input-group .form-control,
.js-visible-password {
  background-color: #1a1a1a !important;
  color: var(--inkwood-cream) !important;
}

/* Registration intro link */
.register-form > p,
.register-form > p a,
.page-registration a,
.page-authentication a {
  color: var(--inkwood-yellow) !important;
}

.register-form > p,
.page-registration .register-form {
  color: #c8c3b8;
}

/* Radio buttons ? Titre M. / Mme */
.radio-inline,
.radio-inline label,
.custom-radio {
  color: var(--inkwood-cream) !important;
}

.custom-radio input[type="radio"] + span {
  border: 2px solid rgba(245, 240, 225, 0.35) !important;
  background: #1a1a1a !important;
}

.custom-radio input[type="radio"]:checked + span {
  background: var(--inkwood-yellow) !important;
  border-color: var(--inkwood-yellow) !important;
}

/* Checkboxes ? newsletter, CGV, etc. */
.custom-checkbox label,
.custom-checkbox label span,
.custom-checkbox {
  color: #c8c3b8 !important;
  line-height: 1.55;
}

.custom-checkbox label a {
  color: var(--inkwood-yellow) !important;
  text-decoration: underline;
}

.custom-checkbox input[type="checkbox"] + span {
  border: 2px solid rgba(245, 240, 225, 0.35) !important;
  background: #1a1a1a !important;
}

.custom-checkbox input[type="checkbox"]:checked + span {
  background: var(--inkwood-yellow) !important;
  border-color: var(--inkwood-yellow) !important;
}

.custom-checkbox input[type="checkbox"]:checked + span .material-icons,
.custom-checkbox .checkbox-checked {
  color: var(--inkwood-black) !important;
}

/* Checkbox rows ? full width, no dark-on-dark labels */
.register-form .form-group.row .custom-checkbox,
#customer-form .form-group.row .custom-checkbox {
  width: 100%;
}

form section .form-informations,
form section .form-informations-title {
  color: var(--inkwood-cream) !important;
}

.login-form .forgot-password a,
.page-authentication a[data-link-action="display-register-form"],
.page-registration a[data-link-action="display-login-form"],
#content a.text-primary {
  color: var(--inkwood-yellow) !important;
}

.login-form .forgot-password a:hover,
.page-authentication a:hover {
  color: var(--inkwood-cream) !important;
}

/* Password show/hide button */
.input-group .input-group-btn .btn,
.btn-password,
button.btn[data-action="show-password"],
button.btn[data-action="hide-password"] {
  background: #2a2a2a !important;
  color: var(--inkwood-cream) !important;
  border: 1px solid rgba(245, 240, 225, 0.2) !important;
}

.input-group .form-control {
  border-right: none !important;
}

.form-control-comment,
.form-text,
.text-muted {
  color: var(--inkwood-muted) !important;
}

.form-group.has-error .form-control {
  border-color: var(--inkwood-red) !important;
}

.alert-danger {
  background: rgba(212, 43, 43, 0.15) !important;
  border-color: var(--inkwood-red) !important;
  color: var(--inkwood-cream) !important;
}

.alert-success {
  background: rgba(45, 138, 78, 0.2) !important;
  border-color: var(--inkwood-green) !important;
  color: var(--inkwood-cream) !important;
}

/* My account sidebar */
#content-wrapper .links a,
.block-contact a,
.page-my-account #content a {
  color: #c8c3b8 !important;
}

.page-my-account #content a:hover {
  color: var(--inkwood-yellow) !important;
}

.page-footer a {
  color: var(--inkwood-yellow) !important;
}

/* ========== Cart / Checkout readability ========== */
#cart,
#checkout,
.cart-grid,
.cart-container,
.cart-overview,
.cart-summary,
.checkout-step {
  color: var(--inkwood-cream) !important;
}

#cart .h1,
#cart .card-block h1,
#cart .page-header h1,
#checkout .h1,
#checkout .step-title,
#checkout .step-title h1 {
  color: var(--inkwood-cream) !important;
}

#cart .cart-item,
#cart .product-line-grid,
#cart .product-line-grid-body,
#cart .product-line-grid-right,
#cart .product-line-info,
#cart .product-line-info a,
#cart .label,
#cart .value,
#cart .cart-summary-line,
#cart .cart-summary-line .label,
#cart .cart-summary-line .value,
#cart .cart-summary-products,
#cart .cart-summary-subtotals,
#cart .cart-summary-totals,
#cart .cart-detailed-totals,
#cart .card-block,
#cart .card-block a,
#cart .js-cart,
#cart .js-subtotal,
#cart .product-price,
#cart .product-discount,
#cart .product-quantity,
#cart .no-items,
#checkout .content,
#checkout .content p,
#checkout .form-control-label,
#checkout .custom-radio label,
#checkout .payment-option,
#checkout .payment-option label,
#checkout .condition-label,
#checkout .condition-label label,
#checkout .step-edit,
#checkout .address,
#checkout .address-alias,
#checkout .radio-block {
  color: var(--inkwood-cream) !important;
}

#cart .product-line-grid-body > .product-line-info > .label a,
#cart a.label,
#cart .product-line-info .label {
  color: #e8e2d4 !important;
  opacity: 1 !important;
}

#cart .product-line-grid-body > .product-line-info > .label a:hover {
  color: var(--inkwood-yellow) !important;
}

#cart .current-price,
#cart .product-price,
#cart .cart-summary-line .value,
#cart .cart-total .value,
#cart .product-price strong,
#cart .price {
  color: var(--inkwood-yellow) !important;
}

#cart .cart-grid-right .cart-summary,
#cart .card.cart-summary,
#checkout .card {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.15) !important;
  color: var(--inkwood-cream) !important;
}

#cart .cart-summary-line,
#cart .cart-detailed-totals,
#cart .cart-summary-totals {
  border-color: rgba(245, 240, 225, 0.12) !important;
}

#cart .cart-summary-line .label,
#cart .cart-summary-products .label,
#cart .js-subtotal {
  color: #cfc8ba !important;
}

#cart .cart-detailed-actions .btn-primary,
#cart .checkout .btn-primary,
#checkout .btn-primary,
#checkout button[name="confirm-addresses"],
#checkout button[name="confirmDeliveryOption"],
#checkout #payment-confirmation button {
  background: var(--inkwood-cream) !important;
  color: var(--inkwood-black) !important;
  border: none !important;
  font-weight: 700;
}

#cart .cart-detailed-actions .btn-primary:hover,
#checkout .btn-primary:hover {
  background: var(--inkwood-yellow) !important;
  color: var(--inkwood-black) !important;
}

#cart .label.js-subtotal,
#cart .cart-summary-line span,
#cart .cart-overview a,
#cart .remove-from-cart,
#cart .qty .input-group,
#cart .bootstrap-touchspin input,
#cart .bootstrap-touchspin .btn {
  color: var(--inkwood-cream) !important;
}

#cart .bootstrap-touchspin .btn,
#cart .input-group-btn-vertical .btn {
  background: #1a1a1a !important;
  border-color: rgba(245, 240, 225, 0.25) !important;
}

#cart .bootstrap-touchspin input.form-control,
#cart input.js-cart-line-product-quantity {
  background: #0a0a0a !important;
  color: var(--inkwood-cream) !important;
  border-color: rgba(245, 240, 225, 0.25) !important;
}

#cart .label a.label:hover,
#cart a[data-link-action="remove-from-cart"] {
  color: var(--inkwood-yellow) !important;
}

#cart .cart-grid-body .card,
#cart .cart-overview .card {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

#cart .product-line-grid {
  border-bottom: 1px solid rgba(245, 240, 225, 0.1) !important;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}

/* Reassurance under cart / checkout */
#cart .blockreassurance,
#checkout .blockreassurance,
.blockreassurance,
.blockreassurance p,
.blockreassurance span,
.blockreassurance .block-title,
.blockreassurance .reassurance-item,
.elementor-widget-psreassurance,
#footer .blockreassurance {
  color: #cfc8ba !important;
}

.blockreassurance .block-title,
.blockreassurance strong,
.blockreassurance .h6 {
  color: var(--inkwood-cream) !important;
}

#cart .promo-code a,
#cart .promo-code label,
#cart .cart-voucher,
#cart .block-promo {
  color: #cfc8ba !important;
}

#cart .promo-input,
#cart .promo-code input {
  background: #0a0a0a !important;
  color: var(--inkwood-cream) !important;
  border: 1px solid rgba(245, 240, 225, 0.25) !important;
}

#cart .label,
body#cart .text-muted,
body#checkout .text-muted {
  color: #cfc8ba !important;
}

body#cart a,
body#checkout a {
  color: var(--inkwood-yellow);
}

body#cart a.label,
body#checkout .step-title a {
  color: #e8e2d4 !important;
}

/* Checkout steps */
#checkout .checkout-step.-reachable .step-title,
#checkout .checkout-step.-current .step-title,
#checkout .checkout-step.-complete .step-title {
  color: var(--inkwood-cream) !important;
}

#checkout .checkout-step .content,
#checkout .js-address-form,
#checkout .delivery-options-list,
#checkout .payment-options {
  color: var(--inkwood-cream) !important;
}

#checkout .custom-radio input[type="radio"] + span {
  border-color: rgba(245, 240, 225, 0.4) !important;
}

#checkout .form-control {
  background: #0a0a0a !important;
  color: var(--inkwood-cream) !important;
  border-color: rgba(245, 240, 225, 0.25) !important;
}

/* ========== Checkout redesign ========== */
body#checkout #wrapper,
body#checkout #main,
body#checkout #content-wrapper,
body#checkout #content,
body#checkout .cart-grid,
body#checkout section#content {
  background: var(--inkwood-black) !important;
  color: var(--inkwood-cream) !important;
}

body#checkout .cart-grid-body,
body#checkout .cart-grid-right {
  background: transparent !important;
}

#checkout .checkout-step {
  background: #121212 !important;
  border: 1px solid rgba(245, 240, 225, 0.12) !important;
  border-radius: 6px;
  box-shadow: none !important;
  margin-bottom: 1rem;
  padding: 1.25rem 1.5rem;
  color: var(--inkwood-cream) !important;
}

#checkout .checkout-step.-unreachable,
#checkout .checkout-step:not(.-current):not(.-reachable) {
  background: #0e0e0e !important;
  border-color: rgba(245, 240, 225, 0.06) !important;
  opacity: 0.72;
}

#checkout .checkout-step.-current {
  border-color: rgba(232, 185, 35, 0.45) !important;
  box-shadow: 0 0 0 1px rgba(232, 185, 35, 0.15) !important;
}

#checkout .checkout-step .step-title {
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 1.35rem !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--inkwood-cream) !important;
  border: none !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

#checkout .checkout-step .step-title .step-number,
#checkout .checkout-step .step-title span.step-number,
#checkout .checkout-step.-current .step-title::before,
#checkout .checkout-step .step-title .number {
  background: var(--inkwood-yellow) !important;
  color: var(--inkwood-black) !important;
  border: none !important;
  border-radius: 50% !important;
  width: 1.75rem !important;
  height: 1.75rem !important;
  line-height: 1.75rem !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

#checkout .checkout-step:not(.-current) .step-title .step-number,
#checkout .checkout-step.-unreachable .step-title .step-number,
#checkout .checkout-step:not(.-current) .step-title::before {
  background: #2a2a2a !important;
  color: #9a9488 !important;
}

#checkout .checkout-step.-complete .step-title .step-number,
#checkout .checkout-step.-complete .step-title::before {
  background: var(--inkwood-green) !important;
  color: #fff !important;
}

#checkout .nav-item .nav-link,
#checkout .nav-tabs .nav-link,
#checkout .checkout-step .nav a {
  color: #9a9488 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  padding: 0.6rem 0 !important;
  margin-right: 1.5rem;
  font-weight: 500;
}

#checkout .nav-tabs {
  border-bottom: 1px solid rgba(245, 240, 225, 0.12) !important;
  margin-bottom: 1.25rem;
}

#checkout .nav-item .nav-link.active,
#checkout .nav-tabs .nav-link.active {
  color: var(--inkwood-yellow) !important;
  border-bottom-color: var(--inkwood-yellow) !important;
  background: transparent !important;
}

#checkout .form-control-label,
#checkout label,
#checkout .field-label {
  color: #cfc8ba !important;
  font-weight: 500;
}

body#checkout #checkout .form-control,
body#checkout #checkout input[type="text"],
body#checkout #checkout input[type="email"],
body#checkout #checkout input[type="password"],
body#checkout #checkout input[type="tel"],
body#checkout #checkout input[type="date"],
body#checkout #checkout input[type="number"],
body#checkout #checkout select,
body#checkout #checkout textarea,
body#checkout .js-address-form .form-control,
body#checkout .js-address-form input {
  background-color: #1a1a1a !important;
  background-image: none !important;
  color: #f5f0e1 !important;
  -webkit-text-fill-color: #f5f0e1 !important;
  caret-color: #f5f0e1 !important;
  border: 1px solid rgba(245, 240, 225, 0.22) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  padding: 0.65rem 0.85rem !important;
  opacity: 1 !important;
}

body#checkout #checkout .form-control:focus,
body#checkout #checkout input:focus,
body#checkout #checkout select:focus,
body#checkout #checkout textarea:focus,
body#checkout .js-address-form input:focus {
  border-color: var(--inkwood-yellow) !important;
  outline: none !important;
  box-shadow: 0 0 0 1px rgba(232, 185, 35, 0.25) !important;
  color: #f5f0e1 !important;
  -webkit-text-fill-color: #f5f0e1 !important;
}

/* Chrome/Edge autofill paints a light blue box ? keep dark + readable text */
body#checkout input:-webkit-autofill,
body#checkout input:-webkit-autofill:hover,
body#checkout input:-webkit-autofill:focus,
body#checkout input:-webkit-autofill:active,
body#checkout textarea:-webkit-autofill,
body#checkout select:-webkit-autofill,
body#checkout .form-control:-webkit-autofill,
body#checkout .form-control:-webkit-autofill:hover,
body#checkout .form-control:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px #1a1a1a inset !important;
  box-shadow: 0 0 0 1000px #1a1a1a inset !important;
  -webkit-text-fill-color: #f5f0e1 !important;
  caret-color: #f5f0e1 !important;
  transition: background-color 99999s ease-out;
}

#checkout .form-control-comment,
#checkout .form-text,
#checkout .optional,
#checkout .field-password-policy,
#checkout small {
  color: #7a756c !important;
  font-size: 0.8rem !important;
}

#checkout .custom-checkbox label,
#checkout .custom-checkbox span,
#checkout .custom-checkbox p,
#checkout .condition-label,
#checkout .condition-label label,
#checkout .js-customer-form .form-group .custom-checkbox {
  color: #b8b2a6 !important;
  font-size: 0.9rem;
  line-height: 1.4;
}

#checkout .custom-checkbox small,
#checkout .custom-checkbox .custom-checkbox-desc,
#checkout .form-group .js-gdpr,
#checkout .psgdpr_consent_message,
#checkout [data-link-action] + p,
#checkout .custom-checkbox em,
#checkout .custom-checkbox i {
  color: #6e695f !important;
  font-size: 0.78rem !important;
  font-style: normal !important;
  display: block;
  margin-top: 0.25rem;
}

#checkout .custom-checkbox {
  margin-bottom: 0.85rem;
}

#checkout .custom-checkbox input[type="checkbox"] + span {
  border-color: rgba(245, 240, 225, 0.35) !important;
  background: #0a0a0a !important;
}

#checkout .custom-radio label {
  color: var(--inkwood-cream) !important;
}

#checkout .custom-radio input[type="radio"] + span {
  border-color: rgba(245, 240, 225, 0.4) !important;
  background: transparent !important;
}

#checkout .custom-radio input[type="radio"]:checked + span {
  background: var(--inkwood-yellow) !important;
  border-color: var(--inkwood-yellow) !important;
}

#checkout h1,
#checkout .h3,
#checkout .form-fields h1 {
  color: var(--inkwood-cream) !important;
  font-family: 'Bebas Neue', sans-serif;
  letter-spacing: 0.04em;
}

#checkout .btn-primary,
#checkout .continue,
#checkout button[name="continue"],
#checkout button[name="confirm-addresses"],
#checkout button[name="confirmDeliveryOption"],
#checkout #payment-confirmation button,
#checkout .js-customer-form button[type="submit"] {
  background: var(--inkwood-yellow) !important;
  color: var(--inkwood-black) !important;
  border: none !important;
  border-radius: 4px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 0.75rem 1.5rem !important;
  box-shadow: none !important;
}

#checkout .btn-primary:hover,
#checkout .continue:hover {
  background: #f0d56a !important;
  color: var(--inkwood-black) !important;
}

#checkout .input-group-btn .btn,
#checkout button[data-action="show-password"],
#checkout button[data-action="hide-password"] {
  background: #1a1a1a !important;
  color: var(--inkwood-cream) !important;
  border: 1px solid rgba(245, 240, 225, 0.22) !important;
}

#checkout .cart-summary,
#checkout .card.cart-summary {
  background: #121212 !important;
  border: 1px solid rgba(245, 240, 225, 0.12) !important;
  border-radius: 6px;
  box-shadow: none !important;
}

#checkout .cart-summary-line .label {
  color: #cfc8ba !important;
}

#checkout .cart-summary-line .value,
#checkout .cart-summary .product-price {
  color: var(--inkwood-yellow) !important;
}

#checkout .step-edit,
#checkout .step-edit .material-icons {
  color: var(--inkwood-yellow) !important;
}

#checkout .not-allowed-next .step-title,
#checkout .-unreachable .step-title {
  color: #6e695f !important;
}

#checkout .content {
  padding-top: 0.25rem;
}

#checkout .form-footer {
  border-top: 1px solid rgba(245, 240, 225, 0.1);
  margin-top: 1.25rem;
  padding-top: 1.25rem;
}

/* ========== Simplified checkout fields ========== */
#checkout .nav-inline,
#checkout .form-informations,
#checkout .field-password-policy,
#checkout .inkwood-payment-hidden,
#checkout .inkwood-conditions-hidden,
#checkout .js-additional-information {
  display: none !important;
}

#checkout .inkwood-cod-notice {
  margin: 0.5rem 0 1.5rem;
  padding: 1.1rem 1.25rem;
  border: 1px solid rgba(232, 197, 71, 0.35);
  background: rgba(232, 197, 71, 0.08);
}

#checkout .inkwood-cod-title {
  margin: 0 0 0.35rem;
  color: var(--inkwood-yellow);
  font-family: var(--inkwood-display), sans-serif;
  font-size: 1.35rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

#checkout .inkwood-cod-text {
  margin: 0;
  color: var(--inkwood-cream);
  opacity: 0.85;
}

#checkout #payment-confirmation .btn-primary {
  min-width: 220px;
}

#checkout .form-control-comment,
#checkout .form-control-comment.text-muted {
  display: none;
}

/* Reassurance ? override module inline black text */
#block-reassurance,
#block-reassurance span,
.blockreassurance,
.blockreassurance .block-title,
.blockreassurance p,
.blockreassurance span,
.block-reassurance-item,
.block-reassurance-item span,
.blockreassurance_product .block-title,
.blockreassurance_product p {
  color: #f5f0e1 !important;
}

/* Checkout form errors must be visible on dark UI */
#checkout .help-block,
#checkout .form-errors,
#checkout .alert-danger,
#checkout .js-address-error,
#checkout .help-block ul,
#checkout .help-block li {
  color: #ff8a80 !important;
}

#checkout .alert-danger {
  background: rgba(212, 43, 43, 0.15) !important;
  border: 1px solid rgba(255, 138, 128, 0.45) !important;
}

#checkout button[name="confirm-addresses"] {
  pointer-events: auto !important;
}
#checkout button[name="confirm-addresses"]:disabled {
  opacity: 1 !important;
  cursor: pointer !important;
}

/* ========== Delivery step ? dark readable options ========== */
#checkout .delivery-options-list,
#checkout .delivery-options,
#checkout #js-delivery {
  color: #f5f0e1 !important;
  background: transparent !important;
}

#checkout .delivery-option,
#checkout .delivery-option.js-delivery-option,
#checkout .delivery-options .row {
  background: #1a1a1a !important;
  border: 1px solid rgba(245, 240, 225, 0.18) !important;
  border-radius: 6px !important;
  padding: 0.85rem 1rem !important;
  margin: 0 0 0.75rem !important;
  color: #f5f0e1 !important;
}

#checkout .delivery-option label,
#checkout .delivery-option .delivery-option-2,
#checkout .delivery-option .carrier-name,
#checkout .delivery-option .carrier-delay,
#checkout .delivery-option .carrier-price,
#checkout .delivery-option span,
#checkout .delivery-option .h6 {
  color: #f5f0e1 !important;
  background: transparent !important;
}

#checkout .delivery-option .carrier-name,
#checkout .delivery-option .h6.carrier-name {
  color: #e8b923 !important;
  font-weight: 600 !important;
}

#checkout .delivery-option .carrier-price {
  color: #e8b923 !important;
  font-weight: 700 !important;
}

#checkout .delivery-option img,
#checkout .delivery-option .carrier-logo {
  filter: invert(1) brightness(1.2);
  opacity: 0.9;
}

#checkout #delivery textarea,
#checkout #delivery .form-control,
#checkout textarea[name="delivery_message"],
#checkout #delivery_message {
  background: #1a1a1a !important;
  color: #f5f0e1 !important;
  border: 1px solid rgba(245, 240, 225, 0.22) !important;
  -webkit-text-fill-color: #f5f0e1 !important;
}

#checkout #delivery p,
#checkout .delivery-options-list p,
#checkout #delivery .order-options,
#checkout #delivery label {
  color: #cfc8ba !important;
}

/* ========== Delivery option layout fix ========== */
#checkout .delivery-option.js-delivery-option {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#checkout .delivery-option > .col-sm-1 {
  float: none !important;
  width: auto !important;
  flex: 0 0 auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

#checkout .delivery-option > label.delivery-option-2 {
  float: none !important;
  width: auto !important;
  flex: 1 1 auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#checkout .delivery-option label .row {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
  width: 100% !important;
}

#checkout .delivery-option label .row > [class*="col-"] {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 0.75rem 0 0 !important;
  flex: 1 1 auto !important;
}

#checkout .delivery-option label .row > [class*="col-"]:last-child {
  flex: 0 0 auto !important;
  padding-right: 0 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

#checkout .delivery-option .carrier,
#checkout .delivery-option .carrier.carrier-hasLogo,
#checkout .delivery-option .carrier .row {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 0.75rem !important;
  margin: 0 !important;
  width: 100% !important;
}

#checkout .delivery-option .carrier-logo,
#checkout .delivery-option .carrier-logo.col-xs-12,
#checkout .delivery-option .carrier-logo.col-md-4 {
  float: none !important;
  width: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  flex: 0 0 48px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}

#checkout .delivery-option .carrier-logo img {
  display: block !important;
  width: 40px !important;
  height: 40px !important;
  object-fit: contain !important;
  filter: none !important;
  opacity: 1 !important;
  background: #f5f0e1 !important;
  border-radius: 4px !important;
  padding: 4px !important;
  box-sizing: border-box !important;
}

#checkout .delivery-option .carriere-name-container,
#checkout .delivery-option .carriere-name-container.col-xs-12,
#checkout .delivery-option .carriere-name-container.col-md-8 {
  float: none !important;
  width: auto !important;
  flex: 1 1 auto !important;
  max-width: none !important;
  padding: 0 !important;
  min-width: 0 !important;
}

#checkout .delivery-option .carrier-name,
#checkout .delivery-option .h6.carrier-name {
  display: inline-block !important;
  white-space: nowrap !important;
  overflow: visible !important;
  word-break: normal !important;
  color: #e8b923 !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}

#checkout .delivery-option .carrier-delay {
  display: block !important;
  white-space: normal !important;
  color: #cfc8ba !important;
}

#checkout .delivery-option .carrier-price {
  white-space: nowrap !important;
  color: #e8b923 !important;
  font-weight: 700 !important;
}

/* Always allow Commander button */
#checkout #payment-confirmation button,
#checkout #payment-confirmation button.disabled,
#checkout #payment-confirmation button:disabled {
  opacity: 1 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  background: var(--inkwood-yellow) !important;
  color: #0a0a0a !important;
  border: none !important;
}

/* Force Continuer clickable on address step */
#checkout-addresses-step button.continue,
#checkout-addresses-step button[name="confirm-addresses"],
#checkout-addresses-step button.continue.disabled,
#checkout-addresses-step button[name="confirm-addresses"]:disabled {
  opacity: 1 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}
#checkout-addresses-step .js-address-error {
  display: none !important;
}

/* Checkout address cards — dark + readable */
#checkout .checkout-step .address-item,
#checkout .js-address-item.address-item,
#checkout .address-selector .address-item {
  background: #1a1a1a !important;
  border: 2px solid rgba(245, 240, 225, 0.18) !important;
  color: var(--inkwood-cream) !important;
  border-radius: 4px;
}

#checkout .checkout-step .address-item.selected,
#checkout .js-address-item.address-item.selected {
  background: #222222 !important;
  border-color: var(--inkwood-yellow) !important;
  box-shadow: 0 0 0 1px rgba(232, 185, 35, 0.25);
}

#checkout .address-item,
#checkout .address-item *,
#checkout .address-item .address,
#checkout .address-item .address-alias,
#checkout .address-item article,
#checkout .address-item header,
#checkout .address-item header h4,
#checkout .address-item .radio-block,
#checkout .address-item .address-footer,
#checkout .address-item .address-footer a,
#checkout .address-item a {
  color: var(--inkwood-cream) !important;
}

#checkout .address-item .address-alias {
  color: var(--inkwood-yellow) !important;
  font-weight: 700 !important;
}

#checkout .address-item .address-footer a:hover {
  color: var(--inkwood-yellow) !important;
}

#checkout .address-item .custom-radio input[type="radio"]:checked + span,
#checkout .address-item .custom-radio span {
  border-color: var(--inkwood-yellow) !important;
}

#checkout .address-item .custom-radio input[type="radio"]:checked + span::after,
#checkout .address-item .custom-radio span::after {
  background-color: var(--inkwood-yellow) !important;
  color: var(--inkwood-yellow) !important;
}

/* Order confirmation */
body#order-confirmation #content-hook_order_confirmation,
body#order-confirmation #content.page-order-confirmation,
body#order-confirmation #content-hook_payment_return,
body#order-confirmation .card {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.14) !important;
  color: var(--inkwood-cream) !important;
  border-radius: 4px;
}

body#order-confirmation .inkwood-confirm-title,
body#order-confirmation #content-hook_order_confirmation .h1,
body#order-confirmation #content-hook_order_confirmation .card-title,
body#order-confirmation .page-order-confirmation .card-title,
body#order-confirmation #order-details .h3 {
  color: var(--inkwood-yellow) !important;
  font-family: 'Bebas Neue', sans-serif !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

body#order-confirmation .inkwood-confirm-title .material-icons.done,
body#order-confirmation #content-hook_order_confirmation .material-icons.done {
  color: var(--inkwood-yellow) !important;
  background: transparent !important;
  vertical-align: middle;
  margin-right: 0.35rem;
  font-size: 1.35em !important;
}

body#order-confirmation #content-hook_order_confirmation p,
body#order-confirmation #content-hook_order_confirmation li,
body#order-confirmation #content-hook_payment_return p,
body#order-confirmation #content-hook_payment_return li,
body#order-confirmation #order-details li,
body#order-confirmation .order-confirmation-table,
body#order-confirmation .order-confirmation-table td,
body#order-confirmation .order-confirmation-table th {
  color: #e8e2d4 !important;
}

body#order-confirmation a {
  color: var(--inkwood-yellow) !important;
  text-decoration: underline;
}

body#order-confirmation a:hover {
  color: var(--inkwood-cream) !important;
}

body#order-confirmation #order-details {
  background: #1a1a1a !important;
  border: 1px solid rgba(245, 240, 225, 0.1) !important;
  border-radius: 4px;
  padding: 1rem 1.15rem !important;
}

/* Checkout personal info — email field already covered by form styles */
#checkout .js-customer-form [name="email"],
#checkout #field-email {
  color: var(--inkwood-cream) !important;
}

/* Empty category / not-found listing */
#products.page-not-found,
#main .page-not-found,
.page-not-found,
#content.page-not-found,
.products-selection + .page-content #products,
#js-product-list .page-content,
#products.no-products {
  background: #141414 !important;
  border: 1px solid rgba(245, 240, 225, 0.12) !important;
  color: var(--inkwood-cream) !important;
}

#main .page-not-found .page-content,
.page-not-found .page-content,
#js-product-list-top + #js-product-list .no-products,
#products .no-products,
#js-product-list #products {
  background: #141414 !important;
  color: var(--inkwood-cream) !important;
  border-color: rgba(245, 240, 225, 0.12) !important;
}

body#pagenotfound #main h1,
body#category #main > h1,
body#category .page-content h1,
body#pagenotfound .page-not-found h1 {
  color: var(--inkwood-cream) !important;
}

#js-product-list .no-products h4,
#products h4,
.page-not-found h4,
#content .no-products h4 {
  color: var(--inkwood-yellow) !important;
  font-family: 'Bebas Neue', sans-serif !important;
  letter-spacing: 0.04em;
}

#js-product-list .no-products p,
.page-not-found p,
#products .no-products p {
  color: #cfc8ba !important;
}
