.onsale {
  display: none;
}
.product {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.product .tinv-wraper.tinv-wishlist.tinvwl-above_thumb-add-to-cart {
  right: 10px;
  left: initial;
  padding: 6px;
  border-radius: 50%;
  background-color: white;
}
.product .tinvwl-product-in-list {
  color: #bf3737;
}
.product img {
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);
}
.product .price_and_rating {
  display: flex;
  justify-content: space-between;
}
.woocommerce ul.products {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#best_selling ul.products,
#on_sale ul.products {
  flex-wrap: nowrap;
  overflow-x: visible;
  scroll-behavior: smooth;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after {
  content: none;
}
.woocommerce ul.products::after {
  content: "";
  flex: auto;
}
.woocommerce ul.products li.product .price_and_rating .price {
  display: flex;
  flex-direction: row-reverse;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  color: #000;
  gap: 6px;
  margin-bottom: 0;
  align-items: center;
}
.woocommerce ul.products li.product .price_and_rating .price ins {
  text-decoration: none;
}
.woocommerce ul.products li.product .price_and_rating .price del {
  font-size: 13px;
  color: #a61105;
  font-weight: 500;
}
.woocommerce ul.products li.product .price_and_rating .rating {
  color: #2f2f2f;
  font-size: 13px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.28px;
}
.woocommerce ul.products li.product .price_and_rating .rating::before {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M10.6767 8.62539C10.504 8.80084 10.4247 9.05457 10.464 9.30341L11.0567 12.7425C11.1067 13.0339 10.9893 13.3289 10.7567 13.4974C10.5287 13.6721 10.2253 13.6931 9.97667 13.5533L7.024 11.9386C6.92134 11.8813 6.80734 11.8505 6.69067 11.8471H6.51C6.44734 11.8568 6.386 11.8778 6.33 11.91L3.37667 13.5323C3.23067 13.6092 3.06534 13.6365 2.90334 13.6092C2.50867 13.5309 2.24534 13.1367 2.31 12.7208L2.90334 9.28174C2.94267 9.03081 2.86334 8.77567 2.69067 8.59743L0.283337 6.15095C0.0820041 5.94615 0.0120041 5.63859 0.104004 5.36109C0.193337 5.08429 0.421337 4.88228 0.696671 4.83684L4.01 4.33287C4.262 4.30561 4.48334 4.14484 4.59667 3.90718L6.05667 0.768698C6.09134 0.698798 6.136 0.634491 6.19 0.579969L6.25 0.53104C6.28134 0.494692 6.31734 0.464635 6.35734 0.440171L6.43 0.412211L6.54334 0.363281H6.824C7.07467 0.390542 7.29534 0.547816 7.41067 0.782678L8.89 3.90718C8.99667 4.13575 9.204 4.29442 9.44334 4.33287L12.7567 4.83684C13.0367 4.87878 13.2707 5.08149 13.3633 5.36109C13.4507 5.64139 13.3753 5.94894 13.17 6.15095L10.6767 8.62539Z' fill='%23B6B4B0'/%3E%3C/svg%3E");
  margin-right: 2px;
}
.woocommerce ul.products li.product .button.add_to_cart_button {
  display: none;
}
.woocommerce ul.products li.product h2.woocommerce-loop-product__title {
  color: #273575;
  font-family: Inter;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0.7px;
}
.woocommerce ul.products li.product p.excerpt {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.56px;
}
.products-container {
  display: flex;
  width: 100%;
  gap: 45px;
  margin-bottom: 8rem;
}
@media screen and (max-width: 900px) {
  .woocommerce ul.products li.product {
    width: calc(33% - 15px);
    margin-right: 15px;
  }
  .woocommerce-page ul.products li.product:nth-child(3n) {
    margin-right: 0;
  }
  .woocommerce ul.products li.first,
  .woocommerce-page ul.products li.first {
    clear: none;
  }
  .woocommerce ul.products li.last,
  .woocommerce-page ul.products li.last {
    clear: both;
  }
}

@media screen and (max-width: 768px) {
  .products-container {
    gap: 15px;
    flex-direction: column;
  }
}

.products-container .products {
  flex-grow: 1;
}

/* order by select styling */
.orderby {
  appearance: none;
  background-color: transparent;
  border: none;
  margin: 0;
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  cursor: inherit;
  line-height: inherit;
  outline: none;
  padding: calc(5px + 15px) 15px 5px 15px;
  position: relative;
  z-index: 10;
}
.orderby::-ms-expand {
  display: none;
}
.woocommerce-ordering {
  background-color: white;
  border-radius: 5px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.woocommerce-ordering::after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='11' viewBox='0 0 23 11' fill='none'%3E%3Cline y1='-0.5' x2='13.9555' y2='-0.5' transform='matrix(-0.759499 0.650508 0.650508 0.759499 22.4111 1.06641)' stroke='%2354585A'/%3E%3Cline x1='11.7993' y1='10.163' x2='1.20007' y2='1.08479' stroke='%2354585A'/%3E%3C/svg%3E");
  color: #000;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%) scale(0.7);
}

.woocommerce-ordering::before {
  content: "Trier par";
  color: #787885;
  position: absolute;
  line-height: 15px;
  top: 5px;
  left: 15px;
}

/* Image gallery */

.wpgs-for .slick-arrow::before,
.wpgs-nav .slick-prev::before,
.wpgs-nav .slick-next::before {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='11' viewBox='0 0 23 11' fill='none'%3E%3Cline y1='-0.5' x2='13.9555' y2='-0.5' transform='matrix(-0.759499 0.650508 0.650508 0.759499 22.4111 1.06641)' stroke='%2354585A'/%3E%3Cline x1='11.7993' y1='10.163' x2='1.20007' y2='1.08479' stroke='%2354585A'/%3E%3C/svg%3E");
}
.flaticon-back {
  transform: rotate(90deg);
}
.flaticon-right-arrow {
  transform: rotate(-90deg);
}

.slick-dots li button:before {
  height: 6px !important;
  width: 6px !important;
  background: transparent !important;
  border: 1px solid #1e40af;
  opacity: 1 !important;
}
.slick-dots li.slick-active button:before {
  background: #1e40af !important;
}
.wpgs-nav .slick-current {
  border-color: transparent !important;
}
.wpgs-lightbox-icon::before {
  opacity: 0;
}

/* Single product */

.product_title {
  font-size: 2.5rem;
  color: #1b1f54;
}
.summary .stock {
  display: none;
}
.summary .price {
  color: #1b1f54 !important;
  display: flex;
  flex-direction: column-reverse;
}
.summary .price ins {
  font-size: 2rem;
  text-decoration: none;
}
.summary .price ins bdi::first-letter {
  font-size: 200%;
  font-weight: bold;
  vertical-align: top;
}
.summary .price bdi {
  display: block;
  line-height: 1;
}
.woocommerce div.product p.price del {
  opacity: 1;
  margin: 1rem;
  font-size: 1.5rem;
}

/* Add to cart */
.summary .cart {
  display: flex;
  flex-direction: column;
}
.summary .cart button {
  width: 100%;
  background-color: #285778 !important;
  color: white;
  padding: 1.8rem 0.5rem;
  border-radius: 8px;
  border: none;
  margin-bottom: 1rem;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 1.5rem;
}
.summary .cart button:hover {
  background-color: #1b1f54 !important;
}
.summary .cart .price-quantity-wrapper {
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: 3rem;
  flex-wrap: wrap;
}
.summary .secured_paiement {
  max-width: 200px;
  margin: 3rem auto;
}

/* Quantity input css */
.quantity-wrapper h3 {
  font-size: 1.5rem;
  text-align: center;
  font-weight: 300;
  margin-bottom: 0.5rem;
}
.quantity-input-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  border-radius: 10px;
  border: 0.2px solid #27357540;
  justify-content: space-between;
}
.quantity-input-wrapper input {
  border: none;
  -moz-appearance: textfield;
  appearance: textfield;
  font-size: 1.5rem;
}
.quantity-input-wrapper input::-webkit-outer-spin-button,
.quantity-input-wrapper input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.quantity-input-wrapper input:focus {
  outline: none;
}
.quantity-input-wrapper div {
  cursor: pointer;
  font-size: 2rem;
  padding: 0 0.5rem;
}

