/*
 * Refonte de l'accueil — thème Princesse de France.
 * Ce fichier est chargé après custom.css afin de ne pas modifier le thème actif.
 */

:root {
  --pdf-blue: #0a245d;
  --pdf-red: #b20819;
  --pdf-red-dark: #8d0010;
  --pdf-gold: #c67700;
  --pdf-gold-light: #e9c98d;
  --pdf-cream: #fdfbf8;
  --pdf-ink: #171717;
}

.refonte-section-intro,
.refonte-section-heading {
  text-align: center;
}

.refonte-section-intro {
  margin: 0 auto 25px;
}

.refonte-section-intro > span,
.refonte-range-overline {
  display: block;
  margin-bottom: 3px;
  color: var(--pdf-gold);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
  line-height: 1.3;
  text-transform: uppercase;
}

.refonte-section-intro h2,
.refonte-section-heading h2 {
  margin: 0;
  color: var(--pdf-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.1;
  text-transform: uppercase;
}

.refonte-section-link {
  clear: both;
  margin: 25px 0 0;
  text-align: center;
}

.refonte-section-link a,
.refonte-button {
  display: inline-block;
  border: 1px solid var(--pdf-red);
  color: var(--pdf-red);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1;
  padding: 13px 28px;
  text-transform: uppercase;
  transition: background-color .2s ease, color .2s ease;
}

.refonte-section-link a:hover,
.refonte-section-link a:focus,
.refonte-button:hover,
.refonte-button:focus {
  background: var(--pdf-red);
  color: #fff;
  text-decoration: none;
}

/* Barre de réassurance et en-tête. */
.refonte-assurance {
  background: #fff;
  border-bottom: 1px solid #ead8be;
}

.refonte-assurance-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.refonte-assurance-item {
  align-items: center;
  color: var(--pdf-blue);
  display: flex;
  gap: 12px;
  justify-content: center;
  min-height: 63px;
  padding: 8px 15px;
  position: relative;
}

.refonte-assurance-item:not(:first-child)::before {
  background: #e6c595;
  content: "";
  height: 31px;
  left: 0;
  position: absolute;
  top: calc(50% - 15px);
  width: 1px;
}

.refonte-assurance-item p,
.refonte-service p {
  margin: 0;
}

.refonte-assurance-item strong,
.refonte-assurance-item p span,
.refonte-service strong,
.refonte-service p span {
  display: block;
}

.refonte-assurance-item strong {
  color: var(--pdf-blue);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.25;
  text-transform: uppercase;
}

.refonte-assurance-item p span {
  color: var(--pdf-blue);
  font-size: 11px;
  line-height: 1.35;
}

.refonte-account-link:hover,
.refonte-account-link:focus {
  background: var(--pdf-cream);
  text-decoration: none;
}

.refonte-assurance-icon,
.refonte-service-icon {
  color: var(--pdf-gold);
  flex: 0 0 auto;
  font-family: "Font Awesome 5 Free";
  font-size: 27px;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  width: 31px;
}

.refonte-icon-delivery::before,
.refonte-service-delivery::before {
  content: "\f0d1";
}

.refonte-icon-lock::before,
.refonte-service-lock::before {
  content: "\f023";
}

.refonte-icon-globe::before {
  content: "\f0ac";
}

.refonte-icon-card::before {
  content: "\f09d";
}

.refonte-icon-user::before {
  content: "\f007";
}

.refonte-service-hand::before {
  content: "\f256";
}

.refonte-service-france::before {
  content: "\f024";
}

@media (min-width: 992px) {
  #header > .header-nav {
    display: none;
  }

  #header .refonte-main-header.header-top {
    background: #fff;
    margin: 0;
    padding: 0;
  }

  #header .refonte-main-header .container {
    max-width: 1200px;
  }

  .refonte-brandbar {
    align-items: center;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    min-height: 171px;
  }

  .refonte-logo {
    align-items: center;
    display: flex;
    justify-content: center;
  }

  .refonte-logo a {
    display: block;
  }

  .refonte-logo img.logo {
    display: block;
    height: auto;
    margin: 0;
    max-height: 145px;
    max-width: 440px;
    width: auto;
  }

  .refonte-header-tools {
    align-items: center;
    display: flex;
    justify-content: flex-end;
    min-width: 250px;
  }

  .refonte-header-tools > div,
  .refonte-header-tools > section {
    float: none !important;
  }

  .refonte-header-tools #_desktop_search_block,
  .refonte-header-tools #_desktop_cart_block {
    display: inline-block;
    float: none;
    vertical-align: middle;
  }

  .refonte-header-tools #_desktop_search_block {
    margin-right: 25px;
  }

  .refonte-header-tools .block-search {
    align-items: center;
    display: flex;
    position: relative;
  }

  .refonte-header-tools .search-icon {
    color: var(--pdf-red);
    cursor: pointer;
    display: inline-block;
    font-size: 23px;
    height: 28px;
    line-height: 28px;
    width: 25px;
  }

  .refonte-header-tools .refonte-tool-label {
    color: var(--pdf-blue);
    font-size: 13px;
    margin-left: 6px;
  }

  .refonte-header-tools #search_widget {
    border: 1px solid #ead8be;
    border-radius: 0;
    left: auto;
    min-width: 260px;
    padding: 7px;
    right: 0;
    top: 37px;
  }

  .refonte-header-tools #_desktop_cart_block .button_cart a.desktop {
    align-items: center;
    color: var(--pdf-blue);
    display: flex;
    font-size: 13px;
    line-height: 28px;
  }

  .refonte-header-tools #_desktop_cart_block .button_cart i {
    color: var(--pdf-red);
    font-size: 26px;
    margin-right: 7px;
  }

  .refonte-header-tools #_desktop_cart_block .item_txt,
  .refonte-header-tools #_desktop_cart_block .item_count {
    color: var(--pdf-blue);
    font-size: 13px;
    font-weight: 400;
  }

  .refonte-main-header .header-bottom {
    background: var(--pdf-red-dark);
    margin: 0;
    min-height: 43px;
    padding: 0;
  }

  .refonte-main-header .header-bottom .container {
    max-width: none;
    padding: 0;
  }

  .refonte-main-header .pos-menu-horizontal .menu-content,
  .refonte-main-header #_desktop_megamenu .menu-content {
    display: flex;
    justify-content: center;
  }

  .refonte-main-header .pos-menu-horizontal .menu-content > li,
  .refonte-main-header #_desktop_megamenu .menu-content > li {
    float: none;
  }

  .refonte-main-header .pos-menu-horizontal .menu-content > li > a,
  .refonte-main-header #_desktop_megamenu .menu-content > li > a {
    color: #fff !important;
    font-size: 13px;
    font-weight: 600;
    line-height: 43px;
    padding: 0 17px;
    text-transform: uppercase;
  }

  .refonte-main-header .pos-menu-horizontal .menu-content > li > a:hover,
  .refonte-main-header .pos-menu-horizontal .menu-content > li.active > a {
    background: #8b0010;
    color: #fff !important;
  }
}

