/* TRASAGA EDITORIAL */

.trasaga-editorial .trasaga-eyebrow,
.trasaga-product-story .trasaga-label {
	color: var(--trasaga-champagne) !important;
	font-size: .68rem !important;
	letter-spacing: .28em !important;
	text-transform: uppercase !important;
	font-weight: 500 !important;
}

.trasaga-editorial .trasaga-eyebrow {
	color: var(--trasaga-champagne) !important;
}

.trasaga-editorial .lead {
	font-size: clamp(1rem, 2.2vw, 1.2rem) !important;
	line-height: 1.55 !important;
	opacity: .92;
}

.trasaga-editorial .trasaga-btn-shop.button {
	background: #fff !important;
	color: var(--trasaga-ink) !important;
	border: none !important;
	padding: 15px 42px !important;
	font-size: .72rem !important;
	font-weight: 600 !important;
	letter-spacing: .18em !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

.trasaga-editorial .trasaga-btn-dark.button {
	background: var(--trasaga-black) !important;
	color: #fff !important;
	border: 1px solid var(--trasaga-black) !important;
	padding: 15px 42px !important;
	font-size: .72rem !important;
	font-weight: 600 !important;
	letter-spacing: .18em !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

.trasaga-editorial .trasaga-btn-dark.button:hover {
	background: var(--trasaga-bronze) !important;
	border-color: var(--trasaga-bronze) !important;
}

.trasaga-editorial .trasaga-btn-outline.button {
	background: transparent !important;
	color: #fff !important;
	border: 1px solid rgba(255, 255, 255, .55) !important;
	padding: 14px 36px !important;
	font-size: .72rem !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

.trasaga-editorial .trasaga-btn-outline-dark.button {
	background: transparent !important;
	color: var(--trasaga-ink) !important;
	border: 1px solid var(--trasaga-ink) !important;
	padding: 14px 36px !important;
	font-size: .72rem !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

.trasaga-editorial .trasaga-btn-outline-dark.button:hover {
	background: var(--trasaga-mist) !important;
	border-color: var(--trasaga-bronze) !important;
	color: var(--trasaga-bronze) !important;
}

.trasaga-editorial .trasaga-cta-row {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center !important;
	gap: 12px;
	margin-top: 8px;
}

.trasaga-editorial .trasaga-feature h2 {
	font-size: clamp(1.85rem, 4.5vw, 3.25rem) !important;
	font-weight: 600 !important;
	letter-spacing: -0.03em !important;
	line-height: 1.08 !important;
	text-transform: none !important;
}

.trasaga-editorial .trasaga-feature .trasaga-price {
	font-size: 1.05rem;
	font-weight: 500;
	color: var(--trasaga-bronze);
	margin-bottom: 1.1em;
}

.trasaga-editorial .trasaga-feature p {
	font-size: 1rem;
	line-height: 1.7;
	color: var(--trasaga-warm);
	max-width: 26rem;
}

.trasaga-editorial .trasaga-final {
	background: #000 !important;
}

.trasaga-editorial .trasaga-final h2,
.trasaga-editorial .trasaga-final p,
.trasaga-editorial .trasaga-final .lead {
	color: #fff !important;
}

.trasaga-editorial #content,
.trasaga-editorial .section,
.trasaga-editorial h1,
.trasaga-editorial h2,
.trasaga-editorial h3,
.trasaga-editorial h4,
.trasaga-editorial p,
.trasaga-editorial .button,
.trasaga-editorial a {
	font-family: var(--trasaga-font) !important;
}

.trasaga-editorial .page-title-inner,
.trasaga-editorial .entry-header {
	display: none !important;
}

.trasaga-editorial #content {
	background: var(--trasaga-white);
}

html:has(body.trasaga-editorial),
html:has(.trasaga-editorial) {
	overflow-x: clip;
}

.trasaga-editorial .banner-bg,
.trasaga-editorial [data-parallax] {
	transform: none !important;
	background-attachment: scroll !important;
}

.trasaga-editorial #footer.footer-wrapper {
	display: none !important;
}

.trasaga-ed-intro h1,
.trasaga-ed-hero h1 {
	font-size: clamp(2.5rem, 7vw, 4.5rem) !important;
	font-weight: 600 !important;
	letter-spacing: -0.04em !important;
	line-height: 1.05 !important;
	text-transform: none !important;
	color: var(--trasaga-ink) !important;
	margin-bottom: .5em !important;
}

.trasaga-ed-hero h1,
.trasaga-ed-hero .lead {
	color: #fff !important;
}

.trasaga-ed-lead {
	font-size: 1.1rem;
	line-height: 1.65;
	color: var(--trasaga-warm);
	max-width: 36rem;
	margin: 0 auto;
}

.trasaga-standard-note {
	font-size: .78rem;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--trasaga-taupe);
	margin-top: 1.25em;
}

.trasaga-pack-card {
	background: var(--trasaga-white);
	border: 1px solid var(--trasaga-border);
	padding: 28px 24px;
	height: 100%;
}

.trasaga-pack-card h4 {
	font-size: 1rem !important;
	font-weight: 600 !important;
	margin-bottom: 10px !important;
	text-transform: none !important;
}

.trasaga-pack-card p {
	font-size: .92rem;
	line-height: 1.6;
	color: var(--trasaga-warm);
	margin: 0;
}

.trasaga-journey-pack {
	font-size: .78rem;
	letter-spacing: .08em;
	color: var(--trasaga-bronze);
	margin-top: 1.25em !important;
}

.trasaga-journey-card--alt .trasaga-ps-media-first {
	order: 0;
}

/* Product story (below add-to-cart on Odessy pages) */
.trasaga-product-story {
	margin-top: 48px;
	padding-top: 48px;
	border-top: 1px solid var(--trasaga-border);
}

.trasaga-ps-hero {
	text-align: center;
	padding: 48px 24px 32px;
	max-width: 42rem;
	margin: 0 auto;
}

.trasaga-ps-hero h2 {
	font-size: clamp(1.75rem, 4vw, 2.75rem) !important;
	font-weight: 600 !important;
	letter-spacing: -0.03em !important;
	line-height: 1.1 !important;
	color: var(--trasaga-ink) !important;
	margin-bottom: .6em !important;
	text-transform: none !important;
}

.trasaga-ps-lead {
	font-size: 1.05rem;
	line-height: 1.65;
	color: var(--trasaga-warm);
}

.trasaga-ps-list {
	list-style: none;
	padding: 0;
	margin: 1em 0 0;
	font-size: .92rem;
	line-height: 1.9;
	color: var(--trasaga-warm);
}

.trasaga-ps-list li::before {
	content: "—";
	margin-right: 10px;
	color: var(--trasaga-taupe);
}

.trasaga-ps-feature h3,
.trasaga-ps-dark h3 {
	font-size: clamp(1.5rem, 3.5vw, 2.25rem) !important;
	font-weight: 600 !important;
	letter-spacing: -0.025em !important;
	line-height: 1.12 !important;
	text-transform: none !important;
}

.trasaga-ps-feature p,
.trasaga-ps-dark p {
	font-size: 1rem;
	line-height: 1.65;
	color: var(--trasaga-warm);
	max-width: 26rem;
}

.trasaga-ps-feature--alt {
	background: var(--trasaga-mist);
}

.trasaga-ps-dark h3,
.trasaga-ps-dark p,
.trasaga-ps-dark .trasaga-label {
	color: #fff !important;
}

.trasaga-ps-stat {
	font-size: 1.1rem !important;
	font-weight: 600 !important;
	color: var(--trasaga-ink) !important;
	margin: 0 !important;
}

.trasaga-ps-stat-label {
	font-size: .68rem;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--trasaga-taupe);
	margin-top: 6px !important;
}