/* Add to favorite */
.tinvwl_add_to_wishlist_button {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none !important;
}

/* Delivery infos */
.delivery-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.delivery-wrapper > div {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.delivery-wrapper .icon {
  display: flex;
}
.delivery-wrapper .icon img {
  width: 17px;
  height: 17px;
}

/* Guide dropdown */
.guide-dropdown {
  padding: 1rem;
  border-radius: 5px;
  border: 1px solid rgba(30, 64, 175, 0.5);
  margin: 4rem auto;
  cursor: pointer;
  font-size: 1.15rem;
}
.guide-dropdown h2 {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  letter-spacing: 1px;
}
.guide-dropdown .guide-excerpt {
  margin-bottom: 1rem;
}
.guide-dropdown .guide-excerpt::after {
  content: "Lire l'article";
  color: #1e40af;
  text-decoration: underline;
}
.guide-dropdown .guide-content {
  margin: 3rem 0;
}
.guide-dropdown .guide-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.7rem;
  margin-top: 1rem;
}
.guide-dropdown .guide-footer svg {
  transition: 0.3s ease;
}
.guide-dropdown.active .guide-footer svg {
  transform: rotate(180deg);
}

.guide-content, .dropdown-content {
  font-size: 13px;
  line-height: normal;
  letter-spacing: .07em;
}