/* Le diaporama reste administré dans le module, mais ne déborde plus. */
#index .pos_bannerslide {
  background: var(--pdf-cream);
  padding: 27px 15px 0;
}

#index .pos_bannerslide .slideshow_container {
  margin: 0 auto;
  max-width: 1140px;
}

#index .pos_bannerslide .pos-slideshow {
  border-radius: 12px;
  box-shadow: 0 3px 14px rgba(33, 20, 9, .10);
  margin: 0;
  overflow: hidden;
}

#index .pos_bannerslide .nivo-main-image {
  min-height: 290px;
  object-fit: cover;
}

#index .pos_bannerslide .nivo-directionNav a {
  background: rgba(255, 255, 255, .94);
  border: 1px solid #e5cfaa;
  border-radius: 50%;
  color: var(--pdf-blue);
  height: 39px;
  line-height: 37px;
  opacity: 1;
  width: 39px;
}

#index .pos_bannerslide .nivo-directionNav a::before {
  font-family: "Font Awesome 5 Free";
  font-size: 17px;
  font-weight: 900;
}

#index .pos_bannerslide .nivo-directionNav .nivo-prevNav::before {
  content: "\f104";
}

#index .pos_bannerslide .nivo-directionNav .nivo-nextNav::before {
  content: "\f105";
}

#index .pos_bannerslide .nivo-directionNav a.nivo-prevNav {
  left: 12px;
}

#index .pos_bannerslide .nivo-directionNav a.nivo-nextNav {
  right: 12px;
}

#index .pos_bannerslide .nivo-controlNav {
  bottom: 9px;
}

#index .pos_bannerslide .nivo-controlNav a {
  background: #aa9d8b;
  height: 9px;
  margin: 0 4px;
  width: 9px;
}

#index .pos_bannerslide .nivo-controlNav a.active {
  background: var(--pdf-red);
}

/* Accueil : la grille de catégories remplace le carrousel du module. */
#index #wrapper {
  background: var(--pdf-cream);
  padding-top: 0;
}

#index #content-wrapper {
  padding-left: 0;
  padding-right: 0;
}

#index .refonte-home {
  margin: 0 -15px;
}

.refonte-home-ranges {
  padding: 0;
}

.refonte-home-ranges .refonte-section-intro {
  margin-bottom: 23px;
}

/* Les trois gammes sont administrables dans le module princesseranges. */
.princesse-ranges {
  background: var(--pdf-cream);
  overflow: hidden;
  padding: 39px 0 38px;
  position: relative;
}

.princesse-ranges-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.princesse-range-card {
  align-items: center;
  background: #fff;
  border: 1px solid #dfb876;
  border-radius: 11px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 248px;
  overflow: hidden;
  padding: 31px 24px;
  position: relative;
  text-align: center;
}

.princesse-range-card::after {
  background: url("../img/floral-corner.svg") no-repeat center / contain;
  bottom: -37px;
  content: "";
  height: 156px;
  opacity: .72;
  pointer-events: none;
  position: absolute;
  width: 190px;
  z-index: 0;
}

.princesse-range-card:first-child::after {
  left: -49px;
}

.princesse-range-card:nth-child(2)::after {
  display: none;
}

.princesse-range-card:nth-child(3)::after {
  right: -49px;
  transform: scaleX(-1);
}

.princesse-range-card > * {
  position: relative;
  z-index: 1;
}

