/* content-single-product.php */
.ecs-single-product h1,
.ecs-single-product h2,
.ecs-single-product h3,
.ecs-single-product p {
  margin: 0;
}

.ecs-single-product {
  display: flex;
  align-items: center;
  flex: 1;
}

.ecs-single-product-content,
.ecs-single-product-content-col,
.ecs-single-product-lists {
  display: flex;
  flex-direction: column;
}

.ecs-single-product-content {
  gap: 2rem;
}

.ecs-single-product-content-col,
.ecs-single-product-lists {
  gap: 1.5rem;
}

.ecs-single-product-img-container {
  overflow: hidden;
  border-radius: var(--ecs-border-radius-sm);
}

.ecs-single-product-img-container:hover .ecs-single-product-img {
  scale: 1.03;
}

.ecs-single-product-img {
  width: 100%;
  height: auto;
  transition: scale 300ms ease;
}

.ecs-single-product-title-price-container > h1 {
  margin-bottom: 0.75rem;
}

.ecs-single-product-price {
  font-size: var(--wp--preset--font-size--medium);
  font-weight: 500;
}

.ecs-single-product-list-container > h3 {
  margin-bottom: 0.5rem;
}

.ecs-single-product-list-container > .ecs-product-card-desc > ul {
  padding-left: 0.25rem;
}

.ecs-single-product-content-col > .ecs-btn {
  max-width: fit-content;
}

.ecs-single-product-btns-container {
  display: flex;
  gap: 1.5rem;
}

@media (min-width: 782px) {
  .ecs-single-product-content {
    gap: 3.5rem;
  }

  .ecs-single-product-content {
    flex-direction: row;
    align-items: stretch;
  }

  .ecs-single-product-img-container {
    min-width: 450px;
    height: auto;
    align-self: stretch;
  }

  .ecs-single-product-img {
    width: 450px;
    height: 100%;
    flex-shrink: 0;
    object-fit: cover;
    display: block;
  }

  .ecs-single-product-lists {
    flex-direction: row;
    gap: 2.5rem;
  }
}

/* WooCommerce */
.ecs-section-md > .ecs-container > .woocommerce {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}

.woocommerce-order {
  width: 100%;
}

.woocommerce-notices-wrapper,
#wc-stripe-express-checkout__order-attribution-inputs {
  display: none;
}

@media (min-width: 782px) {
  .ecs-section-md > .ecs-container > .woocommerce {
    flex-direction: row;
    align-items: baseline;
    gap: 3.5rem;
  }
}

/* cart.php */
.ecs-cart-form {
  width: 100%;
}

.ecs-section-md > .ecs-container > .woocommerce .ecs-cart-form > h2 {
  margin-bottom: 1.25rem;
}

.ecs-cart {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.ecs-cart-item {
  display: flex;
  padding: 1rem;
  background-color: white;
  border-radius: var(--ecs-border-radius);
  border: solid 1px var(--ecs-lightest-grey);
}

.ecs-cart-item-details {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.ecs-cart-item-name {
  font-weight: 500;
  font-size: var(--wp--preset--font-size--medium);
}

.ecs-cart-item-remove > a {
  letter-spacing: 0.01em;
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--neutral-mid);
  text-decoration: none;
  transition: color 300ms ease;
}

.ecs-cart-item-remove > a:hover {
  color: var(--wp--preset--color--text);
}

.ecs-cart-collaterals {
  width: 100%;
}

@media (min-width: 782px) {
  .ecs-cart-collaterals {
    width: 60%;
  }
}

/* cart-totals.php */
.ecs-section-md > .ecs-container > .woocommerce .ecs-cart-totals > h2 {
  margin-bottom: 1.25rem;
}

.ecs-cart-totals-rows {
  display: flex;
  flex-direction: column;
  padding: 0.9rem;
  gap: 0.402rem;
  background-color: white;
  border-radius: var(--ecs-border-radius);
  border: solid 1px var(--ecs-lightest-grey);
}

.ecs-cart-totals-row {
  display: flex;
  justify-content: space-between;
}

.ecs-cart-order-total > span {
  font-weight: 500;
}

.ecs-proceed-to-checkout {
  margin-top: 1.5rem;
}

/* cart-empty.php */
.ecs-cart-is-empty {
  text-align: center;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

/* Checkout */
.woocommerce-checkout h3 {
  font-weight: 700;
  font-family: var(--wp--preset--font-family--heading);
  font-size: var(--wp--preset--font-size--x-large);
  margin-bottom: 0.75rem;
}

.woocommerce-billing-fields input,
.woocommerce-additional-fields__field-wrapper textarea {
  font-family: inherit;
  font-size: var(--wp--preset--font-size--normal);
  border-radius: var(--ecs-border-radius-sm);
  width: 100%;
  padding: 0.65rem;
  outline: none;
  color: var(--wp--preset--color--text);
}

.woocommerce-additional-fields__field-wrapper textarea {
  resize: none;
  height: 175px;
}

.woocommerce-billing-fields input::placeholder,
.woocommerce-shipping-fields textarea::placeholder,
.woocommerce-billing-fields .select2-selection__placeholder {
  color: var(--ecs-grey);
}

.wc_payment_methods {
  background-color: white;
  border-radius: var(--ecs-border-radius) var(--ecs-border-radius) 0 0;
  border: solid 1px var(--ecs-lightest-grey);
}

.place-order {
  background-color: white;
  border-radius: 0 0 var(--ecs-border-radius) var(--ecs-border-radius);
  border: solid 1px var(--ecs-lightest-grey);
  border-top: none;
}

.payment_box {
  background-color: var(--ecs-lightest-grey) !important;
  border-radius: var(--ecs-border-radius) !important;
}

.payment_box::before {
  border-bottom-color: var(--ecs-lightest-grey) !important;
}

@media (min-width: 782px) {
  .woocommerce-checkout h3 {
    font-size: var(--wp--preset--font-size--xx-large);
  }
}