.guide-content h6, .guide-content h5, .guide-content h4, .guide-content h3, .guide-content h2, .guide-content h1,
.dropdown-content h6, .dropdown-content h5, .dropdown-content h4, .dropdown-content h3, .dropdown-content h2, .dropdown-content h1 {
  margin-bottom: 1.5rem;
  margin-top: 1.75rem;
}
.guide-content h6, 
.dropdown-content h6 {
  font-size: 1.1em;
}

.guide-content h5, 
.dropdown-content h5 {
  font-size: 1.15em;
}

.guide-content h4, 
.dropdown-content h4 {
  font-size: 1.2em;
}

.guide-content h3,
.dropdown-content h3 {
  font-size: 1.25em;
}

.guide-content h2,
.dropdown-content h2 {
  font-size: 1.3em;
}

.guide-content h1,
.dropdown-content h1 {
  font-size: 1.35em;
}

.guide-content ul,
.dropdown-content ul {
  list-style: disc;
}

.guide-content ol,
.dropdown-content ol {
  list-style: decimal;
}

.guide-content ul,
.dropdown-content ul,
.guide-content ol,
.dropdown-content ol {
  margin-left: 1.5rem;
  margin-bottom: 1.5rem;
}

.guide-content li,
.dropdown-content li {
  margin-top: 0.5rem;
  margin-left: 0.5rem;
}

.guide-content p,
.dropdown-content p {
  line-height: inherit;
  font-size: inherit;
}

/* Related products and upsell */
.upsells,
.related {
  margin-top: 4rem;
  width: 100%;
}
.upsells h2,
.related h2 {
  font-size: 1.5rem;
  margin-bottom: 3rem;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.single-product .products li {
  margin-bottom: 0 !important;
}
.single-product .products .button {
  display: none !important;
}

/* Product tabs */
.tab-content {
  width: 100%;
  margin-top: 4rem;
  margin-bottom: 4rem;
  gap: 3rem;
  justify-content: space-around;
}
.tab-content h1 {
  font-size: 1.7rem;
  letter-spacing: 1.5px;
}
.tab-content h2 {
  width: 100%;
}

/* Description dropdown */
.dropdown_cta::after {
  content: " plus";
}
.dropdown.active .dropdown_cta::after {
  content: " moins";
}
.dropdown {
  cursor: pointer;
  position: relative;
  padding-right: 3rem;
  margin: 2rem 1.5rem;
}
.dropdown::after {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='11' viewBox='0 0 23 11' fill='none'%3E%3Cline y1='-0.5' x2='13.9555' y2='-0.5' transform='matrix(-0.759499 0.650508 0.650508 0.759499 22.4111 1.06641)' stroke='%2354585A'/%3E%3Cline x1='11.7993' y1='10.163' x2='1.20007' y2='1.08479' stroke='%2354585A'/%3E%3C/svg%3E");
  transition: 0.3s ease;
  position: absolute;
  right: 0;
  top: 10px;
}
.dropdown.active::after {
  transform: rotate(-180deg);
}

.dropdown h2 {
  color: #1b1f54;
  font-size: 1.2rem;
  letter-spacing: 1px;
}
.dropdown .dropdown_cta {
  color: #54585a;
  text-decoration: underline;
  display: block;
  margin-bottom: 1.5rem;
}

/* Additionnal infromation tab */
#tab-additional_information {
  display: flex;
  flex-wrap: wrap;
}
#tab-additional_information h2 {
  width: 100%;
  margin-bottom: 1rem;
  font-size: 1.7rem;
  letter-spacing: 1.5px;
}
.woocommerce-product-attributes-item__value {
  padding: 0 1rem !important;
}
table.woocommerce-product-attributes {
  width: fit-content !important;
  border: none !important;
  height: fit-content;
  margin-left: 1rem;
}
table.woocommerce-product-attributes::before {
  content: "Caractéristiques";
  color: #1b1f54;
  font-size: 1.3rem;
  margin-bottom: 2rem;
  display: block;
  font-weight: 600;
}
.woocommerce table.shop_attributes tr:nth-child(even) td,
.woocommerce table.shop_attributes tr:nth-child(even) th {
  background: rgba(217, 217, 217, 0.25) !important;
}
.woocommerce table.shop_attributes tr td,
.woocommerce table.shop_attributes tr th {
  border: none !important;
}

