.drc-product {
	display: grid;
	gap: var(--drc-space-5);
	margin-block-end: var(--drc-space-7);
}

@media (min-width: 900px) {
	.drc-product {
		grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.85fr);
		gap: var(--drc-space-7);
		align-items: start;
	}

	.drc-product.product-type-grouped {
		grid-template-columns: minmax(0, 1fr) minmax(340px, 1fr);
	}
}

.drc-product > .summary {
	min-width: 0;
}

.drc-product__panel {
	display: flex;
	flex-direction: column;
	gap: var(--drc-space-3);
}

.drc-product__panel .product_title {
	overflow-wrap: anywhere;
}

@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)) {

	@media (min-width: 1200px) and (min-height: 800px) {
		.drc-product > .summary {
			position: sticky;
			top: calc(var(--drc-header-h-lg) + var(--drc-space-4));
		}

		.drc-product > .summary:has(:focus-visible) {
			z-index: 2;
		}
	}
}

.drc-product > .onsale {
	grid-area: 1 / 1;
	z-index: 1;
	align-self: start;
	justify-self: start;
	margin: var(--drc-space-2);
	pointer-events: none;
}

.drc-product-sections {
	grid-column: 1 / -1;
}

.drc-product-section {
	padding-block: var(--drc-space-6);
	padding-inline: var(--drc-space-4);
}

.drc-product-section--band-odd {
	background: var(--drc-white);
}

.drc-product-section--band-even {
	background: var(--drc-surface-alt);
}

.drc-product__panel {
	background: var(--drc-white);
}

@media (max-width: 899px) {
	.drc-product__panel {
		border-block-start: 1px solid var(--drc-border);
		padding-block-start: var(--drc-space-4);
	}
}

.drc-product__panel .product_title {
	margin: 0;
	color: var(--drc-navy);
	font-size: var(--drc-fs-h1);
	line-height: var(--drc-lh-tight);
}

.drc-product__panel .woocommerce-product-rating {
	display: flex;
	align-items: center;
	gap: var(--drc-space-2);
	margin: 0;
	font-size: var(--drc-fs-sm);
}

.drc-product__panel .woocommerce-review-link {
	color: var(--drc-text-muted);
}

.drc-product__availability {
	margin: 0;
}

.drc-product__panel p.price,
.drc-product__panel .woocommerce-variation-price .price {
	margin: 0;
	color: var(--drc-navy);
	font-size: var(--drc-fs-h3);
	font-weight: var(--drc-fw-bold);
	line-height: var(--drc-lh-snug);
}

.drc-product__panel p.price del,
.drc-product__panel .woocommerce-variation-price del {
	margin-inline-end: var(--drc-space-2);
	color: var(--drc-text-muted);
	font-size: var(--drc-fs-body);
	font-weight: var(--drc-fw-normal);
}

.drc-product__panel p.price ins,
.drc-product__panel .woocommerce-variation-price ins {
	background: none;
	color: var(--drc-sale);
	text-decoration: none;
}

.drc-product__panel .woocommerce-price-suffix {
	color: var(--drc-text-muted);
	font-size: var(--drc-fs-sm);
	font-weight: var(--drc-fw-normal);
}

.drc-product__panel .woocommerce-product-details__short-description {
	max-width: var(--drc-measure);
	color: var(--drc-text);
	font-size: var(--drc-fs-body);
	line-height: var(--drc-lh-base);
}

.drc-product__panel .woocommerce-product-details__short-description > * {
	margin-block: 0;
}

.drc-product__panel .woocommerce-product-details__short-description > * + * {
	margin-block-start: var(--drc-space-3);
}

.drc-product__panel p.stock {
	margin: 0;
	font-size: var(--drc-fs-sm);
	font-weight: var(--drc-fw-semibold);
}

.drc-product__panel p.stock.in-stock {
	color: var(--drc-success);
}

.drc-product__panel p.stock.available-on-backorder {
	color: var(--drc-warning);
}

.drc-product__panel p.stock.out-of-stock {
	color: var(--drc-error);
}

.drc-product__panel form.cart {
	margin: 0;
}

.drc-product__panel form.cart:not(.variations_form):not(.grouped_form),
.drc-product__panel .woocommerce-variation-add-to-cart {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: var(--drc-space-3);
}

.drc-product__panel form.cart .quantity {
	flex: 0 1 auto;
}

.drc-product__panel .single_add_to_cart_button {
	flex: 1 1 220px;
	min-height: 48px;
}

@media (max-width: 599px) {
	.drc-product__panel .single_add_to_cart_button {
		flex-basis: 100%;
	}
}

.drc-panel-compat {
	display: flex;
	flex-direction: column;
	gap: var(--drc-space-1);
	font-size: var(--drc-fs-sm);
}

