  /*********************
* GLOBAL ********************
*********************/


  body {
      margin: 0 !important;
      font-family: "Relief";
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  b,
  s,
  a {
      color: var(--color__noir);
  }

  h1 {
      font-size: 3rem;
      text-align: center;
  }

  h2 {
      font-size: 2.5rem;
      margin-top: 3rem;
      line-height: 3.5rem;
  }

  h3 {
      font-size: 2rem;
      margin-top: 2rem;
      line-height: 3rem;
  }

  p {
      font-size: 1.3rem;
      margin-bottom: 1rem;
  }

  a {
      text-decoration: none;
  }

  ul {
      margin-left: 0;
      font-size: 1.2rem;
  }

  a:link,
  a:visited,
  a:hover,
  a:focus,
  a:active {
      color: var(--color__noir);
      outline: none;
  }

  .btn,
  .button {
      /* width: 100%; */
      background-color: #000000 !important;
      border: 1px solid #000000 !important;
      color: white !important;
      font-size: 1.1rem;
      border-width: 0 !important;
  }

  .btn:hover,
  .button:hover {
      background-color: #ffffff !important;
      color: black !important;
      border: 1px solid #000000 !important;
  }

  .btn:focus,
  .button:focus,
  .btn:active,
  .button:active {
      background-color: #ffffff !important;
      color: black !important;
      border: 1px solid #000000 !important;
  }

  .btn-primary,
  .woocommerce .card a.button,
  .woocommerce div.product form.cart button.button,
  .woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
  #place_order {
      --bs-btn-bg: var(--color__gris);
      --bs-btn-border-color: var(--color__gris);
      --bs-btn-hover-bg: var(--color__gris);
      --bs-btn-hover-border-color: var(--color__gris);
      --bs-btn-active-bg: var(--color__gris);
      --bs-btn-active-border-color: var(--color__gris);
      --bs-btn-disabled-bg: var(--color__gris);
      --bs-btn-disabled-border-color: var(--color__gris);
  }

  .scale {
      transition: 0.25s;
  }

  .scale:hover {
      transform: scale(0.95);
  }

  .white {
      color: white;
  }

  .black {
      color: black;
  }

  .wc-breadcrumb .breadcrumb-item:first-child a::before {
      background-color: #343a40;
  }

  /*********************
 * NAVIGATION         *
 *********************/

  /* Menu principal (desktop) */

  .navbar {
      background: var(--color__blanc);
      align-items: center;
      justify-content: center;
      position: fixed;
      top: 0;
      width: 100%;
      z-index: 2;
      display: block;
      box-shadow: 0 0.15em 0.35em 0 rgba(56, 64, 102, 0.7);
  }

  .navbar-nav {
      display: flex;
      align-items: center;
      background-color: white !important;
  }

  .nav-item {
      display: flex;
      align-items: center;
  }

  .nav-link {
      padding: 0.5rem 1rem;
      font-size: 1.4rem;
      color: rgba(0, 0, 0, 1) !important;
  }

  /* Style du dropdown menu */
  .navbar .dropdown-menu {
      background-color: #ffffff;
      border: none;
      box-shadow: none;
      min-width: 280px;
      padding: 0.5rem 0;
      margin-top: 0;
      font-size: 1.25rem;
      /* correspond à .fs-3 */
  }

  /* Liens du dropdown */
  .navbar .dropdown-item {
      padding: 0.75rem 1.25rem;
      font-weight: 500;
      color: #000000;
      background-color: transparent;
      transition: background-color 0.2s ease;
  }

  /* Hover */
