/** =================================== */
/** LAYOUT */
/** =================================== */

body.single-product main.content {
  width: 100%;
}

body.single-product main.content .summary-wrapper {
  width: var(--adebeo-container-width);
  margin: 0 auto var(--adebeo-spacing-2xl);
}

/* MAIN PRODUCT SECTION */

.entry-summary .product_title {
  margin-bottom: var(--adebeo-spacing-s);
  font-weight: 700;
}

.entry-summary .price {
  white-space: nowrap;
}

.entry-summary .price del {
  display: block;
  color: var(--adebeo-accent-color);
}

.entry-summary .price del .amount {
  font-size: 100%;
  color: var(--adebeo-accent-color);
}

.entry-summary .price ins {
  text-decoration: none;
}

.entry-summary .woocommerce-Price-amount,
.entry-summary .woocommerce-price-suffix {
  font-size: var(--adebeo-font-size-h2);
  color: var(--adebeo-color-primary);
}

.woocommerce-product-gallery__wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: var(--adebeo-spacing-s);
  width: 100%;
  position: sticky;
  top: 20px;
}

.woocommerce-product-gallery__image:first-child {
  min-width: 100%;
}

.woocommerce-product-gallery__image img {
  border-radius: var(--adebeo-border-radius-xs);
}

.woocommerce-product-details__short-description p {
  margin-bottom: var(--adebeo-spacing-xs);
}

.woocommerce-product-details__short-description .alert.alert-info {
  margin-bottom: var(--adebeo-spacing-xs);
  color: var(--adebeo-accent-color);
}

.entry-summary form {
  position: relative;
  z-index: 2;
  padding: var(--adebeo-spacing-s) var(--adebeo-spacing-s) var(--adebeo-spacing-gap);
  margin-top: var(--adebeo-spacing-m);
}

.entry-summary form:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% + 40px);
  border: 2px solid var(--adebeo-color-primary);
  border-radius: var(--adebeo-border-radius-xs);
  pointer-events: none;
}

.product-type-simple .entry-summary form {
  display: flex;
  justify-content: center;
  gap: var(--adebeo-spacing-s);
}

.entry-summary .quantity {
  align-self: center;
}

/** 
 * Variations
 */

.reset_variations {
  display: none;
}

.entry-summary .single_variation_wrap {
  display: flex;
  gap: var(--adebeo-spacing-s);
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: flex-end;
}

body.reseller .entry-summary .single_variation_wrap {
  flex-direction: column;
}

.entry-summary .single_variation_wrap > div {
  flex-grow: 1;
}

.entry-summary .woocommerce-variation-add-to-cart {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

body.reseller .entry-summary :is(.woocommerce-variation-add-to-cart, form.cart) {
  flex-wrap: wrap;
  align-items: center;
}

body.reseller .entry-summary :is(.woocommerce-variation-add-to-cart, form.cart) .reseller-fields {
  min-width: 100%;
  background-color: var(--adebeo-color-primary);
  margin: 0 0 var(--adebeo-spacing-s);
  padding: var(--adebeo-spacing-s);
  border-radius: var(--adebeo-border-radius-xs);
  container-type: inline-size;
}

body.reseller .entry-summary .woocommerce-variation-add-to-cart .reseller-fields {
  margin-top: -15px;
}

@media (min-width: 1024px), (min-width: 500px) and (max-width: 768px) {
  body.reseller .entry-summary :is(.woocommerce-variation-add-to-cart, form.cart) .reseller-fields {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 0 var(--adebeo-spacing-s);
  }
  body.reseller #email_client_final_field,
  body.reseller #nom_client_final_field,
  body.reseller #prenom_client_final_field,
  body.reseller #societe_client_final_field,
  body.reseller #ville_client_final_field,
  body.reseller #telephone_client_final_field {
    grid-column: span 3;
  }
  body.reseller #adresse_client_final_field {
    grid-column: span 4;
  }
  body.reseller #code_postal_client_final_field {
    grid-column: span 2;
  }
  body.reseller #pays_client_final_field {
    grid-column: span 6;
  }
}

.woocommerce-variation-price {
  text-align: right;
}

.adebeo6-quantity-label {
  display: flex;
  gap: 2px var(--adebeo-spacing-xs);
  align-items: center;
  justify-content: center;
}

.adebeo6-variation-checkboxes {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--adebeo-spacing-xs);
  align-items: center;
}

@media (min-width: 768px) {
  .adebeo6-variation-checkboxes {
    grid-template-columns: repeat(2, 1fr);
  }
}

table.variations {
  margin-bottom: var(--adebeo-spacing-gap);
}

table.variations,
table.variations tbody {
  display: block;
}

table.variations tbody tr {
  display: flex;
  flex-wrap: wrap;
  gap: 2px var(--adebeo-spacing-xs);
  justify-content: center;
}

table.variations .label {
  margin-bottom: 15px;
}

/** 
 * Devis
 */

.devis-link {
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  padding-bottom: var(--adebeo-spacing-s);
}