.princesse-range-overline {
  color: var(--pdf-gold);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
  margin: 0 0 8px;
  text-transform: uppercase;
}

.princesse-range-card h3 {
  color: var(--pdf-blue);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  font-weight: 400;
  line-height: 1.15;
  margin: 0 0 10px;
}

.princesse-range-description {
  color: var(--pdf-ink);
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
  max-width: 240px;
}

.princesse-range-card .refonte-button {
  border: 1px solid var(--pdf-blue);
  color: var(--pdf-blue);
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .01em;
  margin-top: 23px;
  padding: 11px 16px;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color .2s ease, color .2s ease;
}

.princesse-range-card .refonte-button:hover,
.princesse-range-card .refonte-button:focus {
  background: var(--pdf-blue);
  color: #fff;
}

.refonte-home-ranges .poslistcategories {
  margin: 0 auto;
  max-width: 1140px;
  padding: 0 15px;
}

.refonte-home-ranges .poslistcategories .container-fluid {
  padding: 0;
}

.refonte-home-ranges .poslistcategories .pos_content {
  display: block;
  margin: 0;
}

.refonte-home-ranges .poslistcategories .block_content:not(.owl-loaded) {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.refonte-home-ranges .poslistcategories .owl-stage-outer {
  overflow: visible;
}

.refonte-home-ranges .poslistcategories .owl-nav,
.refonte-home-ranges .poslistcategories .owl-dots {
  display: none !important;
}

.refonte-home-ranges .poslistcategories .owl-stage {
  display: grid !important;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  transform: none !important;
  width: 100% !important;
}

.refonte-home-ranges .poslistcategories .owl-item {
  float: none;
  margin: 0 !important;
  width: auto !important;
}

.refonte-home-ranges .poslistcategories .item-listcategories {
  height: 100%;
  padding: 0;
}

.refonte-home-ranges .poslistcategories .list-categories {
  align-items: center;
  background: #fff;
  border: 1px solid #dfb876;
  border-radius: 11px;
  display: flex;
  height: 100%;
  justify-content: center;
  min-height: 248px;
  overflow: hidden;
  padding: 30px 24px;
  position: relative;
  text-align: center;
}

.refonte-home-ranges .poslistcategories .list-categories::before,
.refonte-home-ranges .poslistcategories .list-categories::after {
  color: #d7a044;
  content: "❦";
  font-family: Georgia, "Times New Roman", serif;
  font-size: 50px;
  line-height: 1;
  opacity: .7;
  position: absolute;
}

.refonte-home-ranges .poslistcategories .list-categories::before {
  bottom: -11px;
  left: 6px;
}

.refonte-home-ranges .poslistcategories .list-categories::after {
  right: 6px;
  top: -11px;
  transform: rotate(180deg);
}

.refonte-home-ranges .poslistcategories .thumb-category,
.refonte-home-ranges .poslistcategories .number_product,
.refonte-home-ranges .poslistcategories .description-list {
  display: none;
}

.refonte-home-ranges .poslistcategories .desc-listcategoreis {
  position: relative;
  z-index: 1;
}

.refonte-home-ranges .poslistcategories .name_categories {
  margin: 0;
}

.refonte-home-ranges .poslistcategories .name_categories::before {
  color: var(--pdf-gold);
  content: "Collection";
  display: block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.refonte-home-ranges .poslistcategories .name_categories a {
  color: var(--pdf-blue);
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  line-height: 1.15;
  text-decoration: none;
}

.refonte-home-ranges .poslistcategories .name_categories a::after {
  border: 1px solid var(--pdf-blue);
  color: var(--pdf-blue);
  content: "Découvrir";
  display: block;
  font-family: Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .01em;
  margin: 23px auto 0;
  padding: 11px 16px;
  text-transform: uppercase;
  transition: background-color .2s ease, color .2s ease;
  width: max-content;
}

.refonte-home-ranges .poslistcategories .name_categories a:hover::after,
.refonte-home-ranges .poslistcategories .name_categories a:focus::after {
  background: var(--pdf-blue);
  color: #fff;
}

/* Nouveautés. */
.refonte-home-products {
  background: #fff;
  padding: 34px 0 42px;
}

.refonte-featured-products {
  margin: 0;
}

.refonte-featured-products .refonte-section-intro {
  margin-bottom: 19px;
}

.refonte-featured-products .pos_content {
  margin: 0;
}

.refonte-featured-products .item-product {
  padding: 0 8px;
}

.refonte-featured-products .js-product-miniature {
  margin: 0;
  text-align: center;
}

.refonte-featured-products .js-product-miniature .img_block {
  background: #f7f5f1;
  margin-bottom: 11px;
}

.refonte-featured-products .js-product-miniature .img_block img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
  width: 100%;
}

.refonte-featured-products .js-product-miniature .add-to-links,
.refonte-featured-products .js-product-miniature .cart,
.refonte-featured-products .js-product-miniature .product-desc,
.refonte-featured-products .js-product-miniature .variant-links,
.refonte-featured-products .js-product-miniature .hook-reviews {
  display: none !important;
}

.refonte-featured-products .js-product-miniature .product_desc h3 {
  line-height: 1.2;
  margin: 0 0 5px;
}

.refonte-featured-products .js-product-miniature .product_desc h3 a {
  color: var(--pdf-blue);
  font-size: 13px;
  font-weight: 600;
  text-transform: none;
}

.refonte-featured-products .js-product-miniature .product-price-and-shipping {
  line-height: 1.2;
}

.refonte-featured-products .js-product-miniature .price {
  color: var(--pdf-blue);
  font-size: 16px;
  font-weight: 700;
}

.refonte-featured-products .owl-nav > div {
  background: #fff;
  border: 1px solid #e5cfaa;
  border-radius: 50%;
  color: var(--pdf-red);
}

/* Avis du module revws : trois témoignages courts, sans toucher à ses données. */
.refonte-reviews {
  background: var(--pdf-cream);
  overflow: hidden;
  padding: 39px 0 43px;
  position: relative;
}

.refonte-reviews::before,
.refonte-reviews::after {
  background: url("../img/floral-corner.svg") no-repeat center / contain;
  bottom: -74px;
  content: "";
  height: 205px;
  opacity: .58;
  pointer-events: none;
  position: absolute;
  width: 260px;
}

.refonte-reviews::before {
  left: -58px;
}

.refonte-reviews::after {
  right: -58px;
  transform: scaleX(-1);
}

.refonte-reviews .container {
  position: relative;
  z-index: 1;
}

.refonte-section-heading {
  align-items: center;
  display: flex;
  gap: 18px;
  justify-content: center;
  margin-bottom: 22px;
}

.refonte-section-heading-line {
  background: #d6a85d;
  height: 1px;
  max-width: 350px;
  width: 30%;
}

.refonte-reviews .revws-review-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: visible;
}

