/* Collection detail pages: legacy SEO content with Pasquin editorial layout. */
.collection-page {
	background: var(--paper);
}
.collection-hero {
	position: relative;
	min-height: clamp(560px, 76vh, 840px);
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	background: var(--noir);
	color: var(--paper);
	border-bottom: 1px solid rgba(176,135,66,.22);
}
.collection-hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;
	background: var(--noir);
}
.collection-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: var(--collection-hero-position, center center);
	filter: saturate(.92) contrast(1.04);
	transform: scale(1.015);
}
.collection-hero__shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(20,17,13,.76) 0%, rgba(20,17,13,.48) 42%, rgba(20,17,13,.18) 100%),
		linear-gradient(0deg, rgba(20,17,13,.74) 0%, rgba(20,17,13,.20) 52%, rgba(20,17,13,.30) 100%);
	pointer-events: none;
}
.collection-hero__inner {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: var(--w-max);
	margin: 0 auto;
	padding: clamp(96px, 14vh, 170px) var(--pad-x) clamp(54px, 8vh, 92px);
}
.collection-hero__crumbs {
	min-height: 24px;
	margin-bottom: clamp(18px, 3vh, 32px);
}
.collection-hero .breadcrumb {
	font-family: var(--font-mono);
	font-size: 11px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: rgba(246,240,224,.66);
}
.collection-hero .breadcrumb a {
	color: rgba(246,240,224,.76);
	border-bottom: 1px solid rgba(200,163,102,.38);
}
.collection-hero .breadcrumb a:hover {
	color: var(--gold-soft);
}
.collection-hero__eyebrow {
	font-family: var(--font-mono);
	font-size: 11px;
	letter-spacing: .30em;
	text-transform: uppercase;
	color: var(--gold-soft);
	margin-bottom: 18px;
}
.collection-hero__title {
	max-width: 980px;
	font-family: var(--font-display);
	font-size: clamp(46px, 6.5vw, 104px);
	line-height: .98;
	font-weight: 400;
	color: var(--paper);
	margin: 0;
	text-wrap: balance;
}
.collection-hero__summary {
	max-width: 680px;
	margin: clamp(20px, 3vh, 30px) 0 0;
	font-family: var(--font-display);
	font-size: clamp(20px, 2vw, 28px);
	line-height: 1.38;
	font-style: italic;
	color: rgba(246,240,224,.82);
}
.collection-hero__tags {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	padding: 0;
	margin: clamp(26px, 4vh, 40px) 0 0;
	max-width: 760px;
}
.collection-hero__tags li {
	font-family: var(--font-mono);
	font-size: 10px;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: rgba(246,240,224,.84);
	border: 1px solid rgba(200,163,102,.42);
	background: rgba(20,17,13,.36);
	backdrop-filter: blur(8px);
	padding: 8px 12px;
}
.collection-page__body {
	position: relative;
	padding: clamp(72px, 10vh, 132px) var(--pad-x);
	background:
		linear-gradient(180deg, rgba(239,231,210,.46), rgba(251,246,232,0) 230px),
		var(--paper);
}
.collection-page__body::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(176,135,66,.55), transparent);
}
.collection-page__content {
	counter-reset: collection-section;
	max-width: min(980px, 100%);
	margin: 0 auto;
	font-size: clamp(17px, 1.18vw, 20px);
	line-height: 1.78;
	color: var(--ink-soft);
}
.collection-page__content > p:first-of-type {
	max-width: 900px;
	margin: 0 0 clamp(48px, 8vh, 86px);
	font-family: var(--font-display);
	font-size: clamp(24px, 2.8vw, 38px);
	line-height: 1.32;
	font-weight: 300;
	color: var(--ink);
}
.collection-page__content h2 {
	counter-increment: collection-section;
	display: grid;
	grid-template-columns: minmax(56px, .18fr) minmax(0, 1fr);
	gap: clamp(18px, 3vw, 40px);
	align-items: baseline;
	margin: clamp(42px, 7vh, 78px) 0 16px;
	padding-top: 26px;
	border-top: 1px solid rgba(176,135,66,.24);
	font-size: clamp(32px, 4vw, 58px);
	line-height: 1.04;
	text-wrap: balance;
}
.collection-page__content h2::before {
	content: counter(collection-section, decimal-leading-zero);
	font-family: var(--font-mono);
	font-size: 11px;
	letter-spacing: .22em;
	color: var(--gold-deep);
	transform: translateY(-3px);
}
.collection-page__content h3 {
	max-width: 860px;
	margin: 0 0 clamp(28px, 5vh, 52px) clamp(74px, 11vw, 150px);
	padding-left: clamp(18px, 3vw, 34px);
	border-left: 1px solid rgba(176,135,66,.38);
	font-family: var(--font-body);
	font-size: clamp(17px, 1.35vw, 21px);
	font-weight: 400;
	line-height: 1.74;
	color: var(--ink-mute);
}
.collection-page__content h2 + p,
.collection-page__content h3 + p {
	margin-left: clamp(74px, 11vw, 150px);
	max-width: 780px;
}
.collection-page__content .wpcf7 {
	max-width: 760px;
	margin: clamp(30px, 6vh, 62px) 0 0 clamp(74px, 11vw, 150px);
	padding: clamp(24px, 4vw, 42px);
	background: var(--paper-warm);
	border: 1px solid rgba(176,135,66,.24);
	box-shadow: var(--shadow-1);
}
@media (max-width: 760px) {
	.collection-hero { min-height: 76vh; }
	.collection-hero__shade {
		background: linear-gradient(180deg, rgba(20,17,13,.18) 0%, rgba(20,17,13,.64) 58%, rgba(20,17,13,.84) 100%);
	}
	.collection-hero__inner { padding-top: 88px; padding-bottom: 42px; }
	.collection-hero__title { font-size: clamp(38px, 12vw, 64px); }
	.collection-hero__summary { font-size: clamp(18px, 5vw, 24px); }
	.collection-page__body { padding-left: 20px; padding-right: 20px; }
	.collection-page__content h2 { grid-template-columns: 1fr; gap: 8px; }
	.collection-page__content h2::before { transform: none; }
	.collection-page__content h3,
	.collection-page__content h2 + p,
	.collection-page__content h3 + p,
	.collection-page__content .wpcf7 { margin-left: 0; }
}

