/**
 * PentalQuartz product-line landing + palette intro
 */

/* Shared PQ microsite chrome (landing / palette / about / collection / single / dealer / contact / docs) */
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) #back-to-top {
	background: #373737 !important;
	background-color: #373737 !important;
}

body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .favorites_toggler,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .favorites_widget .favorites_toggler {
	background-color: #373737 !important;
	background: #373737 !important;
}

body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .favorites_widget .favorites_count,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .favorites_widget #favorites_count_num {
	color: #ffffff !important;
}

body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .favorites_widget a,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .favorites_content a {
	color: #1c1b18;
}

body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .favorites_content > h4 {
	color: #1c1b18 !important;
}

body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .favorites_content .fav-button,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .favorites_content .fav-button h4 {
	background: #373737 !important;
	background-color: #373737 !important;
	color: #ffffff !important;
}

body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .page-footer,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .experience-center,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .experience-center-mini,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .experience-center-full {
	background-color: #373737 !important;
	background-image: url("/wp-content/themes/asg/images/footer-pq.webp") !important;
	background-size: cover !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
}

body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .experience-close svg {
	background: #2b2e2fdb !important;
}

body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .skip-main,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) #header-floating,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) #header-floating.is-visible,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) .logo-floating {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
	opacity: 0 !important;
}

body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page).pq-micro-nav-active .page_header_desktop,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page).pq-micro-nav-active .header_mobile,
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page).pq-micro-nav-active .flag-info,
body.pq-landing-page.pq-micro-nav-active .pq-intro,
body.pq-palette-page.pq-micro-nav-active .pq-intro,
body.pq-collection-page.pq-micro-nav-active .pq-intro {
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/* ---------- Microsite floating header (shows on scroll) ---------- */
body:is(.pq-landing-page, .pq-palette-page, .pq-about-page, .pq-collection-page, .pq-single-page, .pq-dealer-page, .pq-contact-page, .pq-docs-page) {
	--pq-mh-height: 4.25rem;
}

.pq-micro-header {
	--pq-mh-fg: #ffffff;
	--pq-mh-bg: var(--pq-ink, #373737);
	--pq-mh-height: 4.25rem;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 10050;
	font-family: "gotham", "Gotham", "Nunito Sans", "Helvetica Neue", Arial, sans-serif;
	color: var(--pq-mh-fg);
	background: var(--pq-mh-bg);
	backdrop-filter: blur(12px);
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.18);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-100%);
	pointer-events: none;
	transition: opacity 0.35s ease, visibility 0.35s ease, transform 0.35s ease,
		background 0.35s ease, color 0.35s ease, box-shadow 0.35s ease;
}

body.admin-bar .pq-micro-header {
	top: var(--wp-admin--admin-bar--height, 32px);
}

@media (max-width: 900px) {
	body.admin-bar .pq-micro-header {
		top: 0;
	}
}

.pq-micro-header.is-visible,
.pq-micro-header.is-open {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.pq-micro-header.is-solid,
.pq-micro-header.is-open {
	--pq-mh-fg: #ffffff;
	--pq-mh-bg: var(--pq-ink, #373737);
}

.pq-micro-header__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	width: min(100% - 2rem, 1240px);
	margin-inline: auto;
	min-height: var(--pq-mh-height);
	padding: 0.75rem 0;
}

.pq-micro-header__logo {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	line-height: 0;
	overflow: hidden;
}

.pq-micro-header__logo-img,
.pq-micro-header__logo img {
	display: block;
	width: auto;
	height: 28px;
	max-width: 168px;
}

.pq-micro-header__nav {
	display: flex;
	align-items: center;
	min-height: 2.75rem;
}

.pq-micro-header__nav ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 0.15rem 1.15rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pq-micro-header__nav li {
	display: flex;
	align-items: center;
}

.pq-micro-header__nav a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.4rem;
	color: inherit;
	font-size: 0.72rem;
	letter-spacing: 0.12em;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
	opacity: 0.88;
	transition: opacity 0.25s ease;
}

.pq-micro-header__nav a:hover {
	opacity: 1;
}

.pq-micro-header__cta,
.pq-micro-header__nav .is-cta > a {
	padding: 0 1rem;
	border: 1px solid currentColor;
	opacity: 1 !important;
}