.refonte-reviews .revws-review {
  align-items: center;
  border: 0;
  border-left: 1px solid #d6a85d;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin: 0;
  min-height: 164px;
  padding: 0 30px;
  text-align: center;
}

.refonte-reviews .revws-review:first-child {
  border-left: 0;
}

.refonte-reviews .revws-review-author {
  align-items: center;
  display: flex;
  flex-direction: column;
  min-width: 0;
  order: 2;
}

.refonte-reviews .revws-grading {
  display: flex;
  margin: 0 0 9px;
  order: -1;
}

.refonte-reviews .revws-grade-wrap {
  height: 17px;
  width: 17px;
}

.refonte-reviews .revws-grade {
  height: 17px;
  width: 17px;
}

.refonte-reviews .revws-grade-on path {
  fill: var(--pdf-gold);
  stroke: var(--pdf-gold);
}

.refonte-reviews .revws-review-details {
  width: 100%;
}

.refonte-reviews .revws-review-content {
  color: var(--pdf-ink);
  font-size: 13px;
  line-height: 1.45;
  margin: 0 0 12px;
  padding: 0;
}

.refonte-reviews .revws-review-title,
.refonte-reviews .revws-review-date,
.refonte-reviews .revws-verified-buyer-badge,
.refonte-reviews .revws-actions,
.refonte-reviews .revws-images {
  display: none;
}

.refonte-reviews .revws-review-author-name {
  color: var(--pdf-blue);
  font-size: 13px;
  font-weight: 700;
}

.refonte-reviews .refonte-section-link a {
  border: 0;
  color: var(--pdf-blue);
  font-size: 14px;
  padding: 0;
  text-transform: none;
}

.refonte-reviews .refonte-section-link a:hover,
.refonte-reviews .refonte-section-link a:focus {
  background: transparent;
  color: var(--pdf-red);
  text-decoration: underline;
}

/* Actualités du blog conservées, avec une présentation à cartes. */
.refonte-home-universe {
  background: #fff;
}

.refonte-home-universe .home_blog_post_area {
  background: var(--pdf-cream);
  margin: 0;
  padding: 38px 0 43px;
}