.entry-summary .yith-ywraq-add-to-quote {
  padding-right: var(--adebeo-spacing-xs);
  margin-right: var(--adebeo-spacing-xs);
  border-right: 1px solid var(--adebeo-text-color);
}

.yith-ywraq-add-to-quote + .clear {
  display: none;
}

.devis-link a {
  text-decoration: none;
  color: var(--adebeo-text-color);
  transition: color 0.3s ease;
}

.devis-link a:hover {
  color: var(--adebeo-accent-color);
}

@media (min-width: 768px) {
  .product .summary-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--adebeo-spacing-gap);
  }
  .entry-summary .price {
    margin-bottom: var(--adebeo-spacing-s);
  }
  .adebeo6-quantity-label {
    flex-wrap: wrap;
  }
  .devis-link {
    padding-bottom: var(--adebeo-spacing-m);
  }
  .entry-summary form:before {
    height: calc(100% + 55px);
  }
}

@media (max-width: 767px) {
  .entry-summary {
    display: contents;
  }
  .product .summary-wrapper {
    display: flex;
    flex-direction: column;
  }
  .product-type-simple .entry-summary form,
  .entry-summary .single_variation_wrap,
  .entry-summary .single_variation_wrap > div {
    flex-direction: column;
    align-items: center;
    gap: var(--adebeo-spacing-s);
  }
  .woocommerce-product-gallery {
    margin: var(--adebeo-spacing-m) 0;
  }
  .product_title {
    order: -2;
  }
  .price {
    order: -1;
  }
  .entry-summary .woocommerce-variation-add-to-cart {
    display: contents;
  }
  .adebeo6-quantity-label {
    order: -1;
  }
}

/**
 * Product main content
 */

.product-main-content {
  margin: var(--adebeo-spacing-2xl) 0 0;
  padding: var(--adebeo-spacing-xl) 0;
  background-color: var(--adebeo-color-primary);
  color: var(--adebeo-white);
}

.product-main-content a {
  color: var(--adebeo-white);
  font-weight: 700;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
  letter-spacing: 0.02em;
  transition: text-decoration-color 0.3s ease;
}

.product-main-content a:hover {
  text-decoration-color: var(--adebeo-accent-color);
}

.product-main-content a {
  color: var(--adebeo-accent-color);
  text-decoration-color: var(--adebeo-accent-color);
}

.product-main-content a:hover {
  text-decoration-color: var(--adebeo-color-primary);
  color: var(--adebeo-color-primary);
}

.product-main-content__blocks,
.product-main-content__embed,
.product-main-content__prerequis {
  margin-top: var(--adebeo-spacing-gap);
}

.product-main-content__embed {
  aspect-ratio: 16/9;
  position: relative;
  margin: var(--adebeo-spacing-m) auto var(--adebeo-spacing-s);
}

@media (min-width: 1600px) {
  .product-main-content__embed {
    width: 100%;
    height: 675px;
    object-fit: cover;
    aspect-ratio: unset;
    max-width: none;
  }
}

.product-main-content__embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-width: unset;
  height: 100%;
  margin: 0 auto;
  border-radius: var(--adebeo-border-radius-xs);
}

.product-main-content__blocks {
  display: flex;
  gap: var(--adebeo-spacing-m);
  flex-wrap: wrap;
}

.product-main-content__blocks > div {
  border-radius: var(--adebeo-border-radius-xs);
  flex-grow: 1;
  background-color: var(--adebeo-white);
  padding: var(--adebeo-spacing-m);
  color: var(--adebeo-text-color);
}

.product-main-content__blocks h2 {
  margin-bottom: var(--adebeo-spacing-s);
}

.product-main-content__blocks p {
  margin-bottom: var(--adebeo-spacing-xs);
}

.product-main-content__prerequis h2 {
  margin-bottom: var(--adebeo-spacing-s);
}

