/* Product page (templates/page-product.html). */
html { scroll-behavior: smooth; }
.cc-product-card { border-radius: 12.6px; overflow: hidden; }
.cc-product-card .wp-block-cover__inner-container { width: 100%; }
.cc-product-text { max-width: 696px; }
.cc-product-card.is-text-right .cc-product-text { margin-left: auto; }

/* Compare table rows: label column + three 124px mark columns. */
.cc-cmp-row { min-height: 56px; }
.cc-cmp-row > :first-child { flex: 0 0 230px; padding-left: 24.2px; }
.cc-cmp-row > :not(:first-child) { flex: 0 0 124px; display: flex; justify-content: center; }
.cc-cmp-head > :not(:first-child) { align-items: center; }
.cc-graphene > :not(.cc-graphene-img) { position: relative; z-index: 1; }

/* FAQ accordion (core/details). */
.cc-faq { background: var(--wp--preset--color--cream); border-radius: 7.2px; }
.cc-faq summary { display: flex; align-items: center; min-height: 70px; padding: 0 39.6px 0 32px; list-style: none; cursor: pointer; font-size: 18px; font-weight: 500; line-height: 23px; }
.cc-faq summary::-webkit-details-marker { display: none; }
.cc-faq summary::before { content: "Q."; font-weight: 400; margin-right: 15.7px; }
.cc-faq summary::after { content: "+"; margin-left: auto; padding-left: 16px; }
.cc-faq[open] summary::after { content: "−"; }
.cc-faq > :not(summary) { margin: 0; padding: 0 39.6px 22px 64.7px; }

/* Help card: buttons pinned to the bottom of the cover. */
.cc-help-card { border-radius: 10.8px; overflow: hidden; align-items: stretch; }
.cc-help-card .wp-block-cover__inner-container { display: flex; flex-direction: column; }

@media (max-width: 781px) {
	.cc-product-card { min-height: 0 !important; padding: 32px 20px !important; }
	.cc-product-card .wp-block-cover__image-background { opacity: .35; }
	.cc-product-icons { gap: 20px 28px !important; }
	.cc-cmp-row > :first-child { flex-basis: 40%; padding-left: 12px; }
	.cc-cmp-row > :not(:first-child) { flex: 1 1 20%; }
	.cc-graphene-img img { width: 100% !important; height: auto !important; }
	.cc-hero-buttons { margin-top: 40px !important; }
}
