/* Cloud Heaven tablet layout: 700px - 1179px */

:root {
  --ch-content-width: 1080px;
  --ch-gutter: 24px;
  --ch-section-space: 68px;
  --ch-grid-gap: 22px;
  --ch-product-media-max: 700px;
  --ch-product-summary-max: 700px;
  --ch-product-gap: 28px;
}

body.woocommerce-page .ch-theme-wc-page,
body.single-product .ch-theme-wc-page {
  width: min(var(--ch-content-width), calc(100% - (var(--ch-gutter) * 2)));
}

body.woocommerce-shop .ch-theme-wc-page,
body.tax-product_cat .ch-theme-wc-page,
body.tax-product_tag .ch-theme-wc-page {
  padding-block: 38px var(--ch-section-space);
}

.cloud-heaven-catalog-section {
  padding-inline: var(--ch-gutter);
}

body.woocommerce-shop .woocommerce ul.products,
body.tax-product_cat .woocommerce ul.products,
body.tax-product_tag .woocommerce ul.products,
body.search-results.woocommerce .woocommerce ul.products,
.cloud-heaven-catalog-grid,
body.single-product .woocommerce :is(.related.products, .upsells.products) ul.products {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--ch-grid-gap);
}

.product-card--unavailable .product-card-body,
.product-card--coming-soon .product-card-body {
  grid-template-rows:
    minmax(var(--ch-product-card-title-min), auto)
    minmax(var(--ch-product-card-action-min), 1fr);
}

.product-card--unavailable .product-card-status,
.product-card--coming-soon .product-card-status {
  display: none;
}

.product-card--unavailable .product-card-actions,
.product-card--coming-soon .product-card-actions {
  grid-row: 2;
}

.product-card--unavailable .product-card-actions .button[disabled],
.product-card--unavailable .product-card-actions .button:disabled,
.product-card--unavailable .product-card-actions .button[disabled]:hover,
.product-card--unavailable .product-card-actions .button:disabled:hover,
.product-card--coming-soon .product-card-actions .button[disabled],
.product-card--coming-soon .product-card-actions .button:disabled,
.product-card--coming-soon .product-card-actions .button[disabled]:hover,
.product-card--coming-soon .product-card-actions .button:disabled:hover {
  opacity: 1;
  background: var(--color-accent);
  color: var(--color-white);
  cursor: default;
  transform: none;
}

body.single-product .ch-theme-wc-page {
  padding-block: 34px 72px;
}

body.single-product .woocommerce div.product {
  width: 100%;
  max-width: none;
  grid-template-columns: 1fr;
  row-gap: 24px;
  align-items: start;
  padding: 0;
}

body.single-product .woocommerce div.product div.images,
body.single-product .woocommerce div.product div.summary {
  width: min(100%, var(--ch-product-media-max));
  justify-self: center;
}

body.single-product .woocommerce div.product div.summary {
  max-width: var(--ch-product-summary-max);
  padding: 24px;
}

body.single-product .woocommerce div.product .product_title {
  max-width: 18ch;
  margin-bottom: 16px;
  font-size: clamp(32px, 4vw, 42px);
  line-height: 0.98;
}

body.single-product .woocommerce div.product .woocommerce-product-details__short-description {
  font-size: 14px;
  line-height: 1.55;
}

body.single-product .cloud-heaven-single-order__options {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart,
body.single-product .woocommerce div.product form.cart:not(.variations_form) {
  grid-template-columns: 108px minmax(0, 1fr);
  gap: 12px;
}

body.single-product .woocommerce div.product form.cart .quantity {
  width: 108px;
}

body.single-product .woocommerce div.product .woocommerce-tabs {
  margin-top: 44px;
}

body.single-product .woocommerce :is(.related.products, .upsells.products) {
  width: min(760px, 100%);
  margin-top: 54px;
  margin-inline: auto;
  padding-top: 34px;
  justify-self: center;
}

body.single-product .woocommerce :is(.related.products, .upsells.products) > h2 {
  margin: 0 0 30px;
  font-size: clamp(30px, 4.4vw, 36px);
  line-height: 1;
  text-align: center !important;
}

body.single-product .woocommerce :is(.related.products, .upsells.products) ul.products {
  width: 100%;
  justify-content: center;
}

body.single-product .woocommerce :is(.related.products, .upsells.products) .product-card-body {
  padding: 20px;
}

body.single-product .woocommerce :is(.related.products, .upsells.products) .product-card h3 {
  font-size: 16px;
  line-height: 1.18;
}

body.single-product .woocommerce :is(.related.products, .upsells.products) .product-card .price {
  font-size: 21px;
}

@media (min-width: 980px) {
  :root {
    --ch-product-media-max: 560px;
    --ch-product-summary-max: 440px;
  }

  body.single-product .woocommerce div.product {
    grid-template-columns: minmax(0, var(--ch-product-media-max)) minmax(340px, var(--ch-product-summary-max));
    column-gap: var(--ch-product-gap);
    row-gap: 0;
    justify-content: center;
  }

  body.single-product .woocommerce div.product div.images {
    justify-self: end;
  }

  body.single-product .woocommerce div.product div.summary {
    justify-self: start;
  }
}

@media (max-width: 760px) {
  body.single-product .cloud-heaven-single-order__options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
