/* Sparse watercolor details and editorial proportions for commerce/contact. */

.pc-commerce-page,
.pc-contact-section {
  position: relative;
  isolation: isolate;
  overflow: clip;
}

.pc-commerce-page > :not(.pc-ornament),
.pc-contact-section > .pc-shell {
  position: relative;
  z-index: 1;
}

.pc-commerce-detail--heart,
.pc-commerce-detail--star,
.pc-contact-detail--heart,
.pc-contact-detail--star,
.pc-contact-detail--vine {
  position: absolute;
  z-index: 0;
}

.pc-commerce-detail--heart {
  top: 28px;
  left: 8px;
  width: 48px;
  height: 48px;
  opacity: .72;
  transform: rotate(-10deg);
}

.pc-commerce-detail--star {
  top: 112px;
  right: 6px;
  width: 46px;
  height: 46px;
  opacity: .72;
  transform: rotate(8deg);
}

.woocommerce-products-header,
.pc-content--shop > .page-title {
  padding: clamp(20px, 3vw, 34px) 64px;
  margin-bottom: 20px;
  overflow: visible;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(38, 59, 94, .09);
  border-radius: 0;
}

.woocommerce-products-header__title,
.pc-content--shop > .page-title {
  font-size: clamp(2.2rem, 3.3vw, 3.25rem);
  line-height: 1.12;
}

.woocommerce-products-header__title.pc-product-category-title,
.pc-content--shop > .pc-product-category-title {
  line-height: 1.28;
}

.pc-product-category-title > span {
  display: block;
}

.pc-shop-filters a {
  min-height: 44px;
  border-radius: 8px;
}

.woocommerce ul.products {
  gap: 18px;
}

.woocommerce ul.products li.product {
  position: relative;
  overflow: visible;
  border-radius: 8px;
  box-shadow: 0 3px 12px rgba(63, 75, 84, .035);
}

.woocommerce ul.products li.product:hover {
  box-shadow: 0 7px 18px rgba(63, 75, 84, .06);
}

.woocommerce ul.products li.product img {
  border-radius: 5px;
}

.woocommerce ul.products li.product > .pc-ornament {
  position: absolute;
  z-index: 3;
  width: 25px;
  height: 25px;
  opacity: .78;
}

.woocommerce ul.products li.product > .pc-loop-ornament--1,
.woocommerce ul.products li.product > .pc-loop-ornament--9 {
  top: -10px;
  left: 10px;
  transform: rotate(-10deg);
}

.woocommerce ul.products li.product > .pc-loop-ornament--3,
.woocommerce ul.products li.product > .pc-loop-ornament--11 {
  right: 10px;
  bottom: -10px;
  transform: rotate(9deg);
}

.woocommerce ul.products li.product > .pc-loop-ornament--5,
.woocommerce ul.products li.product > .pc-loop-ornament--13 {
  top: 16%;
  right: -10px;
  transform: rotate(7deg);
}

.woocommerce ul.products li.product > .pc-loop-ornament--7,
.woocommerce ul.products li.product > .pc-loop-ornament--15 {
  bottom: 24%;
  left: -10px;
  transform: rotate(-8deg);
}

.woocommerce div.product div.images {
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(38, 59, 94, .045);
}

.woocommerce div.product div.images img {
  border-radius: 5px;
}

.woocommerce div.product .product_title {
  font-size: clamp(2rem, 3.1vw, 3rem);
}

.woocommerce div.product .woocommerce-tabs .panel {
  max-width: 74ch;
  padding: clamp(22px, 3vw, 34px) 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}

.woocommerce div.product .related > h2,
.woocommerce div.product .upsells > h2 {
  font-size: clamp(1.8rem, 2.8vw, 2.5rem);
}

.pc-contact-section {
  padding: clamp(38px, 5vw, 60px) 0 clamp(52px, 6vw, 78px);
}