.nav-link:hover,
  .navbar .dropdown-item:hover,
  .navbar .dropdown-item:focus {
      text-decoration: underline var(--color__noir);
      transition: all 0.8s ease-out;
      text-decoration-thickness: 1px;
      text-underline-offset: 6px;
  }



  /*********************
*** Box Partenaires ***
*********************/
  .box-partenaires .list_partenaires {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
  }

  .box-partenaires .list_partenaires a {
      flex: 1 0 auto;
      text-align: center;
      opacity: 1;
      padding: 1em;
  }

  .box-partenaires .list_partenaires a:hover {
      opacity: 0.85;
  }

  .box-partenaires .list_partenaires a img {
      height: 120px;
      width: auto;
  }


  /*********************
* SLIDER ********************
*********************/

  .box-slider {
      margin-top: 10px;
  }

  .box-slider a {
      position: relative;
      display: inline-block;
  }

  .tab-slider {
      display: table;
      width: 100%;
      height: 100%;
      position: absolute;
  }

  .cell-slider {
      display: table-cell;
      width: 100%;
      height: 100%;
      vertical-align: middle;
      text-align: center;
  }

  .title-slider {
      font-size: 4rem;
      text-transform: uppercase;
      line-height: 1;
      color: white;
      font-weight: bold;
      text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.75);
  }

  .content-slider {
      font-size: 2rem;
      line-height: 1.5;
      color: white;
      text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.75);
  }

  .img-slider {
      background-size: cover;
      background-position: center;
      width: 100%;
      height: 400px;
  }

  .slick-dots {
      bottom: 25px;
      z-index: 1000;
  }

  .slick-dots li button::before {
      opacity: 1;
      color: white;
  }

  .slick-dots li.slick-active button::before {
      opacity: 1;
      color: #343a40;
  }

  .slick-dotted.slick-slider {
      margin-bottom: 0;
  }

  /*********************
* ACCUEIL ********************
*********************/

  .link-product {
      display: block;
      border: solid 1px grey;
      padding: 5px;
  }

  .link-product-new {
      background-color: white;
  }

  .link-product img {
      width: 100%;
      max-width: none;
  }

  .link-event {
      display: block;
      position: relative;
  }

  .tab-event {
      display: table;
      width: 100%;
      height: 100%;
      position: absolute;
  }

  .cell-event {
      display: table-cell;
      width: 100%;
      height: 100%;
      vertical-align: middle;
      text-align: center;
  }

  .title-event {
      font-size: 3rem;
      text-transform: uppercase;
      line-height: 1;
      color: white;
      font-weight: bold;
      text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.75);
  }

  .bg-gravure {
      background-color: var(--color__1);
  }

  .bg-serigraphie {
      background-color: var(--color__3);
  }

  /* padding du h3 des produits page d'accueil */

  h3.text-center {
      padding-top: 0.5em !important;
  }

  /* Bouton catégories accueil */
  .thumbnails {
      margin: 0px auto;
      padding: 0px;
      text-align: center;
      width: 100%;
      transition: transform .2s;
      /* Animation */
  }

  .thumbnail {
      display: inline-block;
      position: relative;
      border-radius: 4px;
      width: 100%;
      height: 300px;
      overflow: hidden;
  }

  .thumbnail img {
      border-radius: 4px;
      object-fit: cover;
      width: 100%;
      height: 300px;
      border: solid 5px white;
  }

  .thumbnail figcaption {
      display: inline-block;
      padding: 20px 0px;
      position: absolute;
      left: 0px;
      bottom: 0px;
      background: white;
      color: black;
      text-decoration: none;
      text-align: center;
      width: 100%;
  }

  .thumbnails:hover {
      -ms-transform: scale(0.95);
      /* IE 9 */
      -webkit-transform: scale(0.95);
      /* Safari 3-8 */
      transform: scale(0.95);
  }

  .div-cc {
      border-radius: 1rem;
      background-color: #343a40;
      text-align: center;
  }

  .div-cc h1,
  .div-cc h2,
  .div-cc h3,
  .div-cc h4,
  .div-cc h5,
  .div-cc h6 {
      color: white;
      font-size: 2rem;
      font-weight: bold;
      margin: 0;
  }

  .div-cc p {
      color: white;
      padding-bottom: 15px;
  }

  .icon-cc {
      font-size: 4rem;
      color: white;
  }


  /* Enlève l'affichage des étiquettes et des catégories dans les pages produits */
  /* Masquer le libellé « Catégorie(s) » et « Étiquette(s) » */
  .product_meta .posted_in,
  .product_meta .tagged_as {
      display: none;
  }

  /*********************
* CONTACT ********************
*********************/

  .map-contact iframe {
      height: 530px;
  }

  .txt-contact {
      font-size: 1rem;
  }

  /*********************
* ACCESSIBILITÉ ********************
*********************/

  .img-acces {
      display: inline;
      width: 100px;
      margin-right: 10px;
      float: left;
  }

  /*********************
* ARCHIVE ********************
*********************/
  .nav-filter-archive {
      text-align: center;
  }

  .nav-filter-archive li {
      list-style: none;
      display: inline;
      margin-right: 10px;
  }

  .link-archive,
  .link-galerie {
      overflow: hidden;
      position: relative;
      display: block;
  }

  a.link-archive {
      color: var(--color__text_main);
      transition: all 0.3s;
  }

  a.link-archive:hover {
      text-decoration: none;
      color: var(--color__text_main);
  }

  a.link-archive:hover .title-archive {
      color: var(--color__noir);
  }

  a.link-archive:hover .title-archive,
  a.link-archive:hover .content-archive,
  a.link-archive:hover .tag-archive {
      background: #f0eded;
  }

  .title-archive {
      width: 100%;
      font-size: 1.6em;
      padding: 4px 4px 0px 4px;
      transition: all 0.3s;
  }

  .content-archive {
      font-size: 1rem;
      padding: 0px 1px 1px 4px;
      transition: all 0.3s;
  }

  .tag-archive {
      font-size: 0.9rem;
      color: grey;
      padding: 0px 1px 1px 4px;
      transition: all 0.3s;
  }

  .img-archive img {
      display: block;
      /* élimine les espaces blancs par défaut */
      width: 100%;
      /* occupe toute la largeur du conteneur */
      height: 360px;
      /* occupe toute la hauteur du conteneur */
      object-fit: cover;
      /* recouvre le container sans déformation */
  }


  .img-galerie {
      overflow: hidden;
      background-size: cover;
      background-position: center;
      width: 100%;
      height: 360px;
  }

  .pagination {
      margin: 0;
  }

  .page-item.active .page-link {
      background-color: black !important;
      border-color: black !important;
  }

  .page-link:not(.current):hover {
      color: black !important;
  }

  /*********************
* CONTENT ARCHIVE ********************
*********************/
  .nav-archive {
      font-size: 1.2rem;
  }

  .nav-archive a {
      width: auto;
      background-color: black;
      border: solid 1px black;
      color: var(--color__blanc);
      font-size: 1.2rem;
      display: inline-block;
      font-weight: 400;
      padding: .375rem .75rem;
      border-radius: 0;
      line-height: var(--font__line_height_body);
      transition: .3s ease-in-out;
  }

  .nav-archive a i::before {
      transition: .3s ease-in-out;
  }

  .nav-archive a:hover {
      background-color: white;
      border: solid 1px black;
      color: black !important;
      text-decoration: none;
  }

  .nav-archive a:hover i::before {
      transform: rotate(360deg);
  }

  /*********************
* FOOTER ********************
*********************/

  .bloc-footer-map {
      height: 400px;
      position: relative;
  }

  .bloc-footer-map iframe {
      width: 100%;
      height: 400px;
  }

  .bloc-footer-icon {
      color: white;
      text-align: center;
      background-color: #414141;
      padding-top: 15px;
      padding-bottom: 15px;
  }

  .txt-cart,
  .txt-card,
  .txt-delivery,
  .txt-inch {
      display: inline;
      padding-left: 50px;
      padding-right: 50px;
      font-weight: bold;
  }

  .icon-cart,
  .icon-card,
  .icon-delivery,
  .icon-inch {
      vertical-align: middle;
      display: inline;
  }

  .icon-delivery {
      margin-right: 10px;
  }

  .bloc-footer-1 {
      background-color: #222222;
      color: white;
      font-size: 1.2rem;
  }

  .bloc-footer-1 a {
      font-size: 1.2rem;
  }

  .bloc-footer-2 {
      background-color: #222222;
      font-size: 12px;
      color: white;
  }

  .bloc-footer-1 a,
  .bloc-footer-2 a {
      color: white;
  }

  .bloc-footer-1 a:hover,
  .bloc-footer-2 a:hover {
      text-decoration: underline;
  }

  .icon-footer {
      color: white !important;
      transition: 0.25s;
  }

  .icon-footer:hover {
      color: #343a40 !important;
  }

  .icon-footer i {
      font-size: 3rem;
  }

  /* Empile tous les items verticalement */
  #offcanvas-navbar .nav {
      display: flex !important;
      flex-direction: column !important;
  }

  /* Chaque lien prend toute la largeur */
  #offcanvas-navbar .nav-link,
  #offcanvas-navbar .btn.nav-link {
      width: 100%;
      text-align: left;
  }

  /* Taille du texte */
  #offcanvas-navbar .nav-link.fs-4,
  #offcanvas-navbar .btn.nav-link {
      font-size: 1.25rem;
      padding: 0.75rem 1rem;
  }

  /* Sous-items un peu plus petits */
  #offcanvas-navbar .nav .fs-5 {
      font-size: 1.1rem;
  }

  /* Rotation du chevron quand ouvert */
  #offcanvasReservation:not(.collapse) + .nav,
  #offcanvas-navbar .btn[aria-expanded="true"] .bi-chevron-down {
      transform: rotate(180deg);
  }


  /*********************
* RESPONSIVE ********************
*********************/

  @media (max-width: 575px) {
      .box-new {
          width: auto;
          margin: auto;
      }
  }

  @media (min-width: 576px) and (max-width: 767px) {
      .box-new {
          width: 540px;
          margin: auto;
      }
  }

  @media (min-width: 768px) and (max-width: 991px) {
      .box-new {
          width: 720px;
          margin: auto;
      }
  }

  @media (min-width: 992px) and (max-width: 1199px) {
      .box-new {
          width: 960px;
          margin: auto;
      }
  }

  @media (min-width: 1200px) and (max-width: 1399px) {
      .box-new {
          width: 1140px;
          margin: auto;
      }
  }

  @media (min-width: 1400px) {
      .box-new {
          width: 1320px;
          margin: auto;
      }
  }

  @media (max-width: 991.98px) {
      .menu-item {
          height: auto;
      }

      .btn {
          font-size: 1rem;
      }

      .nav-archive {
          font-size: 1rem;
      }

      .nav-archive a {
          font-size: 1rem;
      }

      ul {
          font-size: 1rem;
      }

      h1 {
          font-size: 2rem;
      }

      p {
          font-size: 1rem;
      }

      .title-slider {
          font-size: 2rem;
          line-height: 1;
      }

      .content-slider {
          font-size: 1rem;
          line-height: 1.5;
      }

      .title-event {
          font-size: 2rem;
      }

      .title-archive {
          top: 0px;
          font-size: 1.5rem;
      }

      .content-archive {
          bottom: 0px;
          font-size: 1rem;
      }

      .bloc-footer-1 {
          font-size: 1rem;
      }

      .bloc-footer-1 a {
          font-size: 1rem;
      }

      .bloc-footer-icon {
          display: none;
      }

      /* Navigation */
      .navbar-nav .nav-item.fw-bold {
          font-size: 1.3rem;
          margin-top: 0.5rem;
      }

      .navbar-nav .nav-item.ps-3 {
          padding-left: 1.25rem;
      }

      .navbar-nav .nav-link.fs-5 {
          font-size: 1.1rem;
      }

      .nav-link {
          padding: 0rem 1rem;
      }

      .offcanvas .nav-link.fs-3 {
          font-weight: 700;
      }


  }
