/*
 * De Neuville Limoges : charte du thème 1.6 (default-bootstrap + css/pluscom.css) portée sur classic 1.7.
 */
:root {
  --neuville-pink: #e778a8;
  --neuville-pink-hover: #b35b81;
  --neuville-brown: #554149;
  --neuville-brown-hover: #3e3035;
  --neuville-grey: #ededed;
}

@font-face {
  font-family: 'Bahnschrift';
  src: url('../fonts/Bahnschrift.woff2') format('woff2'),
       url('../fonts/Bahnschrift.woff') format('woff'),
       url('../fonts/Bahnschrift.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* ---------- Général ---------- */
body, html, h1, h2, h3, h4, h5, h6, p, a, span, li, td, th, label, input, button, select, textarea,
.h1, .h2, .h3, .h4, .h5, .h6, .btn, .form-control {
  font-family: 'Bahnschrift', sans-serif;
}
body { color: var(--neuville-brown); font-size: 13px; background: #fff; }
#wrapper { background: #fff; padding-top: 20px; box-shadow: none; }
a { color: var(--neuville-brown); }
a:hover, a:focus { color: var(--neuville-pink); text-decoration: none; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { color: var(--neuville-brown); font-weight: normal; }
@media (min-width: 1200px) { .container { width: 1170px; } }

.btn-primary, .btn-primary:focus {
  background: var(--neuville-pink); border-color: var(--neuville-pink); box-shadow: none; text-transform: none;
}
.btn-primary:hover, .btn-primary:active, .btn-primary.active {
  background: var(--neuville-pink-hover); border-color: var(--neuville-pink-hover);
}
.btn-secondary, .btn-tertiary {
  background: var(--neuville-brown); color: #fff; border-color: var(--neuville-brown); box-shadow: none;
}
.btn-secondary:hover, .btn-tertiary:hover { background: var(--neuville-brown-hover); color: #fff; }
.text-primary, .page-my-account #content .links a i, .custom-checkbox input[type=checkbox]+span .checkbox-checked {
  color: var(--neuville-pink) !important;
}
.custom-radio input[type=radio]:checked+span { background-color: var(--neuville-pink); }
.alert-info { background: #5192f3; border-color: #4b80c3; color: #fff; font-weight: bold; }

/* ---------- En-tête : bandeau rose ---------- */
#header { box-shadow: none; color: var(--neuville-brown); }
#header .header-nav {
  background: var(--neuville-pink); border-bottom: 0; max-height: none; margin-bottom: 0; color: #fff;
}
#header .header-nav .container > .row > .hidden-sm-down { display: flex; align-items: center; min-height: 32px; }
#header .header-nav .right-nav { display: flex; justify-content: flex-end; align-items: center; }
#header .header-nav #contact-link,
#header .header-nav .shop-phone { color: #fff; font-size: 12px; padding: 7px 0 6px; margin: 0; }
#header .header-nav .shop-phone a { color: #fff; }
#header .header-nav a:hover { color: var(--neuville-brown); }
#header .header-nav .dn-social { order: 1; margin: 0 6px 0 0; }
#header .header-nav .dn-contact-link { order: 2; }
#header .header-nav #_desktop_user_info { order: 3; }
#header .header-nav .dn-social ul { margin: 0; padding: 0; }
#header .header-nav .dn-social li { display: inline-block; margin-right: 5px; background: none; height: auto; width: auto; }
#header .header-nav .dn-social li a { font-size: 22px; color: #fff; line-height: 32px; }
#header .header-nav .dn-social li a:hover { color: var(--neuville-brown); }
#header .header-nav .dn-contact-link a,
#header .header-nav .user-info a {
  color: #fff; font-weight: bold; font-size: 12px; padding: 0 9px; line-height: 32px; display: inline-block;
}
#header .header-nav .user-info { margin: 0; }
@media (min-width: 768px) { #header .header-nav .user-info .material-icons { display: none; } }

/* ---------- En-tête : logo, recherche, panier ---------- */
#header .header-top { padding: 15px 0 0; }
#header .header-top > .container > .row:first-child { display: flex; align-items: center; }
#header .header-top h1 { margin: 0; }
#header .logo { max-width: 206px; height: auto; }
#header .header-top-right { display: flex; align-items: center; justify-content: space-between; }
#header .header-top-right #search_widget,
#header .header-top-right .search-widget {
  float: none; width: 370px !important; max-width: none !important; flex: 0 0 370px; min-width: 0; margin: 0; padding: 0;
}
#search_widget form input[type=text] {
  background: #fff; border: 1px solid #d6d4d4; padding: 10px 40px 10px 13px; height: 45px; width: 100%;
  font-size: 13px; color: var(--neuville-brown);
}
#search_widget form input[type=text]:focus { outline: none; border-color: var(--neuville-pink); background: #fff; color: var(--neuville-brown); }
#search_widget form i { right: 6px; left: auto; color: var(--neuville-pink); top: 50%; transform: translateY(-50%); padding: 0; position: absolute; }
#search_widget form i.clear { display: none; }
#search_widget form i.search { pointer-events: none; }
#search_widget form { position: relative; }

#_desktop_cart { margin-left: auto; }
#header .blockcart { background: var(--neuville-pink); height: auto; padding: 0; width: 270px; margin: 0; }
#header .blockcart .header { margin: 0; }
#header .blockcart a {
  display: block; color: #fff; padding: 14px 30px 13px 25px; font-size: 18px; line-height: 19px; position: relative;
}
#header .blockcart a:hover { background: var(--neuville-pink-hover); color: #fff; }
#header .blockcart a b { font-weight: bold; margin: 0 6px 0 10px; }
#header .blockcart .cart-products-count { font-size: 13px; font-weight: bold; }
#header .blockcart a:after {
  content: ''; position: absolute; right: 12px; top: 50%; margin-top: -3px;
  border: 6px solid transparent; border-top-color: #fff; border-bottom: 0;
}
#header .blockcart .fa-shopping-cart { font-size: 20px; }

