/**
 * Страница «Контакты» — стиль главной V6
 * @package Viora
 */

body.viora-contacts-v6 {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
	max-width: 100%;
	min-height: 100vh;
	background: #e4e7f1 !important;
	overflow-x: hidden;
	font-family: var(--fb, 'Manrope', sans-serif);
	color: var(--ink, #111118);
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

body.viora-contacts-v6.page {
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.viora-contacts-v6 .parallax-background,
body.viora-contacts-v6 .abstract-background {
	display: none !important;
}

body.viora-contacts-v6 .site-wrapper {
	max-width: none !important;
	width: 100%;
	margin: 0;
	padding: 0;
	background: transparent;
	border: none;
	box-shadow: none;
}

body.viora-contacts-v6 .site-content,
body.viora-contacts-v6 #main.site-content,
body.viora-contacts-v6 main#main,
body.viora-contacts-v6 .entry-content {
	max-width: 100% !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
}

#content {
	position: relative;
	z-index: 1;
}

/* Parallax — короче, чем на лендинге */
body.viora-contacts-v6 #parallax {
	min-height: 140vh;
}

#parallax {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	min-height: 140vh;
	z-index: 0;
	pointer-events: none;
	overflow-x: hidden;
}

#parallax .orb {
	position: absolute;
	border-radius: 50%;
	will-change: transform;
}

#parallax [data-depth='1'] { z-index: 1; }
#parallax [data-depth='2'] { z-index: 2; }
#parallax [data-depth='3'] { z-index: 3; }

.orb.f1 { width: 46vw; height: 46vw; background: radial-gradient(circle, rgba(99, 102, 241, 0.24) 0%, rgba(99, 102, 241, 0) 72%); filter: blur(36px); top: -10vh; left: -15vw; }
.orb.f2 { width: 42vw; height: 42vw; background: radial-gradient(circle, rgba(139, 92, 246, 0.22) 0%, rgba(139, 92, 246, 0) 72%); filter: blur(32px); top: 30vh; right: -20vw; }
.orb.f3 { width: 38vw; height: 38vw; background: radial-gradient(circle, rgba(59, 130, 246, 0.22) 0%, rgba(59, 130, 246, 0) 72%); filter: blur(34px); top: 70vh; left: -10vw; }
.orb.m1 { width: 24vw; height: 24vw; background: radial-gradient(circle, rgba(168, 85, 247, 0.28) 0%, rgba(168, 85, 247, 0) 66%); filter: blur(24px); top: 5vh; right: 10vw; }
.orb.m2 { width: 20vw; height: 20vw; background: radial-gradient(circle, rgba(59, 130, 246, 0.25) 0%, rgba(59, 130, 246, 0) 66%); filter: blur(22px); top: 55vh; left: 20vw; }
.orb.m3 { width: 23vw; height: 23vw; background: radial-gradient(circle, rgba(139, 92, 246, 0.26) 0%, rgba(139, 92, 246, 0) 66%); filter: blur(23px); top: 85vh; right: 5vw; }
.orb.n1 { width: 11vw; height: 11vw; background: radial-gradient(circle, rgba(99, 102, 241, 0.34) 0%, rgba(99, 102, 241, 0) 62%); filter: blur(11px); top: 15vh; left: 45vw; }
.orb.n2 { width: 10vw; height: 10vw; background: radial-gradient(circle, rgba(168, 85, 247, 0.3) 0%, rgba(168, 85, 247, 0) 62%); filter: blur(10px); top: 60vh; right: 20vw; }

#parallax .parallax-logo-wrap {
	position: absolute;
	will-change: transform;
	pointer-events: none;
	line-height: 0;
}

#parallax .parallax-logo-img {
	display: block;
	width: min(90px, 12vw);
	max-width: 120px;
	height: auto;
	object-fit: contain;
	user-select: none;
	filter: grayscale(10%) contrast(1.05);
}

/* На короткой странице — только 2 водяных знака, остальные дают артефакты при скролле */
body.viora-contacts-v6 #parallax .pxl3,
body.viora-contacts-v6 #parallax .pxl4,
body.viora-contacts-v6 #parallax .pxl5 {
	display: none !important;
}

