/*
 * Palette. Surfaces are deliberately near-neutral: the previous set kept
 * canvas (#faf6f1), fields (#fffdf9) and lines (#d9cdc0) inside one warm beige
 * band, so nothing separated and the saturation read cheap. Warmth now lives
 * in the accent and the near-black browns instead.
 */
:root {
	--cl-ink: #171412;
	--cl-muted: #6b6157;
	--cl-paper: #f2eee8;
	--cl-paper-soft: #fbf9f6;
	--cl-white: #ffffff;
	--cl-line: #e6e0d8;
	--cl-accent: #8a5233;
	--cl-btn: #2c1d17;
	--cl-btn-hover: #1a110e;
	--cl-footer: #241c18;
	--cl-font: Manrope, system-ui, sans-serif;
	--cl-display: "Cormorant Garamond", Georgia, serif;
}

/*
 * Rey's generated stylesheet sets body { background: var(--body-bg-color) }
 * and loads after ours, so a plain `body` rule never took effect and the
 * canvas rendered pure white — leaving the white header, cards and inputs
 * with nothing to sit on. One extra element in the selector wins it back.
 */
html body {
	color: var(--cl-ink);
	font-family: var(--cl-font);
	background: var(--cl-paper-soft);
}

a {
	color: var(--cl-ink);
}

a:hover {
	color: var(--cl-accent);
}

/* Header / topbar */
.rey-topbar,
.rey-siteHeader-topBar,
.rey-siteHeader .rey-topBar {
	background: #f5f2ed !important;
	color: var(--cl-ink) !important;
}

.rey-siteHeader,
.rey-siteHeader-main,
.rey-header {
	background: var(--cl-white) !important;
	border-bottom: 1px solid rgba(20, 17, 15, 0.06);
}

.rey-siteHeader a,
.rey-mainMenu a,
.rey-headerNav a {
	color: var(--cl-ink) !important;
	text-transform: none;
}

/* Mega CTA is a filled button — keep white text */
.rey-siteHeader a.cl-mega__cta:not(.cl-mega__cta--ghost),
.rey-mainMenu a.cl-mega__cta:not(.cl-mega__cta--ghost),
.rey-headerNav a.cl-mega__cta:not(.cl-mega__cta--ghost),
.rey-mega-gs a.cl-mega__cta:not(.cl-mega__cta--ghost) {
	color: #fff !important;
}

/*
 * Category names: match nav sentence case.
 * Do not force uppercase on catalog titles / filter labels / subcat lists.
 * (Small eyebrow labels on covers still use uppercase in category-cover.css.)
 */
:root {
	--h-text-transform: none;
}

.woocommerce-products-header__title,
.woocommerce-loop-category__title,
.rey-categoryList .cat-item a,
.widget_product_categories a,
.wc-block-product-categories a,
.rey-filterPanel .rey-filterList a,
.rey-filterPanel .rey-filterAttributes a,
.woocommerce-widget-layered-nav a {
	text-transform: none !important;
}

.rey-mainMenu a:hover,
.rey-headerNav a:hover {
	color: var(--cl-accent) !important;
}

/*
 * UI chrome: icon/text color only — never filled brown pills.
 * Includes header icons, panel closes, filter/sort, qty controls.
 */
.rey-siteHeader .btn,
.rey-siteHeader .button,
.rey-siteHeader .rey-headerIcon-btn,
.rey-siteHeader .rey-mainNavigation-mobileBtn,
.rey-siteHeader .rey-headerSearch-toggle,
.rey-siteHeader .rey-headerCart,
.rey-siteHeader .rey-headerAccount-btn,
.rey-mobileMenu-close,
.btn.__arrClose,
.__arrClose,
.rey-sidePanel-close,
.rey-cartPanel .btn.__arrClose,
.rey-cartPanel .rey-sidePanel-close,
.rey-searchPanel .rey-sidePanel-close,
.rey-accountPanel .rey-sidePanel-close,
.btn.btn-line,
.btn.btn-line-active,
.rey-filterBtn,
.rey-filterBtn__label,
.rey-filterPanel .btn,
.rey-filter-panel .btn,
.rey-filterSidebar .btn,
.rey-filterPanel__reset,
.woocommerce-ordering,
.woocommerce-ordering select,
.woocommerce-ordering .btn,
.rey-sortBtn,
.rey-productFilters .btn,
.rey-toolbar .btn,
.rey-shopSidebar .btn,
label.btn.btn-line,
button.rey-filterBtn,
button.rey-filterBtn__label {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	color: var(--cl-ink) !important;
	border-radius: 0 !important;
}