.installation_guide {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: center;
  align-items: center;
  flex: 1 1;
}

.installation_guide a {
  color: #1b1f54;
  text-decoration: underline;
  font-size: 14px;
}
.installation_guide iframe {
  width: min(70vw, 400px);
  height: auto;
  aspect-ratio: 16 / 9;
}
.installation_guide h2 {
  text-align: center;
  color: #1b1f54;
  font-size: 1.3rem;
  letter-spacing: 1px;
}

/* Added to cart popup */
.xoo-cp-container {
  position: absolute;
  top: 10px;
  right: 10px;
  background-color: #00a3b8;
  color: white;
  padding: 0;
  border-radius: 30px;
  max-height: 90vh;
  overflow: auto;
}
.xoo-cp-container > * {
  padding: 3rem;
}
/* admin bar */
body.admin-bar .xoo-cp-container {
  top: 42px;
}
.xoo-cp-modal::before {
  content: none !important;
}
.xoo_crosssells {
  padding: 0;
  margin-top: 4rem;
}
.xoo_crosssells > div > h2 {
  text-align: center;
  color: white;
  margin-bottom: 4rem;
  font-size: large;
}
.xoo_crosssells .products-container {
  margin-bottom: 0;
  background-color: white;
  padding: 0 2rem;
  width: auto;
  overflow: auto;
}
.xoo-cp-remove-item {
  color: #c54237;
  display: block;
  margin-top: 1.5rem;
  cursor: pointer;
}
.xoo-cp-btns {
  background: white;
  box-shadow: 0px -5px 10px #00000012;
  display: flex;
  padding: 3rem;
  gap: 3rem;
}
@media screen and (max-width: 400px) {
  .xoo-cp-btns {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }
}
a.xcp-btn {
  flex: auto;
  padding: 12px;
  font-weight: 600;
  letter-spacing: 1px;
}
a.xcp-btn:hover {
  text-decoration: none;
}
.xoo-cp-close {
  background: transparent;
  border: 1px solid #000;
  color: #000;
}
.xoo-cp-close:hover {
  background: #1b1f54;
  color: white;
}
.xoo-cp-btn-vc {
  background-color: #285778;
  border-color: #285778;
}
.xoo-cp-btn-vc:hover {
  background-color: #1b1f54;
  border-color: #1b1f54;
}
span.xoo-cp-close,
span.xoo-cp-close:hover {
  border: none;
  background-color: transparent;
  background-image: url(../assets/images/cross.svg);
  background-position: center;
  background-size: cover;
  padding: 0;
  width: 25px;
  height: 25px;
  top: 8px;
  right: 8px;
}
span.xoo-cp-close::before {
  content: none;
}
.xoo-cp-atcn .xoo-cp-icon-check {
  background-image: url(../assets/images/check_blue.svg);
  background-size: cover;
  width: 25px;
  height: 25px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 15px;
}
.xoo-cp-atcn .xoo-cp-icon-check::before {
  content: none;
}
.xoo-cp-success {
  color: white;
  background-color: transparent;
}
td.xoo-cp-ptitle a {
  color: #273575;
}
td.xoo-cp-ptitle p {
  color: #000;
  line-height: 18px;
  margin-top: 0.5rem;
}
.xoo-cp-pdetails tr {
  background-color: white;
  color: #273575;
  padding: 1rem 0;
}
.xoo-cp-pdetails tr td:first-child {
  border-radius: 10px 0 0 10px;
  overflow: hidden;
}
.xoo-cp-pdetails tr td:last-child {
  border-radius: 0 10px 10px 0;
}
.xoo-cp-pdetails {
  border-spacing: 0;
}

.xoo-cp-qtybox {
  padding: 0 1rem;
  border-radius: 10px;
  border: 0.2px solid #27357540;
}
.xoo-cp-qtybox * {
  border: none !important;
  font-weight: 600;
}
.xcp-minus {
  text-align: left !important;
  font-weight: 400;
}
.xcp-plus {
  text-align: right !important;
  font-weight: 400;
}

.xoo-cp-ptotal {
  border: none;
  margin-right: 0;
  margin-top: 1rem;
}

a.added_to_cart {
  color: #1b1f54;
  text-align: center;
  text-decoration: underline;
}