.drc-panel-compat__head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--drc-space-2);
}

.drc-panel-compat__count {
	margin: 0;
	color: var(--drc-text);
	font-weight: var(--drc-fw-semibold);
}

.drc-panel-compat__names {
	overflow: hidden;
	margin: 0;
	padding-inline-start: var(--drc-space-2);
	color: var(--drc-text-muted);
	white-space: nowrap;
	text-overflow: ellipsis;
}

.drc-panel-compat__link {
	gap: var(--drc-space-1);
	margin-block: -0.5rem;
	padding-inline: 0;
}

.drc-panel-compat__link .drc-icon {
	transform: rotate(90deg);
}

.drc-purchase-meta {
	margin: 0;
	font-size: var(--drc-fs-sm);
}

.drc-purchase-meta__row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--drc-space-2);
	margin: 0;
}

.drc-purchase-meta__label {
	color: var(--drc-text-muted);
}

.drc-purchase-meta__value {
	color: var(--drc-text);

	-webkit-user-select: all;
	user-select: all;
}

.drc-product__panel .variations,
.drc-product__panel .variations tbody,
.drc-product__panel .variations tr,
.drc-product__panel .variations th,
.drc-product__panel .variations td {
	display: block;
	width: auto;
	border: 0;
}

.drc-product__panel .variations {
	margin: 0;
}

.drc-product__panel .variations th,
.drc-product__panel .variations td {
	padding: 0;
	text-align: start;
}

.drc-product__panel .variations tr + tr {
	margin-block-start: var(--drc-space-3);
}

.drc-product__panel .variations label {
	display: block;
	margin-block-end: var(--drc-space-1);
	font-size: var(--drc-fs-sm);
	font-weight: var(--drc-fw-semibold);
}

.drc-product__panel .variations select {
	width: 100%;
}

.drc-product__panel .reset_variations {
	display: inline-block;
	margin-block-start: var(--drc-space-2);
	color: var(--drc-blue);
	font-size: var(--drc-fs-sm);
}

.drc-product__panel .single_variation_wrap {
	display: flex;
	flex-direction: column;
	gap: var(--drc-space-3);
	margin-block-start: var(--drc-space-4);
}

.drc-product__panel .woocommerce-variation-description {
	color: var(--drc-text);
	font-size: var(--drc-fs-sm);
	line-height: var(--drc-lh-base);
}

.drc-product__panel .woocommerce-variation-description > * {
	margin-block: 0;
}

.drc-product__panel .woocommerce-grouped-product-list {
	width: 100%;
	margin: 0 0 var(--drc-space-4);
	border-collapse: collapse;
	font-size: var(--drc-fs-sm);
}

.drc-product__panel .woocommerce-grouped-product-list td {
	padding: var(--drc-space-3) var(--drc-space-2);
	border-block-end: 1px solid var(--drc-border);
	vertical-align: middle;
}

.drc-product__panel .woocommerce-grouped-product-list td:first-child {
	padding-inline-start: 0;
}

.drc-product__panel .woocommerce-grouped-product-list td:last-child {
	padding-inline-end: 0;
}

.drc-product__panel .woocommerce-grouped-product-list .price {
	color: var(--drc-navy);
	font-size: var(--drc-fs-sm);
	font-weight: var(--drc-fw-semibold);
}

.drc-product__panel .woocommerce-grouped-product-list p.stock {
	font-size: var(--drc-fs-xs);
	font-weight: var(--drc-fw-normal);
}

.drc-product__panel form.cart.grouped_form .single_add_to_cart_button {
	width: 100%;
}

.drc-gallery {
	display: flex;
	flex-direction: column;
	gap: var(--drc-space-3);
	grid-area: 1 / 1;
	min-width: 0;
}

.drc-product__media {
	grid-area: 1 / 1;
	min-width: 0;
}

.drc-gallery__stage {
	position: relative;
	overflow: hidden;
	aspect-ratio: 1;
	border: 1px solid var(--drc-border);
	border-radius: var(--drc-radius-lg);
	background: var(--drc-surface-alt);
}

.drc-gallery__figure {
	width: 100%;
	height: 100%;
	margin: 0;
}

.drc-gallery__figure .woocommerce-product-gallery__image,
.drc-gallery__figure .woocommerce-product-gallery__image--placeholder {
	width: 100%;
	height: 100%;
}

.drc-gallery__figure a {
	display: block;
	width: 100%;
	height: 100%;
}

.drc-gallery__figure img {
	width: 100%;
	height: 100%;
	padding: var(--drc-space-4);
	object-fit: contain;
}