.btn.btn-line,
.btn.btn-line-active,
.rey-filterBtn,
.rey-filterBtn__label,
label.btn.btn-line,
.woocommerce-ordering,
.woocommerce-ordering select,
.woocommerce .woocommerce-ordering,
.rey-toolbar .btn.btn-line {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	border-radius: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Kill Rey double-outline / ghost borders on filter + sort */
.rey-filterBtn__label::before,
.rey-filterBtn__label::after,
label.btn.btn-line::before,
label.btn.btn-line::after,
.btn.btn-line::before,
.btn.btn-line::after,
.woocommerce-ordering::before,
.woocommerce-ordering::after,
.rey-filterBtn::before,
.rey-filterBtn::after {
	content: none !important;
	display: none !important;
	border: 0 !important;
	box-shadow: none !important;
	background: none !important;
}

.rey-filterPanel__trigger,
.rey-filterBtn,
.woocommerce-ordering select {
	-webkit-appearance: none;
	appearance: none;
}

.rey-siteMain .rey-filterBtn__label,
.rey-siteMain label.btn.btn-line,
.rey-siteMain .btn.btn-line,
.rey-siteMain .woocommerce-ordering,
.rey-siteMain .woocommerce-ordering select {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	border-radius: 0 !important;
}

.rey-siteMain .woocommerce-ordering {
	border-inline-start: 0 !important;
	padding-inline-start: 0 !important;
}

.rey-filterGrid-header,
.rey-shopLoop-header,
.rey-filter-topBar,
.woocommerce-products-header + .rey-filterGrid,
.rey-siteMain .rey-filterBtn {
	border: 0 !important;
	box-shadow: none !important;
}

.rey-siteHeader .rey-headerIcon,
.rey-siteHeader .rey-headerIcon-btn,
.rey-siteHeader .rey-headerIcon-icon,
.rey-siteHeader .rey-mainNavigation-mobileBtn,
.rey-siteHeader .rey-headerAccount-btnText,
.btn.__arrClose,
.__arrClose,
.rey-sidePanel-close,
.btn.btn-line,
.rey-filterBtn,
.rey-filterBtn__label,
.rey-toolbar .btn,
.woocommerce-ordering select {
	color: var(--cl-ink) !important;
	font-family: var(--cl-font);
	font-weight: 600;
}

.rey-siteHeader .rey-headerIcon svg,
.rey-siteHeader .btn svg,
.btn.__arrClose svg,
.__arrClose svg,
.rey-sidePanel-close svg,
.btn.btn-line svg,
.rey-filterBtn svg,
.rey-toolbar .btn svg {
	color: inherit !important;
	fill: currentColor;
	stroke: currentColor;
}

.rey-siteHeader .rey-headerIcon-counter {
	background: var(--cl-btn) !important;
	color: #fff !important;
	border-radius: 999px !important;
}

/*
 * Mini cart drawer. Rey ships it on Bootstrap-ish defaults — #212529 checkout
 * button, #f0eeea secondary, grey uppercase item links — so the panel kept the
 * old greys while the rest of the shop moved to the brand browns.
 */
.rey-cartPanel .rey-cartPanel-title {
	font-family: var(--cl-font);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--cl-muted);
}

.rey-cartPanel .__tab.--active .rey-cartPanel-title {
	color: var(--cl-ink);
}

.rey-cartPanel .woocommerce-mini-cart li a:not(.remove) {
	font-family: var(--cl-font);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0;
	text-transform: none;
	color: var(--cl-ink);
}