/* ====================== COLLECTION FORM (estilo joieria) ====================== */
.collection-page__content .collection-form-cf7,
.collection-page__content + .collection-form { margin-top: 0; }
.collection-form {
	position: relative;
	isolation: isolate;
	background: var(--noir);
	color: var(--paper);
	overflow: hidden;
	padding: clamp(80px, 12vh, 160px) var(--pad-x);
	border-top: 1px solid rgba(176,135,66,.2);
}
.collection-form__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: var(--collection-form-bg);
	background-size: cover;
	background-position: center 35%;
	background-repeat: no-repeat;
	transform: scale(1.04);
	filter: saturate(.92) contrast(1.02);
}
.collection-form__shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(15,12,9,.92) 0%, rgba(20,17,13,.78) 38%, rgba(20,17,13,.30) 70%, rgba(20,17,13,.08) 100%),
		linear-gradient(180deg, rgba(20,17,13,.55) 0%, rgba(20,17,13,.30) 100%);
	pointer-events: none;
}
.collection-form__inner {
	position: relative;
	z-index: 2;
	max-width: var(--w-max);
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(24px, 5vw, 90px);
	align-items: center;
}
.collection-form__panel {
	background: rgba(20,17,13,.82);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border: 1px solid rgba(200,163,102,.28);
	padding: clamp(28px, 4.6vw, 56px);
	box-shadow: 0 30px 80px rgba(0,0,0,.5);
	max-width: 620px;
}
.collection-form__eyebrow {
	font-family: var(--font-mono);
	font-size: 11px;
	letter-spacing: .30em;
	text-transform: uppercase;
	color: var(--gold-soft);
	margin-bottom: 18px;
}
.collection-form__title {
	font-family: var(--font-display);
	font-size: clamp(34px, 4.2vw, 58px);
	line-height: 1.04;
	color: var(--paper);
	margin: 0 0 14px;
	font-weight: 400;
	text-wrap: balance;
}
.collection-form__title em {
	font-style: italic;
	color: var(--gold-soft);
}
.collection-form__sub {
	font-family: var(--font-body);
	font-size: clamp(15px, 1.05vw, 17px);
	line-height: 1.6;
	color: rgba(246,240,224,.78);
	margin: 0 0 22px;
	max-width: 520px;
}
.collection-form__credos {
	list-style: none;
	padding: 0;
	margin: 0 0 26px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	font-family: var(--font-mono);
	font-size: 11px;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: rgba(246,240,224,.74);
}
.collection-form__credos li {
	display: inline-flex;
	gap: 10px;
	align-items: baseline;
}
.collection-form__credos li::before {
	content: "✦";
	color: var(--gold);
	font-size: 10px;
}
.collection-form__cf7 .wpcf7 {
	max-width: none;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}