.refonte-home-universe .home_blog_post_area .pos_title h2 {
  color: var(--pdf-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 400;
  text-align: center;
  text-transform: uppercase;
}

.refonte-home-universe .home_blog_post_area .blog_post {
  background: #fff;
  border: 1px solid #ead8be;
  margin: 0 8px;
}

.refonte-home-universe .refonte-news-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.refonte-home-universe .refonte-news-grid .blog_post {
  display: flex;
  flex-direction: column;
  margin: 0;
}

.refonte-home-universe .refonte-news-grid .post_thumbnail {
  display: block;
}

.refonte-home-universe .home_blog_post_area .blog_post img {
  aspect-ratio: 1.35 / 1;
  object-fit: cover;
  width: 100%;
}

.refonte-home-universe .home_blog_post_area .blog_post .post_content {
  padding: 18px 20px 20px;
}

.refonte-home-universe .refonte-news-grid .post_content {
  flex: 1;
}

.refonte-home-universe .home_blog_post_area .blog_post .meta_category a,
.refonte-home-universe .home_blog_post_area .blog_post .post_title a {
  color: var(--pdf-blue);
}

.refonte-home-universe .home_blog_post_area .blog_post .post_title {
  line-height: 1.25;
  margin-top: 4px;
}

.refonte-home-universe .home_blog_post_area .blog_post .meta_date {
  color: #806f58;
  font-size: 11px;
  margin: 9px 0;
}

.refonte-home-universe .home_blog_post_area .blog_post .post_description {
  color: var(--pdf-ink);
  font-size: 13px;
  line-height: 1.45;
  margin: 0;
}

.refonte-home-universe .home_blog_post_area .blog_post .read_more a {
  color: var(--pdf-red);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.refonte-home-universe .home_blog_post_area .owl-nav > div {
  background: #fff;
  border: 1px solid #e5cfaa;
  border-radius: 50%;
  color: var(--pdf-red);
}

/* Bloc d'engagements juste avant le footer, uniquement sur l'accueil. */
.refonte-services {
  background: #fff;
  border-top: 1px solid #ead8be;
  padding: 19px 0;
}

.refonte-services-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.refonte-service {
  align-items: center;
  color: var(--pdf-blue);
  display: flex;
  gap: 11px;
  justify-content: center;
  min-height: 48px;
  padding: 0 19px;
  position: relative;
}

.refonte-service:not(:first-child)::before {
  background: #ead8be;
  content: "";
  height: 36px;
  left: 0;
  position: absolute;
  top: calc(50% - 18px);
  width: 1px;
}

.refonte-service-icon {
  font-size: 24px;
}

.refonte-service strong {
  color: var(--pdf-blue);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
  text-transform: uppercase;
}

.refonte-service p span {
  color: var(--pdf-blue);
  font-size: 11px;
  line-height: 1.35;
}

/* Le footer garde ses modules, coordonnées et liens ; seules les couleurs changent. */
#footer,
#footer .footer-container,
#footer .footer-container .footer_top,
#footer .footer-container .footer_middle,
#footer .footer-container .footer_bottom {
  background: var(--pdf-red);
  color: #fff;
}

#footer::before {
  display: none;
}

#footer .footer-container .footer_top {
  border-bottom: 1px solid rgba(255, 255, 255, .38);
  padding: 42px 0;
}

#footer .footer-container .footer_middle {
  padding: 34px 0;
}

#footer .footer-container .footer_bottom {
  background: var(--pdf-red-dark);
  border-top: 1px solid rgba(255, 255, 255, .38);
}

#footer .footer-container .footer_block h3,
#footer .footer-container .footer_block .title h3,
#footer .footer-container .footer_block h4,
#footer .footer-container .footer_block p,
#footer .footer-container .footer_block .footer_list > li a,
#footer .footer-container .footer_block .footer_list > ul > li a,
#footer .footer-container .footer_bottom .copyright,
#footer .footer-container .footer_bottom .copyright a {
  color: #fff;
}

#footer .footer-container .footer_block .footer_list > li a:hover,
#footer .footer-container .footer_block .footer_list > ul > li a:hover {
  color: #fff;
  opacity: .76;
}

#footer .footer-container .footer_block .navbar-toggler,
#footer .footer-container .static-info .icon-static {
  color: #fff;
}

#footer .footer-container .footer_middle .footer_block:last-child img {
  filter: none;
  height: auto;
  max-width: 100%;
}

#footer .footer-container .social_follow li a {
  border-color: #fff;
  color: #fff;
}

@media (max-width: 1199px) and (min-width: 992px) {
  .refonte-assurance-item {
    gap: 8px;
    padding-left: 8px;
    padding-right: 8px;
  }

  .refonte-assurance-icon {
    font-size: 23px;
    width: 25px;
  }

  .refonte-assurance-item strong,
  .refonte-assurance-item p span {
    font-size: 10px;
  }

  .refonte-main-header .pos-menu-horizontal .menu-content > li > a,
  .refonte-main-header #_desktop_megamenu .menu-content > li > a {
    font-size: 11px;
    padding: 0 10px;
  }
}

@media (max-width: 991px) {
  #header .header-nav {
    background: #fff;
    border-bottom: 1px solid #ead8be;
  }

  #index .pos_bannerslide {
    padding-top: 15px;
  }

  .refonte-home-ranges .poslistcategories .block_content:not(.owl-loaded),
  .refonte-home-ranges .poslistcategories .owl-stage {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .princesse-ranges-grid,
  .refonte-home-universe .refonte-news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .refonte-home-universe .refonte-news-grid .blog_post:last-child {
    grid-column: 1 / -1;
    max-width: calc(50% - 8px);
  }

  .refonte-reviews .revws-review {
    padding-left: 18px;
    padding-right: 18px;
  }

  .refonte-services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 15px;
  }

  .refonte-service:nth-child(3)::before {
    display: none;
  }
}