.drc-gallery__rail {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(64px, 1fr));
	gap: var(--drc-space-2);
	max-width: calc(6 * 64px + 5 * var(--drc-space-2));
	margin: 0;
	padding: 0;
	list-style: none;
}

.drc-gallery__thumb {
	display: block;
	width: 100%;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--drc-border);
	border-radius: var(--drc-radius-sm);
	background: var(--drc-white);
	aspect-ratio: 1;
	cursor: pointer;
}

.drc-gallery__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.drc-gallery__thumb[aria-current="true"] {
	border-color: var(--drc-blue);
	outline: 2px solid var(--drc-blue);
	outline-offset: -2px;
}

@media (hover: hover) {
	.drc-gallery__thumb:hover {
		border-color: var(--drc-navy);
	}
}

.no-js .drc-gallery__rail {
	display: none;
}

.drc-gallery__noscript {
	display: flex;
	flex-direction: column;
	gap: var(--drc-space-3);
	margin: 0;
	padding: 0;
	list-style: none;
}

.drc-gallery__noscript img {
	width: 100%;
	height: auto;
	border: 1px solid var(--drc-border);
	border-radius: var(--drc-radius-lg);
}

.drc-product-section__title {
	margin-block: 0;
	font-size: var(--drc-fs-h2);
	line-height: var(--drc-lh-tight);
}

.drc-reviews .woocommerce-Reviews-title,
.drc-related .related > h2 {
	margin-block: 0 var(--drc-space-4);
	font-size: var(--drc-fs-h2);
	line-height: var(--drc-lh-tight);
}

@media (min-width: 900px) {

	.drc-product-section {
		padding-inline: 0;
	}
}

.drc-included__list {
	margin: 0;
	padding-inline-start: var(--drc-space-5);
	max-width: var(--drc-measure);
}

.drc-included__item + .drc-included__item {
	margin-block-start: var(--drc-space-2);
}

.drc-specs {
	margin: 0;
}

.drc-specs__row {
	padding-block: var(--drc-space-3);
	border-block-end: 1px solid var(--drc-border);
}

.drc-specs__row:last-child {
	border-block-end: 0;
}

.drc-specs__label {
	margin: 0;
	color: var(--drc-text-muted);
	font-size: var(--drc-fs-sm);
	font-weight: var(--drc-fw-semibold);
}

.drc-specs__value {
	margin: 0;

	overflow-wrap: anywhere;
}

@media (min-width: 640px) {

	.drc-specs {
		width: fit-content;
		max-width: min(100%, calc(14rem + var(--drc-space-4) + var(--drc-measure)));
	}

	.drc-specs__row {
		display: grid;

		grid-template-columns: minmax(140px, 14rem) minmax(0, 1fr);
		gap: var(--drc-space-4);
		align-items: baseline;
	}
}

.drc-reviews .commentlist {
	margin: 0 0 var(--drc-space-6);
	padding: 0;
	list-style: none;
}

.drc-reviews .comment_container {
	display: flex;
	gap: var(--drc-space-4);
	padding: var(--drc-space-4);
	background: var(--drc-white);
	border: 1px solid var(--drc-border);
	border-radius: var(--drc-radius);
}

.drc-reviews .commentlist > li + li {
	margin-block-start: var(--drc-space-3);
}

.drc-reviews .comment_container .avatar {
	width: 48px;
	height: 48px;
	border-radius: var(--drc-radius-pill);
}

.drc-reviews .comment-text {
	flex: 1 1 auto;
	min-width: 0;
}

.drc-reviews .comment-text .meta {
	margin-block: var(--drc-space-1) var(--drc-space-2);
	color: var(--drc-text-muted);
	font-size: var(--drc-fs-sm);
}

.drc-reviews .woocommerce-noreviews {
	margin-block: 0 var(--drc-space-5);
	color: var(--drc-text-muted);
}

.drc-reviews .comment-reply-title {
	display: block;
	margin-block-end: var(--drc-space-3);
	font-size: var(--drc-fs-h3);
	font-weight: var(--drc-fw-semibold);
}

.drc-reviews #respond {
	max-width: var(--drc-measure);
}

.drc-reviews .comment-form-rating {
	margin-block-end: var(--drc-space-4);
}

.drc-reviews .comment-form-cookies-consent {
	display: flex;
	align-items: flex-start;
	gap: var(--drc-space-2);
}

.drc-reviews .comment-form-cookies-consent label {
	margin-block-end: 0;
	font-weight: var(--drc-fw-normal);
}

.drc-reviews #rating {
	max-width: 16rem;
}

.drc-reviews p.stars {
	display: flex;
	gap: var(--drc-space-1);
	margin-block: 0 var(--drc-space-2);
}