/* ---------- Menu (blocktopmenu 1.6) ---------- */
.dn-menu-container { margin-top: 20px; }
#header .menu, #_desktop_top_menu { background: var(--neuville-grey); padding: 0; margin: 0; width: 100%; }
#_desktop_top_menu .top-menu[data-depth="0"] { display: flex; flex-wrap: wrap; margin: 0; padding: 0; }
#_desktop_top_menu .top-menu[data-depth="0"] > li { padding: 0; margin: 0; }
#header #_desktop_top_menu .top-menu[data-depth="0"] > li > a.dropdown-item {
  color: var(--neuville-brown); text-transform: uppercase; font-size: 15px; font-weight: normal;
  padding: 14px 13px 13px; line-height: 23px; margin: 0;
}
#_desktop_top_menu .top-menu[data-depth="0"] > li:first-child > a.dropdown-item { padding-left: 20px; }
#_desktop_top_menu .top-menu[data-depth="0"] > li:hover > a.dropdown-item,
#_desktop_top_menu .top-menu[data-depth="0"] > li > a.dropdown-item:hover { color: var(--neuville-pink); background: transparent; }
#_desktop_top_menu .sub-menu {
  box-shadow: 0 5px 13px rgba(0,0,0,.2); border: 0; margin-left: 0; min-width: 100%; left: 0; padding: 20px 30px;
}
#_desktop_top_menu .sub-menu .top-menu[data-depth="1"] { display: flex; flex-wrap: wrap; }
#_desktop_top_menu .sub-menu ul[data-depth="1"] > li { float: none; margin: 0 40px 15px 0; }
#_desktop_top_menu .sub-menu a.dropdown-item { color: var(--neuville-brown); font-size: 14px; text-transform: none; font-weight: normal; }
#_desktop_top_menu .sub-menu ul[data-depth="1"] > li > a.dropdown-item:before { content: "> "; color: var(--neuville-pink); }
#_desktop_top_menu .sub-menu a.dropdown-item:hover { color: var(--neuville-pink); }
#header .header-top .menu .top-menu a[data-depth="0"] { text-transform: uppercase; }

