/**
 * WRE Product & Catalog Shortcodes (Phases 24.10 / 24.11)
 *
 * Styles: .wre-current-product · .wre-catalog
 * Related: clear floats + 1→3 grid (ignore WC columns-4 floats)
 * Buttons: Wildcard gold primary (scoped; !important vs Oxygen/theme button colors)
 */

/* -------------------------------------------------------------------------- */
/* Current product wrapper                                                    */
/* -------------------------------------------------------------------------- */

.wre-current-product {
	box-sizing: border-box;
	max-width: 100%;
	margin: 0 0 1.5rem;
	padding: 1.25rem;
	background: var(--wre-color-light, #f5f0e6);
	color: var(--wre-color-text-dark, #1a1a1a);
	border: 1px solid var(--wre-color-border, #d4cbb8);
	border-radius: var(--wre-radius, 2px);
	box-shadow: var(--wre-shadow, none);
}

.wre-current-product *,
.wre-current-product *::before,
.wre-current-product *::after {
	box-sizing: border-box;
}

.wre-current-product--hint {
	padding: 1rem 1.15rem;
	border-left: 4px solid var(--wre-color-primary, #c4a35a);
	font-size: 0.95rem;
	line-height: 1.45;
}

/* Contain WC gallery/summary floats so related cannot wrap beside them. */
.wre-current-product .single-product,
.wre-current-product div.product {
	max-width: 100%;
	overflow: visible;
}

.wre-current-product div.product {
	display: flow-root;
}

.wre-current-product .woocommerce-product-gallery {
	margin: 0 0 1.25rem;
	float: none;
	max-width: 100%;
}

.wre-current-product .woocommerce-product-gallery__image img,
.wre-current-product .wp-post-image {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
}

.wre-current-product .summary,
.wre-current-product .entry-summary {
	float: none;
	width: 100%;
	max-width: 100%;
	color: var(--wre-color-text-dark, #1a1a1a);
}

/*
 * Phase 24.41 — Short description color on ALL WRE current-product surfaces.
 * Oxygen “on-black” Atomic classes can force white text; override color only
 * inside this cream/light product chrome (do not change Oxygen globally).
 */
.wre-current-product .woocommerce-product-details__short-description,
.wre-current-product .woocommerce-product-details__short-description * {
	color: var(--wre-color-text-dark, #1a1a1a) !important;
}

.wre-current-product .summary .price,
.wre-current-product .summary .amount,
.wre-current-product .summary .woocommerce-Price-amount,
.wre-current-product .summary .woocommerce-Price-currencySymbol,
.wre-current-product .summary bdi {
	color: var(--wre-color-text-dark, #1a1a1a);
}

.wre-current-product .product_title {
	margin: 0 0 12px;
	color: var(--wre-color-primary, #c4a35a);
}

.wre-current-product .quantity .qty {
	min-height: 44px;
	min-width: 3.5rem;
}

/* -------------------------------------------------------------------------- */
/* Buttons — scoped; !important defeats Oxygen/theme turquoise/gray buttons   */
/* -------------------------------------------------------------------------- */

.wre-current-product .button,
.wre-current-product button.button,
.wre-current-product a.button,
.wre-current-product .single_add_to_cart_button,
.wre-current-product .add_to_cart_button,
.wre-current-product .ajax_add_to_cart,
.wre-current-product .wre-product-availability__submit,
.wre-current-product .wre-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0.55em 1.1em;
	border: 1px solid var(--wre-color-primary, #c4a35a) !important;
	border-radius: var(--wre-radius, 2px);
	background: var(--wre-color-primary, #c4a35a) !important;
	background-color: var(--wre-color-primary, #c4a35a) !important;
	color: var(--wre-color-text-dark, #1a1a1a) !important;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1.3;
	text-decoration: none;
	box-shadow: none !important;
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.wre-current-product .button:hover,
.wre-current-product button.button:hover,
.wre-current-product a.button:hover,
.wre-current-product .single_add_to_cart_button:hover,
.wre-current-product .add_to_cart_button:hover,
.wre-current-product .ajax_add_to_cart:hover,
.wre-current-product .wre-product-availability__submit:hover,
.wre-current-product .wre-btn:hover {
	background: var(--wre-color-secondary, #e0c878) !important;
	background-color: var(--wre-color-secondary, #e0c878) !important;
	border-color: var(--wre-color-secondary, #e0c878) !important;
	color: var(--wre-color-text-dark, #1a1a1a) !important;
}

.wre-current-product .button:focus,
.wre-current-product .button:focus-visible,
.wre-current-product button.button:focus-visible,
.wre-current-product a.button:focus-visible,
.wre-current-product .single_add_to_cart_button:focus-visible,
.wre-current-product .add_to_cart_button:focus-visible,
.wre-current-product .wre-product-availability__submit:focus-visible,
.wre-current-product .wre-btn:focus-visible {
	outline: 3px solid var(--wre-color-focus, #c4a35a);
	outline-offset: 2px;
	color: var(--wre-color-text-dark, #1a1a1a) !important;
}

.wre-current-product .button:active,
.wre-current-product button.button:active,
.wre-current-product a.button:active,
.wre-current-product .single_add_to_cart_button:active,
.wre-current-product .add_to_cart_button:active,
.wre-current-product .wre-product-availability__submit:active {
	background: var(--wre-color-secondary, #e0c878) !important;
	background-color: var(--wre-color-secondary, #e0c878) !important;
	border-color: var(--wre-color-primary, #c4a35a) !important;
	color: var(--wre-color-text-dark, #1a1a1a) !important;
	transform: none;
}

.wre-current-product .button:disabled,
.wre-current-product .button.disabled,
.wre-current-product button.button:disabled,
.wre-current-product .single_add_to_cart_button:disabled,
.wre-current-product .add_to_cart_button.disabled {
	opacity: 0.55;
	cursor: not-allowed;
	background: var(--wre-color-primary, #c4a35a) !important;
	color: var(--wre-color-text-dark, #1a1a1a) !important;
}

.wre-current-product .added_to_cart,
.wre-current-product a.added_to_cart {
	color: var(--wre-color-primary, #c4a35a) !important;
	background: transparent !important;
	border: none !important;
	min-height: auto;
	padding: 0.35em 0;
	text-decoration: underline;
}

.wre-current-product .related .button,
.wre-current-product .related .add_to_cart_button,
.wre-current-product .upsells .button,
.wre-current-product .upsells .add_to_cart_button {
	width: auto;
	min-width: 0;
	min-height: 44px;
	font-size: 0.9em;
	padding: 0.45em 0.85em;
}

/* Related / upsell product-card text — Phase 26.39 uses --wre-product-card-text-align */
.wre-current-product .related ul.products li.product,
.wre-current-product .upsells ul.products li.product {
	text-align: var(--wre-product-card-text-align, center);
}

.wre-current-product .related ul.products li.product .woocommerce-loop-product__title,
.wre-current-product .upsells ul.products li.product .woocommerce-loop-product__title,
.wre-current-product .related ul.products li.product .price,
.wre-current-product .upsells ul.products li.product .price {
	text-align: inherit;
}

/* Keep card CTAs centered regardless of product-card text-align (Phase 26.39). */
.wre-current-product .related ul.products li.product .button,
.wre-current-product .related ul.products li.product .add_to_cart_button,
.wre-current-product .upsells ul.products li.product .button,
.wre-current-product .upsells ul.products li.product .add_to_cart_button,
.wre-current-product .related ul.products li.product .added_to_cart,
.wre-current-product .upsells ul.products li.product .added_to_cart {
	display: flex;
	width: fit-content;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

/* -------------------------------------------------------------------------- */
/* Tabs                                                                       */
/* -------------------------------------------------------------------------- */

.wre-current-product .woocommerce-tabs {
	margin-top: 1.5rem;
	clear: both;
	float: none;
	width: 100%;
	display: block;
}

.wre-current-product .woocommerce-tabs ul.tabs li a {
	color: var(--wre-color-text-dark, #1a1a1a);
}

.wre-current-product .woocommerce-tabs .panel {
	color: var(--wre-color-text-dark, #1a1a1a);
}

/* -------------------------------------------------------------------------- */
/* Related / upsells — clear floats + CSS grid (ignore columns-4)             */
/* -------------------------------------------------------------------------- */

.wre-current-product .related.products,
.wre-current-product .upsells.products {
	clear: both !important;
	float: none !important;
	display: block;
	width: 100% !important;
	max-width: 100%;
	margin: 2rem 0 0;
	padding: 0;
	position: relative;
	left: 0;
}

.wre-current-product .related.products::before,
.wre-current-product .related.products::after,
.wre-current-product .upsells.products::before,
.wre-current-product .upsells.products::after {
	content: none !important;
	display: none !important;
}

.wre-current-product .related.products > h2,
.wre-current-product .upsells.products > h2 {
	clear: both;
	float: none;
	width: 100%;
	margin: 0 0 12px;
	padding: 0;
	text-align: left;
	color: var(--wre-color-primary, #c4a35a);
}

.wre-current-product .related ul.products,
.wre-current-product .upsells ul.products,
.wre-current-product ul.products.columns-2,
.wre-current-product ul.products.columns-3,
.wre-current-product ul.products.columns-4,
.wre-current-product ul.products.columns-5,
.wre-current-product ul.products.columns-6 {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 1rem;
	list-style: none;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	float: none !important;
	clear: both !important;
}

.wre-current-product .related ul.products::before,
.wre-current-product .related ul.products::after,
.wre-current-product .upsells ul.products::before,
.wre-current-product .upsells ul.products::after,
.wre-current-product ul.products::before,
.wre-current-product ul.products::after {
	content: none !important;
	display: none !important;
}

.wre-current-product .related ul.products li.product,
.wre-current-product .upsells ul.products li.product {
	width: auto !important;
	max-width: 100%;
	margin: 0 !important;
	padding: 0.85rem;
	float: none !important;
	clear: none !important;
	position: static !important;
	left: auto !important;
	right: auto !important;
	min-width: 0;
	background: var(--wre-color-light-accent, #faf7f0);
	border: 1px solid var(--wre-color-border, #d4cbb8);
	border-radius: var(--wre-radius, 2px);
	border-top: 3px solid var(--wre-color-primary, #c4a35a);
	box-shadow: var(--wre-shadow, none);
}

.wre-current-product .related ul.products li.product .woocommerce-loop-product__link,
.wre-current-product .upsells ul.products li.product .woocommerce-loop-product__link {
	display: block;
}

.wre-current-product .related ul.products li.product img,
.wre-current-product .upsells ul.products li.product img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	margin: 0 0 0.85rem;
}

.wre-current-product .related ul.products li.product .woocommerce-loop-product__title,
.wre-current-product .upsells ul.products li.product .woocommerce-loop-product__title,
.wre-current-product .related ul.products li.product h2,
.wre-current-product .upsells ul.products li.product h2 {
	margin: 0 0 0.35rem;
	font-size: 21px; /* Phase 26.23.18.4 — product-card titles */
	font-weight: 600; /* Phase 26.33 — readability */
	line-height: 1.3;
	word-break: break-word;
	color: var(--wre-color-text-dark, #1a1a1a);
}

.wre-current-product .related ul.products li.product .woocommerce-loop-product__title a,
.wre-current-product .upsells ul.products li.product .woocommerce-loop-product__title a,
.wre-current-product .related ul.products li.product h2 a,
.wre-current-product .upsells ul.products li.product h2 a {
	color: inherit;
	text-decoration: none;
}

.wre-current-product .related ul.products li.product .woocommerce-loop-product__title a:hover,
.wre-current-product .upsells ul.products li.product .woocommerce-loop-product__title a:hover,
.wre-current-product .related ul.products li.product h2 a:hover,
.wre-current-product .upsells ul.products li.product h2 a:hover,
.wre-current-product .related ul.products li.product .woocommerce-loop-product__title a:focus,
.wre-current-product .upsells ul.products li.product .woocommerce-loop-product__title a:focus,
.wre-current-product .related ul.products li.product h2 a:focus,
.wre-current-product .upsells ul.products li.product h2 a:focus {
	text-decoration: underline;
}

.wre-current-product .related ul.products li.product .price,
.wre-current-product .upsells ul.products li.product .price,
.wre-current-product .related ul.products li.product .amount,
.wre-current-product .upsells ul.products li.product .amount,
.wre-current-product .related ul.products li.product .woocommerce-Price-amount,
.wre-current-product .upsells ul.products li.product .woocommerce-Price-amount,
.wre-current-product .related ul.products li.product .woocommerce-Price-currencySymbol,
.wre-current-product .upsells ul.products li.product .woocommerce-Price-currencySymbol,
.wre-current-product .related ul.products li.product bdi,
.wre-current-product .upsells ul.products li.product bdi {
	color: var(--wre-color-text-dark, #1a1a1a);
	font-weight: 600;
}

@media (min-width: 768px) {
	.wre-current-product .single-product .product,
	.wre-current-product div.product {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 1.5rem 2rem;
		align-items: start;
	}

	.wre-current-product .woocommerce-product-gallery {
		grid-column: 1;
		grid-row: 1;
		margin: 0;
		float: none !important;
		width: auto !important;
	}

	.wre-current-product .summary,
	.wre-current-product .entry-summary {
		grid-column: 2;
		grid-row: 1;
		width: 100% !important;
		float: none !important;
	}

	.wre-current-product .woocommerce-tabs,
	.wre-current-product .related.products,
	.wre-current-product .upsells.products,
	.wre-current-product .wre-product-availability,
	.wre-current-product .wre-recommendations,
	.wre-current-product div.product > .wre-product-recs-host,
	.wre-current-product--byo_package div.product > .wre-byo-fullwidth {
		grid-column: 1 / -1;
		clear: both;
		float: none;
		width: 100%;
	}

	/*
	 * Phase 24.41 / 24.95 — Add another rental is a sibling of gallery/summary.
	 * The 24.94 AJAX host (not the inner section) is the grid child.
	 */
	.wre-current-product--package div.product > .wre-recommendations,
	.wre-current-product--package div.product > .wre-product-recs-host,
	.wre-current-product--package .wre-recommendations--product {
		grid-column: 1 / -1;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	.wre-current-product .related ul.products,
	.wre-current-product .upsells ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	.wre-current-product .single_add_to_cart_button,
	.wre-current-product form.cart .button {
		width: 100%;
	}

	.wre-current-product--package div.product > .wre-recommendations,
	.wre-current-product--package div.product > .wre-product-recs-host,
	.wre-current-product--package .wre-recommendations--product {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}
}

/* -------------------------------------------------------------------------- */
/* Catalog grids                                                              */
/* -------------------------------------------------------------------------- */

.wre-catalog {
	box-sizing: border-box;
	max-width: 100%;
	margin: 0 0 1.75rem;
	color: var(--wre-color-text-dark, #1a1a1a);
}

/* Phase 24.78 — BYO catalog section stays full width; only the card is constrained. */
.wre-catalog.wre-catalog--byo {
	width: 100%;
	max-width: 100%;
}

.wre-catalog *,
.wre-catalog *::before,
.wre-catalog *::after {
	box-sizing: border-box;
}

.wre-catalog__heading,
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__heading.atomic-secondary-heading {
	margin: 0 0 12px;
	/* Light catalog surface: black/dark text (Phase 24.31). Dark surface overrides below. */
	color: var(--wre-color-text-dark, #1a1a1a);
}

.wre-catalog__empty {
	margin: 0;
	padding: 1rem 1.15rem;
	background: var(--wre-color-light, #f5f0e6);
	border-left: 4px solid var(--wre-color-primary, #c4a35a);
	line-height: 1.45;
}

.wre-catalog__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

.wre-catalog__card {
	margin: 0;
	min-width: 0;
	background: var(--wre-color-light, #f5f0e6);
	border: 1px solid var(--wre-color-border, #d4cbb8);
	border-radius: var(--wre-radius, 2px);
	border-top: 3px solid var(--wre-color-primary, #c4a35a);
	overflow: hidden;
	box-shadow: var(--wre-shadow, none);
}

.wre-catalog__card-inner {
	padding: 0.85rem;
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	min-width: 0;
}

.wre-catalog__media {
	margin: 0 0 0.85rem;
	aspect-ratio: 4 / 3; /* Phase 26.35 — product-card thumbnails */
	overflow: hidden;
	background: var(--wre-color-light-accent, #faf7f0);
}

.wre-catalog__media a {
	display: block;
	height: 100%;
}

.wre-catalog__media img,
.wre-catalog__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wre-catalog__title {
	margin: 0;
	font-size: 21px; /* Phase 26.23.18.4 — product-card titles */
	font-weight: 600; /* Phase 26.33 — readability */
	line-height: 1.3;
	word-break: break-word;
	color: var(--wre-color-text-dark, #1a1a1a);
}

.wre-catalog__title a {
	color: inherit;
	text-decoration: none;
}

.wre-catalog__title a:hover,
.wre-catalog__title a:focus {
	text-decoration: underline;
	outline-color: var(--wre-color-focus, #c4a35a);
}

.wre-catalog__description {
	margin: 0;
	font-size: 16px;
	line-height: 1.45;
	color: var(--wre-color-text-dark, #1a1a1a);
	opacity: 0.92;
}

/*
 * Phase 26.38 — Force 16px on all nested Short Description text
 * (Oxygen Atomic / heading tags / showcase classes often set their own sizes).
 * Phase 26.37 — Light catalog cards own description color (on-black → dark).
 */
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description,
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description *,
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description .ct-text-block,
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description [class*="atomic-showcase"][class*="on-black"],
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description h1,
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description h2,
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description h3,
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description h4,
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description h5,
.wre-catalog:not(.wre-catalog--surface-dark) .wre-catalog__description h6 {
	color: var(--wre-color-text-dark, #1a1a1a) !important;
	font-size: 16px !important;
}

.wre-catalog__description *,
.wre-catalog__description h1,
.wre-catalog__description h2,
.wre-catalog__description h3,
.wre-catalog__description h4,
.wre-catalog__description h5,
.wre-catalog__description h6 {
	font-size: 16px !important;
}

/* Phase 26.36/26.38 — paragraphs; lists as plain aligned lines (no markers/indent) */
.wre-catalog__description p {
	margin: 0 0 0.5em;
}

.wre-catalog__description p:last-child {
	margin-bottom: 0;
}

.wre-catalog__description ul,
.wre-catalog__description ol {
	margin: 0.35em 0 0.5em;
	margin-left: 0;
	padding-left: 0;
	list-style: none;
	list-style-type: none;
}

.wre-catalog__description li {
	margin: 0.2em 0;
	padding: 0;
	padding-left: 0;
	margin-left: 0;
	list-style: none;
	list-style-type: none;
}

.wre-catalog__description ul:last-child,
.wre-catalog__description ol:last-child {
	margin-bottom: 0;
}

.wre-catalog__description strong,
.wre-catalog__description b {
	font-weight: 700;
}

.wre-catalog__description em,
.wre-catalog__description i {
	font-style: italic;
}

.wre-catalog__includes-label {
	margin: 0.25rem 0 0;
	font-weight: 600;
	color: var(--wre-color-primary, #c4a35a);
}

.wre-catalog__components {
	margin: 0;
	padding: 0;
	padding-left: 0;
	margin-left: 0;
	list-style: none;
	font-size: 0.9rem;
	line-height: 1.45;
	color: var(--wre-color-text-dark, #1a1a1a);
	word-break: break-word;
}

.wre-catalog__components li {
	list-style: none;
	margin: 0.2em 0;
	padding: 0;
}

.wre-catalog__price {
	margin: 0.25rem 0 0;
	font-weight: 600;
	color: var(--wre-color-text-dark, #1a1a1a);
}

.wre-catalog__price .amount,
.wre-catalog__price .woocommerce-Price-amount,
.wre-catalog__price .woocommerce-Price-currencySymbol,
.wre-catalog__price bdi {
	color: inherit;
}

.wre-catalog__per-day {
	font-weight: 500;
	color: var(--wre-color-muted, #6b6560);
}

.wre-catalog__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.65rem;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.wre-catalog__actions .wre-btn {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.45em 0.9em;
	text-decoration: none;
	border-radius: var(--wre-radius, 2px);
	background: var(--wre-color-primary, #c4a35a);
	color: var(--wre-color-button-text, #1a1a1a);
	border: 1px solid var(--wre-color-primary, #c4a35a);
	font-weight: 600;
}

.wre-catalog__actions .wre-btn--secondary {
	background: transparent;
	color: var(--wre-color-text-dark, #1a1a1a);
	border-color: var(--wre-color-primary, #c4a35a);
}

.wre-catalog__actions .wre-btn:hover {
	background: var(--wre-color-secondary, #e0c878);
	border-color: var(--wre-color-secondary, #e0c878);
	color: var(--wre-color-text-dark, #1a1a1a);
}

.wre-catalog__actions .wre-btn:focus {
	outline: 2px solid var(--wre-color-focus, #c4a35a);
	outline-offset: 2px;
}

.wre-catalog__disclaimer {
	margin: 0.85rem 0 0;
	font-size: 0.9rem;
	line-height: 1.45;
	color: var(--wre-color-muted, #6b6560);
}

@media (min-width: 768px) {
	.wre-catalog__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	/*
	 * Phase 24.78 — Single BYO catalog card: keep the section 100% wide,
	 * constrain the card to one 3-column track (gap 1rem), center it.
	 * 2+ BYO products keep the generic 3-column grid.
	 */
	.wre-catalog.wre-catalog--byo.wre-catalog--count-1 .wre-catalog__grid {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		grid-template-columns: none;
	}

	.wre-catalog.wre-catalog--byo.wre-catalog--count-1 .wre-catalog__card {
		box-sizing: border-box;
		flex: 0 0 calc((100% - 2rem) / 3);
		width: calc((100% - 2rem) / 3);
		max-width: 100%;
	}
}

@media (max-width: 767px) {
	.wre-catalog.wre-catalog--byo.wre-catalog--count-1 .wre-catalog__card {
		width: 100%;
		max-width: 100%;
		flex: none;
	}

	.wre-catalog__actions {
		flex-direction: column;
		align-items: center;
	}

	.wre-catalog__actions .wre-btn {
		width: 100%;
		max-width: 18rem;
		justify-content: center;
	}
}

/* Phase 24.16 — dark catalog surface (explicit shortcode attribute only) */

.wre-catalog.wre-catalog--surface-dark {
	color: var(--wre-color-text-light, #fff);
	background: transparent;
}

/* Rentals dark catalog (optional): keep prior gold heading accent. */
.wre-catalog.wre-catalog--rentals.wre-catalog--surface-dark .wre-catalog__heading {
	color: var(--wre-color-primary, #c4a35a);
}

/*
 * Packages dark catalog heading: white via Atomic on-black (Phase 24.32).
 * Do not force gold over atomic-secondary-heading-on-black.
 */
.wre-catalog.wre-catalog--packages.wre-catalog--surface-dark .wre-catalog__heading.atomic-secondary-heading-on-black {
	color: var(--wre-color-text-light, #fff);
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__empty,
.wre-catalog.wre-catalog--surface-dark .wre-catalog__disclaimer {
	color: var(--wre-color-text-light, #f5f0e6);
	opacity: 0.9;
	background: transparent;
	border-color: var(--wre-color-primary, #c4a35a);
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__card {
	background: var(--wre-color-dark-alt, #0f0f0f);
	border: 1px solid var(--wre-color-primary, #c4a35a);
	border-top: 3px solid var(--wre-color-primary, #c4a35a);
	color: var(--wre-color-text-light, #fff);
	box-shadow: var(--wre-shadow, 0 8px 24px rgba(0, 0, 0, 0.35));
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__media {
	background: var(--wre-color-dark, #1a1a1a);
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__title,
.wre-catalog.wre-catalog--surface-dark .wre-catalog__title a {
	color: var(--wre-color-primary, #c4a35a);
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__title a:hover,
.wre-catalog.wre-catalog--surface-dark .wre-catalog__title a:focus {
	color: var(--wre-color-primary-hover, #e0c878);
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__description,
.wre-catalog.wre-catalog--surface-dark .wre-catalog__description *,
.wre-catalog.wre-catalog--surface-dark .wre-catalog__price,
.wre-catalog.wre-catalog--surface-dark .wre-catalog__price .amount,
.wre-catalog.wre-catalog--surface-dark .wre-catalog__price .woocommerce-Price-amount,
.wre-catalog.wre-catalog--surface-dark .wre-catalog__price bdi,
.wre-catalog.wre-catalog--surface-dark .wre-catalog__components {
	color: var(--wre-color-text-light, #fff);
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__includes-label {
	color: var(--wre-color-primary, #c4a35a);
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__per-day {
	color: var(--wre-color-text-light, #f5f0e6);
	opacity: 0.75;
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__actions {
	justify-content: center;
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__actions .wre-btn {
	background: var(--wre-color-primary, #c4a35a);
	border-color: var(--wre-color-primary, #c4a35a);
	color: var(--wre-color-button-text, #1a1a1a);
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__actions .wre-btn--secondary {
	background: transparent;
	border-color: var(--wre-color-primary, #c4a35a);
	color: var(--wre-color-primary, #c4a35a);
}

.wre-catalog.wre-catalog--surface-dark .wre-catalog__actions .wre-btn:hover {
	background: var(--wre-color-secondary, #e0c878);
	border-color: var(--wre-color-secondary, #e0c878);
	color: var(--wre-color-button-text, #1a1a1a);
}