.trasaga-ps-cta {
	padding-top: 32px;
}

.single-product .woocommerce-tabs {
	border-color: var(--trasaga-border) !important;
}

.single-product .woocommerce-Tabs-panel {
	padding-top: 24px;
}

/* Concierge quiz */
.trasaga-concierge-app {
	max-width: 520px;
	margin: 32px auto 0;
	text-align: left;
}

.trasaga-cq-progress {
	display: flex;
	gap: 8px;
	justify-content: center;
	margin-bottom: 28px;
}

.trasaga-cq-progress span {
	width: 48px;
	height: 2px;
	background: var(--trasaga-border);
	transition: background .25s ease;
}

.trasaga-cq-progress span.active,
.trasaga-cq-progress span.done {
	background: var(--trasaga-ink);
}

.trasaga-cq-q {
	font-size: 1.05rem;
	font-weight: 600;
	color: var(--trasaga-ink);
	text-align: center;
	margin-bottom: 20px;
}

.trasaga-cq-options {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.trasaga-cq-opt {
	display: block;
	width: 100%;
	padding: 16px 20px;
	background: var(--trasaga-white);
	border: 1px solid var(--trasaga-border);
	font-family: var(--trasaga-font);
	font-size: .88rem;
	font-weight: 500;
	color: var(--trasaga-ink);
	cursor: pointer;
	text-align: left;
	transition: border-color .2s ease, background .2s ease;
}

.trasaga-cq-opt:hover,
.trasaga-cq-opt:focus {
	border-color: var(--trasaga-ink);
	background: var(--trasaga-mist);
	outline: none;
}

.trasaga-cq-result {
	text-align: center;
	padding-top: 8px;
}

.trasaga-cq-rec-title {
	font-size: 1.35rem !important;
	font-weight: 600 !important;
	letter-spacing: -0.02em !important;
	margin: 8px 0 12px !important;
	text-transform: none !important;
}

.trasaga-cq-rec-body {
	font-size: .95rem;
	line-height: 1.6;
	color: var(--trasaga-warm);
	margin-bottom: 20px;
}

.trasaga-cq-result .button {
	margin: 6px 8px !important;
	display: inline-block;
}

.trasaga-cq-reset {
	display: block;
	margin: 20px auto 0;
	background: none;
	border: none;
	font-size: .72rem;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--trasaga-taupe);
	cursor: pointer;
	text-decoration: underline;
}