.pc-contact-section > .pc-shell {
  position: relative;
}

.pc-contact-page__header h1 {
  font-size: clamp(2.45rem, 4vw, 3.6rem);
}

.pc-contact-form-wrap h2,
.pc-contact-about h2 {
  font-size: clamp(1.9rem, 3vw, 2.6rem);
}

.pc-contact-about {
  padding: clamp(24px, 3vw, 38px);
  background:
    radial-gradient(circle at 88% 10%, rgba(184, 216, 235, .18), transparent 34%),
    linear-gradient(145deg, rgba(255, 249, 243, .72), rgba(232, 243, 231, .48));
  border: 0;
  border-left: 3px solid rgba(168, 216, 200, .72);
  border-radius: 0;
}

.pc-contact-followup {
  border-radius: 0 6px 6px 0;
}

.pc-contact-form input,
.pc-contact-form textarea {
  border-radius: 6px;
}

.pc-contact-detail--heart {
  top: -5px;
  left: -12px;
  width: 48px;
  height: 48px;
  opacity: .66;
  transform: rotate(-9deg);
}

.pc-contact-detail--star {
  right: -8px;
  bottom: 14%;
  width: 44px;
  height: 44px;
  opacity: .68;
  transform: rotate(8deg);
}

.pc-contact-detail--vine {
  right: max(-62px, calc((100vw - 1300px) / 2 - 108px));
  bottom: -31%;
  width: 126px;
  height: 76%;
  opacity: .55;
}

@media (max-width: 700px) {
  .pc-commerce-detail--heart,
  .pc-commerce-detail--star {
    width: 32px;
    height: 32px;
    opacity: .58;
  }

  .pc-commerce-detail--heart {
    top: 18px;
    left: 4px;
  }

  .pc-commerce-detail--star {
    top: 92px;
    right: 4px;
  }

  .woocommerce-products-header,
  .pc-content--shop > .page-title {
    padding: 18px 38px 24px;
  }

  .woocommerce-products-header__title,
  .pc-content--shop > .page-title {
    font-size: clamp(2rem, 10vw, 2.55rem);
  }

  .woocommerce-products-header__title.pc-product-category-title,
  .pc-content--shop > .pc-product-category-title {
    font-size: clamp(1.85rem, 8.4vw, 2.35rem);
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
  }

  .pc-content--shop > .pc-product-category-title {
    padding-inline: 20px;
  }

  .woocommerce ul.products li.product > .pc-ornament {
    width: 18px;
    height: 18px;
  }

  .woocommerce ul.products li.product > .pc-loop-ornament--5,
  .woocommerce ul.products li.product > .pc-loop-ornament--7,
  .woocommerce ul.products li.product > .pc-loop-ornament--13,
  .woocommerce ul.products li.product > .pc-loop-ornament--15 {
    display: none;
  }

  .woocommerce ul.products li.product > .pc-loop-ornament--1,
  .woocommerce ul.products li.product > .pc-loop-ornament--9 {
    top: 6px;
    left: 6px;
  }

  .woocommerce ul.products li.product > .pc-loop-ornament--3,
  .woocommerce ul.products li.product > .pc-loop-ornament--11 {
    right: 6px;
    bottom: 6px;
  }

  .pc-contact-page__header h1 {
    font-size: clamp(2.25rem, 11vw, 2.75rem);
  }

  .pc-contact-form-wrap h2,
  .pc-contact-about h2 {
    font-size: clamp(1.8rem, 8.6vw, 2.15rem);
  }

  .pc-contact-detail--heart {
    top: 0;
    left: 4px;
    width: 34px;
    height: 34px;
  }

  .pc-contact-detail--star {
    right: 4px;
    bottom: 4%;
    width: 32px;
    height: 32px;
  }

  .pc-contact-detail--vine {
    right: -36px;
    bottom: -22%;
    width: 68px;
    opacity: .42;
  }
}