.pq-micro-header__toggle {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 6px;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	border: 0 !important;
	border-bottom: 0 !important;
	background: var(--pq-red, #e31f2f);
	background-image: none;
	box-shadow: none !important;
	color: #ffffff;
	text-decoration: none !important;
	-webkit-appearance: none;
	appearance: none;
	overflow: hidden;
	cursor: pointer;
}

.pq-micro-header__toggle span {
	display: block;
	width: 1.35rem;
	height: 1.5px;
	margin-inline: auto;
	background: #ffffff;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.pq-micro-header.is-open .pq-micro-header__toggle span:first-child {
	transform: translateY(3.75px) rotate(45deg);
}

.pq-micro-header.is-open .pq-micro-header__toggle span:last-child {
	transform: translateY(-3.75px) rotate(-45deg);
}

.pq-micro-header__drawer {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	background: var(--pq-ink, #373737);
	color: #ffffff;
}

.pq-micro-header__drawer[hidden] {
	display: none !important;
}

.pq-micro-header__drawer ul {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0.5rem 0 1rem;
	list-style: none;
}

.pq-micro-header__drawer a {
	display: block;
	padding: 0.95rem 1.25rem;
	color: inherit;
	font-size: 0.8rem;
	letter-spacing: 0.14em;
	text-decoration: none;
	text-transform: uppercase;
}

@media (max-width: 900px) {
	.pq-micro-header__nav {
		display: none;
	}

	.pq-micro-header__toggle {
		display: flex;
	}
}

@media (max-width: 720px) {
	.pq-hide-on-mobile {
		display: none !important;
	}
}

.pq-lp,
.pq-lp * {
	box-sizing: border-box;
}

.pq-lp {
	--pq-sand: #cccbbc;
	--pq-ink: #373737;
	--pq-ink-soft: rgba(55, 55, 55, 0.72);
	--pq-brand: #e31f2f;
	--pq-brand-hover: #c91a28;
	--pq-red: #e31f2f;
	--pq-text: #1c1b18;
	--pq-text-soft: rgba(28, 27, 24, 0.72);
	--pq-cream: #f7f6f1;
	--pq-white: #ffffff;
	--pq-line: rgba(28, 27, 24, 0.18);
	--pq-font-display: "Playfair Display", Georgia, "Times New Roman", serif;
	--pq-font-body: "Cormorant Infant", Georgia, "Times New Roman", serif;
	--pq-font-ui: "gotham", "Gotham", "Nunito Sans", "Helvetica Neue", Arial, sans-serif;
	--pq-max: 1240px;
	--pq-ease: cubic-bezier(0.22, 1, 0.36, 1);
	color: var(--pq-text);
	font-family: var(--pq-font-body);
	font-weight: 300;
	font-size: 1.125rem;
	line-height: 1.65;
	background: var(--pq-sand);
	overflow: clip;
	/* Theme sets body { text-align: center } — reset for left-aligned layouts */
	text-align: left;
}

.pq-lp h1,
.pq-lp h2,
.pq-lp h3,
.pq-lp p,
.pq-lp li,
.pq-lp .pq-lp__label,
.pq-lp .pq-lp__brand {
	text-align: inherit;
}

/*
 * Theme globals (h1–h3 / p → Nunito + Libre + #282828) beat inheritance.
 * Do not set color:inherit on buttons — that overrode solid/ink button text colors.
 */
.pq-lp h1,
.pq-lp h2,
.pq-lp h3 {
	font-family: var(--pq-font-display) !important;
	font-weight: 400;
	letter-spacing: -0.01em;
	color: inherit;
}

.pq-lp .pq-lp__label,
.pq-lp .pq-lp__brand,
.pq-lp .pq-lp__btn,
.pq-lp .pq-lp__cat h3 {
	font-family: var(--pq-font-ui) !important;
	font-weight: 400;
	letter-spacing: 0.01em;
}

.pq-lp .pq-lp__label,
.pq-lp .pq-lp__brand {
	color: inherit;
}

.pq-lp p,
.pq-lp li,
.pq-lp .pq-lp__body,
.pq-lp .pq-lp__lede,
.pq-lp .pq-lp__highlights li,
.pq-lp details p,
.pq-lp .pq-lp__cat p {
	font-family: var(--pq-font-body) !important;
	font-weight: 300;
	color: inherit;
}

.pq-lp a:not(.pq-lp__btn) {
	color: inherit;
	text-decoration: none;
}

.pq-lp a.pq-lp__btn {
	text-decoration: none;
}

.pq-lp__wrap {
	width: min(100% - 3rem, var(--pq-max));
	margin-inline: auto;
}

@media (max-width: 720px) {
	.pq-lp__wrap {
		width: min(100% - 2rem, var(--pq-max));
	}
}

/* ---------- Buttons ---------- */
.pq-lp__btns {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1rem;
	margin-top: 2rem;
}

.pq-lp__btn {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	min-height: 3rem;
	padding: 0.85rem 1.35rem;
	border: 1px solid transparent;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.8125rem;
	line-height: 1;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	transition: background 0.35s var(--pq-ease), color 0.35s var(--pq-ease),
		border-color 0.35s var(--pq-ease), transform 0.35s var(--pq-ease);
}

.pq-lp__btn span[aria-hidden="true"] {
	display: inline-grid;
	place-items: center;
	width: 1.35rem;
	height: 1.35rem;
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: 0.7rem;
	transition: transform 0.35s var(--pq-ease);
}

.pq-lp__btn:hover {
	transform: translateY(-1px);
}

.pq-lp__btn:hover span[aria-hidden="true"] {
	transform: translateX(2px);
}

.pq-lp a.pq-lp__btn--solid,
.pq-lp__btn--solid {
	background: var(--pq-brand);
	border-color: var(--pq-brand);
	color: var(--pq-white) !important;
}

.pq-lp a.pq-lp__btn--solid:hover,
.pq-lp__btn--solid:hover {
	background: var(--pq-brand-hover);
	border-color: var(--pq-brand-hover);
	color: var(--pq-white) !important;
}

.pq-lp a.pq-lp__btn--ghost,
.pq-lp__btn--ghost {
	background: transparent;
	border-color: var(--pq-cream);
	color: var(--pq-cream) !important;
}

.pq-lp a.pq-lp__btn--ghost:hover,
.pq-lp__btn--ghost:hover {
	background: rgba(255, 255, 255, 0.12);
	color: var(--pq-cream) !important;
}

.pq-lp a.pq-lp__btn--ink,
.pq-lp__btn--ink {
	background: var(--pq-brand);
	border-color: var(--pq-brand);
	color: var(--pq-white) !important;
}

.pq-lp a.pq-lp__btn--ink:hover,
.pq-lp__btn--ink:hover {
	background: var(--pq-brand-hover);
	border-color: var(--pq-brand-hover);
	color: var(--pq-white) !important;
}

.pq-lp a.pq-lp__btn--ink-ghost,
.pq-lp__btn--ink-ghost {
	background: transparent;
	border-color: var(--pq-brand);
	color: var(--pq-text) !important;
}

.pq-lp a.pq-lp__btn--ink-ghost:hover,
.pq-lp__btn--ink-ghost:hover {
	background: rgba(227, 31, 47, 0.06);
	border-color: var(--pq-brand);
	color: var(--pq-text) !important;
}

/* ---------- Motion ---------- */
/* Hidden only after JS adds .pq-lp--motion — keeps Elementor editor + no-JS readable */
.pq-lp.pq-lp--motion [data-pq-reveal],
.pq-lp.pq-lp--motion .pq-reveal {
	opacity: 0;
	transform: translateY(1.25rem);
	transition: opacity 0.9s var(--pq-ease), transform 0.9s var(--pq-ease);
}

.pq-lp.pq-lp--motion [data-pq-reveal].is-in,
.pq-lp.pq-lp--motion .pq-reveal.is-in {
	opacity: 1;
	transform: none;
}

.pq-lp.pq-lp--motion [data-pq-reveal="2"],
.pq-lp.pq-lp--motion .pq-reveal--2 {
	transition-delay: 0.12s;
}

.pq-lp.pq-lp--motion [data-pq-reveal="3"],
.pq-lp.pq-lp--motion .pq-reveal--3 {
	transition-delay: 0.24s;
}

.elementor-editor-active .pq-lp [data-pq-reveal],
.elementor-editor-active .pq-lp .pq-reveal,
.elementor-editor-preview .pq-lp [data-pq-reveal],
.elementor-editor-preview .pq-lp .pq-reveal {
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}

@media (prefers-reduced-motion: reduce) {
	.pq-lp [data-pq-reveal],
	.pq-lp .pq-reveal,
	.pq-lp__btn,
	.pq-lp__btn span[aria-hidden="true"],
	.pq-lp__insp-track {
		transition: none !important;
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.pq-lp__insp-viewport {
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch;
	}
}

/* ---------- Hero ---------- */
.pq-lp__hero,
.pq-lp .pq-lp__hero.e-con {
	position: relative;
	isolation: isolate;
	--min-height: 725px;
	min-height: 725px;
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-end;
	align-items: stretch;
	color: var(--pq-cream);
	background: #2a2926 center / cover no-repeat;
}

.pq-lp__hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		linear-gradient(
			105deg,
			rgba(18, 17, 15, 0.78) 0%,
			rgba(18, 17, 15, 0.42) 42%,
			rgba(18, 17, 15, 0.12) 68%,
			rgba(18, 17, 15, 0.2) 100%
		),
		linear-gradient(to top, rgba(18, 17, 15, 0.55) 0%, transparent 42%);
	pointer-events: none;
}

.pq-lp__hero-inner,
.pq-lp .pq-lp__hero-inner.e-con {
	position: relative;
	z-index: 1;
	padding: clamp(7.5rem, 14vh, 10rem) 0 clamp(3.5rem, 7vh, 5.5rem);
	max-width: 54rem;
	width: 100%;
	text-align: left;
	align-self: flex-start;
}

.pq-lp__hero-inner h1,
.pq-lp__hero-inner p,
.pq-lp__hero-inner .pq-lp__brand,
.pq-lp__hero-inner .pq-lp__lede,
.pq-lp__hero-inner .pq-lp__body {
	text-align: left;
}

.pq-lp__hero-inner .pq-lp__btns {
	justify-content: flex-start;
}

.pq-lp__brand {
	margin: 0 0 1.25rem;
	font-size: clamp(0.95rem, 1.4vw, 1.125rem);
	letter-spacing: 0.22em;
	text-transform: uppercase;
	opacity: 0.92;
}

.pq-lp__brand:has(.pq-lp__brand-logo) {
	letter-spacing: 0;
	text-transform: none;
	opacity: 1;
}

.pq-lp__brand-logo {
	display: block;
	width: clamp(11.5rem, 22vw, 15.5rem);
	height: auto;
}

.pq-lp__hero h1,
.pq-lp__hero .pq-lp__brand,
.pq-lp__hero-inner h1,
.pq-lp__hero-inner .pq-lp__brand {
	margin: 0;
	color: var(--pq-cream) !important;
}

.pq-lp__hero h1,
.pq-lp__hero-inner h1,
.pq-lp__hero-inner h1.elementor-heading-title {
	font-size: clamp(2.35rem, 5.2vw, 4.25rem);
	line-height: 1.05;
	letter-spacing: -0.02em;
	font-weight: 400;
}

.pq-lp__hero .pq-lp__brand {
	margin-bottom: 1.25rem;
}

.pq-lp__lede {
	margin: 1.35rem 0 0;
	max-width: 32rem;
	font-size: clamp(1.2rem, 2vw, 1.45rem);
	line-height: 1.45;
	color: rgba(247, 246, 241, 0.9) !important;
}

.pq-lp__hero .pq-lp__body {
	margin-top: 1.1rem;
	max-width: 30rem;
	font-size: 1.05rem;
	color: rgba(247, 246, 241, 0.78) !important;
}

@media (max-width: 720px) {
	.pq-lp__hero {
		min-height: 88vh;
		align-items: end;
		background-position: 62% center;
	}

	.pq-lp__hero::before {
		background:
			linear-gradient(
				to top,
				rgba(18, 17, 15, 0.88) 0%,
				rgba(18, 17, 15, 0.55) 45%,
				rgba(18, 17, 15, 0.28) 100%
			);
	}

	.pq-lp__hero-inner,
	.pq-lp .pq-lp__hero-inner.e-con,
	.vsc-content .pq-lp__hero-inner.e-con {
		max-width: 100%;
		width: auto !important;
		margin-left: 1.15rem !important;
		margin-right: 2.75rem !important;
		padding-top: 7rem;
		padding-right: 0.35rem !important;
		padding-inline-end: 0.35rem !important;
		box-sizing: border-box;
	}

	.pq-lp__hero h1,
	.pq-lp__hero h1.elementor-heading-title,
	.pq-lp__hero-inner h1,
	.pq-lp__hero-inner h1.elementor-heading-title {
		font-size: 2rem !important;
		line-height: 1.1 !important;
	}

	.pq-lp__hero .pq-lp__lede,
	.pq-lp__hero-inner .pq-lp__lede {
		font-size: 1.05rem !important;
		line-height: 1.4;
		max-width: 20.5rem;
	}
}

/* ---------- Surfaces ---------- */
.pq-lp__surface--white {
	background: #ffffff;
	color: var(--pq-text);
}

.pq-lp__surface--sand {
	background: var(--pq-sand);
	color: var(--pq-text);
}

.pq-lp__surface--cream {
	background: var(--pq-cream);
	color: var(--pq-text);
}

.pq-lp__lede-ink {
	margin: 1.1rem 0 0;
	max-width: 28rem;
	font-family: var(--pq-font-body) !important;
	font-size: clamp(1.35rem, 2.2vw, 1.7rem);
	font-weight: 300;
	line-height: 1.35;
	color: var(--pq-text) !important;
}

.pq-lp__label {
	margin: 0 0 1rem;
	font-size: 0.75rem;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	opacity: 0.7;
}

.pq-lp__highlights {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--pq-line);
}

.pq-lp__highlights li {
	padding: 1.15rem 0;
	border-bottom: 1px solid var(--pq-line);
	font-family: var(--pq-font-body);
	font-size: clamp(1.35rem, 2vw, 1.75rem);
	line-height: 1.25;
	font-weight: 300;
}

/* ---------- Intro: considered collection (Essentials-style) ---------- */
.pq-lp__intro,
.pq-lp__library {
	padding: clamp(4.75rem, 10vw, 7.5rem) 0;
	text-align: left;
	background: var(--pq-cream);
	color: var(--pq-text);
}

.pq-lp__intro {
	padding-top: clamp(2.75rem, 5.5vw, 4rem);
}

/* PHP markup keeps a CSS grid split. Elementor containers use flex/grid from the editor. */
.pq-lp__intro-split:not(.e-con) {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	gap: clamp(2rem, 5vw, 4.5rem);
	align-items: center;
	width: min(100% - 3rem, var(--pq-max));
	max-width: var(--pq-max);
	margin-inline: auto;
}

.pq-lp .pq-lp__intro-split.e-con,
.pq-lp .e-con.pq-lp__intro-split {
	width: min(100% - 3rem, var(--pq-max)) !important;
	max-width: var(--pq-max) !important;
	margin-inline: auto !important;
}

.pq-lp .pq-lp__intro-split.e-con > .e-con,
.pq-lp .pq-lp__intro-split.e-con > .e-con-inner > .e-con {
	min-width: 0;
	max-width: 100%;
	flex: 1 1 0;
}

.pq-lp__intro-copy {
	max-width: 34rem;
	width: 100%;
}

.pq-lp__intro-split > .pq-lp__intro-copy,
.pq-lp .pq-lp__intro-split.e-con > .pq-lp__intro-copy {
	max-width: none;
}

.pq-lp__intro-split > .pq-lp__intro-copy > :not(.pq-lp__color-strip),
.pq-lp .pq-lp__intro-split.e-con > .pq-lp__intro-copy > .elementor-widget:not(:has(.pq-lp__color-strip)) {
	max-width: 34rem;
}

.pq-lp__intro-inner,
.pq-lp .pq-lp__intro-inner.e-con {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;
	max-width: 52rem;
	width: min(100% - 3rem, var(--pq-max)) !important;
	margin-inline: auto !important;
}

.pq-lp__intro .pq-lp__label {
	margin: 0 0 0.85rem !important;
	opacity: 0.62;
}

.pq-lp__intro h2,
.pq-lp__intro h2.elementor-heading-title {
	margin: 0 !important;
	max-width: 20ch;
	font-size: clamp(2.2rem, 4.4vw, 3.0rem);
	line-height: 1.05;
	letter-spacing: -0.025em;
	font-weight: 400;
}

.pq-lp__intro .pq-lp__body {
	margin: 1.35rem 0 0 !important;
	max-width: 34rem;
	font-size: clamp(1.15rem, 1.6vw, 1.35rem);
	line-height: 1.55;
	color: var(--pq-text-soft);
}

.pq-lp__color-strip {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
	gap: 0.45rem;
	margin: 1rem 0 0;
	padding: 0 0 2.75rem;
	width: 100%;
	max-width: none;
}

.pq-lp__color-strip-tile {
	position: relative;
	display: block;
	min-width: 0;
	color: var(--pq-text, #1c1b18);
	text-decoration: none !important;
}

.pq-lp__color-strip-media {
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	background: #b7b6a8;
	transition: transform 0.45s var(--pq-ease, ease), box-shadow 0.45s var(--pq-ease, ease);
}

.pq-lp__color-strip-img,
.pq-lp__color-strip img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.8s var(--pq-ease, ease);
}

.pq-lp__color-strip-name {
	position: absolute;
	left: 0.2rem;
	right: 0.2rem;
	top: calc(100% + 0.4rem);
	z-index: 2;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	margin: 0;
	padding: 0;
	font-family: var(--pq-font-ui, "gotham", "Gotham", "Nunito Sans", sans-serif);
	font-size: 0.62rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.25;
	text-align: center;
	text-transform: uppercase;
	color: var(--pq-text, #1c1b18);
	opacity: 0;
	transform: translateY(0.2rem);
	pointer-events: none;
	transition: opacity 0.35s var(--pq-ease, ease), transform 0.35s var(--pq-ease, ease);
}

.pq-lp__color-strip-tile:hover .pq-lp__color-strip-media,
.pq-lp__color-strip-tile:focus-visible .pq-lp__color-strip-media {
	transform: translateY(-3px);
	box-shadow: 0 10px 22px rgba(28, 27, 24, 0.18);
}

.pq-lp__color-strip-tile:hover img,
.pq-lp__color-strip-tile:focus-visible img {
	transform: scale(1.08);
}

.pq-lp__color-strip-tile:hover .pq-lp__color-strip-name,
.pq-lp__color-strip-tile:focus-visible .pq-lp__color-strip-name {
	opacity: 1;
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	.pq-lp__color-strip-media,
	.pq-lp__color-strip-img,
	.pq-lp__color-strip img,
	.pq-lp__color-strip-name {
		transition: none;
	}

	.pq-lp__color-strip-tile:hover .pq-lp__color-strip-media,
	.pq-lp__color-strip-tile:focus-visible .pq-lp__color-strip-media,
	.pq-lp__color-strip-tile:hover img,
	.pq-lp__color-strip-tile:focus-visible img {
		transform: none;
	}
}

.pq-lp__pillars {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid rgba(28, 27, 24, 0.12);
	border-bottom: 1px solid rgba(28, 27, 24, 0.12);
}

.pq-lp__pillar {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 0.3rem;
	padding: 1.1rem 0.7rem 1.15rem;
	text-align: center;
	border-right: 1px solid rgba(28, 27, 24, 0.12);
}

.pq-lp__pillar:last-child {
	border-right: 0;
}

.pq-lp__pillar-icon {
	display: grid;
	place-items: center;
	width: 2.75rem;
	height: 2.75rem;
	color: var(--pq-red, var(--pq-brand, #e31f2f));
}

.pq-lp__pillar-icon svg {
	display: block;
	width: 2.35rem;
	height: 2.35rem;
}

.pq-lp__pillar-title {
	margin: 0;
	padding-bottom: 0.4rem;
	font-family: var(--pq-font-display) !important;
	font-size: clamp(1.15rem, 1.6vw, 1.4rem);
	font-weight: 400;
	letter-spacing: -0.01em;
	line-height: 1.2;
	color: var(--pq-text) !important;
}

.pq-lp__pillar-kicker {
	margin: 0;
	max-width: 16em;
	font-family: var(--pq-font-body) !important;
	font-size: clamp(0.98rem, 1.25vw, 1.12rem);
	font-style: italic;
	font-weight: 300;
	letter-spacing: 0;
	line-height: 1.3;
	text-transform: none;
	color: var(--pq-text-soft) !important;
}

.pq-lp__intro-rule {
	display: none;
}

.pq-lp__intro .pq-lp__btns {
	margin-top: 1.5rem !important;
	justify-content: flex-start !important;
}

.pq-lp__intro-media,
.pq-lp__library-media {
	position: relative;
	margin: 0;
	overflow: hidden;
	background: #e8e7dc;
}

.pq-lp__intro-media img,
.pq-lp__library-media img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	transform: scale(1.01);
	transition: transform 1.1s var(--pq-ease);
}

.pq-lp__intro-media:hover img,
.pq-lp__library-media:hover img {
	transform: scale(1.045);
}

@media (max-width: 900px) {
	.pq-lp__intro-split:not(.e-con) {
		grid-template-columns: 1fr;
	}

	.pq-lp__intro-media img,
	.pq-lp__library-media img,
	.pq-lp__intro-media .elementor-widget-image img,
	.pq-lp__library-media .elementor-widget-image img {
		aspect-ratio: 16 / 11;
	}

	.pq-lp__color-strip {
		grid-template-columns: repeat(auto-fit, minmax(5.5rem, 1fr));
		max-width: none;
	}

	.pq-lp__color-strip-name {
		font-size: 0.68rem;
	}
}

@media (max-width: 720px) {
	.pq-lp__color-strip {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pq-lp__color-strip-tile {
		display: none;
	}

	.pq-lp__color-strip-tile:nth-last-child(-n + 3) {
		display: block;
	}
}

/* Honor Elementor’s --flex-direction on mobile (including column-reverse).
   Full-width children so a leftover desktop `row` still wraps to a stack. */
@media (max-width: 767px) {
	.pq-lp .pq-lp__intro-split.e-con > .e-con,
	.pq-lp .pq-lp__intro-split.e-con > .e-con-inner > .e-con {
		flex: 1 1 100%;
		width: 100%;
		max-width: 100%;
	}
}

@media (max-width: 800px) {
	.pq-lp__pillars {
		grid-template-columns: 1fr;
		border-bottom: 0;
	}

	.pq-lp__pillar {
		border-right: 0;
		border-bottom: 1px solid rgba(28, 27, 24, 0.12);
		padding: 1.35rem 0.5rem;
	}
}

/* Legacy library split (kept if old markup still present) */
.pq-lp__library-split,
.pq-lp .pq-lp__library-split.e-con {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	gap: clamp(2rem, 5vw, 4.5rem);
	align-items: center;
	flex-direction: unset !important;
}

.pq-lp__library-copy {
	max-width: 34rem;
}

.pq-lp__library-copy h2 {
	margin: 0;
	font-size: clamp(2.1rem, 4.2vw, 3.4rem);
	line-height: 1.06;
	letter-spacing: -0.02em;
}

.pq-lp__library-copy .pq-lp__body {
	margin: 1.25rem 0 0;
	font-size: clamp(1.2rem, 1.7vw, 1.4rem);
	line-height: 1.55;
	color: var(--pq-text-soft);
}

.pq-lp__library-points {
	display: grid;
	gap: 0.85rem;
	margin: 1.75rem 0 0;
	padding: 0;
	list-style: none;
}

.pq-lp__library-points li {
	display: grid;
	grid-template-columns: 6.5rem 1fr;
	gap: 0.75rem;
	align-items: baseline;
	font-family: var(--pq-font-body) !important;
	font-size: 1.15rem;
	line-height: 1.4;
	color: var(--pq-text-soft);
}

.pq-lp__library-points span {
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--pq-text);
}

.pq-lp__library-copy .pq-lp__btns {
	margin-top: 2rem;
	justify-content: flex-start;
}

.pq-lp__library-media {
	margin: 0;
	overflow: hidden;
	background: #e8e7dc;
}

.pq-lp__library-media img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	transform: scale(1.01);
	transition: transform 1.1s var(--pq-ease);
}

.pq-lp__library-media:hover img {
	transform: scale(1.045);
}

@media (max-width: 900px) {
	.pq-lp__library-split,
	.pq-lp .pq-lp__library-split.e-con {
		grid-template-columns: 1fr;
	}

	.pq-lp__library-media img,
	.pq-lp__library-media .elementor-widget-image img {
		aspect-ratio: 16 / 11;
	}

	.pq-lp__library-points li {
		grid-template-columns: 5.5rem 1fr;
	}
}

@media (max-width: 640px) {
	.pq-lp__library-points li {
		grid-template-columns: 1fr;
		gap: 0.2rem;
	}
}

/* ---------- Intention (legacy kept for safety) ---------- */
.pq-lp__intention {
	padding: clamp(4.5rem, 10vw, 7.5rem) 0;
	background: var(--pq-sand);
}

/* ---------- Proof strip ---------- */
.pq-lp__proof {
	padding: clamp(3.5rem, 8vw, 5.5rem) 0;
	background: var(--pq-ink);
	color: var(--pq-cream);
}

.pq-lp__proof-grid,
.pq-lp .pq-lp__proof-grid.e-con {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem 2.5rem;
	flex-direction: unset !important;
}

.pq-lp__proof h3 {
	margin: 0 0 0.75rem;
	font-size: clamp(1.15rem, 1.6vw, 1.35rem);
	letter-spacing: 0.02em;
	color: var(--pq-cream) !important;
}

.pq-lp__proof p {
	margin: 0;
	font-size: clamp(1.2rem, 1.6vw, 1.35rem);
	line-height: 1.55;
	color: rgba(247, 246, 241, 0.78) !important;
}

@media (max-width: 800px) {
	.pq-lp__proof-grid,
	.pq-lp .pq-lp__proof-grid.e-con {
		grid-template-columns: 1fr;
		gap: 1.75rem;
	}
}

/* ---------- Palette teaser ---------- */
.pq-lp__teaser {
	padding: clamp(2.75rem, 6vw, 4.5rem) 0;
	background: var(--pq-sand);
	text-align: center;
}

.pq-lp__teaser.pq-lp__surface--sand {
	background: var(--pq-sand);
}

.pq-lp__teaser.pq-lp__surface--cream {
	background: var(--pq-cream);
}

.pq-lp__teaser h2 {
	margin: 0 auto;
	max-width: 16ch;
	font-size: clamp(2rem, 4vw, 3.1rem);
	line-height: 1.1;
	letter-spacing: -0.02em;
}

.pq-lp__teaser.pq-lp__surface--sand h2::after {
	content: "";
	display: block;
	width: 4.5rem;
	height: 2px;
	margin: 1.1rem auto 0;
	background: var(--pq-red, var(--pq-brand, #e31f2f));
}

.pq-lp__teaser .pq-lp__rule {
	display: block;
	width: 4.5rem;
	height: 2px;
	margin: 1.1rem auto;
	background: var(--pq-red, var(--pq-brand, #e31f2f));
	border: 0;
}

.pq-lp__teaser:has(.pq-lp__rule) h2::after {
	content: none;
}

.pq-lp__teaser .pq-lp__body {
	margin: 1.25rem auto 0;
	max-width: 38rem;
	font-size: clamp(1.15rem, 1.7vw, 1.35rem);
	color: var(--pq-text-soft);
}

.pq-lp__teaser:has(.pq-lp__rule) .pq-lp__body {
	margin-top: 0;
}

.pq-lp__teaser.pq-lp__surface--sand .pq-lp__label,
.pq-lp .pq-lp__teaser.pq-lp__surface--sand .pq-lp__label,
.pq-lp__teaser.pq-lp__surface--sand .elementor-widget-text-editor .pq-lp__label {
	color: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
	opacity: 1;
}

.pq-lp__cats,
.pq-lp .pq-lp__cats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
	margin-top: 3rem;
	text-align: left;
}

.pq-lp__cat {
	display: block;
	color: inherit;
}

.pq-lp__cat figure {
	margin: 0;
	overflow: hidden;
	background: #b7b6a8;
}

.pq-lp__cat img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	transition: transform 0.8s var(--pq-ease);
}

.pq-lp__cat:hover img {
	transform: scale(1.05);
}

.pq-lp__cat h3 {
	margin: 0.9rem 0 0.25rem;
	font-size: 1rem;
	letter-spacing: 0.04em;
}

.pq-lp__cat p {
	margin: 0;
	font-size: 1.05rem;
	color: var(--pq-text-soft);
}

.pq-lp__teaser .pq-lp__btns {
	justify-content: center;
}

/*
 * Palette teaser cards are Elementor Image Boxes (home + collection pages).
 * Zoom the photo inside a clipped frame — same idea as .pq-lp__cat, without
 * growing the card.
 */
.pq-lp__teaser .elementor-widget-image-box .elementor-image-box-img,
.pq-lp__teaser .elementor-widget-image-box .elementor-image-box-img a {
	display: block;
	width: 100%;
	overflow: hidden;
}

.pq-lp__teaser .elementor-widget-image-box .elementor-image-box-img img {
	display: block;
	width: 100%;
	max-width: none;
	height: auto;
	transform: scale(1);
	transform-origin: center center;
	transition: transform 0.8s var(--pq-ease);
}

.pq-lp__teaser .elementor-widget-image-box .elementor-image-box-wrapper:hover .elementor-image-box-img img,
.pq-lp__teaser .elementor-widget-image-box .elementor-image-box-wrapper:focus-within .elementor-image-box-img img {
	transform: scale(1.05);
}

@media (prefers-reduced-motion: reduce) {
	.pq-lp__teaser .elementor-widget-image-box .elementor-image-box-img img {
		transition: none;
	}

	.pq-lp__teaser .elementor-widget-image-box .elementor-image-box-wrapper:hover .elementor-image-box-img img,
	.pq-lp__teaser .elementor-widget-image-box .elementor-image-box-wrapper:focus-within .elementor-image-box-img img {
		transform: none;
	}
}

@media (max-width: 900px) {
	.pq-lp__cats {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 520px) {
	.pq-lp__cats {
		grid-template-columns: 1fr;
	}
}

/* ---------- Inspiration ---------- */
.pq-lp__insp {
	--pq-insp-gutter: max(1.5rem, calc((100vw - var(--pq-max)) / 2));
	padding: clamp(2.25rem, 4.5vw, 3.25rem) 0;
	background: var(--pq-ink);
	color: var(--pq-cream);
	text-align: left;
}

.pq-lp__insp-head {
	max-width: none;
	margin: 0 0 1.15rem;
	text-align: left;
}

.pq-lp__insp-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 1.75rem;
}

.pq-lp a.pq-lp__insp-cta,
.pq-lp__insp-cta {
	flex: 0 0 auto;
	white-space: nowrap;
	background: var(--pq-red, var(--pq-brand, #e31f2f));
	border-color: var(--pq-red, var(--pq-brand, #e31f2f));
	color: #fff !important;
}

.pq-lp a.pq-lp__insp-cta:hover,
.pq-lp__insp-cta:hover {
	background: var(--pq-brand-hover, #c91a28);
	border-color: var(--pq-brand-hover, #c91a28);
	color: #fff !important;
}

.pq-lp__insp h2,
.pq-lp__insp .pq-lp__label,
.pq-lp__insp .pq-lp__body {
	margin: 0;
	text-align: left;
	color: var(--pq-cream) !important;
}

.pq-lp__insp h2 {
	font-size: clamp(1.7rem, 3vw, 2.45rem);
	line-height: 1.12;
	letter-spacing: -0.02em;
	white-space: nowrap;
}

.pq-lp__insp-title h2 {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
}

.pq-lp__insp .pq-lp__label {
	margin-bottom: 0.4rem;
	opacity: 0.7;
}

.pq-lp__insp .pq-lp__rule {
	display: block;
	width: min(100%, 18rem);
	height: 1px;
	margin: 0.55rem 0;
	background: rgba(247, 246, 241, 0.35);
	border: 0;
}

.pq-lp__insp .pq-lp__body {
	font-size: clamp(1.05rem, 1.4vw, 1.2rem);
	color: rgba(247, 246, 241, 0.78) !important;
}

@media (max-width: 720px) {
	.pq-lp__insp h2 {
		white-space: normal;
	}

	.pq-lp__insp-title {
		flex-direction: column;
		align-items: flex-start;
	}
}

.pq-lp__insp-viewport {
	overflow: hidden;
	margin-inline: calc(50% - 50vw);
	padding-inline: var(--pq-insp-gutter);
}

.pq-lp__insp-track {
	display: flex;
	width: max-content;
	will-change: transform;
	backface-visibility: hidden;
	animation: pq-insp-drift var(--pq-insp-duration, 48s) linear infinite;
}

.pq-lp__insp-set {
	display: flex;
	flex: 0 0 auto;
	gap: 1rem;
	padding-right: 1rem;
}

.pq-lp__insp-viewport:hover .pq-lp__insp-track {
	animation-play-state: paused;
}

@keyframes pq-insp-drift {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}

.pq-lp__insp-card {
	flex: 0 0 min(72vw, 28rem);
	display: block;
	text-decoration: none !important;
	color: inherit;
}

.pq-lp__insp-card figure {
	margin: 0;
	position: relative;
	overflow: hidden;
	background: #2a2926;
}

.pq-lp__insp-card figure::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 42%;
	background: linear-gradient(
		180deg,
		rgba(55, 55, 55, 0) 0%,
		rgba(55, 55, 55, 0.78) 100%
	);
	pointer-events: none;
	z-index: 1;
}

.pq-lp__insp-card img {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	transition: transform 0.7s ease;
}

.pq-lp__insp-card:hover img {
	transform: scale(1.04);
}

.pq-lp__insp-card figcaption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 1.15rem 1.2rem 1.3rem;
	pointer-events: none;
}

.pq-lp__insp-name {
	display: block;
	font-family: var(--pq-font-display, "Playfair Display", Georgia, serif);
	font-size: clamp(1.25rem, 2vw, 1.55rem);
	font-weight: 500;
	letter-spacing: -0.01em;
	line-height: 1.15;
	color: #fff;
}

.pq-lp__insp .pq-lp__wrap:has(.pq-lp__btns) {
	/* Keep CTA aligned with the gallery's left edge */
	width: 100%;
	max-width: none;
	padding-inline: var(--pq-insp-gutter);
	box-sizing: border-box;
}

.pq-lp__insp .pq-lp__btns {
	margin-top: 1.35rem;
	justify-content: flex-start;
}

/* ---------- Closing CTA ---------- */
.pq-lp__close {
	position: relative;
	isolation: isolate;
	padding: clamp(5rem, 12vw, 8.5rem) 0;
	color: var(--pq-text);
	text-align: center;
	background: #d8d7ca center / cover no-repeat;
}

.pq-lp__close::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background: rgb(204 203 188 / 0.52);
}

.pq-lp__close-inner {
	position: relative;
	z-index: 1;
}

.pq-lp__close h2 {
	margin: 0 auto;
	max-width: 16ch;
	font-size: clamp(2rem, 4.2vw, 3.35rem);
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.pq-lp__close .pq-lp__body {
	margin: 1.25rem auto 0;
	max-width: 34rem;
	font-size: clamp(1.15rem, 1.7vw, 1.35rem);
	color: var(--pq-text-soft);
}

.pq-lp__close .pq-lp__btns {
	justify-content: center;
}

/* ---------- FAQ ---------- */
.pq-lp__faq {
	padding: clamp(4rem, 8vw, 6rem) 0;
	background: #ffffff;
}

.pq-lp__faq h2 {
	margin: 0 0 2rem;
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	letter-spacing: -0.02em;
}

.pq-lp__faq details {
	position: relative;
	border-top: 1px solid var(--pq-line);
	padding-inline: 1.15rem;
	transition: background 0.25s var(--pq-ease);
}

.pq-lp__faq details:last-child {
	border-bottom: 1px solid var(--pq-line);
}

.pq-lp__faq details[open] {
	background: rgba(227, 31, 47, 0.045);
}

.pq-lp__faq details[open]::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--pq-red, var(--pq-brand, #e31f2f));
}

.pq-lp__faq summary {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	padding: 1.25rem 0;
	cursor: pointer;
	list-style: none;
	font-family: var(--pq-font-body);
	font-size: 1.3125rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.01em;
	color: var(--pq-text);
	transition: color 0.25s var(--pq-ease);
}

.pq-lp__faq summary:hover,
.pq-lp__faq details[open] summary {
	color: var(--pq-red, var(--pq-brand, #e31f2f));
}

.pq-lp__faq summary::-webkit-details-marker {
	display: none;
}

.pq-lp__faq summary::after {
	content: "+";
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 1.75rem;
	height: 1.75rem;
	border: 1px solid var(--pq-line);
	border-radius: 50%;
	font-size: 1.15rem;
	font-weight: 500;
	line-height: 1;
	color: var(--pq-text);
	opacity: 0.7;
	transition: border-color 0.25s var(--pq-ease), color 0.25s var(--pq-ease), opacity 0.25s var(--pq-ease);
}

.pq-lp__faq details[open] summary::after {
	content: "–";
	border-color: var(--pq-red, var(--pq-brand, #e31f2f));
	color: var(--pq-red, var(--pq-brand, #e31f2f));
	opacity: 1;
}

.pq-lp__faq details p {
	margin: 0 0 1.35rem;
	max-width: 48rem;
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.65;
	color: var(--pq-text);
	opacity: 0.82;
}

/* ---------- Palette page intro ---------- */
.pq-lp.pq-lp--palette {
	background: transparent;
}

.pq-palette-intro,
.pq-lp .pq-palette-intro.e-con,
.pq-palette-intro.pq-lp__surface--sand {
	position: relative;
	isolation: isolate;
	min-height: min(72vh, 780px);
	padding: 0 !important;
	text-align: center;
	align-items: center;
	justify-content: center;
	color: var(--pq-cream, #f7f6f1);
	/* Fallback only — Elementor owns the photo via Style → Background. */
	background-color: #2a2926;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.pq-palette-intro::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		linear-gradient(
			to top,
			rgba(18, 17, 15, 0.68) 0%,
			rgba(18, 17, 15, 0.34) 48%,
			rgba(18, 17, 15, 0.28) 100%
		);
	pointer-events: none;
}

.pq-palette-intro .pq-lp__wrap,
.pq-palette-intro .pq-lp__wrap.e-con {
	position: relative;
	z-index: 1;
	padding: clamp(7.5rem, 14vh, 10rem) 0 clamp(3.5rem, 7vh, 5.5rem) !important;
	align-items: center;
	text-align: center;
}

.pq-palette-intro .pq-lp__brand,
.pq-palette-intro .pq-lp__label,
.pq-palette-intro .elementor-widget-text-editor .pq-lp__brand {
	color: var(--pq-cream, #f7f6f1) !important;
	opacity: 0.88;
}

.pq-palette-intro h1,
.pq-palette-intro h1.elementor-heading-title,
.pq-palette-intro .elementor-heading-title {
	margin: 0 auto;
	max-width: 16ch;
	font-size: clamp(2.25rem, 4.5vw, 3.5rem);
	line-height: 1.08;
	letter-spacing: -0.02em;
	color: var(--pq-cream, #f7f6f1) !important;
}

.pq-palette-intro .pq-lp__body,
.pq-palette-intro .elementor-widget-text-editor .pq-lp__body {
	margin: 1.25rem auto 0;
	max-width: 40rem;
	font-size: clamp(1.15rem, 1.7vw, 1.35rem);
	color: rgba(247, 246, 241, 0.9) !important;
}

.pq-palette-intro .elementor-widget-text-editor,
.pq-palette-intro .elementor-widget-text-editor p {
	color: rgba(247, 246, 241, 0.9) !important;
}

.pq-palette-intro .pq-lp__btns {
	justify-content: center;
}

.pq-lp .pq-palette-intro a.pq-lp__btn--ink-ghost,
.pq-palette-intro a.pq-lp__btn--ink-ghost,
.pq-lp .pq-palette-intro a.pq-lp__btn--ghost,
.pq-palette-intro a.pq-lp__btn--ghost {
	background: transparent;
	border-color: var(--pq-cream, #f7f6f1);
	color: var(--pq-cream, #f7f6f1) !important;
}

.pq-lp .pq-palette-intro a.pq-lp__btn--ink-ghost:hover,
.pq-palette-intro a.pq-lp__btn--ink-ghost:hover,
.pq-lp .pq-palette-intro a.pq-lp__btn--ghost:hover,
.pq-palette-intro a.pq-lp__btn--ghost:hover {
	background: rgba(255, 255, 255, 0.12);
	border-color: var(--pq-cream, #f7f6f1);
	color: var(--pq-cream, #f7f6f1) !important;
}

@media (max-width: 720px) {
	.pq-palette-intro,
	.pq-lp .pq-palette-intro.e-con {
		min-height: 64vh;
	}
}

.pq-palette-intro + .product-gallery,
.page-template-page-pentalquartz-new .pq-lp + .product-gallery,
.elementor-page .pq-lp ~ .elementor-element .product-gallery {
	margin-top: 0;
}

/* Color viewer sits on white for cleaner slab browsing */
.page-id-26713 .product-gallery,
body.pq-palette-page .product-gallery,
.page-id-26713 .elementor-element .product-gallery {
	background: #ffffff !important;
}

/* ---------- PQ palette gallery toolbar (match landing language) ---------- */
body.pq-palette-page .product-gallery.new-pental {
	--pq-ink: #373737;
	--pq-ink-soft: rgba(55, 55, 55, 0.72);
	--pq-text: #1c1b18;
	--pq-text-soft: rgba(28, 27, 24, 0.72);
	--pq-line: rgba(28, 27, 24, 0.18);
	--pq-brand: #e31f2f;
	--pq-brand-hover: #c91a28;
	--pq-red: #e31f2f;
	--pq-font-display: "Playfair Display", Georgia, "Times New Roman", serif;
	--pq-font-body: "Cormorant Infant", Georgia, "Times New Roman", serif;
	--pq-font-ui: "gotham", "Gotham", "Nunito Sans", "Helvetica Neue", Arial, sans-serif;
	--pq-palette-max: 1760px;
	--pq-palette-gutter: 2rem;
	padding-top: clamp(2.5rem, 5vw, 3.5rem);
	padding-bottom: clamp(3rem, 6vw, 5rem);
	color: var(--pq-text);
}

body.pq-palette-page .product-gallery .product-gallery-title {
	display: none !important;
}

body.pq-palette-page .product-gallery .row.row-flex.title-block,
body.pq-palette-page .product-gallery .pq-gallery-toolbar {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1.5rem 2rem;
	flex-wrap: wrap;
	width: min(100% - 4rem, var(--pq-palette-max, 1760px));
	max-width: var(--pq-palette-max, 1760px);
	margin: 0 auto 2.25rem;
	padding: 0 0 1.5rem;
	border-bottom: 1px solid var(--pq-line);
	box-sizing: border-box;
}

/* Keep filters/search in view while browsing the grid */
body.pq-palette-page .elementor:has(.pq-gallery-toolbar),
body.pq-palette-page .e-con:has(.pq-gallery-toolbar),
body.pq-palette-page .elementor-widget:has(.pq-gallery-toolbar),
body.pq-palette-page .elementor-widget-container:has(.pq-gallery-toolbar),
body.pq-palette-page .elementor-shortcode:has(.pq-gallery-toolbar),
body.pq-palette-page .product-gallery:has(.pq-gallery-toolbar) {
	overflow: visible !important;
}

body.pq-palette-page .product-gallery.new-pental .row.pq-gallery-toolbar,
body.pq-palette-page .product-gallery .pq-gallery-toolbar {
	position: sticky;
	top: var(--pq-mh-height, 4.25rem);
	z-index: 40;
	width: 100%;
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	padding: 0.85rem max(var(--pq-palette-gutter, 2rem), calc((100% - var(--pq-palette-max, 1760px)) / 2)) 1.15rem;
	background: #ffffff;
	box-shadow: 0 12px 16px -12px rgba(28, 27, 24, 0.12);
}

body.admin-bar.pq-palette-page .product-gallery .pq-gallery-toolbar {
	top: calc(var(--pq-mh-height, 4.25rem) + var(--wp-admin--admin-bar--height, 32px));
}

body.pq-palette-page .pq-gallery-toolbar__intro {
	flex: 1 1 14rem;
	min-width: 0;
	text-align: left;
}

body.pq-palette-page .pq-gallery-toolbar__title {
	margin: 0;
	font-family: var(--pq-font-display) !important;
	font-weight: 400;
	font-size: clamp(1.85rem, 3.2vw, 2.75rem);
	line-height: 1.08;
	letter-spacing: -0.02em;
	color: var(--pq-text) !important;
}

body.pq-palette-page .pq-gallery-toolbar.has-pq-palette-switch {
	align-items: flex-end;
}

body.pq-palette-page .pq-gallery-toolbar__tools {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: flex-end;
	gap: 0.75rem;
	flex: 1 1 28rem;
	min-width: 0;
}

body.pq-palette-page .pq-palette-switch {
	display: inline-flex;
	align-items: stretch;
	flex: 1 1 22rem;
	width: min(100%, 30rem);
	max-width: 30rem;
	min-height: 3rem;
	margin: 0;
	border: 1px solid var(--pq-red, var(--pq-brand, #e31f2f));
	background: #fff;
	box-sizing: border-box;
}

body.pq-palette-page .product-gallery .pq-palette-switch__btn {
	appearance: none;
	-webkit-appearance: none;
	flex: 1 1 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45em;
	width: auto !important;
	height: auto !important;
	min-height: 0;
	margin: 0;
	padding: 0.55rem 0.75rem !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	cursor: pointer;
	font-family: var(--pq-font-body) !important;
	font-weight: 400 !important;
	font-size: 1.05rem !important;
	line-height: 1.2 !important;
	letter-spacing: 0;
	text-transform: none !important;
	text-align: center;
	white-space: nowrap;
	color: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
	transition: background 0.22s ease, color 0.22s ease, opacity 0.22s ease;
}

body.pq-palette-page .pq-palette-switch__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.55em;
	height: 1.4em;
	padding: 0 0.45em;
	border-radius: 999px;
	background: #000 !important;
	color: #fff !important;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.68em !important;
	font-weight: 600 !important;
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.02em;
	line-height: 1;
	opacity: 1;
}

body.pq-palette-page .product-gallery .pq-palette-switch__btn.is-active .pq-palette-switch__count {
	background: #000 !important;
	color: #fff !important;
	opacity: 1;
}

body.pq-palette-page .product-gallery .pq-palette-switch__btn.is-empty:not(.is-active) {
	opacity: 0.72;
}

body.pq-palette-page .product-gallery .pq-palette-switch__btn.is-empty .pq-palette-switch__count {
	background: #000 !important;
	opacity: 0.55;
}

body.pq-palette-page .product-gallery .pq-palette-switch__btn + .pq-palette-switch__btn {
	border-left: 1px solid var(--pq-red, var(--pq-brand, #e31f2f)) !important;
}

body.pq-palette-page .product-gallery .pq-palette-switch__btn.is-active {
	background: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
	color: #fff !important;
	cursor: default;
}

body.pq-palette-page .product-gallery .pq-palette-switch__btn:hover:not(.is-active),
body.pq-palette-page .product-gallery .pq-palette-switch__btn:focus-visible:not(.is-active) {
	background: rgba(227, 31, 47, 0.06) !important;
}

body.pq-palette-page .product-gallery .pq-palette-switch__btn:focus-visible {
	outline: 1px solid var(--pq-red, var(--pq-brand, #e31f2f));
	outline-offset: -3px;
}

body.pq-palette-page .pq-palette-switch__banner {
	width: min(100% - 4rem, var(--pq-palette-max, 1760px));
	max-width: var(--pq-palette-max, 1760px);
	margin: -1.15rem auto 1.75rem;
	padding: 0;
	font-family: var(--pq-font-body) !important;
	font-size: 1.15rem;
	font-weight: 300;
	font-style: italic;
	line-height: 1.45;
	color: var(--pq-text-soft);
}

body.pq-palette-page .pq-palette-switch__banner[hidden] {
	display: none !important;
}

body.pq-palette-page .product-gallery .search-box {
	flex: 0 1 22rem;
	width: min(100%, 22rem);
	min-height: 3rem;
	height: auto !important;
	margin: 0 !important;
	padding: 0 1rem 0 1.15rem !important;
	border: 1px solid var(--pq-ink) !important;
	border-radius: 0 !important;
	background: #fff;
	display: flex;
	align-items: center;
	gap: 0.75rem;
	box-sizing: border-box;
}

body.pq-palette-page .pq-gallery-toolbar__tools .search-box {
	flex: 1 1 16rem;
}

body.pq-palette-page .product-gallery .search-box input {
	flex: 1 1 auto;
	min-width: 0;
	height: 3rem;
	line-height: 1.2;
	padding: 0;
	border: 0;
	outline: none;
	background: transparent;
	font-family: var(--pq-font-body) !important;
	font-size: 1.15rem;
	font-weight: 300;
	color: var(--pq-text);
}

body.pq-palette-page .product-gallery .search-box input::placeholder {
	color: var(--pq-text-soft);
	opacity: 1;
	text-transform: none;
	letter-spacing: 0;
}

body.pq-palette-page .product-gallery button.search-button {
	flex: 0 0 auto;
	display: inline-grid;
	place-items: center;
	width: 2rem;
	height: 2rem;
	padding: 0;
	border: 0 !important;
	background: none;
	color: var(--pq-text);
}

body.pq-palette-page .product-gallery button.search-button svg,
body.pq-palette-page .product-gallery button.search-button path {
	fill: currentColor;
}

/* Filters + view switches in PQ type */
body.pq-palette-page .product-gallery .filter-main-title,
body.pq-palette-page .product-gallery .switch-view-title {
	font-family: var(--pq-font-ui) !important;
	font-size: 0.85rem !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--pq-text) !important;
}

body.pq-palette-page .product-gallery .switch-view,
body.pq-palette-page .product-gallery .filters label,
body.pq-palette-page .product-gallery .filter-value,
body.pq-palette-page .product-gallery .filters .location-name,
body.pq-palette-page .product-gallery .filters a.help-choose,
body.pq-palette-page .product-gallery .new-title .name-title {
	font-family: var(--pq-font-body) !important;
	color: var(--pq-text);
}

body.pq-palette-page .product-gallery .switch-view {
	font-size: 1.05rem !important;
	line-height: 1.35;
	gap: 0.65rem;
}

body.pq-palette-page .product-gallery .filters label,
body.pq-palette-page .product-gallery .filter-value {
	font-size: 1.05rem !important;
	line-height: 1.45;
}

body.pq-palette-page .product-gallery .filters .location-name {
	font-size: 1.1rem !important;
	font-weight: 400;
	line-height: 1.4;
}

body.pq-palette-page .product-gallery .filters a.help-choose {
	font-size: 1rem !important;
	line-height: 1.4;
}

body.pq-palette-page .product-gallery p.switch-view.active {
	background: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
	color: #fff !important;
}

body.pq-palette-page .product-gallery p.switch-view.active svg *,
body.pq-palette-page .product-gallery p.switch-view.active svg path {
	fill: #fff !important;
}

body.pq-palette-page .product-gallery .new-title .name-title {
	font-family: var(--pq-font-display) !important;
	font-weight: 400;
	letter-spacing: -0.01em;
}

/* Clean favorite heart (replaces heart+plus) */
body.pq-palette-page .product-gallery .new-title .favorite-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	flex: 0 0 auto;
	color: var(--pq-text);
	border: 0;
	border-radius: 0;
	background: transparent;
	transition: color 0.2s ease, transform 0.2s ease;
}

body.pq-palette-page .product-gallery .new-title .favorite-icon:hover {
	color: var(--pq-text);
	transform: scale(1.06);
}

body.pq-palette-page .product-gallery .new-title .favorite-icon svg {
	display: block;
	width: 1.25rem;
	height: 1.25rem;
	stroke: currentColor;
}

body.pq-palette-page .product-gallery .new-title .favorite-icon svg.is-saved,
body.pq-palette-page .product-gallery .new-title .favorite-icon svg.is-saved path {
	fill: currentColor;
	stroke: currentColor;
}

body.pq-palette-page .product-gallery.new-pental .row {
	width: min(100% - 4rem, var(--pq-palette-max, 1760px));
	max-width: var(--pq-palette-max, 1760px);
}

/* PQ gallery — slab/thumbnail by default; fade in first inspiration on hover.
   Shadow is on the wrap (own box-shadow is not clipped by overflow).
   Inspiration must beat `.item img { height: auto }` or room photos blow the card up. */
.page-template-page-pentalquartz-new .product-gallery .row.row-flex .items .item .pq-gallery-media,
body.pq-palette-page .product-gallery .row.row-flex .items .item .pq-gallery-media,
.product-gallery.new-pental .pq-gallery-media {
	position: relative;
	display: block;
	overflow: hidden;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.25);
}

.page-template-page-pentalquartz-new .product-gallery .row.row-flex .items .item .pq-gallery-media img,
body.pq-palette-page .product-gallery .row.row-flex .items .item .pq-gallery-media img,
.product-gallery.new-pental .pq-gallery-media img {
	display: block;
	box-shadow: none;
}

.page-template-page-pentalquartz-new .product-gallery .row.row-flex .items .item .pq-gallery-media img.inspiration-image,
body.pq-palette-page .product-gallery .row.row-flex .items .item .pq-gallery-media img.inspiration-image,
.product-gallery.new-pental .pq-gallery-media img.inspiration-image {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	max-width: 100%;
	height: 100%;
	max-height: 100%;
	object-fit: cover;
	object-position: center;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.28s ease;
	box-shadow: none;
}

.page-template-page-pentalquartz-new .product-gallery .row.row-flex .items .item.has-insp:hover .pq-gallery-media img.inspiration-image,
.page-template-page-pentalquartz-new .product-gallery .row.row-flex .items .item.has-insp:focus-within .pq-gallery-media img.inspiration-image,
body.pq-palette-page .product-gallery .row.row-flex .items .item.has-insp:hover .pq-gallery-media img.inspiration-image,
body.pq-palette-page .product-gallery .row.row-flex .items .item.has-insp:focus-within .pq-gallery-media img.inspiration-image,
.product-gallery.new-pental .item.has-insp:hover .pq-gallery-media img.inspiration-image,
.product-gallery.new-pental .item.has-insp:focus-within .pq-gallery-media img.inspiration-image {
	opacity: 1;
}

.product-gallery.new-pental .items.bookmatch-mode .inspiration-image {
	display: none !important;
}

.product-gallery.new-pental .item .special-type {
	z-index: 3;
}

@media (max-width: 960px) {
	body.pq-palette-page .product-gallery .row.row-flex.title-block.pq-gallery-toolbar,
	body.pq-palette-page .product-gallery .pq-gallery-toolbar,
	body.pq-palette-page .pq-gallery-toolbar.has-pq-palette-switch {
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		gap: 0.75rem;
		height: auto;
		min-height: 0;
	}

	body.pq-palette-page .pq-gallery-toolbar__intro,
	body.pq-palette-page .pq-gallery-toolbar__tools {
		flex: 0 0 auto;
		flex-basis: auto;
		width: 100%;
		max-width: none;
		min-height: 0;
	}

	body.pq-palette-page .pq-gallery-toolbar__tools {
		justify-content: stretch;
	}

	body.pq-palette-page .pq-palette-switch,
	body.pq-palette-page .pq-gallery-toolbar__tools .search-box {
		max-width: none;
		width: auto;
	}
}

@media (max-width: 720px) {
	.product-gallery.new-pental .filters {
		display: none !important;
	}

	body.pq-palette-page .product-gallery.new-pental {
		--pq-palette-gutter: 1rem;
	}

	body.pq-palette-page .product-gallery.new-pental .row,
	body.pq-palette-page .pq-palette-switch__banner {
		width: min(100% - 2rem, var(--pq-palette-max, 1760px));
	}

	body.pq-palette-page .product-gallery.new-pental .row.pq-gallery-toolbar,
	body.pq-palette-page .product-gallery .row.row-flex.title-block.pq-gallery-toolbar,
	body.pq-palette-page .product-gallery .pq-gallery-toolbar {
		width: 100%;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
		margin-bottom: 1rem;
		align-items: stretch;
		gap: 0.55rem;
		padding: 0.55rem var(--pq-palette-gutter, 1rem) 0.7rem;
		box-sizing: border-box;
	}

	body.pq-palette-page .pq-gallery-toolbar__title {
		font-size: 1.45rem;
	}

	body.pq-palette-page .pq-gallery-toolbar__tools,
	body.pq-palette-page .product-gallery .search-box {
		flex: 0 0 auto;
		flex-basis: auto;
		width: 100%;
		max-width: none;
	}

	body.pq-palette-page .pq-palette-switch {
		flex-basis: auto;
		width: 100%;
		max-width: none;
	}

	body.pq-palette-page .product-gallery .pq-palette-switch__btn {
		font-size: 0.92rem !important;
		padding: 0.55rem 0.5rem !important;
	}

	body.pq-palette-page .pq-palette-switch__count {
		min-width: 1.45em;
		height: 1.3em;
		padding: 0 0.38em;
		font-size: 0.66em !important;
	}

	body.pq-palette-page .pq-palette-switch__banner {
		margin-top: -0.5rem;
		margin-bottom: 1.35rem;
	}
}

/* Elementor full-bleed wrappers for PQ landing/palette */
.page-id-10519 .elementor-section,
.page-id-10519 .e-con,
.page-id-26713 .elementor-section.e-parent,
.page-id-26713 .e-con.e-parent:not(:has(.product-gallery)) {
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.page-id-10519 #content,
.page-id-26713 #content,
.page-id-10519 .site-content,
.page-id-26713 .site-content {
	padding: 0;
	margin: 0;
	max-width: none;
}

.page-id-10519 .elementor,
.page-id-26713 .elementor {
	overflow: clip;
}

/* ==========================================================================
   Elementor compatibility — restore PQ spacing that containers/widgets reset
   ========================================================================== */

/* Kill Elementor container gap vars inside PQ (they were zeroing layouts).
   Wrap / intro-split keep Elementor gap + direction so the editor can control layout. */
.pq-lp.e-con:not(.pq-lp__wrap):not(.pq-lp__intro-split),
.pq-lp .e-con:not(.pq-lp__wrap):not(.pq-lp__intro-split) {
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

/* Centered content rail — beat Elementor full-width containers */
.pq-lp .pq-lp__wrap.e-con,
.pq-lp .e-con.pq-lp__wrap,
.pq-lp__wrap {
	width: min(100% - 3rem, var(--pq-max)) !important;
	max-width: var(--pq-max) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}

/* Honor Elementor Direction / Align / Wrap (row, column, reverse, etc.) */
.pq-lp .pq-lp__wrap.e-con,
.pq-lp .e-con.pq-lp__wrap,
.pq-lp .pq-lp__intro-split.e-con,
.pq-lp .e-con.pq-lp__intro-split,
.pq-lp .pq-lp__wrap.e-con > .e-con-inner,
.pq-lp .pq-lp__intro-split.e-con > .e-con-inner {
	display: var(--display, flex) !important;
	flex-direction: var(--flex-direction) !important;
	flex-wrap: var(--flex-wrap) !important;
	justify-content: var(--justify-content) !important;
	align-items: var(--align-items) !important;
	align-content: var(--align-content) !important;
}

@media (max-width: 720px) {
	.pq-lp .pq-lp__wrap.e-con,
	.pq-lp .e-con.pq-lp__wrap,
	.pq-lp__wrap {
		width: min(100% - 2rem, var(--pq-max)) !important;
	}
}

/* Reset Elementor widget chrome so our section rhythm controls spacing */
.pq-lp .elementor-widget,
.pq-lp .elementor-element.elementor-widget {
	margin: 0 !important;
	padding: 0 !important;
}

.pq-lp .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

.pq-lp .elementor-widget-container > *:first-child {
	margin-top: 0;
}

.pq-lp .elementor-widget-container > *:last-child {
	margin-bottom: 0;
}

/* Vertical rhythm between stacked Elementor widgets (replaces collapsed margins) */
.pq-lp__hero-inner > .elementor-widget + .elementor-widget,
.pq-lp__intro-copy > .elementor-widget + .elementor-widget,
.pq-coll-purpose__copy > .elementor-widget + .elementor-widget,
.pq-lp__intro-inner > .elementor-widget + .elementor-widget,
.pq-lp__library-copy > .elementor-widget + .elementor-widget,
.pq-lp__close-inner > .elementor-widget + .elementor-widget,
.pq-lp__teaser .pq-lp__wrap > .elementor-widget + .elementor-widget,
.pq-palette-intro .pq-lp__wrap > .elementor-widget + .elementor-widget,
.pq-lp__faq .pq-lp__wrap > .elementor-widget + .elementor-widget {
	margin-top: 1.25rem !important;
}

/* Label → heading stays tight */
.pq-lp__hero-inner > .elementor-widget.pq-reveal--2,
.pq-lp__intro-inner > .elementor-widget.pq-reveal--2,
.pq-lp__close-inner > .elementor-widget.pq-reveal--2,
.pq-lp__teaser .pq-lp__wrap > .elementor-widget.pq-reveal--2,
.pq-palette-intro .pq-lp__wrap > .elementor-widget.pq-reveal--2,
.pq-palette-intro .pq-lp__wrap > .elementor-widget.pq-reveal--3,
.pq-lp__insp-head > .elementor-widget-heading,
.pq-coll-purpose__copy > .elementor-widget-heading {
	margin-top: 0 !important;
}

/* Button groups: spacing lives on the widget, not double-counted on .pq-lp__btns */
.pq-lp .elementor-widget-html:has(.pq-lp__btns) {
	margin-top: 2rem !important;
}

.pq-lp .elementor-widget-html .pq-lp__btns {
	margin-top: 0 !important;
}

.pq-lp__intro-copy > .elementor-widget-html:has(.pq-lp__pillars),
.pq-lp__intro-inner > .elementor-widget-html:has(.pq-lp__pillars) {
	margin-top: 0 !important;
}

.pq-lp__intro .pq-lp__pillar-icon {
	color: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
}

.pq-lp__intro .pq-lp__pillar-title {
	font-family: var(--pq-font-display) !important;
	padding-bottom: 0.4rem !important;
	color: var(--pq-text) !important;
}

.pq-lp__intro .pq-lp__pillar-kicker {
	font-family: var(--pq-font-body) !important;
	font-style: italic;
	text-transform: none !important;
	letter-spacing: 0 !important;
	color: var(--pq-text-soft) !important;
}

.pq-lp__intro-copy > .elementor-widget-html:has(.pq-lp__btns),
.pq-lp__intro-inner > .elementor-widget-html:has(.pq-lp__btns) {
	margin-top: 1.5rem !important;
}

.pq-palette-intro .pq-lp__wrap > .elementor-widget-html:has(.pq-lp__btns) {
	margin-top: 2rem !important;
}

.pq-lp__label {
	margin: 0 0 1rem !important;
}

.pq-lp__intro .pq-lp__label {
	margin: 0 0 0.85rem !important;
}

.pq-lp__hero-inner .pq-lp__brand {
	margin: 0 0 1.25rem !important;
}

.pq-lp__hero-inner .pq-lp__lede {
	margin: 1.35rem 0 0 !important;
}

.pq-lp__library-copy .pq-lp__body,
.pq-lp__intro .pq-lp__body,
.pq-lp__teaser .pq-lp__body,
.pq-lp__close .pq-lp__body,
.pq-palette-intro .pq-lp__body {
	margin-top: 1.25rem !important;
}

.pq-lp__teaser.pq-lp__surface--sand .pq-lp__wrap > .elementor-widget-heading + .elementor-widget-text-editor {
	margin-top: 1.1rem !important;
}

.pq-lp__teaser:has(.pq-lp__rule) .pq-lp__body,
.pq-lp__teaser .pq-lp__wrap > .elementor-widget-html:has(.pq-lp__rule) + .elementor-widget-text-editor .pq-lp__body {
	margin-top: 0 !important;
}

.pq-lp__intro .pq-lp__body {
	margin-top: 1.35rem !important;
}

.pq-lp__intro .pq-lp__color-strip {
	margin-top: 1rem !important;
}

.pq-lp__intro-copy > .elementor-widget:has(.pq-lp__color-strip),
.pq-lp__intro-inner > .elementor-widget:has(.pq-lp__color-strip) {
	margin-top: 1rem !important;
	width: 100% !important;
	max-width: none !important;
}

.pq-lp__intro .pq-lp__color-strip img {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover !important;
}

.pq-lp__intro .pq-lp__color-strip-name {
	margin: 0 !important;
	color: var(--pq-text, #1c1b18) !important;
}

.pq-lp__library-points {
	margin: 1.75rem 0 0 !important;
}

/* Library HTML blocks (points list) need the designed top gap */
.pq-lp__library-copy > .elementor-widget-html:has(.pq-lp__library-points) {
	margin-top: 1.75rem !important;
}

.pq-lp__library-copy > .elementor-widget-html:has(.pq-lp__library-points) .pq-lp__library-points {
	margin-top: 0 !important;
}

/* Buttons — force flex + gap (Elementor/theme often zero gap) */
.pq-lp .pq-lp__btns,
.pq-lp__btns {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 0.75rem 1rem !important;
	margin-top: 2rem !important;
}

.pq-lp .pq-lp__btns > a,
.pq-lp__btns > a {
	margin: 0 !important;
}

.pq-lp__teaser .pq-lp__btns,
.pq-lp__close .pq-lp__btns,
.pq-palette-intro .pq-lp__btns {
	justify-content: center !important;
}

.pq-lp__library-copy .pq-lp__btns,
.pq-lp__intro .pq-lp__btns,
.pq-lp__hero-inner .pq-lp__btns,
.pq-lp__insp .pq-lp__btns {
	justify-content: flex-start !important;
}

@media (max-width: 720px) {
	.pq-lp__intro .pq-lp__btns,
	.pq-lp__close .pq-lp__btns {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		justify-content: center !important;
		width: max-content !important;
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.pq-lp__intro .pq-lp__btns > a,
	.pq-lp__intro .pq-lp__btns .pq-lp__btn,
	.pq-lp__close .pq-lp__btns > a,
	.pq-lp__close .pq-lp__btns .pq-lp__btn {
		justify-content: center;
		width: 100%;
		box-sizing: border-box;
	}
}

/* Library points: tighter label column */
.pq-lp__library-points li {
	grid-template-columns: 7.5rem 1fr !important;
	gap: 1rem !important;
}

/* Proof strip — centered rail + even columns */
.pq-lp .pq-lp__proof-grid.e-con,
.pq-lp__proof-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 2rem 2.5rem !important;
	align-items: start !important;
	width: min(100% - 3rem, var(--pq-max)) !important;
	max-width: var(--pq-max) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	flex-direction: unset !important;
}

.pq-lp__proof .e-con.pq-reveal {
	width: auto !important;
	max-width: none !important;
}

.pq-lp__proof h3 {
	margin: 0 0 0.75rem !important;
}

.pq-lp__proof p {
	margin: 0 !important;
}

@media (max-width: 800px) {
	.pq-lp .pq-lp__proof-grid.e-con,
	.pq-lp__proof-grid {
		grid-template-columns: 1fr !important;
		gap: 1.75rem !important;
	}
}

/* Palette teaser rhythm */
.pq-lp__teaser .pq-lp__wrap > .elementor-widget-html {
	margin-top: 3rem !important; /* cats grid */
}

.pq-lp__teaser .pq-lp__wrap > .elementor-widget-html:has(.pq-lp__rule) {
	margin-top: 1.1rem !important;
}

.pq-lp__teaser .pq-lp__cats {
	margin-top: 0 !important;
}

/* Palette new colors — flexible columns from ACF selection count */
.pq-lp__teaser--new-colors .pq-lp__colors-head {
	margin: 0 0 1.75rem;
	text-align: center;
}

.pq-lp__teaser--new-colors .pq-lp__colors-heading {
	margin: 0;
	font-family: var(--pq-font-display, "Playfair Display", Georgia, serif) !important;
	font-size: clamp(1.85rem, 3.2vw, 2.65rem);
	font-weight: 400;
	letter-spacing: 0.01em;
	line-height: 1.15;
	text-align: center;
	color: var(--pq-text);
	text-transform: none;
	opacity: 1;
}

.pq-lp__teaser--new-colors .pq-lp__colors-subtitle {
	margin: 0.75rem auto 0;
	max-width: 38rem;
	font-size: clamp(1.2rem, 1.8vw, 1.4rem);
	line-height: 1.45;
	color: var(--pq-red, var(--pq-brand, #e31f2f));
	text-align: center;
}

.pq-lp__cats--colors {
	grid-template-columns: repeat(min(var(--pq-color-count, 4), 4), 1fr);
}

/* New colors — slab by default; fade in inspiration on hover (AuthTerra palette). */
.pq-lp__teaser--new-colors .pq-lp__cat figure {
	position: relative;
}

.pq-lp__teaser--new-colors .pq-lp__cat-insp {
	position: absolute;
	inset: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.28s ease;
}

.pq-lp__teaser--new-colors .pq-lp__cat.has-insp:hover img,
.pq-lp__teaser--new-colors .pq-lp__cat.has-insp:focus-within img {
	transform: none;
}

.pq-lp__teaser--new-colors .pq-lp__cat.has-insp:hover .pq-lp__cat-insp,
.pq-lp__teaser--new-colors .pq-lp__cat.has-insp:focus-within .pq-lp__cat-insp {
	opacity: 1;
}

@media (max-width: 900px) {
	.pq-lp__cats--colors {
		grid-template-columns: repeat(min(var(--pq-color-count, 2), 2), 1fr);
	}
}

@media (max-width: 520px) {
	.pq-lp__cats--colors {
		grid-template-columns: 1fr;
	}
}

/* Palette new colors — slider when > 4 */
.pq-lp__colors-slider {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 0.75rem;
	margin-top: 3rem;
}

.pq-lp__teaser--new-colors .pq-lp__colors-slider {
	margin-top: 0;
}

.pq-lp__colors-swiper {
	width: 100%;
	overflow: hidden;
}

.pq-lp__colors-swiper .swiper-slide {
	height: auto;
}

.pq-lp__colors-swiper .pq-lp__cat {
	width: 100%;
}

.pq-lp .pq-lp__colors-nav {
	appearance: none;
	-webkit-appearance: none;
	flex-shrink: 0;
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	margin: 0;
	padding: 0;
	border: 0 !important;
	border-bottom: 0 !important;
	border-radius: 0;
	background: transparent;
	color: var(--pq-red, var(--pq-brand, #e31f2f));
	font-size: 0;
	line-height: 0;
	text-decoration: none !important;
	box-shadow: none;
	cursor: pointer;
	transition: color 0.25s var(--pq-ease), opacity 0.25s var(--pq-ease);
}

.pq-lp .pq-lp__colors-nav::before,
.pq-lp .pq-lp__colors-nav::after {
	content: none !important;
	display: none !important;
}

.pq-lp .pq-lp__colors-nav,
.pq-lp .pq-lp__colors-nav:hover,
.pq-lp .pq-lp__colors-nav:focus,
.pq-lp .pq-lp__colors-nav:focus-visible,
.pq-lp .pq-lp__colors-nav:active {
	text-decoration: none !important;
	border: 0 !important;
	border-bottom: 0 !important;
	outline: none;
	box-shadow: none;
	color: var(--pq-red, var(--pq-brand, #e31f2f));
}

.pq-lp .pq-lp__colors-nav svg {
	display: block;
	width: 1.35rem;
	height: 1.35rem;
}

.pq-lp .pq-lp__colors-nav:hover {
	color: var(--pq-brand-hover, #c91a28);
}

.pq-lp__colors-nav.swiper-button-disabled {
	opacity: 0.28;
	pointer-events: none;
}

@media (max-width: 700px) {
	.pq-lp__colors-slider {
		grid-template-columns: minmax(0, 1fr);
		gap: 1rem;
	}

	.pq-lp .pq-lp__colors-nav,
	.pq-lp__colors-nav {
		display: none !important;
	}
}

.pq-lp__teaser .pq-lp__wrap > .elementor-widget-html + .elementor-widget-html {
	margin-top: 2.5rem !important; /* button after cats */
}

.pq-lp__cat h3 {
	margin: 0.9rem 0 0.25rem !important;
}

.pq-lp__cat p {
	margin: 0 !important;
}

/* Inspiration marquee — force card size + gutters */
.pq-lp__insp-head {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center !important;
	column-gap: 1.75rem !important;
	max-width: none !important;
	margin: 0 0 1.15rem !important;
}

.pq-lp__insp-head > .elementor-element {
	grid-column: 1 / -1;
	min-width: 0;
}

.pq-lp__insp-head > .elementor-widget-heading {
	grid-column: 1;
	grid-row: 2;
	width: auto !important;
	max-width: none !important;
	margin-top: 0.15rem !important;
}

.pq-lp__insp-cta-wrap,
.pq-lp__insp-head > .elementor-element.pq-lp__insp-cta-wrap {
	grid-column: 2;
	grid-row: 2;
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	align-self: center;
}

.pq-lp__insp-cta-wrap .elementor-widget-container {
	width: auto !important;
}

.pq-lp a.pq-lp__insp-cta,
.pq-lp__insp-cta {
	background: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
	border-color: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
	color: #fff !important;
}

.pq-lp a.pq-lp__insp-cta:hover,
.pq-lp__insp-cta:hover {
	background: var(--pq-brand-hover, #c91a28) !important;
	border-color: var(--pq-brand-hover, #c91a28) !important;
	color: #fff !important;
}

.pq-lp__insp-head > .elementor-widget + .elementor-widget {
	margin-top: 0.45rem !important;
}

.pq-lp__insp-head > .elementor-widget-heading + .elementor-element.pq-lp__insp-cta-wrap,
.pq-lp__insp-head > .elementor-element.pq-lp__insp-cta-wrap + .elementor-widget {
	margin-top: 0.15rem !important;
}

.pq-lp__insp h2,
.pq-lp__insp .elementor-heading-title {
	font-size: clamp(1.7rem, 3vw, 2.45rem) !important;
	line-height: 1.12 !important;
	white-space: nowrap;
}

@media (max-width: 720px) {
	.pq-lp__insp h2,
	.pq-lp__insp .elementor-heading-title {
		white-space: normal;
	}

	.pq-lp__insp-head {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.pq-lp__insp-head > .elementor-widget-heading,
	.pq-lp__insp-cta-wrap,
	.pq-lp__insp-head > .elementor-element.pq-lp__insp-cta-wrap {
		grid-column: 1;
		grid-row: auto;
	}
}

.pq-lp__insp .pq-lp__label {
	margin: 0 0 0.4rem !important;
}

.pq-lp__insp .pq-lp__rule {
	margin: 0.55rem 0 !important;
}

.pq-lp__insp .pq-lp__body {
	margin-top: 0 !important;
}

.pq-lp .pq-lp__insp-viewport,
.pq-lp__insp-viewport {
	display: block !important;
	overflow: hidden !important;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	margin-top: 0 !important;
	padding-inline: var(--pq-insp-gutter) !important;
	box-sizing: border-box !important;
}

.pq-lp .pq-lp__insp-track,
.pq-lp__insp-track {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 0 !important;
	width: max-content !important;
	max-width: none !important;
	will-change: transform;
	backface-visibility: hidden;
	animation: pq-insp-drift var(--pq-insp-duration, 48s) linear infinite;
}

.pq-lp .pq-lp__insp-set,
.pq-lp__insp-set {
	display: flex !important;
	flex: 0 0 auto !important;
	flex-wrap: nowrap !important;
	gap: 1rem !important;
	padding-right: 1rem !important;
	margin: 0 !important;
	width: max-content !important;
}

.pq-lp .pq-lp__insp-card,
.pq-lp__insp-card {
	flex: 0 0 min(72vw, 28rem) !important;
	width: min(72vw, 28rem) !important;
	max-width: min(72vw, 28rem) !important;
	margin: 0 !important;
	display: block !important;
	text-decoration: none !important;
	color: inherit !important;
	position: relative;
}

.pq-lp .pq-lp__insp-card figure,
.pq-lp__insp-card figure {
	margin: 0 !important;
	position: relative;
	overflow: hidden;
}

.pq-lp .pq-lp__insp-card img,
.pq-lp__insp-card img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 3 / 4 !important;
	object-fit: cover !important;
	margin: 0 !important;
}

.pq-lp .pq-lp__insp-name,
.pq-lp__insp-name {
	color: #ffffff !important;
}

.pq-lp__insp .pq-lp__wrap:has(.pq-lp__btns),
.pq-lp__insp > .e-con.pq-lp__wrap:last-child {
	width: 100% !important;
	max-width: none !important;
	padding-inline: var(--pq-insp-gutter) !important;
	box-sizing: border-box !important;
	margin-top: 0 !important;
}

.pq-lp__insp > .e-con.pq-lp__wrap:last-child .pq-lp__btns {
	margin-top: 1.35rem !important;
}

/* Close CTA rhythm */
.pq-lp__close-inner > .elementor-widget.pq-reveal--2 {
	margin-top: 0 !important;
}

.pq-lp__close .pq-lp__label {
	margin-bottom: 1rem !important;
}

.pq-lp__close h2,
.pq-lp__close h2.elementor-heading-title {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.pq-lp__close .pq-lp__body {
	margin-top: 1.25rem !important;
	margin-bottom: 0 !important;
}

/* FAQ — restore heading space + summary padding */
.pq-lp__faq h2,
.pq-lp__faq h2.elementor-heading-title {
	margin: 0 0 2rem !important;
}

.pq-lp__faq .elementor-widget-html {
	margin-top: 0 !important;
}

.pq-lp__faq details {
	position: relative;
	margin: 0 !important;
	padding: 0 1.15rem !important;
	border-top: 1px solid var(--pq-line) !important;
	transition: background 0.25s var(--pq-ease);
}

.pq-lp__faq details:last-child {
	border-bottom: 1px solid var(--pq-line) !important;
}

.pq-lp__faq details[open] {
	background: rgba(227, 31, 47, 0.045);
}

.pq-lp__faq details[open]::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--pq-red, var(--pq-brand, #e31f2f));
}

.pq-lp__faq summary {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	gap: 1rem !important;
	padding: 1.25rem 0 !important;
	margin: 0 !important;
	cursor: pointer;
	list-style: none;
	font-family: var(--pq-font-body) !important;
	font-size: 1.3125rem !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.01em;
	color: var(--pq-text) !important;
	transition: color 0.25s var(--pq-ease);
}

.pq-lp__faq summary:hover,
.pq-lp__faq details[open] summary {
	color: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
}

.pq-lp__faq summary::after {
	content: "+";
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 1.75rem;
	height: 1.75rem;
	border: 1px solid var(--pq-line);
	border-radius: 50%;
	font-size: 1.15rem;
	font-weight: 500;
	line-height: 1;
	color: var(--pq-text);
	opacity: 0.7;
}

.pq-lp__faq details[open] summary::after {
	content: "–";
	border-color: var(--pq-red, var(--pq-brand, #e31f2f));
	color: var(--pq-red, var(--pq-brand, #e31f2f));
	opacity: 1;
}

.pq-lp__faq details p {
	margin: 0 0 1.45rem !important;
	padding: 0 !important;
	max-width: 48rem;
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.65;
	color: var(--pq-text);
	opacity: 0.82;
}

/* Elementor Accordion — match native HTML FAQ */
.pq-lp__faq .elementor-widget-accordion,
.pq-lp__faq .elementor-widget-n-accordion {
	margin-top: 0 !important;
}

.pq-lp__faq .elementor-accordion,
.pq-lp__faq .e-n-accordion {
	border: 0;
}

.pq-lp__faq .elementor-accordion .elementor-accordion-item,
.pq-lp__faq .e-n-accordion-item {
	position: relative;
	margin: 0 !important;
	padding: 0 1.15rem !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	border-top: 1px solid var(--pq-line) !important;
	box-shadow: none !important;
	transition: background 0.25s var(--pq-ease);
}

.pq-lp__faq .elementor-accordion .elementor-accordion-item:last-child,
.pq-lp__faq .e-n-accordion-item:last-child {
	border-bottom: 1px solid var(--pq-line) !important;
}

.pq-lp__faq .elementor-accordion .elementor-accordion-item:has(.elementor-active),
.pq-lp__faq .e-n-accordion-item[open] {
	background: rgba(227, 31, 47, 0.045) !important;
}

.pq-lp__faq .elementor-accordion .elementor-accordion-item:has(.elementor-active)::before,
.pq-lp__faq .e-n-accordion-item[open]::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--pq-red, var(--pq-brand, #e31f2f));
}

.pq-lp__faq .elementor-accordion .elementor-tab-title,
.pq-lp__faq .e-n-accordion-item-title {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 1rem !important;
	padding: 1.25rem 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	font-family: var(--pq-font-body) !important;
	font-size: 1.3125rem !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.01em !important;
	text-transform: none !important;
	color: var(--pq-text) !important;
	transition: color 0.25s var(--pq-ease);
}

.pq-lp__faq .elementor-accordion .elementor-tab-title:hover,
.pq-lp__faq .elementor-accordion .elementor-tab-title.elementor-active,
.pq-lp__faq .e-n-accordion-item-title:hover,
.pq-lp__faq .e-n-accordion-item[open] > .e-n-accordion-item-title {
	color: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
}

/* Titles are <a class="elementor-accordion-title"> — set the face on the <a>, not inherit. */
.pq-lp__faq .elementor-accordion .elementor-accordion-title,
.pq-lp__faq .elementor-accordion a.elementor-accordion-title,
.pq-lp__faq .elementor-accordion .elementor-tab-title a,
.pq-lp__faq .e-n-accordion-item-title-text,
.pq-lp__faq .e-n-accordion-item-title-text span {
	flex: 1 1 auto;
	font-family: "Cormorant Infant", Georgia, "Times New Roman", serif !important;
	font-size: 1.3125rem !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.01em !important;
	text-transform: none !important;
	color: inherit !important;
}

/* Theme `a:focus { outline: dotted }` hugs the title on click — hide it for pointer, keep a ring for keyboard. */
.pq-lp__faq .elementor-accordion .elementor-accordion-title:focus,
.pq-lp__faq .elementor-accordion a.elementor-accordion-title:focus,
.pq-lp__faq .elementor-accordion .elementor-tab-title:focus,
.pq-lp__faq .elementor-accordion .elementor-tab-title a:focus,
.pq-lp__faq .e-n-accordion-item-title:focus {
	outline: none !important;
}

.pq-lp__faq .elementor-accordion .elementor-accordion-title:focus-visible,
.pq-lp__faq .elementor-accordion a.elementor-accordion-title:focus-visible,
.pq-lp__faq .elementor-accordion .elementor-tab-title:focus-visible,
.pq-lp__faq .elementor-accordion .elementor-tab-title a:focus-visible,
.pq-lp__faq .e-n-accordion-item-title:focus-visible {
	outline: 2px solid var(--pq-red, var(--pq-brand, #e31f2f)) !important;
	outline-offset: 4px;
}

.pq-lp__faq .elementor-accordion .elementor-accordion-icon,
.pq-lp__faq .e-n-accordion-item-title-icon {
	display: none !important;
}

.pq-lp__faq .elementor-accordion .elementor-tab-title::after,
.pq-lp__faq .e-n-accordion-item-title::after {
	content: "+";
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 1.75rem;
	height: 1.75rem;
	border: 1px solid var(--pq-line);
	border-radius: 50%;
	font-family: var(--pq-font-body);
	font-size: 1.15rem;
	font-weight: 500;
	line-height: 1;
	color: var(--pq-text);
	opacity: 0.7;
	transition: border-color 0.25s var(--pq-ease), color 0.25s var(--pq-ease), opacity 0.25s var(--pq-ease);
}

.pq-lp__faq .elementor-accordion .elementor-tab-title.elementor-active::after,
.pq-lp__faq .e-n-accordion-item[open] > .e-n-accordion-item-title::after {
	content: "–";
	border-color: var(--pq-red, var(--pq-brand, #e31f2f));
	color: var(--pq-red, var(--pq-brand, #e31f2f));
	opacity: 1;
}

.pq-lp__faq .elementor-accordion .elementor-tab-content,
.pq-lp__faq .e-n-accordion-item > .e-con {
	border: 0 !important;
	padding: 0 0 1.45rem !important;
	margin: 0 !important;
	background: transparent !important;
}

.pq-lp__faq .elementor-accordion .elementor-tab-content p,
.pq-lp__faq .e-n-accordion-item p {
	margin: 0 !important;
	padding: 0 !important;
	max-width: 48rem;
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.65;
	color: var(--pq-text);
	opacity: 0.82;
}

/* Heading titles — keep type, don’t zero horizontal margins sitewide */
.pq-lp .elementor-heading-title {
	font-family: var(--pq-font-display) !important;
	font-weight: 400;
	letter-spacing: -0.01em;
	color: inherit;
}

.pq-lp__teaser h2,
.pq-lp__teaser h2.elementor-heading-title,
.pq-lp__close h2,
.pq-lp__close h2.elementor-heading-title {
	margin-left: auto !important;
	margin-right: auto !important;
	text-align: center !important;
}

.pq-lp__teaser.pq-lp__surface--sand .pq-lp__label,
.pq-lp__teaser.pq-lp__surface--sand .elementor-widget-text-editor .pq-lp__label {
	color: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
	opacity: 1;
}

.pq-lp__teaser .pq-lp__label,
.pq-lp__teaser .pq-lp__body,
.pq-lp__teaser .elementor-widget-text-editor,
.pq-lp__close .pq-lp__label,
.pq-lp__close .pq-lp__body,
.pq-lp__close .elementor-widget-text-editor,
.pq-palette-intro .pq-lp__brand,
.pq-palette-intro .pq-lp__body,
.pq-palette-intro .elementor-widget-text-editor,
.pq-palette-intro h1.elementor-heading-title {
	text-align: center !important;
}

/* New Colors container + shortcode sit full-bleed under the intro */
.pq-palette-new-colors.e-con,
.pq-lp .pq-palette-new-colors.e-con {
	width: 100% !important;
	max-width: none !important;
	align-self: stretch !important;
}

.pq-palette-new-colors > .elementor-widget-shortcode,
.pq-palette-new-colors > .elementor-element.elementor-widget-shortcode,
.pq-lp .pq-lp__new-colors-widget {
	width: 100% !important;
	max-width: none !important;
	align-self: stretch !important;
}

.pq-lp--palette .pq-lp__teaser--new-colors {
	padding-top: clamp(1.5rem, 3.5vw, 2.5rem);
	padding-bottom: clamp(1.75rem, 4vw, 3rem);
}

.pq-lp__library-media .elementor-widget-image img,
.pq-lp__intro-media .elementor-widget-image img {
	aspect-ratio: 4 / 5;
	object-fit: cover;
	transform: scale(1.01);
	transition: transform 1.1s var(--pq-ease);
}

.pq-lp__library-media:hover .elementor-widget-image img,
.pq-lp__intro-media:hover .elementor-widget-image img {
	transform: scale(1.045);
}

@media (max-width: 900px) {
	.pq-lp__library-media .elementor-widget-image img,
	.pq-lp__intro-media .elementor-widget-image img {
		aspect-ratio: 16 / 11;
	}

	.pq-lp__library-points li {
		grid-template-columns: 5.5rem 1fr !important;
	}
}

@media (max-width: 640px) {
	.pq-lp__library-points li {
		grid-template-columns: 1fr !important;
		gap: 0.2rem !important;
	}
}

/* ==========================================================================
   PQ single slab (single-pq.php) — match landing design language
   ========================================================================== */

body.pq-single-page {
	--pq-sand: #cccbbc;
	--pq-ink: #373737;
	--pq-ink-soft: rgba(55, 55, 55, 0.72);
	--pq-brand: #e31f2f;
	--pq-brand-hover: #c91a28;
	--pq-text: #1c1b18;
	--pq-text-soft: rgba(28, 27, 24, 0.72);
	--pq-cream: #f7f6f1;
	--pq-white: #ffffff;
	--pq-line: rgba(28, 27, 24, 0.18);
	--pq-font-display: "Playfair Display", Georgia, "Times New Roman", serif;
	--pq-font-body: "Cormorant Infant", Georgia, "Times New Roman", serif;
	--pq-font-ui: "gotham", "Gotham", "Nunito Sans", "Helvetica Neue", Arial, sans-serif;
	--pq-max: 1240px;
	--pq-ease: cubic-bezier(0.22, 1, 0.36, 1);
	
}

/* Logo / primary header stays white over the cream page */
body.pq-single-page .page_header_desktop,
body.pq-single-page .page_header_desktop.hide_on_mobile {
	background: #ffffff !important;
	background-color: #ffffff !important;
}

body.pq-single-page #content,
body.pq-single-page .site-content {
	padding: 0;
	background: transparent;
}

body.pq-single-page .pq-single.pq-lp {
	/* White base so gaps between white sections stay white; sand painted per-section */
	background: #ffffff;
	overflow: visible;
}

body.pq-single-page .pq-single .row {
	width: min(100% - 3rem, var(--pq-max));
	max-width: var(--pq-max);
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

/* ---- Hero / product identity ---- */
body.pq-single-page .pq-single__hero,
body.pq-single-page .page_heading.quartz_single_heading {
	padding: clamp(2rem, 4vw, 3.25rem) 0 clamp(1.5rem, 3vw, 2.25rem) !important;
	background: var(--pq-cream) !important;
	background-color: #f7f6f1 !important;
	text-align: left;
}

body.pq-single-page .pq-single__crumbs,
body.pq-single-page .pq-single__crumbs a,
body.pq-single-page .single .quartz_single_heading .crumbs,
body.pq-single-page .single .quartz_single_heading .crumbs a {
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--pq-text-soft) !important;
	text-align: left;
}

body.pq-single-page .pq-single__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1.5rem 2rem;
	flex-wrap: wrap;
	margin-top: 1.25rem;
}

body.pq-single-page .pq-single__identity .pq-lp__label {
	margin: 0 0 0.65rem;
	opacity: 0.7;
}

body.pq-single-page .pq-single__hero h1,
body.pq-single-page .single .quartz_single_heading h1 {
	margin: 0;
	padding: 0;
	font-family: var(--pq-font-display) !important;
	font-weight: 400 !important;
	font-size: clamp(2.4rem, 5vw, 3.75rem) !important;
	line-height: 1.05 !important;
	letter-spacing: -0.02em;
	color: var(--pq-text) !important;
	text-transform: none !important;
	text-align: left;
}

body.pq-single-page .pq-single__meta,
body.pq-single-page .quartz_sku {
	margin: 0.85rem 0 0 !important;
	font-family: var(--pq-font-body) !important;
	font-weight: 300 !important;
	font-size: 1.2rem !important;
	line-height: 1.4 !important;
	color: var(--pq-text-soft) !important;
}

body.pq-single-page .pq-single__meta a,
body.pq-single-page .quartz_sku a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

body.pq-single-page .pq-single__hero,
body.pq-single-page .page_heading.quartz_single_heading,
body.pq-single-page .pq-single__head {
	overflow: visible;
	position: relative;
	z-index: 5;
}

body.pq-single-page .pq-single__tools {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	position: relative;
	z-index: 6;
}

body.pq-single-page .pq-single__tools > * {
	width: auto !important;
	flex: 0 0 auto;
}

body.pq-single-page .pq-single__tools .zoom-btn {
	display: none !important;
}

body.pq-single-page .pq-single__tools .share-btn,
body.pq-single-page .pq-single__tools .single-like-btn-holder .share-btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 0.5rem !important;
	min-height: 2.75rem;
	height: auto !important;
	padding: 0.65rem 1rem !important;
	border: 1px solid var(--pq-ink) !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--pq-text) !important;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem !important;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	cursor: pointer;
}

body.pq-single-page .pq-single__tools .share-btn svg path,
body.pq-single-page .pq-single__tools .zoom-btn svg path {
	fill: none;
	stroke: currentColor;
}

body.pq-single-page .pq-single__tools .share-btn svg.favorite-heart path,
body.pq-single-page .pq-single__tools .single-like-btn-holder .share-btn svg path {
	fill: none !important;
	stroke: currentColor !important;
}

body.pq-single-page .pq-single__tools .share-btn svg.favorite-heart.is-saved path,
body.pq-single-page .pq-single__tools .single-like-btn-holder .share-btn svg.is-saved path {
	fill: currentColor !important;
	stroke: currentColor !important;
}

body.pq-single-page .pq-single__tools .zoom-btn.zoom-btn-active,
body.pq-single-page .pq-single__tools .share-btn.active {
	background: var(--pq-ink) !important;
	color: #fff !important;
}

body.pq-single-page .pq-single__tools .zoom-btn.zoom-btn-active svg path {
	stroke: currentColor;
}

body.pq-single-page .pq-single__tools .single-like-btn-holder .share-btn {
	background: transparent !important;
}

/* ---- Share panel (replaces legacy overlay icons) ---- */
body.pq-single-page .pq-share {
	position: relative;
	width: auto !important;
	flex: 0 0 auto;
}

body.pq-single-page .pq-share__trigger {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: 2.75rem;
	padding: 0.65rem 1rem;
	border: 1px solid var(--pq-ink);
	border-radius: 0;
	background: transparent;
	color: var(--pq-text);
	font-family: var(--pq-font-ui);
	font-size: 0.72rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	line-height: 1;
	cursor: pointer;
	transition: background 0.25s var(--pq-ease), color 0.25s var(--pq-ease);
}

body.pq-single-page .pq-share__trigger:hover,
body.pq-single-page .pq-share.is-open .pq-share__trigger {
	background: var(--pq-ink);
	color: #fff;
}

body.pq-single-page .pq-single__tools .pq-spec-sheet {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: 2.75rem;
	padding: 0.65rem 1rem;
	border: 1px solid var(--pq-ink);
	border-radius: 0;
	background: transparent;
	color: var(--pq-text) !important;
	font-family: var(--pq-font-ui);
	font-size: 0.72rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	line-height: 1;
	text-decoration: none !important;
	cursor: pointer;
	transition: background 0.25s var(--pq-ease), color 0.25s var(--pq-ease);
}

body.pq-single-page .pq-single__tools .pq-spec-sheet:hover {
	background: var(--pq-ink);
	color: #fff !important;
}

body.pq-single-page .pq-single__tools .pq-spec-sheet:focus-visible {
	outline: 2px solid var(--pq-ink);
	outline-offset: 3px;
}

body.pq-single-page .pq-single__tools .pq-spec-sheet span[aria-hidden="true"] {
	display: inline-grid;
	place-items: center;
	width: 1.35rem;
	height: 1.35rem;
	border: 1px solid currentColor;
	border-radius: 50%;
	flex-shrink: 0;
}

body.pq-single-page .pq-single__tools .pq-spec-sheet span[aria-hidden="true"] svg {
	display: block;
	width: 0.7rem;
	height: 0.7rem;
}

body.pq-single-page .pq-share__trigger:focus-visible {
	outline: 2px solid var(--pq-ink);
	outline-offset: 3px;
}

body.pq-single-page .pq-share__panel[hidden] {
	display: none;
}

body.pq-single-page .pq-share__panel {
	position: absolute;
	top: calc(100% + 0.55rem);
	right: 0;
	z-index: 40;
	width: min(22.5rem, calc(100vw - 2rem));
}

body.pq-single-page .pq-share__scrim {
	display: none;
}

body.pq-single-page .pq-share__card {
	background: var(--pq-cream);
	border: 1px solid var(--pq-ink);
	color: var(--pq-text);
	padding: 1.15rem 1.2rem 1.25rem;
	text-align: left;
}

body.pq-single-page .pq-share.is-open .pq-share__card {
	animation: pq-share-in 0.28s var(--pq-ease);
}

@keyframes pq-share-in {
	from {
		opacity: 0;
		transform: translateY(-8px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

body.pq-single-page .pq-share__top {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 0.85rem;
	align-items: center;
	margin-bottom: 1.05rem;
}

body.pq-single-page .pq-share__swatch {
	display: block;
	width: 3.25rem;
	height: 3.25rem;
	object-fit: cover;
	background: #fff;
}

body.pq-single-page .pq-share__intro {
	min-width: 0;
}

body.pq-single-page .pq-share__intro .pq-lp__label {
	margin: 0 0 0.2rem;
	opacity: 0.7;
}

body.pq-single-page .pq-share__name {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--pq-font-display) !important;
	font-weight: 400 !important;
	font-size: 1.35rem !important;
	line-height: 1.15 !important;
	letter-spacing: -0.02em;
	color: var(--pq-text) !important;
	text-transform: none !important;
	text-align: left !important;
}

body.pq-single-page .pq-share__close {
	display: inline-grid;
	place-items: center;
	width: 2rem;
	height: 2rem;
	margin: -0.25rem -0.2rem 0 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--pq-text);
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
}

body.pq-single-page .pq-share__close:hover {
	color: var(--pq-brand);
}

body.pq-single-page .pq-share__copy,
body.pq-single-page .pq-share__native {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	width: 100%;
	min-height: 2.75rem;
	padding: 0.65rem 1rem;
	border: 1px solid var(--pq-ink);
	background: #fff;
	color: var(--pq-text);
	font-family: var(--pq-font-ui);
	font-size: 0.72rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background 0.25s var(--pq-ease), color 0.25s var(--pq-ease);
}

body.pq-single-page .pq-share__copy:hover,
body.pq-single-page .pq-share__native:hover,
body.pq-single-page .pq-share__copy.is-copied {
	background: var(--pq-ink);
	color: #fff;
}

body.pq-single-page .pq-share__copy:focus-visible,
body.pq-single-page .pq-share__native:focus-visible,
body.pq-single-page .pq-share__channel:focus-visible,
body.pq-single-page .pq-share__close:focus-visible {
	outline: 2px solid var(--pq-ink);
	outline-offset: 2px;
}

body.pq-single-page .pq-share__native {
	margin-top: 0.5rem;
	background: transparent;
}

body.pq-single-page .pq-share__native[hidden],
body.pq-single-page .pq-share__copied[hidden] {
	display: none;
}

body.pq-single-page .pq-share__copied {
	margin: 0.45rem 0 0;
	font-family: var(--pq-font-body);
	font-size: 1rem;
	font-weight: 300;
	color: var(--pq-text-soft);
}

body.pq-single-page .pq-share__channels-label {
	margin: 1.15rem 0 0.7rem;
	font-family: var(--pq-font-ui);
	font-size: 0.68rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--pq-text-soft);
}

body.pq-single-page .pq-share__channels {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0.45rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.pq-single-page .pq-share__channel {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
	padding: 0.35rem 0.15rem 0.15rem;
	color: var(--pq-text) !important;
	font-family: var(--pq-font-ui);
	font-size: 0.62rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none !important;
	text-align: center;
}

body.pq-single-page .pq-share__icon {
	display: grid;
	place-items: center;
	width: 2.55rem;
	height: 2.55rem;
	border: 1px solid var(--pq-ink);
	background: #fff;
	color: var(--pq-text);
	transition: background 0.25s var(--pq-ease), color 0.25s var(--pq-ease);
}

body.pq-single-page .pq-share__channel:hover .pq-share__icon {
	background: var(--pq-ink);
	color: #fff;
}

@media (max-width: 720px) {
	body.pq-share-open {
		overflow: hidden;
	}

	body.pq-single-page .pq-share__panel {
		position: fixed;
		inset: 0;
		top: 0;
		right: 0;
		width: auto;
		z-index: 10100;
		display: flex;
		align-items: flex-end;
	}

	body.pq-single-page .pq-share__panel[hidden] {
		display: none;
	}

	body.pq-single-page .pq-share__scrim {
		display: block;
		position: absolute;
		inset: 0;
		border: 0;
		padding: 0;
		margin: 0;
		background: rgba(28, 27, 24, 0.42);
		cursor: pointer;
	}

	body.pq-single-page .pq-share__card {
		position: relative;
		z-index: 1;
		width: 100%;
		padding: 1.35rem 1.25rem calc(1.35rem + env(safe-area-inset-bottom, 0px));
		background: #fff;
		animation-name: pq-share-sheet-in;
	}

	body.pq-single-page .pq-share__name {
		font-size: 1.5rem !important;
	}
}

@keyframes pq-share-sheet-in {
	from {
		opacity: 0;
		transform: translateY(18px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.pq-single-page .pq-share__trigger,
	body.pq-single-page .pq-share__copy,
	body.pq-single-page .pq-share__native,
	body.pq-single-page .pq-share__icon {
		transition: none;
	}

	body.pq-single-page .pq-share.is-open .pq-share__card {
		animation: none;
	}
}

/* ---- Slab image on Vadara-style A-frame base ---- */
body.pq-single-page .pq-single__slab,
body.pq-single-page .main_image {
	padding: clamp(1.25rem, 3vw, 2.25rem) 0 clamp(2rem, 4vw, 3.25rem);
	margin: 0;
	background: var(--pq-cream, #f7f6f1) !important;
	background-color: #f7f6f1 !important;
	overflow: visible;
}

body.pq-single-page .pq-single__slab .row {
	width: min(100% - 2rem, 1400px);
	max-width: 1400px;
}

body.pq-single-page .pq-single__stand {
	position: relative;
	width: 100%;
	margin: 0 auto;
	overflow: visible;
}

body.pq-single-page .pq-single__slab .main_image_container,
body.pq-single-page .main_image .main_image_container {
	position: relative;
	z-index: 2;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	background: transparent;
	border: 0 !important;
	/* Contact-first: thin edge + short under-slab cast (not a floating card) */
	box-shadow:
		0 0 0 1px rgba(28, 27, 24, 0.05),
		0 1px 2px rgba(28, 27, 24, 0.08),
		0 6px 14px -4px rgba(28, 27, 24, 0.16);
}

body.pq-single-page .pq-single__aframe-base {
	display: block;
	position: relative;
	z-index: 1;
	width: 80%;
	height: auto;
	margin: 0 auto;
	pointer-events: none;
	user-select: none;
	/* Soft ground presence under the feet without a second hard band */
	filter: drop-shadow(0 10px 14px rgba(28, 27, 24, 0.14));
}

body.pq-single-page .pq-single__slab .main_image_container.zoom-enabled {
	width: 100%;
	overflow: hidden;
	cursor: crosshair;
	box-shadow:
		0 0 0 1px rgba(28, 27, 24, 0.06),
		0 2px 6px rgba(28, 27, 24, 0.10),
		0 8px 18px -4px rgba(28, 27, 24, 0.16);
}

body.pq-single-page .pq-single__slab .main_image_container img.base_image,
body.pq-single-page .main_image img.base_image {
	display: block;
	width: 100%;
	height: auto;
	border: 0 !important;
	margin: 0 !important;
}

@media (max-width: 720px) {
	body.pq-single-page .pq-single__aframe-base {
		width: 80%;
		margin: 0 auto;
	}
}

/* ---- Description + CTAs ---- */
body.pq-single-page .pq-single__content,
body.pq-single-page .quartz_content {
	padding: clamp(2.5rem, 5vw, 3.5rem) 0;
	margin: 0 !important;
	background: var(--pq-cream) !important;
	background-color: #f7f6f1 !important;
	border: 0 !important;
}

body.pq-single-page .pq-single__content .row,
body.pq-single-page .quartz_content .row {
	border: 0 !important;
	border-bottom: 0 !important;
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

body.pq-single-page .pq-single__desc,
body.pq-single-page .quartz-desc {
	max-width: 46rem;
	margin: 0 auto 1.75rem;
	font-family: var(--pq-font-body) !important;
	font-weight: 300;
	font-size: clamp(1.4rem, 2.6vw, 1.85rem) !important;
	line-height: 1.5;
	color: var(--pq-text);
	text-align: center;
}

body.pq-single-page .pq-single__desc p,
body.pq-single-page .quartz-desc p {
	margin: 0 0 1rem;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit;
	line-height: inherit;
	color: inherit;
}

body.pq-single-page .pq-single__ctas {
	margin-top: 0;
	justify-content: center;
	align-items: center;
}

body.pq-single-page .pq-single__ctas .single-like-btn-holder .share-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	min-height: 3rem;
	padding: 0.85rem 1.35rem;
	border: 1px solid var(--pq-ink);
	background: transparent !important;
	color: var(--pq-text) !important;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.8125rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border-radius: 0;
}

body.pq-single-page .pq-single__ctas .single-like-btn-holder .share-btn svg.favorite-heart path {
	fill: none !important;
	stroke: currentColor !important;
}

body.pq-single-page .pq-single__ctas .single-like-btn-holder .share-btn svg.is-saved path {
	fill: currentColor !important;
}

body.pq-single-page .pq-single__ctas .cta_blue {
	display: none; /* legacy fallback if any remain */
}

body.pq-single-page .pq-single__ctas .pq-spec-sheet-cta span[aria-hidden="true"] svg {
	display: block;
	width: 0.7rem;
	height: 0.7rem;
}

body.pq-single-page .pq-single__ctas .pq-spec-sheet-cta:hover span[aria-hidden="true"] {
	transform: none;
}

/* ---- Specs strip ---- */
body.pq-single-page .pq-single__specs,
body.pq-single-page .quartz_specs {
	padding: clamp(3.25rem, 7vw, 5rem) 0;
	margin: 0 !important;
	background: var(--pq-cream, #f7f6f1) !important;
}

body.pq-single-page .pq-single__specs .row,
body.pq-single-page .pq-single__specs-inner,
body.pq-single-page .quartz_specs .row {
	display: grid !important;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: clamp(2rem, 5vw, 4.5rem);
	align-items: end;
	margin: 0 auto !important;
	border: 0;
}

body.pq-single-page .pq-single__specs-lead {
	max-width: 28rem;
}

body.pq-single-page .pq-single__specs-lead .pq-lp__label {
	margin: 0 0 1rem;
	color: var(--pq-text, #1c1b18);
	opacity: 0.55;
}

body.pq-single-page .pq-single__specs-title {
	margin: 0 0 1.15rem;
	font-family: var(--pq-font-display) !important;
	font-size: clamp(1.85rem, 3.2vw, 2.65rem);
	font-weight: 400;
	line-height: 1.12;
	letter-spacing: -0.02em;
	color: var(--pq-text, #1c1b18);
}

body.pq-single-page .pq-single__specs-apps {
	margin: 0;
	font-family: var(--pq-font-body) !important;
	font-size: clamp(1.1rem, 1.4vw, 1.25rem);
	font-weight: 300;
	line-height: 1.4;
	color: rgba(28, 27, 24, 0.62);
}

body.pq-single-page .pq-single__specs-list {
	margin: 0;
	padding: 0;
	border-top: 1px solid rgba(28, 27, 24, 0.16);
}

body.pq-single-page .pq-single__spec-row {
	display: grid;
	grid-template-columns: minmax(9.25rem, 0.42fr) minmax(0, 1fr);
	gap: 1rem 1.5rem;
	align-items: center;
	padding: 1.05rem 0;
	border-bottom: 1px solid rgba(28, 27, 24, 0.16);
}

body.pq-single-page .pq-single__spec-row dt {
	display: inline-flex;
	align-items: center;
	gap: 0.7rem;
	margin: 0;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.68rem;
	font-weight: 500;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(28, 27, 24, 0.55);
}

body.pq-single-page .pq-single__spec-icon {
	flex: 0 0 1.85rem;
	width: 1.85rem;
	height: 1.85rem;
	color: var(--pq-red, var(--pq-brand, #e31f2f));
}

body.pq-single-page .pq-single__spec-icon svg {
	display: block;
	width: 100%;
	height: 100%;
}

body.pq-single-page .pq-single__spec-row dd {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	margin: 0;
	font-family: var(--pq-font-display) !important;
	font-size: clamp(1.15rem, 1.6vw, 1.4rem);
	font-weight: 400;
	line-height: 1.35;
	color: var(--pq-text, #1c1b18);
}

body.pq-single-page .pq-single__spec-sep {
	margin: 0 0.5em;
	font-weight: 400;
	font-size: 1.65em;
	line-height: 1;
	color: var(--pq-red, var(--pq-brand, #e31f2f));
}

@media (max-width: 900px) {
	body.pq-single-page .pq-single__specs .row,
	body.pq-single-page .pq-single__specs-inner,
	body.pq-single-page .quartz_specs .row {
		grid-template-columns: 1fr;
		gap: 2rem;
		align-items: start;
	}

	body.pq-single-page .pq-single__specs-lead {
		max-width: none;
	}

	body.pq-single-page .pq-single__spec-sep {
		display: none !important;
	}

	body.pq-single-page .pq-single__spec-row dd {
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: flex-start;
		gap: 0.2em;
	}

	body.pq-single-page .pq-single__spec-row dd > span:not(.pq-single__spec-sep) {
		display: block;
		width: 100%;
	}
}

/* ---- Bookmatch ---- */
body.pq-single-page .pq-single__bookmatch {
	padding: clamp(3rem, 6vw, 4.5rem) 0;
	background: #ffffff;
	text-align: center;
}

body.pq-single-page .pq-single__bookmatch .pq-lp__label {
	text-align: center;
}

body.pq-single-page .pq-single__section-title,
body.pq-single-page .pq-single__bookmatch h3,
body.pq-single-page .pq-single__insp h3 {
	margin: 0.5rem 0 1.75rem;
	font-family: var(--pq-font-display) !important;
	font-weight: 400 !important;
	font-size: clamp(1.85rem, 3.5vw, 2.75rem) !important;
	line-height: 1.1 !important;
	letter-spacing: -0.02em;
	color: inherit;
	text-align: center;
}

/* ---- Inventory ---- */
body.pq-single-page .pq-inventory,
body.pq-single-page .ns-inventory {
	padding: clamp(3rem, 6vw, 4.5rem) 0;
	margin: 0 !important;
	background: #ffffff;
}

body.pq-single-page .pq-inventory .ns-section-title,
body.pq-single-page .ns-inventory .ns-section-title {
	font-family: var(--pq-font-display) !important;
	font-weight: 400 !important;
	font-size: clamp(1.35rem, 2.4vw, 1.85rem) !important;
	letter-spacing: -0.02em;
	color: var(--pq-text) !important;
	text-align: left;
	white-space: nowrap;
}

body.pq-single-page .pq-inventory .ns-carousel-head .pq-inv-heading {
	padding: 0 96px 0 0;
}

body.pq-single-page .pq-inventory .ns-carousel-head .ns-section-title {
	padding: 0 !important;
	margin: 0 !important;
}

body.pq-single-page .pq-inventory .pq-inv-note {
	margin: 0.45rem 0 0;
	max-width: 40rem;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.875rem !important;
	font-weight: 400;
	letter-spacing: 0.01em;
	line-height: 1.45;
	color: var(--pq-text-soft) !important;
	text-align: left;
}

body.pq-single-page .pq-inventory .ns-card-grid.ns-inventory--carousel {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.pq-single-page .pq-inventory .ns-carousel-btn,
body.pq-single-page .ns-inventory .ns-carousel-btn {
	border-radius: 0 !important;
	border: 1px solid var(--pq-ink) !important;
	background: transparent !important;
	color: var(--pq-text) !important;
}

body.pq-single-page .pq-inventory .ns-card,
body.pq-single-page .ns-inventory .ns-card {
	border-radius: 0 !important;
	background: transparent;
	box-shadow: none !important;
}

body.pq-single-page .pq-inventory .pq-inv-card a {
	padding: 1.35rem 1.4rem 1.2rem;
	border: 1px solid var(--pq-line);
	background: var(--pq-cream);
	transition: border-color 0.2s ease, background 0.2s ease;
}

body.pq-single-page .pq-inventory .pq-inv-card a:hover,
body.pq-single-page .pq-inventory .pq-inv-card a:focus-visible {
	border-color: var(--pq-ink);
	background: #ffffff;
}

body.pq-single-page .pq-inventory .pq-inv-card__loc,
body.pq-single-page .pq-inventory [data-ns-inventory-location] {
	margin: 0 0 0.4rem;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.6875rem !important;
	letter-spacing: 0.16em;
	line-height: 1.4;
	text-transform: uppercase;
	color: var(--pq-text-soft) !important;
}

body.pq-single-page .pq-inventory .pq-inv-card__title {
	font-family: var(--pq-font-display) !important;
	font-weight: 400;
	font-size: 1.2rem;
	letter-spacing: -0.02em;
	color: var(--pq-text);
}

body.pq-single-page .pq-inventory .pq-inv-card__stats dt {
	font-family: var(--pq-font-ui);
	font-size: 0.625rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--pq-text-soft);
}

body.pq-single-page .pq-inventory .pq-inv-card__stats dd {
	font-family: var(--pq-font-display);
	font-size: 1.85rem;
	color: var(--pq-text);
}

body.pq-single-page .pq-inventory .pq-inv-card__meta {
	border-top-color: var(--pq-line);
}

body.pq-single-page .pq-inventory .pq-inv-card__meta span {
	font-family: var(--pq-font-ui);
	font-size: 0.75rem;
	letter-spacing: 0.04em;
	color: var(--pq-text-soft);
}

body.pq-single-page .pq-inventory .pq-inv-card__meta strong {
	font-family: var(--pq-font-ui);
	font-size: 0.8125rem;
	font-weight: 500;
	color: var(--pq-text);
}

body.pq-single-page .pq-inventory .pq-inv-card__cta {
	font-family: var(--pq-font-ui);
	font-size: 0.6875rem;
	letter-spacing: 0.14em;
	color: var(--pq-text);
}

body.pq-single-page .pq-inventory .ns-card img,
body.pq-single-page .ns-inventory .ns-card img {
	display: none;
}

body.pq-single-page .pq-inventory .ns-card:not(.pq-inv-card) p,
body.pq-single-page .ns-inventory .ns-card:not(.pq-inv-card) p {
	font-family: var(--pq-font-ui) !important;
	font-size: 0.8125rem !important;
	letter-spacing: 0.12em;
	line-height: 1.4;
	color: var(--pq-text-soft) !important;
}

@media (max-width: 900px) {
	body.pq-single-page .pq-inventory .ns-section-title,
	body.pq-single-page .ns-inventory .ns-section-title {
		white-space: normal;
	}

	body.pq-single-page .pq-inventory .ns-carousel-head .pq-inv-heading {
		padding: 0 88px 0 0;
	}
}

/* ---- Inspiration (architect gallery) ---- */
body.pq-single-page .pq-single__insp,
body.pq-single-page .inspirations {
	padding: clamp(3.25rem, 6vw, 4.75rem) 0;
	background: var(--pq-ink) !important;
	color: var(--pq-cream);
	border: 0 !important;
}

body.pq-single-page .pq-single__insp-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-areas:
		"head gallery"
		"stage stage";
	align-items: center;
	column-gap: 1.5rem;
	row-gap: 1.75rem;
}

body.pq-single-page .pq-single__insp-head {
	grid-area: head;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem 2rem;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	border: 0 !important;
}

body.pq-single-page .pq-single__insp-stage {
	grid-area: stage;
}

body.pq-single-page a.pq-single__insp-gallery {
	grid-area: gallery;
	justify-self: end;
}

body.pq-single-page .pq-single__insp-copy {
	flex: 1 1 auto;
	min-width: 0;
	text-align: left;
}

body.pq-single-page .pq-single__insp .pq-lp__label {
	margin: 0 0 0.55rem;
	text-align: left;
	color: var(--pq-cream);
	opacity: 0.65;
}

body.pq-single-page .pq-single__insp .pq-single__section-title,
body.pq-single-page .pq-single__insp h3 {
	margin: 0;
	max-width: none;
	text-align: left;
	white-space: nowrap;
	color: var(--pq-cream);
	font-size: clamp(1.75rem, 3.2vw, 2.65rem) !important;
}

body.pq-single-page .pq-single__insp-controls {
	display: flex;
	flex-direction: row;
	align-items: center;
	flex-wrap: wrap;
	gap: 1.25rem;
	flex: 0 0 auto;
}

body.pq-single-page .pq-single__insp-count {
	margin: 0;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	opacity: 0.65;
	color: var(--pq-cream);
	line-height: 1;
}

body.pq-single-page .pq-single__insp-nav {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

body.pq-single-page .pq-single__insp-btn {
	appearance: none;
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	min-height: 2.75rem;
	padding: 0.65rem 1.1rem;
	border: 1px solid rgba(247, 246, 241, 0.45);
	border-radius: 0;
	background: transparent;
	color: var(--pq-cream);
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background 0.3s var(--pq-ease), border-color 0.3s var(--pq-ease), color 0.3s var(--pq-ease);
}

body.pq-single-page .pq-single__insp-btn:hover {
	background: var(--pq-cream);
	border-color: var(--pq-cream);
	color: var(--pq-text);
}

body.pq-single-page a.pq-single__insp-gallery {
	background: var(--pq-red, #e31f2f);
	border-color: var(--pq-red, #e31f2f);
	color: #fff;
	text-decoration: none;
}

body.pq-single-page a.pq-single__insp-gallery:hover {
	background: #c91b29;
	border-color: #c91b29;
	color: #fff;
}

body.pq-single-page .pq-single__insp-btn.swiper-button-disabled {
	opacity: 0.35;
	pointer-events: none;
}

body.pq-single-page .pq-single__insp-stage {
	display: grid;
	gap: 1.25rem;
	width: 100%;
	min-width: 0;
	overflow: visible;
	padding-top: 0;
	border: 0 !important;
}

body.pq-single-page .pq-single__insp-main,
body.pq-single-page .pq-single__insp-thumbs {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	height: auto;
	overflow: hidden;
	margin: 0;
	padding: 0;
	border: 0 !important;
}

body.pq-single-page .pq-single__insp-main .swiper-wrapper,
body.pq-single-page .pq-single__insp-thumbs .swiper-wrapper {
	display: flex;
	align-items: stretch;
	height: auto;
}

body.pq-single-page .pq-single__insp-main .swiper-slide {
	display: block;
	width: 100%;
	height: auto;
	background: transparent;
}

body.pq-single-page .pq-single__insp-frame {
	margin: 0;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: rgba(247, 246, 241, 0.06);
	border: 0 !important;
}

body.pq-single-page .pq-single__insp-frame img,
body.pq-single-page .pq-single__insp .inspiration-main {
	display: block;
	width: 100%;
	height: 100%;
	max-height: none;
	object-fit: cover;
	border-radius: 0;
	border: 0 !important;
}

body.pq-single-page .pq-single__insp .swiper-button-next,
body.pq-single-page .pq-single__insp .swiper-button-prev {
	display: none !important;
}

body.pq-single-page .pq-single__insp-thumbs .swiper-slide {
	display: block;
	position: relative;
	height: auto;
	padding-bottom: 0.85rem;
	background: transparent;
	opacity: 0.38;
	cursor: pointer;
	transition: opacity 0.3s var(--pq-ease);
}

body.pq-single-page .pq-single__insp-thumbs .swiper-slide::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2px;
	background: transparent;
	transition: background 0.3s var(--pq-ease);
}

body.pq-single-page .pq-single__insp-thumbs .swiper-slide-thumb-active,
body.pq-single-page .pq-single__insp-thumbs .swiper-slide:hover {
	opacity: 1;
}

body.pq-single-page .pq-single__insp-thumbs .swiper-slide-thumb-active::after {
	background: var(--pq-red, #e31f2f);
}

body.pq-single-page .pq-single__insp-thumbs .inspiration-thumbnail-nav {
	display: block;
	width: 100%;
	height: auto;
	max-height: none;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 0;
	border: 0;
}

body.pq-single-page .pq-single__insp-thumb-index {
	display: block;
	margin-top: 0.55rem;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.65rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	opacity: 0.7;
	color: var(--pq-cream);
}

/* ---- Related ---- */
body.pq-single-page .pq-single__related,
body.pq-single-page .ns-related {
	padding: clamp(3.5rem, 7vw, 5.5rem) 0;
	background: var(--pq-sand) !important;
	color: var(--pq-text);
	text-align: left;
}

body.pq-single-page .pq-single__related-inner,
body.pq-single-page .pq-single__related .ns-related__inner {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	align-items: stretch;
}

body.pq-single-page .pq-single__related-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1.25rem 2rem;
	flex-wrap: wrap;
	padding-bottom: 1.5rem;
	border-bottom: 1px solid var(--pq-line);
}

body.pq-single-page .pq-single__related-copy .pq-lp__label {
	margin: 0 0 0.65rem;
	text-align: left;
}

body.pq-single-page .pq-single__related-cta span[aria-hidden="true"] {
	display: none;
}

body.pq-single-page .pq-single__related .ns-related__heading,
body.pq-single-page .pq-single__related .pq-single__section-title {
	flex: none;
	max-width: none;
	margin: 0;
	text-align: left;
	white-space: nowrap;
	font-size: clamp(2rem, 4vw, 3rem) !important;
}

body.pq-single-page .pq-single__related-cards,
body.pq-single-page .pq-single__related .ns-related__cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.25rem 1.5rem;
	width: 100%;
	flex: none;
}

body.pq-single-page .pq-single__related .ns-related__card {
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	text-decoration: none;
	color: inherit;
	transform: none;
	opacity: 1;
	transition: none;
}

body.pq-single-page .pq-single__related .ns-related__card:hover,
body.pq-single-page .pq-single__related .ns-related__card:focus-visible {
	box-shadow: none;
	transform: none;
	opacity: 1;
	outline: none;
}

body.pq-single-page .pq-single__related .ns-related__card-image {
	display: block;
	overflow: hidden;
	background: rgba(28, 27, 24, 0.06);
}

body.pq-single-page .pq-single__related .ns-related__card-image,
body.pq-single-page .pq-single__related .ns-related__card-image img {
	border-radius: 0;
}

body.pq-single-page .pq-single__related .ns-related__card-image img {
	aspect-ratio: 1 / 1;
	width: 100%;
	height: auto;
	object-fit: cover;
	transform: scale(1);
	transform-origin: center center;
	transition: transform 0.8s var(--pq-ease);
}

body.pq-single-page .pq-single__related .ns-related__card:hover .ns-related__card-image img,
body.pq-single-page .pq-single__related .ns-related__card:focus-visible .ns-related__card-image img {
	transform: scale(1.05);
}

@media (prefers-reduced-motion: reduce) {
	body.pq-single-page .pq-single__related .ns-related__card-image img {
		transition: none;
	}

	body.pq-single-page .pq-single__related .ns-related__card:hover .ns-related__card-image img,
	body.pq-single-page .pq-single__related .ns-related__card:focus-visible .ns-related__card-image img {
		transform: none;
	}
}

body.pq-single-page .pq-single__related .ns-related__card-body {
	padding: 0.9rem 0 0;
}

body.pq-single-page .pq-single__related .ns-related__card-name {
	font-family: var(--pq-font-display) !important;
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--pq-text);
}

body.pq-single-page .pq-single__related .ns-related__card-type {
	font-family: var(--pq-font-ui) !important;
	font-size: 0.7rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	opacity: 0.7;
	color: var(--pq-text);
}

@media (max-width: 900px) {
	body.pq-single-page .pq-single__related-cards,
	body.pq-single-page .pq-single__related .ns-related__cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 720px) {
	body.pq-single-page .pq-single__head {
		flex-direction: column;
		align-items: stretch;
	}

	body.pq-single-page .pq-single__tools {
		order: -1;
		width: 100%;
		margin-bottom: 0.35rem;
	}

	body.pq-single-page .pq-single__ctas {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		justify-content: center !important;
		width: max-content !important;
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	body.pq-single-page .pq-single__ctas > a,
	body.pq-single-page .pq-single__ctas .pq-lp__btn,
	body.pq-single-page .pq-single__ctas .single-like-btn-holder,
	body.pq-single-page .pq-single__ctas .single-like-btn-holder .share-btn {
		justify-content: center;
		width: 100%;
		box-sizing: border-box;
	}

	body.pq-single-page .pq-single__insp-layout {
		grid-template-columns: 1fr;
		grid-template-areas:
			"head"
			"stage"
			"gallery";
		justify-items: stretch;
	}

	body.pq-single-page .pq-single__insp-head {
		align-items: flex-start;
	}

	body.pq-single-page .pq-single__insp-controls,
	body.pq-single-page .pq-single__insp-count,
	body.pq-single-page .pq-single__insp-nav {
		display: none !important;
	}

	body.pq-single-page a.pq-single__insp-gallery {
		justify-self: center;
		width: max-content;
		max-width: 100%;
	}

	body.pq-single-page .pq-single__insp .pq-single__section-title,
	body.pq-single-page .pq-single__insp h3 {
		max-width: none;
		white-space: normal;
	}

	body.pq-single-page .pq-single__insp-frame {
		aspect-ratio: 4 / 3;
	}

	body.pq-single-page .pq-single__related .ns-related__heading,
	body.pq-single-page .pq-single__related .pq-single__section-title {
		max-width: none;
		white-space: normal;
	}
}

/* ---------- About page ---------- */
body.pq-about-page {
	background: var(--pq-cream, #f7f6f1);
}

body.pq-about-page .page_header_desktop {
	background: #fff;
}

.pq-lp--about .pq-lp__hero-support {
	margin: 1rem 0 0;
	max-width: 34rem;
	font-family: "Cormorant Infant", Georgia, serif;
	font-size: clamp(1.15rem, 1.5vw, 1.35rem);
	font-weight: 300;
	line-height: 1.45;
	color: rgba(247, 246, 241, 0.82);
}

.pq-lp--about .pq-lp__hero .pq-lp__btns {
	margin-top: 1.75rem;
}

.pq-lp--about .pq-lp__intro .pq-lp__body + .pq-lp__body {
	margin-top: 1rem;
}

.pq-about__nature .pq-lp__pillars,
.pq-about__durability {
	margin: 1.5rem 0 0.35rem;
}

.pq-about__nature .pq-lp__intro-copy > .elementor-widget-html:has(.pq-lp__pillars) {
	margin-top: 1.5rem !important;
}

.pq-about__nature .pq-lp__pillar-title,
.pq-about__durability .pq-lp__pillar-title {
	padding-bottom: 0 !important;
	font-family: var(--pq-font-body, "Cormorant Infant", Georgia, serif) !important;
	font-size: clamp(0.95rem, 1.2vw, 1.12rem);
	font-weight: 400;
	line-height: 1.25;
}

.pq-about__statement {
	background: var(--pq-ink, #373737);
	color: var(--pq-cream, #f7f6f1);
	padding: clamp(4rem, 9vw, 6.5rem) 0;
}

.pq-about__statement-inner {
	max-width: 42rem;
}

.pq-about__statement .pq-lp__label {
	margin: 0 0 1rem;
	color: rgba(247, 246, 241, 0.55);
}

.pq-about__statement h2 {
	margin: 0;
	font-family: "Playfair Display", Georgia, serif;
	font-size: clamp(1.85rem, 3.6vw, 2.85rem);
	font-weight: 400;
	line-height: 1.18;
	letter-spacing: -0.02em;
	color: var(--pq-cream, #f7f6f1);
}

.pq-about__split--reverse:not(.e-con) {
	direction: rtl;
}

.pq-about__split--reverse:not(.e-con) > * {
	direction: ltr;
}

.pq-about__approach.pq-lp__intro,
.pq-about__excellence.pq-lp__intro {
	background: var(--pq-cream, #f7f6f1);
}

.pq-about__innovation {
	padding-block: clamp(4.5rem, 10vw, 7rem);
}

.pq-about__innovation-top {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: clamp(2rem, 5vw, 4.5rem);
	align-items: end;
	margin-bottom: clamp(2.5rem, 5vw, 3.5rem);
}

.pq-about__innovation-lead .pq-lp__label {
	margin: 0 0 1.15rem;
	color: rgba(247, 246, 241, 0.55);
}

.pq-about__innovation-lead h2 {
	margin: 0;
	font-family: "Playfair Display", Georgia, serif;
	font-size: clamp(2.35rem, 5vw, 4rem);
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: -0.025em;
	color: var(--pq-cream, #f7f6f1);
}

.pq-about__dot,
body.pq-about-page h2.elementor-heading-title .pq-about__dot {
	color: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
}

/* Product-name overlay: white badge + Cormorant. Position/transform left to Elementor.
   Pad the heading itself — widget-level padding loses to Elementor spacing CSS. */
.pq-lp .elementor-element.pq-about__legend {
	width: max-content !important;
	max-width: none !important;
	background: transparent !important;
}

.pq-lp .elementor-element.pq-about__legend .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: max-content !important;
	background: transparent !important;
}

.pq-lp .pq-about__legend.elementor-heading-title,
.pq-lp h2.pq-about__legend,
.pq-lp h3.pq-about__legend,
.pq-lp p.pq-about__legend,
.pq-lp .elementor-element.pq-about__legend .elementor-heading-title,
.pq-lp .elementor-element.pq-about__legend .elementor-widget-container > *:not(.elementor-heading-title) {
	display: inline-block !important;
	box-sizing: content-box !important;
	width: max-content !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0.35em 0.75em !important;
	background: var(--pq-white, #ffffff) !important;
	color: var(--pq-text, #1c1b18) !important;
	font-family: var(--pq-font-body, "Cormorant Infant", Georgia, serif) !important;
	font-size: clamp(0.8rem, 1.1vw, 0.95rem) !important;
	line-height: 1.3 !important;
	border: 0 !important;
	box-shadow: none !important;
}

@media (max-width: 640px) {
	.pq-lp .pq-about__legend.elementor-heading-title,
	.pq-lp h2.pq-about__legend,
	.pq-lp .elementor-element.pq-about__legend .elementor-heading-title,
	.pq-lp .elementor-element.pq-about__legend .elementor-widget-container > *:not(.elementor-heading-title) {
		padding: 0.3em 0.65em !important;
		font-size: 0.8rem !important;
	}
}

.pq-about__innovation-copy .pq-lp__body {
	margin: 0 0 1.1rem;
	max-width: 36rem;
	font-family: "Cormorant Infant", Georgia, serif;
	font-size: clamp(1.2rem, 1.55vw, 1.4rem);
	font-weight: 300;
	line-height: 1.45;
	color: rgba(247, 246, 241, 0.78);
}

.pq-about__innovation-copy .pq-lp__body:last-child {
	margin-bottom: 0;
}

.pq-about__innovation-rule {
	display: block;
	width: 100%;
	height: 1px;
	margin: 0 0 clamp(2.5rem, 5vw, 3.5rem);
	border: 0;
	background: rgba(247, 246, 241, 0.16);
}

.pq-about__innovation-grid {
	gap: clamp(1.75rem, 3vw, 2.5rem) clamp(1.5rem, 3vw, 2.75rem);
}

.pq-about__innovation-index {
	margin: 0 0 0.85rem;
	font-family: "gotham", "Gotham", "Nunito Sans", "Helvetica Neue", Arial, sans-serif;
	font-size: 0.68rem;
	font-weight: 500;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(247, 246, 241, 0.42);
}

.pq-about__innovation .pq-lp__proof-grid h3,
.pq-about__innovation-grid h3 {
	margin: 0 0 0.75rem;
	max-width: 14ch;
	font-size: clamp(1.25rem, 1.8vw, 1.55rem);
	line-height: 1.2;
	letter-spacing: -0.015em;
}

.pq-about__innovation .pq-lp__proof-grid p,
.pq-about__innovation-grid p:not(.pq-about__innovation-index) {
	margin: 0;
	max-width: 28ch;
	font-size: clamp(1.05rem, 1.25vw, 1.15rem);
	line-height: 1.45;
	color: rgba(247, 246, 241, 0.7);
}

@media (max-width: 900px) {
	.pq-about__innovation-top {
		grid-template-columns: 1fr;
		gap: 1.5rem;
		align-items: start;
	}

	.pq-about__innovation-lead h2 {
		font-size: clamp(2.1rem, 8vw, 2.75rem);
	}

	.pq-about__innovation-copy .pq-lp__body {
		max-width: none;
	}
}

.pq-about__promise {
	padding: clamp(4.5rem, 10vw, 7rem) 0;
	background: var(--pq-cream, #f7f6f1);
	color: var(--pq-text, #1c1b18);
}

.pq-about__promise-inner {
	max-width: 40rem;
}

.pq-about__promise .pq-lp__label {
	margin: 0 0 1rem;
}

.pq-about__promise h2 {
	margin: 0 0 2rem;
	font-family: "Playfair Display", Georgia, serif;
	font-size: clamp(2rem, 4vw, 3.1rem);
	font-weight: 400;
	line-height: 1.12;
	letter-spacing: -0.02em;
}

.pq-about__promise-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pq-about__promise-list li {
	position: relative;
	padding: 1.15rem 0 1.15rem 0;
	border-top: 1px solid rgba(28, 27, 24, 0.14);
	font-family: "Cormorant Infant", Georgia, serif;
	font-size: clamp(1.25rem, 1.7vw, 1.5rem);
	font-weight: 300;
	line-height: 1.4;
	color: var(--pq-text, #1c1b18);
}

.pq-about__promise-list li:last-child {
	border-bottom: 1px solid rgba(28, 27, 24, 0.14);
}

@media (max-width: 900px) {
	.pq-about__split--reverse:not(.e-con) {
		direction: ltr;
	}
}

/* ==========================================================================
   PQ find-dealer (/quartz/pentalquartz/find-dealer/)
   ========================================================================== */

body.pq-dealer-page {
	--pq-sand: #cccbbc;
	--pq-ink: #373737;
	--pq-ink-soft: rgba(55, 55, 55, 0.72);
	--pq-brand: #e31f2f;
	--pq-brand-hover: #c91a28;
	--pq-text: #1c1b18;
	--pq-text-soft: rgba(28, 27, 24, 0.72);
	--pq-cream: #f7f6f1;
	--pq-white: #ffffff;
	--pq-line: rgba(28, 27, 24, 0.18);
	--pq-font-display: "Playfair Display", Georgia, "Times New Roman", serif;
	--pq-font-body: "Cormorant Infant", Georgia, "Times New Roman", serif;
	--pq-font-ui: "gotham", "Gotham", "Nunito Sans", "Helvetica Neue", Arial, sans-serif;
	--pq-max: 1240px;
	background: var(--pq-cream);
}

/* Keep ASG floating dark header over the intro (white logo/links). */
body.pq-dealer-page #content,
body.pq-dealer-page .site-content {
	padding: 0;
	background: transparent;
}

.pq-dealer-intro {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: min(72vh, 760px);
	padding: 9.5rem 0 4.5rem;
	text-align: center;
	color: var(--pq-cream, #f7f6f1);
	background-color: #2a2926;
	overflow: hidden;
}

.pq-dealer-intro__photo {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	/* Keep ceiling/spotlights in the nav band so faces sit below the header. */
	object-position: center top;
}

.pq-dealer-intro::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(
			to top,
			rgba(18, 17, 15, 0.72) 0%,
			rgba(18, 17, 15, 0.42) 48%,
			rgba(18, 17, 15, 0.32) 100%
		);
	pointer-events: none;
}

.pq-dealer-intro .pq-lp__wrap {
	position: relative;
	z-index: 2;
	padding: 0;
}

.pq-dealer-intro .pq-lp__brand {
	color: var(--pq-cream, #f7f6f1);
	opacity: 0.88;
}

.pq-dealer-intro h1 {
	margin: 0 auto;
	max-width: 18ch;
	font-family: var(--pq-font-display) !important;
	font-weight: 400 !important;
	font-size: clamp(2.25rem, 4.5vw, 3.5rem) !important;
	line-height: 1.08 !important;
	letter-spacing: -0.02em;
	color: var(--pq-cream, #f7f6f1) !important;
	text-transform: none !important;
}

.pq-dealer-intro .pq-lp__body {
	margin: 1.25rem auto 0;
	max-width: 38rem;
	font-family: var(--pq-font-body) !important;
	font-weight: 300;
	font-size: clamp(1.15rem, 1.7vw, 1.35rem);
	line-height: 1.45;
	color: rgba(247, 246, 241, 0.9);
}

.pq-dealer-intro .pq-lp__btns {
	justify-content: center;
}

.pq-lp .pq-dealer-intro a.pq-lp__btn--ghost,
.pq-dealer-intro a.pq-lp__btn--ghost {
	background: transparent;
	border-color: var(--pq-cream, #f7f6f1);
	color: var(--pq-cream, #f7f6f1) !important;
}

.pq-lp .pq-dealer-intro a.pq-lp__btn--ghost:hover,
.pq-dealer-intro a.pq-lp__btn--ghost:hover {
	background: rgba(255, 255, 255, 0.12);
	border-color: var(--pq-cream, #f7f6f1);
	color: var(--pq-cream, #f7f6f1) !important;
}

@media (max-width: 720px) {
	.pq-dealer-intro {
		min-height: 68vh;
		padding: 8rem 0 3.5rem;
	}

	.pq-dealer-intro__photo {
		object-position: center 8%;
	}
}

.pq-dealer-locator {
	padding: clamp(2.5rem, 5vw, 3.75rem) 0 clamp(3.5rem, 7vw, 5rem);
	background: var(--pq-cream, #f7f6f1);
}

body.pq-dealer-page .wpsl-search {
	background: transparent !important;
	margin: 0 0 clamp(1.75rem, 3.5vw, 2.5rem);
	padding: 0 !important;
}

body.pq-dealer-page #wpsl-search-wrap {
	width: min(100% - 3rem, var(--pq-max, 1240px)) !important;
	max-width: var(--pq-max, 1240px);
	margin: 0 auto !important;
	float: none !important;
	box-sizing: border-box;
}

body.pq-dealer-page #wpsl-search-wrap form {
	display: flex !important;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 1rem 1.25rem;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* Kill WPSL table / float layout — label above field */
body.pq-dealer-page #wpsl-search-wrap .wpsl-input,
body.pq-dealer-page #wpsl-search-wrap .wpsl-select-wrap,
body.pq-dealer-page #wpsl-search-wrap #wpsl-radius,
body.pq-dealer-page #wpsl-search-wrap #wpsl-results,
body.pq-dealer-page #wpsl-search-wrap .wpsl-search-btn-wrap,
body.pq-dealer-page #wpsl-search-wrap div {
	display: block !important;
	float: none !important;
	margin: 0 !important;
}

body.pq-dealer-page #wpsl-search-wrap .wpsl-input {
	flex: 1 1 18rem;
	min-width: min(100%, 16rem);
}

body.pq-dealer-page #wpsl-search-wrap .wpsl-select-wrap {
	flex: 0 0 9.5rem;
	position: relative;
	z-index: 5;
}

body.pq-dealer-page #wpsl-search-wrap .wpsl-search-btn-wrap {
	flex: 0 0 auto;
}

body.pq-dealer-page #wpsl-search-wrap label,
body.pq-dealer-page #wpsl-search-wrap div label,
body.pq-dealer-page .wpsl-input label,
body.pq-dealer-page #wpsl-radius label,
body.pq-dealer-page #wpsl-results label {
	display: block !important;
	float: none !important;
	width: auto !important;
	margin: 0 0 0.55rem !important;
	padding: 0 !important;
	line-height: 1.2 !important;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.68rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	color: var(--pq-text-soft) !important;
}

body.pq-dealer-page #wpsl-search-input {
	display: block !important;
	width: 100% !important;
	height: 3rem !important;
	min-height: 3rem !important;
	margin: 0 !important;
	padding: 0 1rem !important;
	border: 1px solid var(--pq-ink) !important;
	border-radius: 0 !important;
	background: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.9rem !important;
	font-weight: 400 !important;
	line-height: 3rem !important;
	letter-spacing: 0.02em;
	color: var(--pq-text) !important;
	-webkit-appearance: none;
	appearance: none;
}

/* Custom WPSL dropdown: one field chrome on the selected item only */
body.pq-dealer-page #wpsl-search-wrap .wpsl-dropdown {
	position: relative !important;
	display: block !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	overflow: visible !important;
}

body.pq-dealer-page #wpsl-search-wrap .wpsl-selected-item {
	display: block !important;
	position: relative !important;
	width: 100% !important;
	height: 3rem !important;
	min-height: 3rem !important;
	margin: 0 !important;
	padding: 0 2.25rem 0 1rem !important;
	border: 1px solid var(--pq-ink) !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.9rem !important;
	font-weight: 400 !important;
	line-height: calc(3rem - 2px) !important;
	letter-spacing: 0.02em;
	color: var(--pq-text) !important;
	cursor: pointer;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

body.pq-dealer-page #wpsl-search-wrap .wpsl-selected-item:after {
	right: 0.9rem !important;
	top: 50% !important;
	margin-top: -2px !important;
	border: 0 !important;
	width: 8px !important;
	height: 4px !important;
	background-size: 8px 4px !important;
}

body.pq-dealer-page #wpsl-search-wrap .wpsl-dropdown > div:not(.wpsl-selected-item) {
	position: absolute !important;
	top: 100% !important;
	left: 0 !important;
	right: 0 !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid var(--pq-ink) !important;
	border-top: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: 0 10px 24px rgba(28, 27, 24, 0.1);
	box-sizing: border-box !important;
	z-index: 20;
}

body.pq-dealer-page #wpsl-search-wrap .wpsl-dropdown li {
	padding: 0.7rem 1rem !important;
	border: 0 !important;
	background: transparent !important;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.85rem !important;
	color: var(--pq-text) !important;
	line-height: 1.3 !important;
	height: auto !important;
	min-height: 0 !important;
}

body.pq-dealer-page #wpsl-search-wrap .wpsl-dropdown li:hover {
	background: var(--pq-cream, #f7f6f1) !important;
}

body.pq-dealer-page #wpsl-search-btn,
body.pq-dealer-page #wpsl-search-wrap #wpsl-search-btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	min-width: 8.5rem;
	height: 3rem !important;
	margin: 0 !important;
	padding: 0 1.5rem !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #373737 !important;
	background-color: #373737 !important;
	background-image: none !important;
	box-shadow: none !important;
	font-family: var(--pq-font-ui) !important;
	font-weight: 500 !important;
	font-size: 0.72rem !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	color: #ffffff !important;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}

body.pq-dealer-page #wpsl-search-btn:hover,
body.pq-dealer-page #wpsl-search-wrap #wpsl-search-btn:hover {
	background: #000 !important;
	background-color: #000 !important;
	color: #fff !important;
}

@media (max-width: 720px) {
	body.pq-dealer-page #wpsl-search-wrap form {
		flex-direction: column;
		align-items: stretch;
	}

	body.pq-dealer-page #wpsl-search-wrap .wpsl-input,
	body.pq-dealer-page #wpsl-search-wrap .wpsl-select-wrap,
	body.pq-dealer-page #wpsl-search-wrap .wpsl-search-btn-wrap,
	body.pq-dealer-page #wpsl-search-btn {
		width: 100% !important;
		flex: none;
	}
}

body.pq-dealer-page #wpsl-gmap {
	margin: 0 0 clamp(2rem, 4vw, 3rem);
	border: 0;
}

body.pq-dealer-page .maplegend .row {
	width: min(100% - 3rem, var(--pq-max, 1240px));
	margin: 0 auto clamp(2rem, 4vw, 3rem);
	padding: 1.5rem 0;
	border-bottom: 1px solid var(--pq-line);
	box-sizing: border-box;
}

body.pq-dealer-page .maplegend .row div {
	margin: 0 2.5rem 0.75rem 0;
	font-family: var(--pq-font-ui);
	font-size: 0.8rem;
	letter-spacing: 0.04em;
	color: var(--pq-text);
}

body.pq-dealer-page #main_content #wpsl-stores,
body.pq-dealer-page #wpsl-stores {
	width: min(100% - 3rem, var(--pq-max, 1240px)) !important;
	max-width: var(--pq-max, 1240px);
	margin: 0 auto !important;
	height: auto !important;
	box-sizing: border-box;
}

body.pq-dealer-page #wpsl-result-list ul {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1.5rem, 3vw, 2.5rem) clamp(1.25rem, 2.5vw, 2rem) !important;
	column-gap: clamp(1.25rem, 2.5vw, 2rem) !important;
	row-gap: clamp(1.75rem, 3vw, 2.75rem) !important;
}

body.pq-dealer-page #wpsl-wrap #wpsl-result-list li {
	padding: 0 !important;
	border: 0 !important;
	background: transparent;
}

body.pq-dealer-page #wpsl-wrap #wpsl-result-list li strong {
	display: block;
	margin: 0 0 0.85rem !important;
	font-family: var(--pq-font-display) !important;
	font-size: clamp(1.35rem, 2vw, 1.75rem) !important;
	line-height: 1.15 !important;
	font-weight: 400 !important;
	color: var(--pq-text) !important;
}

body.pq-dealer-page .wpsl-store-location,
body.pq-dealer-page .wpsl-contact-details,
body.pq-dealer-page .wpsl-directions {
	font-family: var(--pq-font-body);
	font-size: 1.1rem;
	line-height: 1.45;
	font-weight: 300;
	color: var(--pq-text-soft);
}

body.pq-dealer-page .wpsl-store-location .wpsl-contact-details strong {
	font-family: var(--pq-font-ui) !important;
	font-size: 0.8rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.06em;
	color: var(--pq-text) !important;
}

body.pq-dealer-page .wpsl_website,
body.pq-dealer-page .wpsl-directions a,
body.pq-dealer-page #wpsl-result-list a {
	font-family: var(--pq-font-ui);
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: underline;
	text-underline-offset: 0.2em;
	color: var(--pq-text) !important;
}

body.pq-dealer-page .dl_head {
	display: none;
}

@media (max-width: 900px) {
	body.pq-dealer-page #wpsl-result-list ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.pq-dealer-page #wpsl-search-wrap {
		width: min(100% - 2rem, var(--pq-max, 1240px)) !important;
	}
}

@media (max-width: 600px) {
	body.pq-dealer-page #wpsl-result-list ul {
		grid-template-columns: 1fr;
	}

	body.pq-dealer-page #wpsl-search-wrap .wpsl-select-wrap,
	body.pq-dealer-page .wpsl-search-btn-wrap {
		margin-left: 0 !important;
	}
}

/* ==========================================================================
   PQ contact (/quartz/pentalquartz/contact/)
   ========================================================================== */

html:has(body.pq-contact-page) {
	scroll-behavior: smooth;
}

body.pq-contact-page {
	--pq-sand: #cccbbc;
	--pq-ink: #373737;
	--pq-ink-soft: rgba(55, 55, 55, 0.72);
	--pq-brand: #e31f2f;
	--pq-brand-hover: #c91a28;
	--pq-text: #1c1b18;
	--pq-text-soft: rgba(28, 27, 24, 0.72);
	--pq-cream: #f7f6f1;
	--pq-white: #ffffff;
	--pq-line: rgba(28, 27, 24, 0.18);
	--pq-font-display: "Playfair Display", Georgia, "Times New Roman", serif;
	--pq-font-body: "Cormorant Infant", Georgia, "Times New Roman", serif;
	--pq-font-ui: "gotham", "Gotham", "Nunito Sans", "Helvetica Neue", Arial, sans-serif;
	--pq-max: 1240px;
	--pq-ease: cubic-bezier(0.22, 1, 0.36, 1);
	background: var(--pq-cream);
	color: var(--pq-text);
}

body.pq-contact-page #contact-form {
	scroll-margin-top: 100px;
}

/* Keep ASG floating dark header over the hero (white logo/links).
   Do not force a solid white bar — that made the nav invisible. */

body.pq-contact-page #content,
body.pq-contact-page .site-content {
	padding: 0;
	background: transparent;
}

body.pq-contact-page .pq-lp--contact {
	font-family: var(--pq-font-body);
	color: var(--pq-text);
}

/* Hero */
body.pq-contact-page .pq-contact-hero {
	position: relative;
	min-height: min(78vh, 720px);
}

body.pq-contact-page .pq-contact-hero img {
	min-height: min(78vh, 720px);
	object-fit: cover;
	width: 100%;
}

body.pq-contact-page .pq-contact-hero__shade {
	background:
		linear-gradient(
			180deg,
			rgba(18, 17, 15, 0.55) 0%,
			rgba(18, 17, 15, 0.62) 45%,
			rgba(18, 17, 15, 0.78) 100%
		);
}

body.pq-contact-page .pq-contact-hero__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: clamp(5.5rem, 12vw, 7.5rem) 1.5rem clamp(3.5rem, 8vw, 5rem);
}

body.pq-contact-page .pq-contact-hero .pq-lp__brand {
	margin: 0 0 1rem;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(247, 246, 241, 0.82) !important;
}

body.pq-contact-page .pq-contact-hero__title {
	max-width: 16ch;
	margin: 0;
	font-family: var(--pq-font-display) !important;
	font-size: clamp(2.5rem, 5.5vw, 4rem) !important;
	font-weight: 400 !important;
	line-height: 1.08 !important;
	letter-spacing: -0.02em;
	text-transform: none !important;
	color: var(--pq-cream) !important;
}

body.pq-contact-page .pq-contact-hero__divider {
	display: block;
	width: 4.5rem;
	height: 1px;
	margin: 1.5rem auto;
	background: rgba(247, 246, 241, 0.55);
}

body.pq-contact-page .pq-contact-hero__subtitle {
	max-width: 34rem;
	margin: 0 0 2rem;
	font-family: var(--pq-font-body) !important;
	font-size: clamp(1.15rem, 1.8vw, 1.4rem) !important;
	font-weight: 300;
	line-height: 1.45 !important;
	color: rgba(247, 246, 241, 0.88) !important;
}

body.pq-contact-page .pq-contact-hero__subtitle p {
	margin: 0;
	color: inherit;
	font: inherit;
}

body.pq-contact-page .pq-contact-hero .pq-lp__btns {
	justify-content: center;
	gap: 0.85rem;
}

/* Value props */
body.pq-contact-page .pq-contact-value-props {
	padding: clamp(2.75rem, 5vw, 4rem) 0;
	background: var(--pq-sand);
}

body.pq-contact-page .contact-value-props__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(1.25rem, 2.5vw, 2rem);
	list-style: none;
	margin: 0;
	padding: 0;
}

body.pq-contact-page .contact-value-props__item {
	text-align: center;
}

body.pq-contact-page .contact-value-props__icon {
	display: block;
	width: 48px;
	height: 48px;
	margin: 0 auto 1rem;
	color: var(--pq-ink);
}

body.pq-contact-page .contact-value-props__icon--svg {
	line-height: 0;
}

body.pq-contact-page .contact-value-props__icon--svg svg {
	display: block;
	width: 48px;
	height: 48px;
}

body.pq-contact-page .contact-value-props__icon--placeholder {
	background: rgba(28, 27, 24, 0.08);
}

body.pq-contact-page .contact-value-props__title {
	margin: 0 0 0.5rem;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.82rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1.3 !important;
	color: var(--pq-text) !important;
}

body.pq-contact-page .contact-value-props__text {
	margin: 0;
	font-family: var(--pq-font-body) !important;
	font-size: 1.1rem !important;
	font-weight: 300;
	line-height: 1.4 !important;
	color: var(--pq-text-soft) !important;
}

/* Main form + aside */
body.pq-contact-page .pq-contact-main {
	padding: clamp(2.75rem, 5vw, 4.5rem) 0 clamp(3.5rem, 7vw, 5.5rem);
	background: var(--pq-cream);
}

body.pq-contact-page .contact-layout {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: clamp(2rem, 4vw, 3.5rem);
}

body.pq-contact-page .contact-form-col {
	flex: 1 1 640px;
	min-width: 0;
	max-width: 640px;
}

body.pq-contact-page .contact-form-col__heading {
	margin: 0 0 0.75rem;
	font-family: var(--pq-font-display) !important;
	font-size: clamp(1.85rem, 3vw, 2.35rem) !important;
	font-weight: 400 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.02em;
	color: var(--pq-text) !important;
	text-transform: none !important;
}

body.pq-contact-page .contact-form-col__intro {
	margin: 0 0 1.75rem;
	font-family: var(--pq-font-body) !important;
	font-size: 1.2rem !important;
	font-weight: 300;
	line-height: 1.45 !important;
	color: var(--pq-text-soft) !important;
}

body.pq-contact-page .contact-aside {
	flex: 0 0 320px;
	width: 320px;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

body.pq-contact-page .contact-card {
	border: 1px solid var(--pq-line);
	padding: 1.35rem 1.25rem;
	background: var(--pq-white);
	font-size: 0.95rem;
	line-height: 1.45;
}

body.pq-contact-page .contact-card__title {
	margin: 0 0 1rem;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	line-height: 1.3 !important;
	color: var(--pq-text) !important;
}

body.pq-contact-page .contact-card__item {
	display: flex;
	gap: 0.75rem;
	margin-bottom: 1.15rem;
}

body.pq-contact-page .contact-card__item:last-child {
	margin-bottom: 0;
}

body.pq-contact-page .contact-card__icon {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	margin-top: 2px;
	color: var(--pq-ink);
}

body.pq-contact-page .contact-card__icon svg {
	width: 20px;
	height: 20px;
}

body.pq-contact-page .contact-card__body {
	min-width: 0;
}

body.pq-contact-page .contact-card__item-title {
	margin: 0 0 0.25rem;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.92rem !important;
	font-weight: 500 !important;
	letter-spacing: 0;
	text-transform: none;
	color: var(--pq-text) !important;
}

body.pq-contact-page .contact-card__text,
body.pq-contact-page .contact-hours-html {
	margin: 0 0 0.4rem;
	font-family: var(--pq-font-body) !important;
	font-size: 1.05rem !important;
	font-weight: 300;
	line-height: 1.4 !important;
	color: var(--pq-text-soft) !important;
}

body.pq-contact-page .contact-card__text p,
body.pq-contact-page .contact-hours-html p,
body.pq-contact-page .contact-hours-html li {
	margin: 0 0 0.25rem;
	font: inherit;
	color: inherit;
}

body.pq-contact-page .contact-card__link {
	font-family: var(--pq-font-ui) !important;
	font-size: 0.78rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--pq-ink) !important;
	border-bottom: 1px solid transparent;
	transition: border-color 0.25s var(--pq-ease);
}

body.pq-contact-page .contact-card__link:hover {
	border-bottom-color: var(--pq-ink);
	text-decoration: none;
}

body.pq-contact-page .contact-card__link--plain {
	text-transform: none;
	letter-spacing: 0.02em;
	font-weight: 400 !important;
	border-bottom: 0;
}

body.pq-contact-page .contact-card__item[hidden] {
	display: none !important;
}

body.pq-contact-page .contact-card--materials {
	padding: 0;
	overflow: hidden;
}

body.pq-contact-page .contact-card__thumb {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

body.pq-contact-page .contact-card__materials-body {
	padding: 1.25rem 1.25rem 1.5rem;
}

/* Bottom CTA */
body.pq-contact-page .pq-contact-cta {
	padding: clamp(3rem, 6vw, 4.5rem) 0;
	background: var(--pq-sand);
	text-align: center;
}

body.pq-contact-page .contact-cta__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.75rem;
}

body.pq-contact-page .contact-cta__icon {
	color: var(--pq-ink);
	margin-bottom: 0.25rem;
}

body.pq-contact-page .contact-cta__heading {
	margin: 0;
	font-family: var(--pq-font-display) !important;
	font-size: clamp(1.85rem, 3vw, 2.35rem) !important;
	font-weight: 400 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.02em;
	color: var(--pq-text) !important;
	text-transform: none !important;
}

body.pq-contact-page .contact-cta__text {
	margin: 0 0 0.5rem;
	max-width: 32rem;
	font-family: var(--pq-font-body) !important;
	font-size: 1.2rem !important;
	font-weight: 300;
	line-height: 1.45 !important;
	color: var(--pq-text-soft) !important;
}

body.pq-contact-page .contact-cta__button {
	margin-top: 0.5rem;
}

/* Gravity Form — PQ chrome */
body.pq-contact-page #gform_wrapper_4 .gform_fields {
	column-count: 1 !important;
	columns: auto !important;
	display: flex;
	flex-direction: column;
	gap: 0;
}

body.pq-contact-page #gform_wrapper_4 .gform_fields > li,
body.pq-contact-page #gform_wrapper_4 .gfield {
	float: none !important;
	width: 100% !important;
	margin: 0 0 1.35rem !important;
	padding: 0;
	break-inside: auto;
}

body.pq-contact-page #gform_wrapper_4 .gfield_label,
body.pq-contact-page #gform_wrapper_4 label.gfield_label {
	display: block;
	margin: 0 0 0.55rem;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	line-height: 1.3;
	color: var(--pq-text-soft) !important;
}

body.pq-contact-page #gform_wrapper_4 .gfield_required {
	color: #9a5b4a;
	margin-left: 2px;
}

body.pq-contact-page #gform_wrapper_4 .ginput_container_text input,
body.pq-contact-page #gform_wrapper_4 .ginput_container_email input,
body.pq-contact-page #gform_wrapper_4 .ginput_container_password input,
body.pq-contact-page #gform_wrapper_4 .ginput_container_name input,
body.pq-contact-page #gform_wrapper_4 .ginput_container_phone input,
body.pq-contact-page #gform_wrapper_4 .ginput_container_date input,
body.pq-contact-page #gform_wrapper_4 .ginput_container_number input,
body.pq-contact-page #gform_wrapper_4 .ginput_container textarea,
body.pq-contact-page #gform_wrapper_4 .gfield_select,
body.pq-contact-page #gform_wrapper_4 textarea.textarea,
body.pq-contact-page #gform_wrapper_4 .textarea,
body.pq-contact-page #gform_wrapper_4 input[type='text'],
body.pq-contact-page #gform_wrapper_4 input[type='email'],
body.pq-contact-page #gform_wrapper_4 input[type='tel'],
body.pq-contact-page #gform_wrapper_4 input[type='url'],
body.pq-contact-page #gform_wrapper_4 input[type='number'],
body.pq-contact-page #gform_wrapper_4 select {
	width: 100% !important;
	max-width: 100% !important;
	height: auto;
	min-height: 3rem;
	line-height: 1.4;
	padding: 0.75rem 1rem !important;
	border: 1px solid var(--pq-ink) !important;
	border-radius: 0 !important;
	background: var(--pq-white);
	font-family: var(--pq-font-ui) !important;
	font-size: 0.95rem !important;
	color: var(--pq-text) !important;
	box-sizing: border-box;
	box-shadow: none !important;
	-webkit-appearance: none;
	appearance: none;
	transition: border-color 0.2s var(--pq-ease), box-shadow 0.2s var(--pq-ease);
}

body.pq-contact-page #gform_wrapper_4 textarea.textarea,
body.pq-contact-page #gform_wrapper_4 .textarea,
body.pq-contact-page #gform_wrapper_4 .ginput_container textarea {
	min-height: 7.5rem;
	height: auto !important;
	line-height: 1.5;
	resize: vertical;
}

body.pq-contact-page #gform_wrapper_4 .gfield_select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23373737' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 1rem center;
	padding-right: 2.25rem !important;
}

body.pq-contact-page #gform_wrapper_4 input:focus,
body.pq-contact-page #gform_wrapper_4 textarea:focus,
body.pq-contact-page #gform_wrapper_4 select:focus {
	outline: none;
	border-color: var(--pq-ink) !important;
	box-shadow: 0 0 0 3px rgba(55, 55, 55, 0.12);
}

body.pq-contact-page #gform_wrapper_4 input::placeholder,
body.pq-contact-page #gform_wrapper_4 textarea::placeholder {
	color: rgba(28, 27, 24, 0.45);
	opacity: 1;
}

body.pq-contact-page #gform_wrapper_4 .gfield_description,
body.pq-contact-page #gform_wrapper_4 .gform-field-label--type-sub,
body.pq-contact-page #gform_wrapper_4 .instruction {
	margin: 0.4rem 0 0;
	font-family: var(--pq-font-body) !important;
	font-size: 1rem !important;
	font-weight: 300;
	line-height: 1.4;
	color: var(--pq-text-soft) !important;
}

body.pq-contact-page #gform_wrapper_4 .gfield_description.gfield_administrative_message,
body.pq-contact-page #gform_wrapper_4 .gfield:not(.gfield_visibility_visible) .gfield_description {
	display: none;
}

body.pq-contact-page #gform_wrapper_4 .ginput_container_checkbox .gchoice,
body.pq-contact-page #gform_wrapper_4 .ginput_container_radio .gchoice {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin: 0 0 0.75rem !important;
	padding: 0;
	float: none !important;
}

body.pq-contact-page #gform_wrapper_4 .ginput_container_checkbox input[type='checkbox'],
body.pq-contact-page #gform_wrapper_4 .ginput_container_radio input[type='radio'] {
	width: 18px !important;
	min-width: 18px;
	height: 18px !important;
	min-height: 18px;
	margin: 2px 0 0 !important;
	padding: 0 !important;
	border: 1px solid var(--pq-ink) !important;
	border-radius: 0;
	accent-color: var(--pq-ink);
	flex-shrink: 0;
}

body.pq-contact-page #gform_wrapper_4 .ginput_container_radio input[type='radio'] {
	border-radius: 50%;
}

body.pq-contact-page #gform_wrapper_4 .ginput_container_checkbox label,
body.pq-contact-page #gform_wrapper_4 .ginput_container_radio label {
	margin: 0;
	font-family: var(--pq-font-body) !important;
	font-size: 1.1rem !important;
	font-weight: 300;
	line-height: 1.4;
	color: var(--pq-text) !important;
	cursor: pointer;
}

body.pq-contact-page #field_4_6,
body.pq-contact-page #gform_wrapper_4 .gchoice_4_6_1,
body.pq-contact-page #gform_wrapper_4 .gchoice_4_6_2 {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.pq-contact-page #gform_wrapper_4 .gfield_visibility_hidden,
body.pq-contact-page #gform_wrapper_4 .gform_validation_container,
body.pq-contact-page #gform_wrapper_4 .gfield--type-honeypot {
	display: none !important;
	margin: 0 !important;
}

body.pq-contact-page #gform_wrapper_4 .gform_footer {
	margin: 0.5rem 0 0 !important;
	padding: 0 !important;
	border-top: 0 !important;
}

body.pq-contact-page #gform_wrapper_4 .gform_button {
	width: 100% !important;
	max-width: 100%;
	height: 3rem !important;
	line-height: 3rem !important;
	margin: 0 !important;
	padding: 0 1.5rem !important;
	border: 1px solid var(--pq-ink) !important;
	border-radius: 0;
	cursor: pointer;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--pq-cream) !important;
	background: var(--pq-ink) !important;
	transition: background 0.3s var(--pq-ease), border-color 0.3s var(--pq-ease);
}

body.pq-contact-page #gform_wrapper_4 .gform_button:hover {
	background: #000 !important;
	border-color: #000 !important;
	filter: none;
}

body.pq-contact-page #gform_wrapper_4 .gform_submission_error,
body.pq-contact-page #gform_wrapper_4 .validation_message {
	font-size: 0.9rem;
	color: #9a5b4a;
	margin-top: 0.4rem;
}

body.pq-contact-page #gform_wrapper_4 .gfield_error input,
body.pq-contact-page #gform_wrapper_4 .gfield_error textarea,
body.pq-contact-page #gform_wrapper_4 .gfield_error select {
	border-color: #9a5b4a !important;
}

body.pq-contact-page .contact-form-col__heading + #gform_wrapper_4 .gform_description,
body.pq-contact-page .contact-form-col__intro + #gform_wrapper_4 .gform_description {
	display: none;
}

@media screen and (max-width: 1024px) {
	body.pq-contact-page .contact-value-props__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	body.pq-contact-page .contact-layout {
		flex-direction: column;
	}

	body.pq-contact-page .contact-form-col {
		max-width: none;
		width: 100%;
	}

	body.pq-contact-page .contact-aside {
		width: 100%;
		flex: 1 1 auto;
	}
}

@media screen and (max-width: 600px) {
	body.pq-contact-page .pq-contact-hero,
	body.pq-contact-page .pq-contact-hero img {
		min-height: 520px;
	}

	body.pq-contact-page .pq-contact-hero__content {
		padding-inline: 1rem;
	}

	body.pq-contact-page .pq-contact-hero .pq-lp__btns {
		width: 100%;
		max-width: 20rem;
		flex-direction: column;
	}

	body.pq-contact-page .pq-contact-hero .pq-lp__btn {
		width: 100%;
		justify-content: center;
	}

	body.pq-contact-page .contact-value-props__grid {
		grid-template-columns: 1fr;
	}

	body.pq-contact-page .pq-contact-value-props {
		padding: 2rem 0 1.5rem;
	}
}

/* ---------- Collection pages ---------- */
body.pq-collection-page,
.pq-lp.pq-lp--collection {
	background: #ffffff;
	overflow: visible;
}

.pq-coll-intro,
.pq-lp .pq-coll-intro.e-con {
	position: relative;
	isolation: isolate;
	min-height: 72vh;
	padding: 0 !important;
	text-align: center;
	align-items: center;
	justify-content: center;
	color: var(--pq-cream, #f7f6f1);
	background: #2a2926 center / cover no-repeat;
}

.pq-coll-intro::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		linear-gradient(
			to top,
			rgba(18, 17, 15, 0.72) 0%,
			rgba(18, 17, 15, 0.38) 48%,
			rgba(18, 17, 15, 0.22) 100%
		);
	pointer-events: none;
}

.pq-coll-intro .pq-lp__wrap,
.pq-coll-intro .pq-lp__wrap.e-con {
	position: relative;
	z-index: 1;
	padding: clamp(7.5rem, 14vh, 10rem) 0 clamp(3.5rem, 7vh, 5.5rem) !important;
	align-items: center;
	text-align: center;
}

.pq-coll-intro .pq-lp__label {
	margin: 0 0 0.65rem;
	color: var(--pq-cream, #f7f6f1) !important;
	opacity: 0.82;
}

.pq-coll-intro h1,
.pq-coll-intro h1.elementor-heading-title {
	margin: 0 auto;
	max-width: 14ch;
	font-family: var(--pq-font-display, "Playfair Display", Georgia, serif) !important;
	font-size: clamp(2.35rem, 5vw, 3.75rem);
	font-weight: 400;
	line-height: 1.06;
	letter-spacing: -0.02em;
	color: var(--pq-cream, #f7f6f1) !important;
}

.pq-coll-intro .pq-lp__lede,
.pq-coll-intro .pq-coll-tagline,
.pq-coll-intro .pq-lp__wrap > .elementor-widget-text-editor,
.pq-coll-intro .pq-lp__wrap > .elementor-widget-text-editor p {
	margin: 0.85rem auto 0;
	max-width: 28rem;
	font-size: clamp(1.15rem, 1.8vw, 1.4rem);
	font-style: italic;
	color: rgba(247, 246, 241, 0.9) !important;
}

.pq-coll-intro .pq-lp__body,
.pq-coll-intro .elementor-widget-text-editor {
	color: rgba(247, 246, 241, 0.82);
}

.pq-coll-intro .pq-lp__body {
	margin: 1.15rem auto 0;
	max-width: 38rem;
	font-size: clamp(1.05rem, 1.5vw, 1.2rem);
	color: rgba(247, 246, 241, 0.78) !important;
}

.pq-coll-intro .pq-lp__btns {
	justify-content: center;
	margin-top: 1.75rem;
}

.pq-coll-intro .pq-lp__wrap > .elementor-widget + .elementor-widget {
	margin-top: 0;
}

.pq-coll-purpose,
.pq-lp .pq-coll-purpose.e-con {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: stretch !important;
	gap: 0 !important;
	width: 100% !important;
	max-width: none !important;
	min-height: min(72vh, 740px);
	padding: 0 !important;
	margin: 0 !important;
	background: var(--pq-cream, #f7f6f1);
	color: var(--pq-text, #1c1b18);
	flex-direction: unset !important;
	text-align: left;
}

.pq-coll-purpose__copy,
.pq-lp .pq-coll-purpose__copy.e-con {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	padding: clamp(3.25rem, 8vw, 6.75rem) clamp(2.25rem, 7vw, 6.5rem) !important;
	background: var(--pq-cream, #f7f6f1);
	max-width: none !important;
}

.pq-coll-purpose__copy > .elementor-widget {
	max-width: 34rem;
}

.pq-coll-purpose h2,
.pq-coll-purpose h2.elementor-heading-title {
	margin: 0 !important;
	max-width: 16ch;
	font-size: clamp(2.2rem, 4.4vw, 3rem);
	line-height: 1.08;
	letter-spacing: -0.025em;
	font-weight: 400;
	color: var(--pq-text, #1c1b18) !important;
}

.pq-coll-purpose .pq-lp__label {
	margin: 0 0 0.85rem !important;
	opacity: 0.62;
	color: var(--pq-text, #1c1b18) !important;
}

.pq-coll-purpose .pq-lp__body {
	margin: 1.35rem 0 0 !important;
	max-width: 34rem;
	font-size: clamp(1.15rem, 1.6vw, 1.35rem);
	line-height: 1.55;
	color: var(--pq-text-soft, rgba(28, 27, 24, 0.72)) !important;
}

.pq-coll-purpose .pq-about__dot,
.pq-coll-purpose h2.elementor-heading-title .pq-about__dot {
	color: var(--pq-red, var(--pq-brand, #e31f2f)) !important;
}

.pq-coll-purpose__media,
.pq-lp .pq-coll-purpose__media.e-con {
	position: relative;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 100%;
	overflow: hidden;
	background: #e8e7dc;
}

.pq-coll-purpose__media .elementor-widget,
.pq-coll-purpose__media .elementor-widget-container,
.pq-coll-purpose__media .elementor-widget-image {
	height: 100%;
}

.pq-coll-purpose__media img,
.pq-coll-purpose__media .elementor-widget-image img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: min(72vh, 740px);
	object-fit: cover;
	aspect-ratio: auto !important;
}

@media (max-width: 900px) {
	.pq-coll-purpose,
	.pq-lp .pq-coll-purpose.e-con {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.pq-coll-purpose__copy,
	.pq-lp .pq-coll-purpose__copy.e-con {
		padding: clamp(2.75rem, 8vw, 4rem) 1.5rem !important;
	}

	.pq-coll-purpose h2,
	.pq-coll-purpose h2.elementor-heading-title {
		max-width: none;
	}

	.pq-coll-purpose__media img,
	.pq-coll-purpose__media .elementor-widget-image img {
		min-height: 0;
		aspect-ratio: 4 / 3 !important;
	}
}

.pq-coll-grid-wrap,
.pq-lp .pq-coll-grid-wrap.e-con {
	background: #ffffff;
}

.pq-coll-grid {
	padding: clamp(3rem, 6vw, 4.5rem) 0 clamp(3.5rem, 7vw, 5.5rem);
	background: #ffffff;
}

.pq-lp .pq-coll-grid .pq-lp__wrap,
.pq-coll-grid .pq-lp__wrap {
	width: min(100% - 2.5rem, 1100px);
	margin-inline: auto;
}

.pq-coll-grid .pq-lp__cats--collection,
.pq-lp .pq-coll-grid .pq-lp__cats.pq-lp__cats--collection {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 2.75rem 2.25rem;
	margin-top: 0;
	text-align: center;
}

.pq-coll-grid .pq-lp__cat {
	text-align: center;
	color: #111;
}

.pq-coll-grid .pq-lp__cat figure {
	margin: 0;
	overflow: hidden;
	background: #f3f3f3;
	border: 1px solid #e6e6e6;
	box-shadow: 0 10px 22px rgba(0, 0, 0, 0.08);
}

.pq-coll-grid .pq-coll__frame {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: minmax(0, 1fr);
	width: 100%;
	aspect-ratio: 2 / 1;
	overflow: hidden;
	transition: transform 0.8s var(--pq-ease, cubic-bezier(0.22, 1, 0.36, 1));
}

.pq-coll-grid .pq-lp__cat.pq-coll__has-insp .pq-coll__frame {
	grid-template-columns: 1fr 1fr;
}

.pq-coll-grid .pq-coll__frame img,
.pq-coll-grid .pq-lp__cat img {
	display: block;
	width: 100%;
	height: 100%;
	min-width: 0;
	min-height: 0;
	aspect-ratio: auto;
	object-fit: cover;
	object-position: center;
}

.pq-coll-grid .pq-lp__cat:hover img {
	transform: none;
}

.pq-coll-grid .pq-lp__cat:hover .pq-coll__frame {
	transform: scale(1.03);
}

.pq-coll-grid .pq-lp__cats--collection .pq-lp__cat h3,
.pq-coll-grid .pq-lp__cat h3 {
	margin: 1.05rem 0 0;
	font-family: var(--pq-font-ui, "gotham", "Nunito Sans", Arial, sans-serif) !important;
	font-size: 0.82rem;
	font-weight: 700 !important;
	letter-spacing: 0.08em;
	line-height: 1.4;
	text-transform: uppercase;
	text-align: center;
	color: #111 !important;
}

.pq-coll__sku {
	font-weight: 400 !important;
	color: #5a7d88 !important;
	letter-spacing: 0.06em;
}

.pq-coll__note {
	margin: 0.2rem 0 0;
	font-family: var(--pq-font-ui, "gotham", "Nunito Sans", Arial, sans-serif) !important;
	font-size: 0.78rem;
	font-weight: 400;
	letter-spacing: 0.02em;
	text-transform: none;
	color: #8a8a8a;
	text-align: center;
}

.pq-coll-more,
.pq-coll-more.pq-lp__teaser,
.pq-lp .pq-coll-more.e-con {
	padding: clamp(3rem, 6vw, 4.5rem) 0 !important;
	background: #ffffff;
}

.pq-coll-more h2,
.pq-coll-more h2.elementor-heading-title {
	margin: 0 auto 0.35rem;
	max-width: 18ch;
	text-align: center;
	font-family: var(--pq-font-display, "Playfair Display", Georgia, serif) !important;
	font-size: clamp(1.7rem, 3vw, 2.45rem);
	font-weight: 400;
	line-height: 1.12;
}

.pq-coll-more .pq-lp__label {
	text-align: center;
	margin: 0 0 0.5rem;
}

.pq-coll-more .pq-lp__cats {
	grid-template-columns: repeat(3, 1fr);
	margin-top: 2.25rem;
}

.pq-coll-more .pq-lp__wrap > .elementor-widget + .elementor-widget {
	margin-top: 0;
}

@media (max-width: 720px) {
	.pq-coll-grid .pq-lp__cats--collection,
	.pq-lp .pq-coll-grid .pq-lp__cats.pq-lp__cats--collection,
	.pq-coll-more .pq-lp__cats {
		grid-template-columns: 1fr !important;
	}

	.pq-coll-intro {
		min-height: 64vh;
	}
}

/* ==========================================================================
   PQ supporting documents (/supporting-documents/pentalquartz/)
   ========================================================================== */

html:has(body.pq-docs-page) {
	scroll-behavior: smooth;
}

body.pq-docs-page {
	--pq-sand: #cccbbc;
	--pq-ink: #373737;
	--pq-ink-soft: rgba(55, 55, 55, 0.72);
	--pq-brand: #e31f2f;
	--pq-brand-hover: #c91a28;
	--pq-text: #1c1b18;
	--pq-text-soft: rgba(28, 27, 24, 0.72);
	--pq-cream: #f7f6f1;
	--pq-white: #ffffff;
	--pq-line: rgba(28, 27, 24, 0.18);
	--pq-font-display: "Playfair Display", Georgia, "Times New Roman", serif;
	--pq-font-body: "Cormorant Infant", Georgia, "Times New Roman", serif;
	--pq-font-ui: "gotham", "Gotham", "Nunito Sans", "Helvetica Neue", Arial, sans-serif;
	--pq-max: 1240px;
	--pq-ease: cubic-bezier(0.22, 1, 0.36, 1);
	background: var(--pq-cream);
	color: var(--pq-text);
}

body.pq-docs-page #content,
body.pq-docs-page .site-content,
body.pq-docs-page #main_content {
	padding: 0;
	background: transparent;
}

body.pq-docs-page .pq-lp__label,
body.pq-docs-page .pq-docs-hero .pq-lp__brand {
	color: var(--pq-red, #e31f2f) !important;
	opacity: 1;
}

body.pq-docs-page .pq-docs-hero,
body.pq-docs-page .pq-lp .pq-docs-hero.e-con {
	min-height: min(86vh, 880px);
}

body.pq-docs-page .pq-docs-hero .pq-lp__hero-inner,
body.pq-docs-page .pq-lp .pq-docs-hero .pq-lp__hero-inner.e-con {
	padding: clamp(9.5rem, 18vh, 13rem) 0 clamp(5rem, 10vh, 7.5rem);
}

body.pq-docs-page .pq-docs-hero .pq-lp__hero-inner h1,
body.pq-docs-page .pq-docs-hero .pq-lp__hero-inner h1.elementor-heading-title {
	max-width: 20ch;
}

.pq-docs-jump {
	background: var(--pq-sand, #cccbbc);
	color: var(--pq-text, #1c1b18);
	border-bottom: 1px solid var(--pq-line, rgba(28, 27, 24, 0.18));
}

.pq-docs-jump ul,
.pq-docs-jump .elementor-widget-container ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 0.35rem 0.15rem;
	margin: 0;
	padding: 0.85rem 0;
	list-style: none !important;
	list-style-type: none !important;
}

.pq-docs-jump li {
	list-style: none !important;
	list-style-type: none !important;
	margin: 0;
	padding: 0;
}

.pq-docs-jump li::marker,
.pq-docs-jump li::before {
	content: none !important;
	display: none !important;
}

.pq-docs-jump a {
	display: inline-flex;
	align-items: center;
	padding: 0.7rem 1rem;
	color: inherit;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.72rem;
	letter-spacing: 0.16em;
	text-decoration: none;
	text-transform: uppercase;
	opacity: 0.78;
	transition: opacity 0.25s var(--pq-ease, ease);
}

.pq-docs-jump a:hover,
.pq-docs-jump a:focus-visible {
	opacity: 1;
}

.pq-docs-section,
.pq-lp .pq-docs-section.e-con {
	padding: clamp(3.5rem, 7vw, 5.5rem) 0 !important;
	display: flex !important;
	flex-direction: column !important;
}

.pq-docs-section[id],
.elementor-element[id="installation"],
.elementor-element[id="warranty"],
.elementor-element[id="safety"],
.elementor-element[id="other"] {
	scroll-margin-top: 5.5rem;
}

.pq-docs-section__head,
.pq-lp .pq-docs-section__head.e-con {
	max-width: 40rem;
	margin: 0 0 clamp(1.75rem, 3.5vw, 2.5rem);
}

.pq-docs-section__head h2,
.pq-docs-section__head h2.elementor-heading-title {
	margin: 0;
	max-width: 32ch;
	font-size: clamp(2rem, 4vw, 2.85rem) !important;
	line-height: 1.08 !important;
	letter-spacing: -0.025em;
}

.pq-docs-section__head .pq-lp__body {
	margin: 1.1rem 0 0;
	max-width: 34rem;
	font-size: clamp(1.15rem, 1.6vw, 1.35rem);
	line-height: 1.5;
	color: var(--pq-text-soft);
}

.pq-docs-section__head > .elementor-widget + .elementor-widget {
	margin-top: 1.1rem !important;
}

.pq-docs-section__head > .elementor-widget.pq-reveal--2 {
	margin-top: 0 !important;
}

.pq-docs-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pq-lp .pq-docs-grid.e-con,
.pq-docs-grid.e-con > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem !important;
	flex-direction: unset !important;
	flex-wrap: unset !important;
	align-items: stretch !important;
	width: 100% !important;
	max-width: none !important;
}

.pq-lp .pq-docs-grid.e-con > .e-con,
.pq-docs-grid.e-con > .e-con-inner > .e-con {
	width: auto !important;
	max-width: none !important;
	--width: 100%;
}

.pq-docs-card,
.pq-lp .pq-docs-card.e-con,
.pq-docs-card.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 1.15rem;
	min-height: 7.25rem;
	padding: 1.25rem 1.35rem;
	background: var(--pq-white, #fff);
	border: 1px solid rgba(28, 27, 24, 0.1);
	color: var(--pq-text, #1c1b18);
	text-decoration: none !important;
	box-sizing: border-box;
	transition: transform 0.35s var(--pq-ease, ease), border-color 0.35s var(--pq-ease, ease),
		box-shadow 0.35s var(--pq-ease, ease);
}

.pq-docs-card.e-con > .e-con-inner {
	width: 100%;
	min-height: 0;
	padding: 0 !important;
	border: 0;
	background: transparent;
}

.pq-lp__surface--sand .pq-docs-card,
.pq-lp__surface--sand .pq-docs-card.e-con {
	background: var(--pq-cream, #f7f6f1);
}

.pq-docs-card:hover,
.pq-docs-card:focus-visible {
	transform: translateY(-2px);
	border-color: var(--pq-ink, #373737);
	box-shadow: 0 10px 28px rgba(28, 27, 24, 0.08);
	color: var(--pq-text, #1c1b18);
}

.pq-docs-card.e-con > .e-con-inner:hover {
	transform: none;
	box-shadow: none;
	border: 0;
}

.pq-docs-card__icon {
	flex: 0 0 auto;
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	color: var(--pq-brand, #e31f2f);
}

.pq-docs-card__icon svg {
	display: block;
	width: 2.35rem;
	height: 2.35rem;
}

.pq-docs-card__copy,
.pq-lp .pq-docs-card__copy.e-con,
.pq-docs-card__copy.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.4rem;
	min-width: 0;
	padding: 0 !important;
	border: 0;
	background: transparent;
	min-height: 0;
}

.pq-docs-card h3,
.pq-docs-card h3.elementor-heading-title {
	margin: 0;
	font-size: clamp(1.2rem, 1.8vw, 1.45rem) !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em;
	color: inherit !important;
}

.pq-docs-card .elementor-widget-html {
	flex: 0 0 auto;
}

.pq-docs-card .pq-docs-card__action,
.pq-docs-card p.pq-docs-card__action {
	margin: 0;
	font-family: var(--pq-font-ui) !important;
	font-size: 0.7rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--pq-ink-soft, rgba(55, 55, 55, 0.72));
}

.pq-docs-card:hover .pq-docs-card__action,
.pq-docs-card:focus-visible .pq-docs-card__action {
	color: var(--pq-brand, #e31f2f);
}

@media (max-width: 800px) {
	.pq-docs-grid,
	.pq-lp .pq-docs-grid.e-con,
	.pq-docs-grid.e-con > .e-con-inner {
		grid-template-columns: 1fr;
	}

	.pq-docs-jump ul {
		justify-content: flex-start;
	}

	.pq-docs-jump a {
		padding-inline: 0.7rem;
	}
}

body.pq-docs-page .pq-lp__close::before {
	background: rgb(204 203 188 / 0.62);
}