@media (max-width: 849px) {
	.trasaga-journey-card--alt .trasaga-feature-copy {
		order: 1;
	}

	.trasaga-journey-card--alt .col:last-child {
		order: 0;
	}

	.trasaga-ps-feature--alt .trasaga-ps-media-first {
		order: 0;
	}

	.trasaga-cq-opt {
		padding: 18px 16px;
	}
}

/* END TRASAGA EDITORIAL */

/* Editorial pages — shared premium components (mirrors homepage) */
.trasaga-editorial .trasaga-eyebrow {
	font-size: .68rem !important;
	letter-spacing: .28em !important;
	text-transform: uppercase !important;
	font-weight: 500 !important;
	margin-bottom: 1.25rem !important;
	color: var(--trasaga-champagne) !important;
}

.trasaga-editorial .trasaga-ed-hero .lead,
.trasaga-editorial .trasaga-final .lead {
	font-size: clamp(1rem, 2.2vw, 1.2rem) !important;
	font-weight: 400 !important;
	line-height: 1.55 !important;
	max-width: 34rem;
	margin: 0 auto 1.5rem !important;
	opacity: .9;
	color: #fff !important;
}

.trasaga-editorial .trasaga-feature h2 {
	font-size: clamp(1.85rem, 4.5vw, 3.25rem) !important;
	font-weight: 600 !important;
	letter-spacing: -0.03em !important;
	line-height: 1.08 !important;
	text-transform: none !important;
}

.trasaga-editorial .trasaga-feature .trasaga-price {
	font-size: 1.05rem;
	font-weight: 500;
	color: var(--trasaga-bronze);
	margin-bottom: 1.1em;
}

.trasaga-editorial .trasaga-feature p {
	font-size: 1rem;
	line-height: 1.7;
	color: var(--trasaga-warm);
	max-width: 26rem;
}

.trasaga-editorial .trasaga-trust-bar {
	background: var(--trasaga-white) !important;
	border-bottom: 1px solid var(--trasaga-border);
}

.trasaga-editorial .trasaga-trust-bar p {
	color: var(--trasaga-ink) !important;
	font-size: .65rem !important;
	letter-spacing: .18em !important;
	text-transform: uppercase;
	font-weight: 500;
	margin: 0 !important;
}

.trasaga-editorial .trasaga-trust-bar .col-inner {
	padding-top: 18px !important;
	padding-bottom: 18px !important;
}

.trasaga-editorial .trasaga-final {
	background: #000 !important;
}

.trasaga-editorial .trasaga-final h2,
.trasaga-editorial .trasaga-final p {
	color: #fff !important;
}

.trasaga-editorial .trasaga-cta-row {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center !important;
	gap: 12px;
	margin-top: 8px;
}

.trasaga-editorial .trasaga-btn-shop.button {
	background: #fff !important;
	color: var(--trasaga-ink) !important;
	border: none !important;
	padding: 15px 42px !important;
	font-size: .72rem !important;
	font-weight: 600 !important;
	letter-spacing: .18em !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

.trasaga-editorial .trasaga-btn-dark.button {
	background: var(--trasaga-black) !important;
	color: #fff !important;
	border: 1px solid var(--trasaga-black) !important;
	padding: 15px 42px !important;
	font-size: .72rem !important;
	font-weight: 600 !important;
	letter-spacing: .18em !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

.trasaga-editorial .trasaga-btn-dark.button:hover {
	background: var(--trasaga-bronze) !important;
	border-color: var(--trasaga-bronze) !important;
}

.trasaga-editorial .trasaga-btn-outline.button {
	background: transparent !important;
	color: #fff !important;
	border: 1px solid rgba(255, 255, 255, .55) !important;
	padding: 14px 36px !important;
	font-size: .72rem !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

.trasaga-editorial .trasaga-btn-outline-dark.button {
	background: transparent !important;
	color: var(--trasaga-ink) !important;
	border: 1px solid var(--trasaga-ink) !important;
	padding: 14px 36px !important;
	font-size: .72rem !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

.trasaga-editorial .trasaga-btn-outline-dark.button:hover {
	background: var(--trasaga-mist) !important;
	border-color: var(--trasaga-bronze) !important;
	color: var(--trasaga-bronze) !important;
}

.trasaga-editorial .trasaga-colours h4 {
	font-size: .95rem !important;
	font-weight: 600 !important;
	letter-spacing: .06em !important;
	text-transform: uppercase !important;
	color: #fff !important;
}

.trasaga-editorial .trasaga-colour-price {
	font-size: .78rem;
	letter-spacing: .08em;
	color: #fff;
}

/* Product pages — premium buttons in story */
.trasaga-product-story .trasaga-btn-outline-dark.button {
	background: transparent !important;
	color: var(--trasaga-ink) !important;
	border: 1px solid var(--trasaga-ink) !important;
	padding: 14px 36px !important;
	font-size: .72rem !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
}