.rey-cartPanel .woocommerce-mini-cart li img {
	border-radius: 10px;
}

.rey-cartPanel .rey-cartShippingBar .__bar {
	background-color: var(--cl-line) !important;
	border-radius: 999px !important;
	overflow: hidden;
}

.rey-cartPanel .rey-cartShippingBar .__bar::before {
	background-color: var(--cl-btn) !important;
	border-radius: 999px;
}

.rey-cartPanel .woocommerce-mini-cart__buttons .btn {
	border-radius: 999px !important;
	min-height: 48px;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	letter-spacing: 0.06em;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.rey-cartPanel .woocommerce-mini-cart__buttons .checkout {
	background-color: var(--cl-btn) !important;
	border: 1px solid var(--cl-btn) !important;
	color: #fff !important;
}

.rey-cartPanel .woocommerce-mini-cart__buttons .checkout:hover {
	background-color: var(--cl-btn-hover) !important;
	border-color: var(--cl-btn-hover) !important;
}

.rey-cartPanel .woocommerce-mini-cart__buttons .btn:not(.checkout) {
	background-color: transparent !important;
	border: 1px solid var(--cl-line) !important;
	color: var(--cl-ink) !important;
}

.rey-cartPanel .woocommerce-mini-cart__buttons .btn:not(.checkout):hover {
	border-color: var(--cl-btn) !important;
	background-color: var(--cl-paper) !important;
}

/* Hide header account/login — login lives in footer */
.rey-siteHeader .rey-headerAccount,
.rey-siteHeader .elementor-widget-reycore-header-account,
.rey-topbar .rey-headerAccount,
.rey-siteHeader-topBar .rey-headerAccount,
.rey-topBar .rey-headerAccount,
.rey-topbar .elementor-widget-reycore-header-account,
.rey-siteHeader-topBar .elementor-widget-reycore-header-account {
	display: none !important;
}

/* Header icons on one line with breathing room — icons column only */
.rey-siteHeader .elementor-widget-reycore-header-search,
.rey-siteHeader .elementor-widget-reycore-header-cart,
.rey-siteHeader .elementor-widget-reycore-header-account {
	flex: 0 0 auto !important;
}

.rey-siteHeader .rey-headerIcon {
	--hi-m: 0 !important;
	margin-inline: 0 !important;
	flex: 0 0 auto;
}

.rey-siteHeader .elementor-widget-reycore-header-search .elementor-widget-container,
.rey-siteHeader .elementor-widget-reycore-header-cart .elementor-widget-container {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.rey-siteHeader .rey-headerIcon-btn,
.rey-siteHeader .rey-mainNavigation-mobileBtn {
	min-width: 1.75rem;
	min-height: 1.75rem;
	align-items: center;
	justify-content: center;
	padding: 0.15rem !important;
}

@media (max-width: 767px) {
	.rey-siteHeader .rey-headerIcon-btn {
		min-width: 2rem;
		min-height: 2rem;
	}
}

/* Quantity: restore visible controls (Rey uses flex-basis:0 on .quantity) */
.rey-cartBtnQty div.quantity,
form.cart div.quantity,
.woocommerce form.cart .quantity {
	flex: 0 0 auto !important;
	flex-basis: auto !important;
	width: auto !important;
	min-width: 7.5rem !important;
	overflow: visible !important;
	border: 0 !important;
	background: transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.rey-qtyField,
.rey-cartBtnQty .rey-qtyField,
.cartBtnQty-controls {
	position: relative;
	display: block;
	min-width: 7.5rem;
	border: 1px solid rgba(20, 17, 15, 0.18) !important;
	border-radius: 8px !important;
	background: var(--cl-white) !important;
	box-shadow: none !important;
	outline: none !important;
	overflow: visible !important;
}

.rey-qtyField .qty,
.rey-qtyField .input-text,
.rey-qtyField input.qty,
.quantity .qty,
.quantity .input-text,
.cartBtnQty-controls .qty,
.cartBtnQty-controls input {
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	background: transparent !important;
	min-width: 5rem !important;
	color: var(--cl-ink) !important;
}

.rey-qtyField .cartBtnQty-control,
.cartBtnQty-controls .cartBtnQty-control,
.quantity .minus,
.quantity .plus {
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--cl-ink) !important;
	box-shadow: none !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.rey-qtyField .cartBtnQty-control svg,
.cartBtnQty-controls .cartBtnQty-control svg {
	fill: currentColor;
	color: var(--cl-ink);
}

/* Primary CTAs only — filled brown pills */
.single_add_to_cart_button,
.checkout-button,
.woocommerce-Button.button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #place_order,
.woocommerce #respond input#submit.alt,
.wp-element-button,
.added_to_cart,
a.checkout-button.button.alt,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-form-login__submit,
.woocommerce-form-register__submit,
.cl-btn:not(.alt) {
	background: var(--cl-btn) !important;
	border-color: var(--cl-btn) !important;
	color: #fff !important;
	border-radius: 999px !important;
	font-family: var(--cl-font) !important;
	font-weight: 700 !important;
	box-shadow: none !important;
}

.single_add_to_cart_button:hover,
.checkout-button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce #place_order:hover,
.cl-btn:not(.alt):hover {
	background: var(--cl-btn-hover) !important;
	border-color: var(--cl-btn-hover) !important;
	color: #fff !important;
}

/* Loop / secondary Woo buttons: outline, not solid brown */
.woocommerce ul.products a.button,
.woocommerce a.button:not(.alt):not(.checkout-button),
.woocommerce button.button:not(.alt):not(.single_add_to_cart_button):not([name="add-to-cart"]),
.btn--line,
.rey-btn--line,
.button.outline,
.cl-btn.alt {
	background: transparent !important;
	color: var(--cl-btn) !important;
	border: 1px solid var(--cl-line) !important;
	border-radius: 999px !important;
	font-family: var(--cl-font) !important;
	font-weight: 700 !important;
	box-shadow: none !important;
}

.woocommerce a.button:not(.alt):not(.add_to_cart_button):hover,
.cl-btn.alt:hover {
	border-color: var(--cl-btn) !important;
	color: var(--cl-btn) !important;
	background: transparent !important;
}

/*
 * Product card button ("Se vare" / "Tilføj til kurv").
 * Rey ships it as .rey-btn--under (no padding + ::after underline bar); our pill
 * border above turned that into a box hugging the text with a line through it.
 */
.woocommerce ul.products .button,
li.product .rey-productFooter-inner .button {
	padding: 0.7em 1.2rem !important;
	line-height: 1.15 !important;
	letter-spacing: 0.06em !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.woocommerce ul.products .button::after,
li.product .rey-productFooter-inner .button::after {
	content: none !important;
}

.woocommerce ul.products .button:hover,
.woocommerce ul.products .button:focus-visible,
li.product .rey-productFooter-inner .button:hover,
li.product .rey-productFooter-inner .button:focus-visible {
	background: var(--cl-btn) !important;
	border-color: var(--cl-btn) !important;
	color: #fff !important;
}

/*
 * Product page section titles ("Beskrivelse", "Information").
 * Elementor kit renders them at 39px/700, so they compete with the product
 * title and the description's own headline. Demote to a section label,
 * matching the "Relaterede varer" eyebrow.
 */
.rey-wcPanel-inner > h2,
.rey-wcPanel-inner > h3,
.related.products > h2,
.upsells.products > h2 {
	font-family: var(--cl-font) !important;
	font-size: 0.8125rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase;
	color: var(--cl-muted) !important;
	margin-bottom: 1.15rem !important;
}

/* Headings */
h1, h2, h3,
.rey-pageTitle,
.product_title,
.woocommerce-loop-product__title {
	font-family: var(--cl-display);
	color: var(--cl-ink);
	font-weight: 500;
}

/* Footer headings must stay light on dark */
.cl-site-footer h1,
.cl-site-footer h2,
.cl-site-footer h3,
.cl-site-footer__col h3 {
	color: #fff !important;
}

/* Prices */
.price,
.woocommerce-Price-amount,
.amount {
	color: var(--cl-ink) !important;
	font-weight: 700;
}

/* Cards / product grids */
.woocommerce ul.products li.product,
.rey-productThumbnail,
.rey-productItem {
	border-radius: 14px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link,
.rey-productItem-link {
	color: var(--cl-ink);
}

/* Forms — exclude qty inputs (handled above with thin field chrome) */
input[type="text"]:not(.qty),
input[type="email"],
input[type="search"],
input[type="tel"],
input[type="password"],
textarea,
select:not(.orderby),
.input-text:not(.qty) {
	border-color: var(--cl-line) !important;
	border-radius: 10px !important;
	background: var(--cl-white) !important;
}

input:focus,
textarea:focus,
select:focus {
	border-color: var(--cl-accent) !important;
	outline-color: var(--cl-accent);
}

input[type="text"]:not(.qty),
input[type="email"],
input[type="search"],
input[type="tel"],
input[type="password"],
textarea,
select:not(.orderby),
.input-text:not(.qty) {
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

input:focus-visible,
textarea:focus-visible,
select:focus-visible {
	outline: none;
	box-shadow: 0 0 0 3px rgba(138, 82, 51, 0.16);
}

::placeholder {
	color: rgba(107, 97, 87, 0.6);
}

/*
 * Custom checkboxes/radios. Scoped to plain form rows — PEWC colour swatches
 * hide their own radios, so they must not pick up a box.
 */
.pewc-group-checkbox input[type="checkbox"],
.pewc-group-checkboxes input[type="checkbox"],
.pewc-group-radio input[type="radio"],
.woocommerce-form input[type="checkbox"],
.woocommerce form .form-row input[type="checkbox"],
#commentform input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	display: inline-block;
	width: 1.15rem !important;
	height: 1.15rem !important;
	flex: 0 0 auto;
	margin-right: 0.15rem;
	border: 1px solid var(--cl-line);
	border-radius: 0.35rem;
	background-color: var(--cl-white);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 0.7rem;
	vertical-align: -0.2rem;
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}

/* PEWC product extras with .pewc-theme-element keep their own checkbox UI. */
.single-product .pewc-item-checkbox .pewc-checkbox-form-label input[type="checkbox"] {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: block !important;
	position: absolute !important;
	opacity: 0 !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	border: 0 !important;
	background: none !important;
	pointer-events: none;
}

.pewc-group-radio input[type="radio"] {
	border-radius: 50%;
}

.pewc-group-checkbox input[type="checkbox"]:checked,
.pewc-group-checkboxes input[type="checkbox"]:checked,
.woocommerce-form input[type="checkbox"]:checked,
.woocommerce form .form-row input[type="checkbox"]:checked,
#commentform input[type="checkbox"]:checked {
	border-color: var(--cl-btn);
	background-color: var(--cl-btn);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5l3.5 3.5L13 4.5'/%3E%3C/svg%3E");
}

.pewc-group-radio input[type="radio"]:checked {
	border-color: var(--cl-btn);
	background-color: var(--cl-btn);
	box-shadow: inset 0 0 0 3px var(--cl-white);
}

.pewc-group-checkbox input[type="checkbox"]:hover,
.pewc-group-checkboxes input[type="checkbox"]:hover,
.pewc-group-radio input[type="radio"]:hover {
	border-color: var(--cl-btn);
}

/*
 * Account page on phones. Rey's Elementor page template zeroes the site
 * container's padding, and Woo's account markup brings no gutter of its own —
 * so the login form ran flush to both screen edges while the page title, which
 * sits in its own row, kept its 15px. Cart/checkout already have theirs.
 */
@media (max-width: 1024px) {
	.woocommerce-account .rey-siteContainer .woocommerce {
		padding-inline: 15px;
	}
}

/* Larger hit area on touch without changing the visual box. */
@media (max-width: 1024px) {
	.pewc-group-checkbox .pewc-checkbox-form-label,
	.pewc-group-checkboxes label {
		display: inline-flex;
		align-items: center;
		gap: 0.55rem;
		min-height: 2.75rem;
	}
}

/* Badges / sale */
.onsale,
.rey-productBadge,
span.onsale {
	background: var(--cl-accent) !important;
	color: #fff !important;
	border-radius: 999px !important;
}

/* Breadcrumbs / muted */
.woocommerce-breadcrumb,
.rey-breadcrumbs,
.posted_in,
.tagged_as {
	color: var(--cl-muted);
}

/* Shop page soft paper feel */
.woocommerce-page .site-content,
.post-type-archive-product .site-content,
.tax-product_cat .site-content,
.single-product .site-content {
	background: transparent;
}

/* Footer host stays clean */
.rey-siteFooter {
	background: transparent !important;
	border: 0 !important;
}

/*
 * Theme ships hyphens:auto + word-break:break-word on headings, which splits
 * Danish compounds mid-word on narrow columns ("stjerne-tegn og navn").
 */
h1, h2, h3, h4, h5, h6 {
	hyphens: manual;
	word-break: normal;
	overflow-wrap: break-word;
}

@media (max-width: 720px) {
	/* Description content uses desktop sizes: h2 and h3 both landed at ~31px. */
	.rey-prodDescToggle h2 {
		font-size: 1.5rem !important;
		line-height: 1.25 !important;
	}

	.rey-prodDescToggle h3 {
		font-size: 1.25rem !important;
		line-height: 1.3 !important;
	}

	.rey-prodDescToggle h4 {
		font-size: 1.0625rem !important;
		line-height: 1.35 !important;
	}
}

/*
 * Desktop breathing room. The site container ships with a 15px gutter, so
 * content sat almost flush against the viewport edges on laptops.
 * Landing/brand pages run full-bleed sections and keep their own gutter.
 */
/*
 * Tablet only (721–1024). Rey uses the phone layout here: two oversized
 * shop cards and a stacked product page. Phones (≤720) and desktop (≥1025)
 * are unchanged. Lives in this already-loaded file — no extra request.
 */
@media (min-width: 721px) and (max-width: 1024px) {
	body.woocommerce-shop .rey-siteContainer,
	body.post-type-archive-product .rey-siteContainer,
	body.tax-product_cat .rey-siteContainer,
	body.tax-product_tag .rey-siteContainer,
	body.search.woocommerce .rey-siteContainer,
	body.single-product .rey-siteContainer {
		padding-inline: 1.75rem;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 1.25rem 1rem !important;
	}

	.woocommerce ul.products li.product {
		width: auto !important;
		max-width: none !important;
		float: none !important;
		margin: 0 !important;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 0.95rem;
		line-height: 1.3;
	}

	.single-product div.product .rey-productSummary {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
		gap: 1.35rem !important;
	}

	.single-product div.product .rey-productSummary > .woocommerce-product-gallery,
	.single-product div.product .rey-productSummary > .rey-wcGallery {
		flex: 0 0 48% !important;
		max-width: 48% !important;
		width: 48% !important;
	}

	.single-product div.product .rey-productSummary > div.summary {
		flex: 1 1 0 !important;
		max-width: 50% !important;
		width: auto !important;
		padding-top: 0 !important;
	}

	.single-product .product_title.entry-title {
		font-size: clamp(1.55rem, 3.2vw, 2.05rem) !important;
		line-height: 1.15 !important;
	}
}

@media (min-width: 1025px) {
	body:not(.cl-staging):not(.cl-page) .rey-siteContainer {
		padding-inline: 2.5rem;
	}

	/* Gallery 57% / summary 36% left a 7% trench between the columns. */
	div.product .rey-productSummary > .woocommerce-product-gallery,
	div.product .rey-productSummary > .rey-wcGallery {
		flex: 0 0 56% !important;
		max-width: 56% !important;
	}

	div.product .rey-productSummary > div.summary {
		flex: 0 0 40% !important;
		max-width: 40% !important;
	}
}