.collapse {
  max-height: 0px;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.collapse.open {
  max-height: 1800px;
  margin-top: var(--adebeo-spacing-s);
}

.card-header {
  margin-top: var(--adebeo-spacing-xs);
  background: var(--adebeo-white);
  padding: 30px 20px;
  border-radius: var(--adebeo-border-radius-xs);
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}

.card-header.open {
  background: var(--adebeo-accent-color);
}

.card-header .btn {
  background: transparent;
  padding: 0;
  color: var(--adebeo-text-color);
}

.card-header.open .btn {
  color: var(--adebeo-white);
}

.card-header .btn:before,
.card-header .btn:after {
  display: none;
}

.card-header:after {
  content: '';
  display: block;
  width: 22px;
  height: 15px;
  transform: rotate(45deg);
  transition: transform 0.3s ease;
  margin: 17px 15px;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 16.501"><path fill="%23d54414" d="M15.756 0a.75.75 0 0 0-.537.22.75.75 0 0 0 0 1.061L21.438 7.5H.75a.75.75 0 0 0-.75.75.75.75 0 0 0 .75.75h20.69l-6.221 6.22a.75.75 0 0 0 0 1.061.75.75 0 0 0 1.06 0l7.496-7.496a.75.75 0 0 0 .055-.058.75.75 0 0 0 .04-.053.75.75 0 0 0 .003-.006.75.75 0 0 0 .033-.057.75.75 0 0 0 .004-.006.75.75 0 0 0 .03-.058.75.75 0 0 0 .001-.006.75.75 0 0 0 .024-.062.75.75 0 0 0 .002-.006.75.75 0 0 0 .016-.065.75.75 0 0 0 .002-.008.75.75 0 0 0 .01-.064.75.75 0 0 0 .003-.059.75.75 0 0 0 .002-.013.75.75 0 0 0 0-.008.75.75 0 0 0 0-.006.75.75 0 0 0-.004-.066.75.75 0 0 0 0-.006.75.75 0 0 0-.01-.067.75.75 0 0 0-.011-.052.75.75 0 0 0-.004-.018.75.75 0 0 0-.002-.006.75.75 0 0 0 0-.002.75.75 0 0 0-.025-.066.75.75 0 0 0-.018-.04.75.75 0 0 0-.012-.027.75.75 0 0 0-.035-.056.75.75 0 0 0-.03-.041.75.75 0 0 0-.011-.02.75.75 0 0 0-.004-.004.75.75 0 0 0-.045-.05.75.75 0 0 0-.004-.004.75.75 0 0 0-.006-.004l-.011-.012L16.279.221A.75.75 0 0 0 15.756 0Z"/></svg>')
    center no-repeat;
}

.card-header.open:after {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 16.501"><path fill="%23FFFFFF" d="M15.756 0a.75.75 0 0 0-.537.22.75.75 0 0 0 0 1.061L21.438 7.5H.75a.75.75 0 0 0-.75.75.75.75 0 0 0 .75.75h20.69l-6.221 6.22a.75.75 0 0 0 0 1.061.75.75 0 0 0 1.06 0l7.496-7.496a.75.75 0 0 0 .055-.058.75.75 0 0 0 .04-.053.75.75 0 0 0 .003-.006.75.75 0 0 0 .033-.057.75.75 0 0 0 .004-.006.75.75 0 0 0 .03-.058.75.75 0 0 0 .001-.006.75.75 0 0 0 .024-.062.75.75 0 0 0 .002-.006.75.75 0 0 0 .016-.065.75.75 0 0 0 .002-.008.75.75 0 0 0 .01-.064.75.75 0 0 0 .003-.059.75.75 0 0 0 .002-.013.75.75 0 0 0 0-.008.75.75 0 0 0 0-.006.75.75 0 0 0-.004-.066.75.75 0 0 0 0-.006.75.75 0 0 0-.01-.067.75.75 0 0 0-.011-.052.75.75 0 0 0-.004-.018.75.75 0 0 0-.002-.006.75.75 0 0 0 0-.002.75.75 0 0 0-.025-.066.75.75 0 0 0-.018-.04.75.75 0 0 0-.012-.027.75.75 0 0 0-.035-.056.75.75 0 0 0-.03-.041.75.75 0 0 0-.011-.02.75.75 0 0 0-.004-.004.75.75 0 0 0-.045-.05.75.75 0 0 0-.004-.004.75.75 0 0 0-.006-.004l-.011-.012L16.279.221A.75.75 0 0 0 15.756 0Z"/></svg>')
    center no-repeat;
  transform: rotate(90deg);
}

.card-header.open:after {
  transform: rotate(90deg);
}

.card-body {
  padding: var(--adebeo-spacing-m);
  border-radius: var(--adebeo-border-radius-xs);
  background-color: var(--adebeo-white);
  color: var(--adebeo-text-color);
}

.adebdion .card-body ul {
  list-style-type: none;
  padding-left: 0;
}

.adebdion .card-body ul ul {
  list-style-type: disc;
  padding-left: var(--adebeo-spacing-s);
}

.adebdion .card-body ul li {
  padding-left: var(--adebeo-spacing-m);
  position: relative;
}

.adebdion .card-body ul ul li {
  padding-left: 0;
}

.adebdion .card-body ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 5px;
  display: block;
  width: 14px;
  height: 8px;
  border-bottom: 2px solid var(--adebeo-color-primary);
  border-left: 2px solid var(--adebeo-color-primary);
  transform: rotate(-45deg);
}

.adebdion .card-body ul ul li::before {
  display: none;
}

.adebdion .card-body ul li strong {
  display: block;
}

.site-main h2 strong,
.site-main h2 b {
  font-weight: 400;
  color: var(--adebeo-color-primary);
}

.reviews,
.buy-together {
  margin-top: var(--adebeo-spacing-2xl);
}

.onsale {
  display: none;
}

@media (min-width: 768px) {
  .product-main-content__blocks > div {
    flex-basis: calc(50% - var(--adebeo-spacing-m) / 2);
  }
}

@media (max-width: 767px) {
  .buy-together li.product {
    min-width: 320px;
  }
}

/**
 * Sketchup
 */

body.sketchup h1 {
  margin-bottom: var(--adebeo-spacing-l);
  text-align: center;
}

body.sketchup .entry-summary .yith-ywraq-add-button {
  display: none !important;
}