@media (max-width: 767px) {
  .refonte-section-intro h2,
  .refonte-section-heading h2,
  .refonte-home-universe .home_blog_post_area .pos_title h2 {
    font-size: 25px;
  }

  #index .pos_bannerslide {
    padding-left: 10px;
    padding-right: 10px;
  }

  #index .pos_bannerslide .nivo-main-image {
    min-height: 185px;
  }

  .refonte-home-ranges {
    padding-top: 28px;
  }

  .refonte-home-ranges .poslistcategories .block_content:not(.owl-loaded),
  .refonte-home-ranges .poslistcategories .owl-stage {
    grid-template-columns: 1fr;
  }

  .princesse-ranges-grid,
  .refonte-home-universe .refonte-news-grid {
    grid-template-columns: 1fr;
  }

  .princesse-range-card {
    min-height: 215px;
  }

  .refonte-home-universe .refonte-news-grid .blog_post:last-child {
    grid-column: auto;
    max-width: none;
  }

  .refonte-reviews::before,
  .refonte-reviews::after {
    bottom: -97px;
    height: 150px;
    opacity: .38;
    width: 180px;
  }

  .refonte-home-ranges .poslistcategories .list-categories {
    min-height: 205px;
  }

  .refonte-reviews .revws-review-list {
    grid-template-columns: 1fr;
  }

  .refonte-reviews .revws-review {
    border-left: 0;
    border-top: 1px solid #d6a85d;
    min-height: 0;
    padding: 22px 10px;
  }

  .refonte-reviews .revws-review:first-child {
    border-top: 0;
  }

  .refonte-services-grid {
    grid-template-columns: 1fr;
  }

  .refonte-service:not(:first-child)::before {
    height: 1px;
    left: 15%;
    top: -8px;
    width: 70%;
  }

  .refonte-service:nth-child(3)::before {
    display: block;
  }

  #footer .footer-container .footer_top,
  #footer .footer-container .footer_middle {
    padding-bottom: 27px;
    padding-top: 27px;
  }
}

/* Nouveautés : source conservée dans Category Tab Slider. */
.refonte-home-products {
  background: #fff;
  padding: 34px 0 42px;
}

.refonte-home-products .tab-category-container-slider {
  margin: 0;
  padding: 0 15px;
}

.refonte-home-products .tab-category {
  margin: 0 auto;
  max-width: 1140px;
}

.refonte-home-products .tab-category .pos_title h2 {
  color: var(--pdf-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.1;
  margin: 0 0 21px;
  text-align: center;
  text-transform: uppercase;
}

.refonte-home-products .tab-category .desc_title,
.refonte-home-products .tab-category .tab_cates {
  display: none;
}

.refonte-home-products .pos_content_product_cate {
  margin: 0;
  min-height: 230px;
  position: relative;
}

.refonte-home-products .productTabCategorySlider {
  margin: 0 -8px;
}

.refonte-home-products .productTabCategorySlider .item-product {
  padding: 0 8px;
}

.refonte-home-products .productTabCategorySlider .js-product-miniature {
  background: transparent;
  box-shadow: none;
  margin: 0;
  text-align: center;
}

.refonte-home-products .productTabCategorySlider .img_block {
  background: #f7f5f1;
  margin-bottom: 10px;
  overflow: hidden;
}

.refonte-home-products .productTabCategorySlider .img_block img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
  width: 100%;
}

.refonte-home-products .productTabCategorySlider .add-to-links,
.refonte-home-products .productTabCategorySlider .cart,
.refonte-home-products .productTabCategorySlider .product-desc,
.refonte-home-products .productTabCategorySlider .variant-links,
.refonte-home-products .productTabCategorySlider .hook-reviews,
.refonte-home-products .productTabCategorySlider .product-flag {
  display: none !important;
}

.refonte-home-products .productTabCategorySlider .product_desc h3 {
  line-height: 1.2;
  margin: 0 0 5px;
}

.refonte-home-products .productTabCategorySlider .product_desc h3 a {
  color: var(--pdf-blue);
  font-size: 13px;
  font-weight: 600;
  text-transform: none;
}

.refonte-home-products .productTabCategorySlider .product-price-and-shipping {
  line-height: 1.2;
  opacity: 1;
  transform: none;
  visibility: visible;
}

.refonte-home-products .productTabCategorySlider .price {
  color: var(--pdf-blue);
  font-size: 16px;
  font-weight: 700;
}

.refonte-home-products .productTabCategorySlider .owl-nav > div,
.refonte-news-slider .owl-nav > div {
  align-items: center;
  background: #fff;
  border: 1px solid #e5cfaa;
  border-radius: 50%;
  color: var(--pdf-red);
  display: flex;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  height: 38px;
  justify-content: center;
  line-height: 1;
  margin-top: -19px;
  opacity: 1;
  width: 38px;
}

.refonte-home-products .productTabCategorySlider .owl-nav > div::before,
.refonte-news-slider .owl-nav > div::before {
  display: none;
}

/* Avis : le module reste la source de données, la refonte gère son carrousel. */
.refonte-reviews .revws-review-list {
  display: block;
  overflow: hidden;
}