#parallax .pxl1 { top: 6vh; left: 6%; }
#parallax .pxl1 .parallax-logo-img { width: min(100px, 14vw); opacity: 0.065; transform: rotate(-14deg); }
#parallax .pxl2 { top: 48vh; right: 4%; }
#parallax .pxl2 .parallax-logo-img { width: min(80px, 11vw); opacity: 0.055; transform: rotate(8deg); }
#parallax .pxl3 { top: 72vh; left: 42%; }
#parallax .pxl3 .parallax-logo-img { width: min(88px, 12vw); opacity: 0.075; transform: rotate(-6deg); }
#parallax .pxl4 { top: 95vh; right: 18%; }
#parallax .pxl4 .parallax-logo-img { width: min(66px, 9vw); opacity: 0.06; transform: rotate(18deg); }
#parallax .pxl5 { top: 115vh; left: 12%; }
#parallax .pxl5 .parallax-logo-img { width: min(90px, 12vw); opacity: 0.06; transform: rotate(10deg); }

/* Layout */
.viora-contacts-page {
	width: 100%;
	overflow-x: hidden;
}

.viora-contacts-wrap {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 clamp(18px, 4vw, 32px);
	box-sizing: border-box;
}

.viora-contacts-hero {
	padding: 104px 0 32px;
}

.viora-contacts-kicker {
	margin: 0;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--blue, #2249f5);
}

.viora-contacts-title {
	margin: 14px 0 0;
	font-family: var(--fd, 'Unbounded', sans-serif);
	font-weight: 700;
	font-size: clamp(2rem, 5vw, 3.25rem);
	line-height: 1.05;
	letter-spacing: -0.03em;
	color: var(--ink, #111118);
}

.viora-contacts-body {
	padding: 0 0 48px;
}

.viora-contacts-layout {
	display: grid;
	gap: 20px;
	align-items: start;
}

@media (min-width: 900px) {
	.viora-contacts-layout {
		grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
	}
}

.viora-contacts-quick {
	padding: 22px 20px;
	border-radius: 20px;
}

.viora-contacts-quick-label {
	margin: 0 0 14px;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--ink3, #7b7b96);
}

.viora-contacts-actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.viora-contacts-btn {
	justify-content: center;
	text-align: center;
	font-size: 0.88rem;
	padding: 12px 16px;
}

.viora-contacts-card {
	padding: clamp(24px, 4vw, 40px);
	border-radius: 24px;
}

/* Скрываем дублирующий h2 из контента WP — заголовок уже в hero */
.viora-contacts-content > h2:first-child {
	display: none;
}

.viora-contacts-content {
	font-size: 1.05rem;
	line-height: 1.75;
	color: var(--ink2, #3d3d50);
}

.viora-contacts-content h3 {
	margin: 32px 0 12px;
	font-family: var(--fd, 'Unbounded', sans-serif);
	font-size: clamp(1rem, 2.2vw, 1.2rem);
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--ink, #111118);
}

.viora-contacts-content h3:first-child {
	margin-top: 0;
}

.viora-contacts-content p {
	margin: 0 0 16px;
}

.viora-contacts-content ul {
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
}

.viora-contacts-content li {
	position: relative;
	margin: 0 0 12px;
	padding-left: 1.1em;
}

.viora-contacts-content li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.72em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--blue, #2249f5), var(--purple, #8b5cf6));
}

.viora-contacts-content a {
	color: var(--blue, #2249f5);
	font-weight: 600;
	text-decoration: none;
	border-bottom: 1px solid rgba(34, 73, 245, 0.25);
	transition: color 0.2s, border-color 0.2s;
}

.viora-contacts-content a:hover {
	color: var(--purple, #8b5cf6);
	border-bottom-color: rgba(139, 92, 246, 0.35);
}

.viora-contacts-content strong {
	color: var(--ink, #111118);
	font-weight: 700;
}

.viora-contacts-cta-wrap {
	padding: 0 0 72px;
}

.viora-contacts-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 24px;
	padding: clamp(22px, 4vw, 32px);
	border-radius: 24px;
}

.viora-contacts-cta-text {
	margin: 0;
	font-family: var(--fd, 'Unbounded', sans-serif);
	font-size: clamp(1rem, 2.5vw, 1.25rem);
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--ink, #111118);
	max-width: 36ch;
}

/* Footer */
body.viora-contacts-v6 .site-footer-unified {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.viora-contacts-v6 .footer-container-unified {
	max-width: min(95vw, 1440px) !important;
	margin: 0 auto !important;
}

@media (max-width: 767px) {
	.viora-contacts-hero {
		padding: 88px 0 24px;
	}

	.viora-contacts-aside {
		order: -1;
	}

	.viora-contacts-cta {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
	}

	.viora-contacts-cta .btn {
		justify-content: center;
	}
}