/* ---------- Fil d'Ariane / colonnes ---------- */
#wrapper .breadcrumb { background: #f6f6f6; border: 1px solid #d6d4d4; padding: 8px 15px; font-size: 13px; }
#wrapper .breadcrumb li a { color: var(--neuville-brown); }
#wrapper .breadcrumb li:last-child { color: var(--neuville-pink); }
#left-column .block-categories, #left-column #search_filters, #left-column .block {
  box-shadow: none; border: 1px solid #d6d4d4; padding: 0; margin-bottom: 20px;
}
#left-column .block-categories > ul > li:first-child > a,
#left-column .block-categories .category-top-menu > li:first-child > a.h6,
#left-column #search_filters > .h6, #left-column #search_filters .text-uppercase.h6 {
  display: block; background: var(--neuville-pink); color: #fff; padding: 12px 15px; margin: 0;
  font-weight: normal; text-transform: uppercase; font-size: 15px;
}
#left-column .block-categories .category-sub-menu { padding: 10px 15px; }
#left-column .block-categories .category-sub-menu li a:hover { color: var(--neuville-pink); }
#left-column #search_filters { padding-bottom: 10px; }
#left-column #search_filters .facet { padding: 10px 15px 0; }

/* ---------- Accueil ---------- */
#index #wrapper { padding-top: 20px; }
#carousel { box-shadow: none; margin-bottom: 15px; }
#carousel .carousel-inner { height: auto; }
#carousel .carousel-item img { width: 100%; height: auto; }
#carousel .caption { display: none; }
#carousel .direction .carousel-control { background: transparent; }
#carousel .direction { position: absolute; right: 6px; bottom: 6px; left: auto; top: auto; width: auto; height: auto; display: flex; }
#carousel .carousel-control.left, #carousel .carousel-control.right {
  position: static; width: 35px; height: 37px; display: flex; align-items: center; justify-content: center;
  border: 2px solid rgba(255,255,255,.7); opacity: 1; background: rgba(255,255,255,.2);
}
#carousel .carousel-control .icon-next:hover i, #carousel .carousel-control .icon-prev:hover i { color: #fff; }
#carousel .carousel-control .icon-next i, #carousel .carousel-control .icon-prev i { font-size: 28px; color: #fff; }
#carousel .carousel-indicators { display: none; }

.dn-home-tabs { margin: 10px 0 30px; }
.dn-home-tabs-nav { text-align: center; list-style: none; padding: 0; margin: 0 0 20px; }
.dn-home-tabs-nav li { display: inline-block; padding: 0 12px; }
.dn-home-tabs-nav li + li { border-left: 1px solid #d6d4d4; }
.dn-home-tabs-nav li a {
  font-size: 21px; line-height: 26px; text-transform: uppercase; color: var(--neuville-brown); font-weight: normal;
}
.dn-home-tabs-nav li.active a, .dn-home-tabs-nav li a:hover { color: var(--neuville-pink); }
.dn-home-tab { display: none; margin: 0; }
.dn-home-tab.dn-active { display: block; }
.dn-home-tab .alert { margin: 25px 0 0; }

/* "Nos atouts" (ancien module editorial, désormais dans ps_customtext) */
#custom-text { background: transparent; border-radius: 0; box-shadow: none; padding: 30px 0 0; margin: 0; text-align: center; }
#custom-text .editorial_title, .editorial_block .editorial_title {
  font-size: 21px; font-weight: normal; text-transform: uppercase; color: var(--neuville-brown); margin-bottom: 20px;
}
#custom-text .editorial_wrap { float: none; display: inline-block; vertical-align: top; margin-bottom: 20px; }
#custom-text .editorial_content img { max-width: 100%; margin: 0 auto; }
#custom-text .editorial_text { margin-top: 5px; font-size: 13px; }
#custom-text .editorial_text a { color: var(--neuville-brown); }
#custom-text .row { display: flex; flex-wrap: wrap; justify-content: center; }
#custom-text .container { width: auto; padding: 0; }
#custom-text .col-lg-2:empty { display: none; }
#custom-text .editorial_wrap { padding-bottom: 10px; }

