/*
 * THESIS: One public channel first; addresses and legal identity stay calm and findable.
 * OWN-WORLD: Quiet Precision Read mode, white paper, graphite type, violet focus only.
 * STORY: Find the email, prepare the message, then verify address or seller details.
 * FIRST VIEWPORT: A compact title followed by one dominant email panel.
 * FORM: Established Read surface; no motion, ornamental glass, map, or new form.
 */

.qp-contact-page .qp-contact-main {
	padding-block: 56px 112px;
	background: var(--qp-paper);
}

.qp-contact-page .qp-contact-shell {
	max-width: 1120px;
}

.qp-contact-page .dz-crumbs {
	margin-bottom: 48px;
	color: var(--qp-muted);
	font-family: inherit;
	font-size: 14px;
	letter-spacing: 0;
}

.qp-contact-page .dz-crumbs b {
	color: var(--qp-ink);
}

.qp-contact-heading {
	max-width: 720px;
	margin-bottom: 40px;
}

.qp-contact-kicker,
.qp-contact-label {
	margin: 0;
	color: var(--qp-muted);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
}

.qp-contact-page .qp-contact-heading h1 {
	max-width: 9ch;
	margin: 10px 0 0;
	color: var(--qp-ink);
	font-size: clamp(44px, 6vw, 76px);
	font-weight: 620;
	line-height: 1;
	letter-spacing: -.03em;
	text-wrap: balance;
}

.qp-contact-page .page-body.qp-contact-content {
	width: 100%;
	max-width: none;
	margin: 0;
	color: var(--qp-ink-3);
}

.qp-contact-primary {
	padding: 36px 40px 40px;
	background: var(--qp-paper-2);
	border: 1px solid var(--qp-line);
	border-radius: 16px;
}

.qp-contact-page .qp-contact-content .qp-contact-primary h2 {
	margin: 8px 0 4px;
	color: var(--qp-ink);
	font-size: 18px;
	font-weight: 580;
	line-height: 1.35;
}

.qp-contact-page .qp-contact-email {
	display: inline-block;
	min-height: 44px;
	max-width: 100%;
	margin: 0 0 18px;
	color: var(--qp-ink);
	font-size: clamp(28px, 5vw, 52px);
	font-weight: 580;
	line-height: 1.12;
	letter-spacing: -.025em;
	overflow-wrap: anywhere;
	text-decoration-color: var(--qp-metal);
	text-decoration-thickness: 2px;
	text-underline-offset: 7px;
	touch-action: manipulation;
}

.qp-contact-page .qp-contact-email:hover {
	color: var(--qp-violet-hover);
	text-decoration-color: currentColor;
}

.qp-contact-primary > p:last-child {
	max-width: 68ch;
	margin: 0;
	font-size: 17px;
	line-height: 1.72;
}

.qp-contact-columns {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: 72px;
	margin-top: 72px;
}

.qp-contact-columns section {
	min-width: 0;
}

.qp-contact-page .qp-contact-content h2 {
	margin: 0 0 24px;
	color: var(--qp-ink);
	font-size: 28px;
	font-weight: 600;
	line-height: 1.18;
	letter-spacing: -.015em;
}

.qp-contact-guidance p,
.qp-contact-addresses p,
.qp-contact-market-note p {
	max-width: 68ch;
	margin: 0;
	font-size: 16px;
	line-height: 1.72;
}

.qp-contact-guidance p + p {
	margin-top: 16px;
}

.qp-contact-address {
	padding-block: 20px;
	border-top: 1px solid var(--qp-line);
}

.qp-contact-address:first-of-type {
	padding-top: 0;
	border-top: 0;
}

.qp-contact-address h3 {
	margin: 0 0 6px;
	color: var(--qp-ink);
	font-size: 16px;
	font-weight: 620;
	line-height: 1.4;
}

.qp-contact-address address {
	margin: 0;
	font-size: 16px;
	font-style: normal;
	line-height: 1.65;
}

.qp-contact-addresses > p:last-child {
	margin-top: 22px;
	color: var(--qp-muted);
}

.qp-contact-requisites {
	margin-top: 72px;
	border-top: 1px solid var(--qp-line);
	border-bottom: 1px solid var(--qp-line);
}

.qp-contact-requisites summary {
	min-height: 56px;
	padding: 18px 48px 18px 0;
	color: var(--qp-ink);
	font-size: 17px;
	font-weight: 620;
	line-height: 1.35;
	cursor: pointer;
	touch-action: manipulation;
}

.qp-contact-requisites summary:hover {
	color: var(--qp-violet-hover);
}

.qp-contact-requisites-body {
	max-width: 720px;
	padding: 4px 0 28px;
}

.qp-contact-requisites-body > p {
	margin: 0 0 20px;
	font-size: 16px;
	line-height: 1.65;
}

.qp-contact-requisites dl {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin: 0;
}

.qp-contact-requisites dl > div {
	min-width: 0;
}

.qp-contact-requisites dt {
	margin-bottom: 4px;
	color: var(--qp-muted);
	font-size: 13px;
	font-weight: 600;
}

.qp-contact-requisites dd {
	margin: 0;
	color: var(--qp-ink);
	font-size: 17px;
	font-variant-numeric: tabular-nums;
	overflow-wrap: anywhere;
}

.qp-contact-market-note {
	max-width: 720px;
	margin-top: 72px;
}

@media (max-width: 768px) {
	.qp-contact-page .qp-contact-main {
		padding-block: 40px 80px;
	}

	.qp-contact-page .dz-crumbs {
		margin-bottom: 36px;
	}

	.qp-contact-heading {
		margin-bottom: 32px;
	}

	.qp-contact-page .qp-contact-heading h1 {
		font-size: clamp(42px, 13vw, 60px);
	}

	.qp-contact-primary {
		padding: 28px 24px 30px;
	}

	.qp-contact-columns {
		grid-template-columns: minmax(0, 1fr);
		gap: 56px;
		margin-top: 56px;
	}

	.qp-contact-requisites,
	.qp-contact-market-note {
		margin-top: 56px;
	}
}

@media (max-width: 480px) {
	.qp-contact-primary {
		padding: 24px 20px 26px;
		border-radius: 14px;
	}

	.qp-contact-page .qp-contact-email {
		font-size: clamp(25px, 8.3vw, 34px);
		text-underline-offset: 5px;
	}

	.qp-contact-primary > p:last-child {
		font-size: 16px;
	}

	.qp-contact-page .qp-contact-content h2 {
		font-size: 25px;
	}

	.qp-contact-requisites dl {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.qp-contact-page *,
	.qp-contact-page *::before,
	.qp-contact-page *::after {
		scroll-behavior: auto;
		transition-duration: .01ms;
		animation-duration: .01ms;
		animation-iteration-count: 1;
	}
}

@media (forced-colors: active) {
	.qp-contact-primary,
	.qp-contact-requisites,
	.qp-contact-address {
		border-color: CanvasText;
	}

	.qp-contact-primary {
		background: Canvas;
	}

	.qp-contact-page .qp-contact-email {
		color: LinkText;
	}
}