.drc-reviews p.stars a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--drc-touch);
	height: var(--drc-touch);
	color: var(--drc-border);
	font-size: 0;
	text-decoration: none;
}

.drc-reviews p.stars a::before {
	content: "\2605";
	font-size: 1.5rem;
	line-height: 1;
}

.drc-reviews p.stars a:is(:hover, :focus-visible),
.drc-reviews p.stars a:has(~ a:is(:hover, :focus-visible)) {
	color: var(--drc-warning);
}

.drc-reviews p.stars.selected a.active,
.drc-reviews p.stars.selected a:has(~ a.active) {
	color: var(--drc-warning);
}

.drc-related .related {
	background: rgba(16, 43, 70, 0.04);
	border: 1px solid var(--drc-border);
	border-radius: var(--drc-radius-lg);
	box-shadow: var(--drc-shadow-2);
	padding: var(--drc-space-4);
}

@media (min-width: 480px) {

	.drc-related .related {
		padding: var(--drc-space-5);
	}
}

@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)) {

	.drc-related .related {
		-webkit-backdrop-filter: blur(10px) saturate(1.1);
		backdrop-filter: blur(10px) saturate(1.1);
	}
}

.drc-compat {
	contain: inline-size;
}

.drc-compat__list {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
	gap: var(--drc-space-2) var(--drc-space-5);
	max-width: var(--drc-measure);
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 480px) {

	.drc-compat__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.drc-compat__item {
	display: flex;
	align-items: center;
	gap: var(--drc-space-2);
	min-width: 0;
	min-height: var(--drc-touch);
	padding-inline: var(--drc-space-4);
	background: var(--drc-white);
	border: 1px solid var(--drc-border);
	border-radius: var(--drc-radius-pill);
}

.drc-compat__label {
	display: inline-block;
	overflow: hidden;
	max-width: 100%;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.drc-compat__label--split {
	display: inline-flex;
	min-width: 0;
}

.drc-compat__label-head {
	overflow: hidden;
	min-width: 0;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.drc-compat__label-tail {
	flex: none;
	white-space: pre;
}

.drc-compat__note {
	color: var(--drc-text-muted);
	font-size: var(--drc-fs-sm);
}

.drc-compat__disclaimer,
.drc-compat__fallback {
	max-width: var(--drc-measure);
	margin-block: var(--drc-space-4) 0;
	color: var(--drc-text-muted);
}

a.drc-compat__label {
	color: var(--drc-navy);
}

.drc-disclosure__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	column-gap: var(--drc-space-3);
	min-height: var(--drc-touch);
	max-width: var(--drc-measure);
	list-style: none;
	cursor: pointer;
}

.drc-disclosure__header::-webkit-details-marker {
	display: none;
}

.drc-disclosure__header > .drc-product-section__title {
	grid-area: 1 / 1;
	min-width: 0;
}

.drc-disclosure__preview {
	grid-area: 2 / 1;
	overflow: hidden;
	color: var(--drc-text-muted);
	font-size: var(--drc-fs-sm);
	white-space: nowrap;
	text-overflow: ellipsis;
}

.drc-disclosure[open] .drc-disclosure__preview {
	display: none;
}

.drc-disclosure__toggle {
	grid-area: 1 / 2 / -1 / -1;
	display: flex;
	align-items: center;
	justify-content: center;
	inline-size: var(--drc-touch);
	block-size: var(--drc-touch);
	border-radius: var(--drc-radius-pill);
	color: var(--drc-navy);
}

.drc-disclosure__toggle .drc-icon {
	transform: rotate(90deg);
	transition: transform 150ms ease;
}

.drc-disclosure[open] .drc-disclosure__toggle .drc-icon {
	transform: rotate(-90deg);
}

@media (prefers-reduced-motion: reduce) {

	.drc-disclosure__toggle .drc-icon {
		transition: none;
	}
}

@media (hover: hover) {

	.drc-disclosure__header:hover .drc-disclosure__toggle {
		background: var(--drc-border);
	}
}

.drc-disclosure__body {
	padding-block-start: var(--drc-space-4);
}

@media (min-width: 900px) {

	.drc-disclosure__toggle {
		inline-size: 40px;
		block-size: 40px;
	}
}

@media (max-width: 899px) {

	.drc-product-sections {
		display: grid;
		gap: var(--drc-space-3);
	}

	.drc-product-sections .drc-product-section:not(.drc-related) {
		background: var(--drc-white);
		border: 1px solid var(--drc-border);
		border-radius: var(--drc-radius-lg);
	}

	.drc-product-sections .drc-related {
		padding: 0;
	}
}

.drc-product-section:has(> .drc-disclosure) {
	padding-block: var(--drc-space-4);
}