/* ---------- Listes produits (product_list 1.6) ---------- */
.featured-products .products, .product_list .products { display: flex; flex-wrap: wrap; }
.product-miniature .thumbnail-container { box-shadow: none; border: 1px solid transparent; }
.product-miniature .thumbnail-container:hover { box-shadow: 0 5px 13px rgba(0,0,0,.17); }
.product-miniature .product-thumbnail { position: relative; display: block; }
.product-miniature .product-thumbnail:before {
  content: ""; background: var(--neuville-pink); opacity: 0; position: absolute; inset: 0; pointer-events: none; transition: .3s all; z-index: 1;
}
.product-miniature .thumbnail-container:hover .product-thumbnail:before { opacity: .6; }
.product-miniature .product-title a { color: #3a3939; font-size: 17px; text-transform: none; }
.product-miniature .product-price-and-shipping { color: var(--neuville-brown); font-size: 19px; font-weight: normal; }
.product-flags li.product-flag { background: var(--neuville-pink); font-weight: normal; }
.product-flags li.product-flag.new { background: var(--neuville-brown); }
.product-flags li.product-flag.discount, .product-flags li.product-flag.on-sale { background: var(--neuville-pink); }
.product-miniature .highlighted-informations .quick-view:hover { color: var(--neuville-pink); }

/* Catégories */
.block-category { box-shadow: none; border: 0; padding: 0; min-height: 0; }
.block-category h1 { color: var(--neuville-brown); font-size: 21px; text-transform: uppercase; }
.dn-block-links { border: 0; margin-bottom: 20px; }
.dn-block-title, #left-column .block-categories .h6 {
  background: var(--neuville-pink); color: #fff; padding: 14px 20px 13px; margin: 0 0 10px;
  font-size: 17px; text-transform: uppercase; font-weight: normal;
}
.dn-block-links ul { list-style: none; padding: 0 20px 0 15px; margin: 0; }
.dn-block-links li { border-top: 1px solid #d6d4d4; padding: 5px 0 5px 12px; position: relative; }
.dn-block-links li:first-child { border-top: 0; }
.dn-block-links li:before { content: "\203A"; position: absolute; left: 0; color: var(--neuville-brown); }
.dn-block-links li a { font-size: 12px; color: #777; }
.dn-block-links li a:hover { color: var(--neuville-pink); }

#subcategories.dn-subcategories { border-top: 1px solid #d6d4d4; padding-top: 15px; margin-top: 15px; }
#subcategories .subcategory-heading { font-size: 13px; font-weight: bold; text-transform: none; margin-bottom: 15px; }
#subcategories .subcategories-list { display: flex; flex-wrap: wrap; padding: 0; margin: 0 -10px; list-style: none; }
#subcategories .subcategories-list li { width: 20%; padding: 0 10px; margin: 0 0 10px; text-align: center; float: none; }
#subcategories .subcategory-image { padding: 0; }
#subcategories .subcategory-image a {
  display: flex; align-items: center; justify-content: center; border: 1px solid #d6d4d4; padding: 9px; height: 145px; background: #fff;
}
#subcategories .subcategory-image a:hover { border-color: var(--neuville-pink); }
#subcategories .subcategory-image img { max-width: 100%; max-height: 125px; width: auto; height: auto; }
.dn-noimage { font-size: 22px; line-height: 24px; color: #777; }
#subcategories h5 { margin: 15px 0 0; }
@media (max-width: 767px) { #subcategories .subcategories-list li { width: 50%; } }
#subcategories ul li .subcategory-name { text-transform: none; font-size: 16px; color: var(--neuville-brown); }
#subcategories ul li { height: auto; min-height: 220px; }
#js-product-list-top .sort-by-row .select-title { border-color: #d6d4d4; }
.pagination .current a { color: var(--neuville-pink); }

/* Fiche produit */
.product-prices .current-price { color: var(--neuville-brown); }
.product-add-to-cart .add-to-cart { background: var(--neuville-pink); border-color: var(--neuville-pink); }
.product-add-to-cart .add-to-cart:hover { background: var(--neuville-pink-hover); }
.tabs .nav-tabs .nav-link.active, .tabs .nav-tabs .nav-link:hover { color: var(--neuville-pink); border-bottom-color: var(--neuville-pink); }
.product-discounts > .product-discounts-title, .product-prices .tax-shipping-delivery-label { color: var(--neuville-brown); }

/* Pages CMS "entreprise" (cms.tpl 1.6) */
.pages-entreprise { list-style: none; padding: 0; display: flex; flex-wrap: wrap; }
.pages-entreprise .list-group-item { font-size: 25px; line-height: 40px; display: block; text-align: center; border: 0; }
.pages-entreprise img { max-width: 100%; height: auto; display: block; margin: 10px auto 0; }

/* Tunnel / compte */
body#checkout section.checkout-step .step-title { color: var(--neuville-brown); }
body#checkout section.checkout-step.-current .step-title { color: var(--neuville-pink); }
.page-my-account #content .links a:hover i { color: var(--neuville-pink-hover) !important; }

/* ---------- Pied de page ---------- */
#footer { background: transparent; padding-top: 0; }
.dn-footer-before { background: var(--neuville-brown); padding: 10px 0; margin-top: 30px; }
.dn-footer-before .block_newsletter {
  background: transparent; width: 100%; max-width: none; margin: 0; padding: 0; font-size: 13px; color: #fff;
}
.dn-newsletter { display: flex; align-items: center; flex-wrap: wrap; margin: 0; }
.dn-footer-before .block_newsletter #block-newsletter-label {
  color: #fff; font-size: 21px; line-height: 30px; margin: 0 15px 0 0; padding: 0;
}
.dn-newsletter-field { position: relative; width: 300px; }
.dn-newsletter-field input[type=email] {
  background: transparent; border: 1px solid #fff; color: #fff; height: 45px; padding: 0 45px 0 12px; width: 100%;
  font-size: 13px; font-weight: bold;
}
.dn-newsletter-field input[type=email]::placeholder { color: #fff; opacity: 1; }
.dn-newsletter-field input[type=email]:focus { outline: none; border-color: var(--neuville-pink); }
.dn-footer-before .dn-newsletter-submit {
  position: absolute; right: 8px; top: 8px; width: 29px; height: 29px; padding: 0; border-radius: 50%;
  background: #fff !important; border: 0; color: var(--neuville-brown); font-size: 14px; line-height: 29px; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
}
.dn-newsletter-submit:hover { background: var(--neuville-pink); color: #fff; }
.dn-newsletter-msg { flex: 0 0 100%; }
.dn-newsletter-msg:empty { display: none; }
.dn-footer-before .block_newsletter p:not(#block-newsletter-label) { color: #fff; font-size: 11px; margin: 5px 0 0; }
.dn-footer-before .block_newsletter .alert { margin-top: 10px; }

.footer-container { background: var(--neuville-pink); box-shadow: none; margin-top: 0; padding: 30px 0 60px; color: #fff; overflow: visible; }
.footer-container .h3, .footer-container .h4, .footer-container .block-contact-title, .footer-container .myaccount-title,
.footer-container .myaccount-title a, .footer-container .myaccount-title a:visited, .footer-container .wrapper p.h3 {
  color: #fff; font-size: 18px; font-weight: normal; text-transform: none; margin-bottom: 10px;
}
.footer-container li { margin-bottom: 4px; }
.footer-container li a, .footer-container a, .footer-container .block-contact, .footer-container #contact-infos {
  color: #fff; font-size: 13px; font-weight: bold;
}
.footer-container li a:hover, .footer-container a:hover { color: var(--neuville-brown); }
.footer-container .links .collapse { display: block; }
.footer-container .block-contact { color: #fff; }
.dn-contact-infos { list-style: none; padding: 0; }
.dn-contact-infos li { position: relative; padding-left: 26px; line-height: 20px; margin-bottom: 12px; }
.dn-contact-infos li i { position: absolute; left: 0; top: 2px; font-size: 18px; width: 20px; text-align: center; }
.footer-container .links .col-md-6 { flex: 0 0 auto; }
.dn-copyright { margin-top: 20px; font-size: 13px; }
.dn-copyright a { font-weight: bold; }

@media (max-width: 767px) {
  .footer-container .links .collapse { display: none; }
  .footer-container .links .collapse.in { display: block; }
  .footer-container .links .title { border-bottom: 1px solid rgba(255,255,255,.4); }
  .footer-container .links .h3 { color: #fff; }
  .footer-container .material-icons { color: #fff; }
  #header .header-nav { color: #fff; }
  #header .header-nav #menu-icon .material-icons, #header .header-nav .material-icons, #header .header-nav .cart-products-count { color: #fff; }
  #header .header-nav .blockcart { background: transparent; width: auto; }
  #header .header-nav .blockcart a { padding: 10px 6px; font-size: 13px; }
  #header .header-nav .blockcart a:after { display: none; }
  #header .header-top-right { display: block; }
  #header .header-top-right #search_widget { width: 100%; margin: 0 0 10px; }
  .dn-newsletter-field { width: 100%; }
  .dn-footer-before .block_newsletter #block-newsletter-label { width: 100%; margin: 0 0 8px; }
  #_desktop_top_menu { background: transparent; }
  .dn-menu-container { margin-top: 0; }
}

/* Catégorie sans produit : message simple comme en 1.6 */
#products .page-not-found, #js-product-list .page-not-found { box-shadow: none; padding: 0; max-width: none; margin: 0; }
#products .page-not-found .search-widget, #js-product-list .page-not-found .search-widget { display: none; }

/* ---------- Fiche produit (product.tpl 1.6) ---------- */
.dn-product-top { margin-top: 10px; border-top: 5px solid #d6d4d4; padding-top: 30px; }
.dn-product-top .product-cover { border: 1px solid #d6d4d4; padding: 5px; margin-bottom: 10px; }
.dn-product-top .product-cover img { box-shadow: none; }
.dn-product-top .product-images > li.thumb-container .thumb { border: 1px solid #d6d4d4; padding: 3px; }
.dn-product-top .product-images > li.thumb-container .thumb.selected,
.dn-product-top .product-images > li.thumb-container .thumb:hover { border-color: var(--neuville-pink); }
.dn-product-center h1 { font-size: 20px; line-height: 23px; text-transform: none; font-weight: 600; color: #333; margin: 15px 0 20px; }
/* Pas de pastille de réduction sur l'image (la 1.6 l'affichait dans l'encadré prix) */
#product .dn-product-top .product-flags .product-flag.discount,
#product .dn-product-top .product-flags .product-flag.discount-percentage,
#product .dn-product-top .product-flags .product-flag.discount-amount { display: none; }
.dn-print { margin: 15px 0 0; }
.dn-print a { color: #777; font-weight: bold; font-size: 13px; }
.dn-print a i { font-size: 18px; color: #333; margin-right: 8px; vertical-align: -2px; }
.dn-print a:hover { color: var(--neuville-pink); }
@media print { .dn-print, .dn-buy-box form, #header, #footer, .dn-breadcrumb { display: none !important; } }

/* Fil d'Ariane en flèches (1.6) */
#wrapper .breadcrumb.dn-breadcrumb {
  display: inline-block; padding: 0 11px 0 0; background: #fff; border: 1px solid #d6d4d4; border-radius: 3px;
  font-weight: bold; font-size: 12px; line-height: 24px; overflow: hidden; margin-bottom: 16px;
}
#wrapper .dn-breadcrumb ol { display: flex; flex-wrap: wrap; margin: 0; padding: 0; }
#wrapper .dn-breadcrumb li { display: block; position: relative; padding: 0; }
#wrapper .dn-breadcrumb li::after { display: none; content: none; }
#wrapper .dn-breadcrumb li > a, #wrapper .dn-breadcrumb li > span {
  display: inline-block; position: relative; padding: 0 12px 0 22px; color: #333; background: #fff; height: 24px;
}
#wrapper .dn-breadcrumb li:last-child > span { color: #333; padding-right: 0; }
#wrapper .dn-breadcrumb li > a::after {
  content: ""; position: absolute; right: -10px; top: 3px; width: 18px; height: 18px; background: #fff;
  border-right: 1px solid #d6d4d4; border-top: 1px solid #d6d4d4; border-radius: 2px; transform: rotate(45deg); z-index: 1;
}
#wrapper .dn-breadcrumb li > a span { position: relative; z-index: 2; }
#wrapper .dn-breadcrumb li > a.home { width: 38px; padding: 0; text-align: center; color: #777; }
#wrapper .dn-breadcrumb li > a.home i { font-size: 18px; vertical-align: -4px; position: relative; z-index: 2; }
#wrapper .dn-breadcrumb li > a:hover, #wrapper .dn-breadcrumb li > a:hover::after { background: #f6f6f6; }
#wrapper .dn-breadcrumb li:last-child { color: #333; }
.dn-product-condition { font-size: 13px; margin-bottom: 15px; }
.dn-product-center .product-description { font-size: 15px; line-height: 18px; color: var(--neuville-brown); }
.dn-product-center .product-description p { color: inherit; }
.dn-product-center .social-sharing { margin-top: 20px; }
.dn-product-center .social-sharing > span { display: none; }
.dn-buy-box { border: 1px solid #d6d4d4; background: #f6f6f6; padding: 0; }
/* Encadré prix comme en 1.6 : "4,25 € TTC" / [-9,57%] 4,70 € TTC barré / 94,45 € par KG */
.dn-buy-box .product-prices { background: #fff; padding: 15px 20px; margin: 0; border-bottom: 1px solid #d6d4d4; }
.dn-buy-box .product-prices .product-price { margin: 0 0 10px; }
.dn-buy-box .product-prices .current-price { margin: 0; font-size: 29px; line-height: 32px; font-weight: 600; color: #333; }
.dn-buy-box .product-prices .current-price .dn-tax { margin-left: 4px; }
.dn-buy-box .product-prices .dn-discount { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 14px; margin: 0 0 12px; }
.dn-buy-box .product-prices .dn-reduction {
  padding: 1px 3px; font-size: 21px; line-height: 23px; font-weight: 600; color: #fff; background: #f13340; border: 1px solid #d02a2c;
}
.dn-buy-box .product-prices .regular-price { margin: 0; font-size: 13px; line-height: 23px; color: #333; text-decoration: line-through; }
.dn-buy-box .product-prices .product-unit-price { color: #333; font-size: 12px; margin: 0; }
.dn-buy-box .product-prices .tax-shipping-delivery-label { margin: 0; font-size: 12px; }
.dn-buy-box .product-prices .tax-shipping-delivery-label:empty { display: none; }
.dn-buy-box form { padding: 15px 20px 20px; }
.dn-buy-box .product-add-to-cart .control-label { font-weight: bold; font-size: 13px; }
.dn-buy-box .product-quantity { display: block; }
.dn-buy-box .product-quantity .qty { margin-bottom: 15px; float: none; }
.dn-buy-box .product-quantity .add { float: none; width: 100%; margin: 0; }
.dn-buy-box .product-add-to-cart .add-to-cart {
  width: 100%; height: auto; padding: 12px 10px; font-size: 20px; line-height: 22px; text-transform: none;
  font-weight: bold; background: var(--neuville-pink); border: 0;
}
.dn-buy-box .product-add-to-cart .add-to-cart:hover { background: var(--neuville-pink-hover); }
.dn-buy-box .wishlist-button-add { margin: 10px auto 0; }
.dn-buy-box .product-minimal-quantity, .dn-buy-box .product-availability { font-size: 12px; }

.dn-product-sections { margin-top: 40px; }
.dn-product-section { margin-bottom: 20px; }
.dn-section-title {
  font-size: 18px; text-transform: uppercase; font-weight: bold; color: #555454; padding: 14px 20px 12px;
  border: 1px solid #d6d4d4; border-bottom: 0; background: #fbfbfb; margin: 0 0 20px;
}
.dn-product-details .tab-pane { display: block !important; opacity: 1 !important; }
.dn-product-details .product-reference, .dn-product-details .product-quantities, .dn-product-details .product-out-of-stock,
.dn-product-details .product-manufacturer, .dn-product-details .product-condition { display: none; }
.dn-product-details .product-features > p.h6 { display: none; }
.dn-product-details .product-features dl.data-sheet { display: table; width: 100%; border-collapse: collapse; margin: 0; }
.dn-product-details .product-features dl.data-sheet dt.name,
.dn-product-details .product-features dl.data-sheet dd.value {
  background: #fff; flex: none; margin: 0; padding: 10px 20px; border-bottom: 1px solid #d6d4d4; font-size: 13px; min-height: 0;
}
.dn-product-details .product-features dl.data-sheet { display: grid; grid-template-columns: 30% 70%; border-top: 1px solid #d6d4d4; }
.dn-product-details .product-features dl.data-sheet dt.name { font-weight: bold; border-right: 1px solid #d6d4d4; }
.dn-product-section .product-description { padding: 0 20px; }
@media (max-width: 767px) {
  .dn-product-details .product-features dl.data-sheet { grid-template-columns: 1fr; }
  .dn-product-details .product-features dl.data-sheet dt.name { border-right: 0; border-bottom: 0; }
}
.dn-product-details .product-features dl.data-sheet dd.value,
.dn-product-details .product-features dl.data-sheet dt.name { text-transform: none; }
.dn-product-center .social-sharing ul { margin: 0; padding: 0; }
.dn-product-center .social-sharing li { box-shadow: none; height: auto; width: auto; background: none !important; margin: 0; display: inline-block; }
.dn-product-center .social-sharing li a {
  display: inline-block; white-space: nowrap; overflow: visible; text-indent: 0; width: auto; height: auto;
  background: var(--neuville-brown); color: #fff; font-size: 17px; padding: 8px 12px; line-height: 21px;
}
.dn-product-center .social-sharing li a:hover { background: var(--neuville-brown-hover); color: #fff; }

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
  #header .header-nav .mobile { display: flex; align-items: center; min-height: 50px; }
  #header .header-nav .mobile .top-logo { order: 1; flex: 1; text-align: center; }
  #header .header-nav .mobile #menu-icon { order: 0; }
  #header .header-nav .mobile #_mobile_user_info { order: 2; }
  #header .header-nav .mobile #_mobile_cart { order: 3; }
  #header .header-nav .mobile .clearfix { display: none; }
  #header .header-nav .mobile .user-info a, #header .header-nav .mobile .blockcart a { color: #fff; padding: 8px 6px; line-height: 1; display: block; background: transparent; }
  #header .header-nav .mobile .user-info .material-icons { display: inline-block; color: #fff; font-size: 26px; }
  #header .header-nav .mobile .blockcart { background: transparent; width: auto; }
  #header .header-nav .mobile .blockcart .fa-shopping-cart { font-size: 22px; }
  #header .header-nav .mobile .blockcart .cart-products-count { font-size: 12px; }
  #header .header-nav .mobile .blockcart .cart-empty { display: none; }
  #header .header-nav .mobile .top-logo img { max-height: 40px; width: auto; }
  .dn-home-tabs-nav li { padding: 0 6px; }
  .dn-home-tabs-nav li a { font-size: 16px; }
  #custom-text .row { margin: 0; }
  #custom-text .editorial_wrap { width: 50%; padding: 0 5px; }
  #custom-text .editorial_content img { max-width: 100px; }
  .dn-product-top { border-top: 0; padding-top: 10px; }
  .dn-buy-box { margin-top: 20px; }
}
.footer-container #block_myaccount_infos .myaccount-title a { color: #fff; }

/* Mon compte : bloc carte privilège (advancedprivilegecard) */
.page-my-account #content .links .dn-privilegecard .link-item { text-transform: uppercase; font-size: 1rem; }
.dn-privilegecard-form { display: flex; gap: 6px; margin-top: 10px; text-transform: none; }
.dn-privilegecard-form .form-control { flex: 1; min-width: 0; }
.dn-privilegecard-msg { text-transform: none; font-size: 13px; margin: 8px 0 0; }