.refonte-reviews .revws-review-list:not(.owl-loaded) {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.refonte-reviews .revws-review-list .owl-stage {
  display: flex;
}

.refonte-reviews .revws-review-list .owl-item {
  display: flex;
}

.refonte-reviews .revws-review-list .owl-item .revws-review {
  width: 100%;
}

.refonte-reviews .revws-review-content {
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  display: -webkit-box;
  overflow: hidden;
  white-space: pre-line;
}

.refonte-reviews .owl-dots {
  margin-top: 20px;
}

.refonte-reviews .owl-dots .owl-dot span {
  background: transparent;
  border: 1px solid var(--pdf-gold);
  border-radius: 50%;
  height: 10px;
  width: 10px;
}

.refonte-reviews .owl-dots .owl-dot.active span,
.refonte-reviews .owl-dots .owl-dot:hover span {
  background: var(--pdf-red);
  border-color: var(--pdf-red);
}

/* Actualités : cinq cartes, texte et action révélés au survol. */
.refonte-home-universe .home_blog_post_area {
  padding: 38px 0 45px;
}

.refonte-home-universe .refonte-news-slider {
  margin: 0 auto;
  max-width: 1180px;
  padding: 0 20px;
  position: relative;
}

.refonte-home-universe .refonte-news-slider .owl-stage {
  display: flex;
}

.refonte-home-universe .refonte-news-slider .owl-item {
  display: flex;
  padding: 0 6px;
}

.refonte-home-universe .refonte-news-slider .blog_post {
  background: #fff;
  border: 0;
  display: block;
  margin: 0;
  min-height: 220px;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.refonte-home-universe .refonte-news-slider .post_thumbnail,
.refonte-home-universe .refonte-news-slider .post_thumbnail img {
  display: block;
  height: 230px;
  width: 100%;
}

.refonte-home-universe .refonte-news-slider .post_thumbnail img {
  aspect-ratio: auto;
  object-fit: cover;
}

.refonte-home-universe .refonte-news-slider .post_content {
  align-items: center;
  background: linear-gradient(180deg, rgba(9, 36, 93, .22), rgba(9, 36, 93, .94));
  bottom: 0;
  display: flex;
  left: 0;
  padding: 18px;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  transition: opacity .25s ease;
}

.refonte-home-universe .refonte-news-slider .content-inner {
  margin: auto;
  width: 100%;
}

.refonte-home-universe .refonte-news-slider .post_title {
  line-height: 1.2;
  margin: 0 0 10px;
}

.refonte-home-universe .refonte-news-slider .post_title a {
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  font-weight: 400;
}

.refonte-home-universe .refonte-news-slider .post_description {
  color: #fff;
  font-size: 12px;
  line-height: 1.4;
  margin: 0 0 13px;
}

.refonte-home-universe .refonte-news-slider .read_more {
  margin: 0;
}

.refonte-home-universe .refonte-news-slider .read_more a {
  border: 1px solid #fff;
  color: #fff;
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  padding: 8px 11px;
  text-transform: uppercase;
}

.refonte-home-universe .refonte-news-slider .read_more a:hover,
.refonte-home-universe .refonte-news-slider .read_more a:focus {
  background: #fff;
  color: var(--pdf-red);
  text-decoration: none;
}

.refonte-home-universe .refonte-news-slider .owl-nav > div.owl-prev {
  left: -1px;
}

.refonte-home-universe .refonte-news-slider .owl-nav > div.owl-next {
  right: -1px;
}

@media (min-width: 768px) {
  .refonte-home-universe .refonte-news-slider .post_content {
    opacity: 0;
  }

  .refonte-home-universe .refonte-news-slider .blog_post:hover .post_content,
  .refonte-home-universe .refonte-news-slider .blog_post:focus-within .post_content {
    opacity: 1;
  }
}

@media (max-width: 767px) {
  .refonte-home-products .tab-category .pos_title h2 {
    font-size: 25px;
  }

  .refonte-home-products .productTabCategorySlider .owl-nav,
  .refonte-news-slider .owl-nav {
    display: none;
  }

  .refonte-reviews .revws-review-list:not(.owl-loaded) {
    grid-template-columns: 1fr;
  }

  .refonte-reviews .revws-review-list:not(.owl-loaded) .revws-review {
    border-left: 0;
    border-top: 1px solid #d6a85d;
    min-height: 0;
    padding: 22px 10px;
  }

  .refonte-home-universe .refonte-news-slider {
    padding: 0;
  }
}

/* Ajustements de finition de la page d'accueil. */
#index .pos_bannerslide {
  clear: both;
  padding-top: 16px;
  position: relative;
  z-index: 1;
}

#index .pos_bannerslide #pos-slideshow-home,
#index .pos_bannerslide #pos-slideshow-home.nivoSlider {
  height: clamp(220px, 25vw, 300px) !important;
}

#index .pos_bannerslide #pos-slideshow-home .nivo-main-image,
#index .pos_bannerslide #pos-slideshow-home > .nivo-imageLink,
#index .pos_bannerslide #pos-slideshow-home > .nivo-imageLink img {
  height: 100% !important;
}

#index .pos_bannerslide #pos-slideshow-home .nivo-main-image,
#index .pos_bannerslide #pos-slideshow-home > .nivo-imageLink img {
  object-fit: cover;
  object-position: center;
}

.refonte-home-products .productTabCategorySlider .item-product {
  padding: 0 10px;
}

.refonte-home-products .productTabCategorySlider .js-product-miniature {
  border: 0 !important;
  margin: 0 auto !important;
  max-width: 220px;
}

.refonte-home-products .productTabCategorySlider .img_block {
  aspect-ratio: 1 / 1;
  height: auto !important;
  margin-bottom: 14px;
}

.refonte-home-products .productTabCategorySlider .img_block .thumbnail {
  display: block !important;
  height: 100% !important;
  width: 100% !important;
}

.refonte-home-products .productTabCategorySlider .img_block img,
.refonte-home-products .productTabCategorySlider .img_block .thumbnail img {
  display: block !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  width: 100% !important;
}

.refonte-home-products .productTabCategorySlider .product_desc {
  min-height: 61px;
  padding: 0 !important;
}

.refonte-home-products .productTabCategorySlider .product_desc h3 {
  min-height: 16px;
}