.collection-form__cf7 .wpcf7 p {
	margin: 0 0 14px;
}
.collection-form__cf7 .wpcf7 label {
	display: block;
	font-family: var(--font-mono);
	font-size: 11px;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: rgba(246,240,224,.72);
	margin: 0;
}
.collection-form__cf7 .wpcf7-form-control:not(.wpcf7-submit) {
	width: 100%;
	margin-top: 6px;
	background: rgba(0,0,0,.32);
	border: 1px solid rgba(200,163,102,.34);
	border-radius: 0;
	padding: 12px 14px;
	font-family: var(--font-body);
	font-size: var(--fs-4);
	color: var(--paper);
	transition: border-color .25s var(--ease), background-color .25s var(--ease);
}
.collection-form__cf7 .wpcf7-form-control:not(.wpcf7-submit)::placeholder {
	color: rgba(246,240,224,.42);
}
.collection-form__cf7 .wpcf7-form-control:not(.wpcf7-submit):focus {
	outline: none;
	border-color: var(--gold);
	background: rgba(0,0,0,.5);
}
.collection-form__cf7 .wpcf7-textarea {
	min-height: 130px;
	resize: vertical;
}
.collection-form__cf7 .wpcf7-submit {
	width: 100%;
	background: var(--gold-deep);
	color: var(--paper);
	border: 0;
	padding: 16px 28px;
	margin-top: 4px;
	font-family: var(--font-mono);
	font-size: 12px;
	letter-spacing: .28em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background .25s var(--ease), transform .25s var(--ease);
}
.collection-form__cf7 .wpcf7-submit:hover {
	background: var(--gold);
	transform: translateY(-2px);
}
.collection-form__cf7 .wpcf7-response-output {
	background: rgba(200,163,102,.14);
	color: var(--paper);
	border-color: rgba(200,163,102,.45) !important;
	margin-top: 18px !important;
}
.collection-form__cf7 .wpcf7-not-valid-tip {
	color: #ffb3a0;
	font-size: 12px;
	margin-top: 4px;
	letter-spacing: .04em;
	text-transform: none;
}
.collection-form__fallback { margin: 0; }
@media (max-width: 960px) {
	.collection-form__inner { grid-template-columns: 1fr; }
	.collection-form__panel { max-width: none; }
}
@media (max-width: 760px) {
	.collection-form { padding: clamp(56px, 9vh, 90px) 20px; }
	.collection-form__title { font-size: clamp(30px, 8vw, 42px); }
	.collection-form__bg {
		background-position: center center;
		background-image: var(--collection-form-bg-m, var(--collection-form-bg));
	}
}
