/* Corrections contraste WCAG AA — 28/02/2026
 * Chaque override vise un ratio >= 4.5:1 pour texte normal, >= 3:1 pour texte large (bold 14pt+)
 */

/* #7a7a7a → #595959 sur fond blanc (7.0:1) et sur #f6f6f6 (6.4:1) */
.product-miniature .regular-price,
#products .all-product-link,
.featured-products .all-product-link,
.product-accessories .all-product-link,
.footer-container li a,
.block-contact,
#header .header-nav .blockcart a,
.account-list a,
.products-selection .title,
#wrapper .breadcrumb li::after,
.block_newsletter form input[type=text],
.block_newsletter form button[type=submit] {
  color: #595959;
}

/* Input text #7a7a7a → #595959 sur #f6f6f6 (6.4:1) et sur #f1f1f1 (5.9:1) */
.form-control,
#search_widget form input,
.header-top .search-widgets form input[type=text] {
  color: #595959;
}

/* Placeholder #999 → #767676 sur blanc (4.54:1) */
.form-control::placeholder {
  color: #767676;
  opacity: 1;
}
.form-control::-webkit-input-placeholder { color: #767676; opacity: 1; }
.form-control::-moz-placeholder { color: #767676; opacity: 1; }
.form-control:-ms-input-placeholder { color: #767676; opacity: 1; }

/* Cart count #6c868e → #5a7078 sur blanc (4.85:1) */
.cart-products-count,
#blockcart-modal .cart-content .cart-products-count {
  color: #5a7078;
}

/* Accent #24b9d7 → #087B93 sur blanc (4.93:1) — liens, hovers */
a:hover,
#header .top-menu a[data-depth="0"]:hover,
.account-list a:hover,
.footer-container li a:hover,
.block_newsletter form button[type=submit] .search:hover,
.block_newsletter form input[type=text]:focus + button .search {
  color: #087B93;
}

/* Boutons primaires — blanc sur #087B93 (4.93:1) */
.btn-primary,
.btn-primary:hover {
  background-color: #087B93;
}
.btn-primary:hover,
.btn-primary.focus,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
  background-color: #066678;
}

/* Product flags — texte blanc, fond plus sombre pour contraste >= 3:1 (large bold text) */
/* Default #24b9d7 → #087B93 (4.93:1 blanc) */
.product-flags li.product-flag {
  background: #087B93;
}
/* Discount #f39d72 → #c26a30 (4.04:1 blanc — large bold text OK) */
.product-flags li.product-flag.discount,
.product-flags li.product-flag.discount-amount,
.product-flags li.product-flag.discount-percentage {
  background-color: #c26a30;
}
/* On-sale */
.product-flags li.product-flag.on-sale {
  background: #c26a30;
}

/* Product description text — #7a7a7a → #595959 (7.0:1 sur blanc) */
.product-miniature .product-description,
.product-miniature .product-price-and-shipping,
.product-miniature .product-price-and-shipping .price {
  color: #595959;
}

/* Copyright footer */
.footer-container .text-sm-center,
.footer-container .text-xs-center {
  color: #595959;
}

/* Newsletter notice text — plus lisible */
.block_newsletter p,
.block_newsletter .col-notice {
  color: #595959;
}

/* Header: contact-link, menu top-level, panier — #7a7a7a → #595959 (7.0:1 sur blanc) */
#contact-link,
#header .header-nav .cart-preview .shopping-cart,
#header .header-top a[data-depth="0"] {
  color: #595959;
}

/* Cookie consent banner — forcer la couleur sur <p> qui hérite #7a7a7a du sélecteur p{} */
.cookie-consent-text {
  color: #e0e0e0 !important;
}

/* Slider caption : harmoniser marges p avec ancien h5 */
.carousel .carousel-item .caption .caption-description p {
  margin-bottom: .5rem;
}

/* Fix slider : ne pas rogner le contenu — !important pour empêcher theme.css de surcharger */
.carousel .carousel-inner {
  height: auto !important;
  overflow: visible !important;
}
.carousel .carousel-item {
  height: auto !important;
}
.carousel .carousel-item figure {
  vertical-align: top;
  display: block;
}
.carousel .carousel-item img {
  aspect-ratio: 1110/340;
}
.carousel .carousel-item .caption {
  overflow: visible;
}
#wrapper .banner img {
  aspect-ratio: 1110/213;
}