.refonte-home-products .productTabCategorySlider .product_desc h3 a {
  font-size: 14px;
  text-transform: uppercase;
}

.refonte-home-products .productTabCategorySlider .product-price-and-shipping,
.refonte-home-products .productTabCategorySlider .product-price-and-shipping .price {
  display: block !important;
}

.refonte-home-products .productTabCategorySlider .price {
  font-size: 17px;
}

.refonte-reviews .revws-review-list.owl-loaded .owl-item .revws-review {
  border-left: 1px solid var(--pdf-gold);
}

.refonte-reviews .revws-review-list.owl-loaded .owl-item.refonte-review-first .revws-review {
  border-left: 0;
}

/* Flux Instagram : le contenu est fourni par le module Princesse Instagram. */
.refonte-instagram {
  background: #fff;
  padding: 39px 0 48px;
}

.refonte-instagram .refonte-section-intro {
  margin-bottom: 24px;
}

.refonte-instagram .refonte-section-intro a {
  color: var(--pdf-gold);
  font-size: 13px;
  text-decoration: none;
}

.refonte-instagram-fallback {
  margin: 0;
  text-align: center;
}

.refonte-instagram-fallback a {
  color: var(--pdf-blue);
  font-size: 14px;
  font-weight: 700;
}

.refonte-instagram-slider {
  margin: 0 auto;
  max-width: 1180px;
  padding: 0 20px;
  position: relative;
}

.refonte-instagram-slider .owl-stage {
  display: flex;
}

.refonte-instagram-slider .owl-item {
  display: flex;
  padding: 0 6px;
}

.refonte-instagram-post {
  background: #f7f5f1;
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.refonte-instagram-post::after {
  align-items: center;
  background: rgba(173, 35, 40, .8);
  color: #fff;
  content: "Instagram";
  display: flex;
  font-size: 12px;
  font-weight: 700;
  inset: 0;
  justify-content: center;
  letter-spacing: .08em;
  opacity: 0;
  position: absolute;
  text-transform: uppercase;
  transition: opacity .2s ease;
}

.refonte-instagram-post:hover::after,
.refonte-instagram-post:focus-within::after {
  opacity: 1;
}

.refonte-instagram-post img {
  aspect-ratio: 1 / 1;
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.refonte-instagram-slider .owl-nav > div {
  align-items: center;
  background: #fff;
  border: 1px solid #e5cfaa;
  border-radius: 50%;
  color: var(--pdf-red);
  display: flex;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  height: 38px;
  justify-content: center;
  line-height: 1;
  margin-top: -19px;
  opacity: 1;
  width: 38px;
}

.refonte-instagram-slider .owl-nav > div::before {
  display: none;
}

@media (max-width: 767px) {
  #index .pos_bannerslide {
    padding-top: 10px;
  }

  #index .pos_bannerslide #pos-slideshow-home,
  #index .pos_bannerslide #pos-slideshow-home.nivoSlider {
    height: 205px !important;
  }

  .refonte-instagram-slider {
    padding: 0;
  }

  .refonte-instagram-slider .owl-nav {
    display: none;
  }
}

/*
 * La feuille Bonique positionnait le header de la page d'accueil en
 * absolute. Il ne réservait donc plus sa hauteur : le diaporama remontait
 * derrière lui et le bandeau de réassurance devenait invisible.
 */
@media (min-width: 992px) {
  #index #header {
    left: auto;
    position: relative;
    right: auto;
    top: auto;
  }

  .refonte-brandbar {
    column-gap: 25px;
    grid-template-columns: minmax(180px, 1fr) auto minmax(300px, 1fr);
    padding: 0 15px;
  }

  .refonte-brand-illustration {
    align-items: center;
    display: flex;
    justify-content: flex-start;
    min-height: 1px;
  }

  .refonte-brand-illustration img {
    display: block;
    height: auto;
    max-height: 118px;
    max-width: 180px;
    object-fit: contain;
    width: 100%;
  }

  .refonte-header-tools {
    gap: 20px;
    min-width: 0;
  }

  .refonte-search-form {
    align-items: center;
    border: 1px solid #e5cfaa;
    display: flex;
    height: 37px;
    max-width: 205px;
    width: 100%;
  }

  .refonte-search-form input {
    background: transparent;
    border: 0;
    color: #56483d;
    font-size: 13px;
    height: 100%;
    min-width: 0;
    outline: 0;
    padding: 0 10px;
    width: 100%;
  }

  .refonte-search-form input::placeholder {
    color: #9b8b79;
    opacity: 1;
  }

  .refonte-search-form button {
    background: transparent;
    border: 0;
    color: var(--pdf-red);
    cursor: pointer;
    flex: 0 0 35px;
    font-size: 0;
    height: 35px;
    padding: 0;
  }

  .refonte-search-form button::before {
    content: "\\f002";
    font-family: "Font Awesome 5 Free";
    font-size: 15px;
    font-weight: 900;
  }

  .refonte-header-cart,
  .refonte-header-cart #_desktop_cart_block {
    display: inline-block;
    float: none;
    vertical-align: middle;
  }
}

@media (max-width: 991px) {
  .refonte-brand-illustration,
  .refonte-search-form {
    display: none;
  }
}
