/**
 * SLINKOR B2B Contact Us page.
 *
 * Geometry follows the Shopify Contact page. All form overrides are scoped to
 * the Contact page so the RFQ and other WPForms instances remain unchanged.
 */

body.slinkor-contact-page .hero-section {
	display: none;
}

body.slinkor-contact-page #main > .ct-container-full,
body.slinkor-contact-page .entry-content {
	padding: 0;
}

body.slinkor-contact-page .entry-content > .slinkor-contact,
body.slinkor-contact-page .entry-content > .slinkor-support-cta {
	width: 100%;
	max-width: none;
	margin: 0;
}

body.slinkor-contact-page .entry-content > .slinkor-page-hero--under-header {
	margin-block-start: calc(
		0px
		- var(--header-height, 72px)
		- var(--slinkor-announcement-height, 48px)
	);
}

.slinkor-contact,
.slinkor-contact *,
body.slinkor-contact-page .slinkor-support-cta,
body.slinkor-contact-page .slinkor-support-cta * {
	box-sizing: border-box;
}

.slinkor-contact {
	width: 100%;
	max-width: none;
	color: var(--slinkor-color-text);
	font-family: var(--slinkor-font-body);
}

.slinkor-contact .wp-block-group,
.slinkor-contact .wp-block-html,
.slinkor-contact .wp-block-social-links,
body.slinkor-contact-page .slinkor-support-cta .wp-block-group,
body.slinkor-contact-page .slinkor-support-cta .wp-block-buttons,
body.slinkor-contact-page .slinkor-support-cta .wp-block-button {
	margin-block: 0;
}

.slinkor-contact-container {
	width: min(var(--slinkor-content-width), calc(100% - (2 * var(--slinkor-outer-padding-desktop))));
	margin-inline: auto;
}

/* Shopify slinkor-page-banner geometry. */
.slinkor-contact-hero {
	position: relative;
	height: 360px;
	overflow: hidden;
	background: #f5f7f8;
}

.slinkor-contact-hero__frame,
.slinkor-contact-hero__media,
.slinkor-contact-hero__image,
.slinkor-contact-hero__image img {
	width: 100%;
	height: 100%;
}

.slinkor-contact-hero__frame,
.slinkor-contact-hero__media {
	position: relative;
	overflow: hidden;
	background: #f5f7f8;
}

.slinkor-contact-hero__image {
	margin: 0;
}

.slinkor-contact-hero__image img {
	display: block;
	object-fit: cover;
	object-position: 50% 0;
}

.slinkor-contact-hero__image--mobile {
	display: none;
}

.slinkor-contact-hero__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: #000;
	opacity: 0.25;
	pointer-events: none;
}

.slinkor-contact-hero__content-wrap {
	position: absolute;
	inset: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	padding: 40px;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}

.slinkor-contact-hero__content {
	width: 100%;
	max-width: 720px;
	margin: 0;
	color: #fff;
	text-align: center;
}

.slinkor-contact-hero h1 {
	margin: 0;
	color: #fff;
	font-family: var(--slinkor-font-heading);
	font-size: 42px;
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

.slinkor-contact-hero__description {
	max-width: 720px;
	margin: 14px 0 0;
	color: #fff;
	font-size: 17px;
	line-height: 1.55;
}

/* Shopify contact-form 8/12 + 4/12 composition. */
.slinkor-contact-section {
	padding: 60px 0 36px;
	background: var(--slinkor-color-background);
}

.slinkor-contact-section__grid {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
	align-items: start;
	gap: 60px;
}

.slinkor-contact-form,
.slinkor-contact-info {
	min-width: 0;
}

.slinkor-contact-form > h2,
.slinkor-contact-info > h2 {
	margin: 0;
	color: var(--slinkor-color-heading);
	font-family: var(--slinkor-font-heading);
	font-size: 32px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.015em;
}

.slinkor-contact-form__description {
	max-width: 700px;
	margin: 10px 0 0;
	font-size: 16px;
	line-height: 1.65;
}

body.slinkor-contact-page .slinkor-contact-form .wpforms-container {
	--wpforms-field-background-color: #f5f5f5;
	--wpforms-field-border-color: var(--slinkor-color-border-subtle);
	--wpforms-field-border-radius: 16px;
	--wpforms-button-background-color: var(--slinkor-color-brand);
	--wpforms-button-border-radius: 30px;
	margin: 28px 0 0;
}

body.slinkor-contact-page .slinkor-contact-form .wpforms-field-container {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 28px;
	row-gap: 18px;
}

body.slinkor-contact-page .slinkor-contact-form .wpforms-field {
	padding: 0;
	margin: 0;
}

body.slinkor-contact-page .slinkor-contact-form #wpforms-359-field_2-container {
	grid-column: 1 / -1;
}

body.slinkor-contact-page .slinkor-contact-form .wpforms-field-label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

body.slinkor-contact-page .slinkor-contact-form input:not([type="checkbox"], [type="radio"], [type="submit"]),
body.slinkor-contact-page .slinkor-contact-form select,
body.slinkor-contact-page .slinkor-contact-form textarea {
	width: 100% !important;
	max-width: none !important;
	min-height: 60px !important;
	padding: 15px 20px !important;
	color: var(--slinkor-color-heading) !important;
	background: #f5f5f5 !important;
	border: 1px solid var(--slinkor-color-border-subtle) !important;
	border-radius: 16px !important;
	box-shadow: none !important;
	font-family: var(--slinkor-font-body) !important;
	font-size: 16px !important;
	line-height: 1.45 !important;
	transition:
		border-color var(--slinkor-transition-standard),
		box-shadow var(--slinkor-transition-standard),
		background-color var(--slinkor-transition-standard);
}

body.slinkor-contact-page .slinkor-contact-form textarea {
	height: 220px !important;
	min-height: 220px !important;
	border-radius: 16px !important;
	resize: vertical;
}

body.slinkor-contact-page .slinkor-contact-form input::placeholder,
body.slinkor-contact-page .slinkor-contact-form textarea::placeholder {
	color: #8a8f95;
	opacity: 1;
}

body.slinkor-contact-page .slinkor-contact-form input:not([type="checkbox"], [type="radio"], [type="submit"]):focus,
body.slinkor-contact-page .slinkor-contact-form select:focus,
body.slinkor-contact-page .slinkor-contact-form textarea:focus {
	background: #fff !important;
	border-color: var(--slinkor-color-brand) !important;
	box-shadow: 0 0 0 3px rgba(0, 174, 239, 0.12) !important;
	outline: 0 !important;
}

body.slinkor-contact-page .slinkor-contact-form .wpforms-submit-container {
	padding: 22px 0 0;
}

body.slinkor-contact-page .slinkor-contact-form button[type="submit"].wpforms-submit {
	min-height: 50px !important;
	padding: 0 30px !important;
	color: #fff !important;
	background: var(--slinkor-color-brand) !important;
	border: 1px solid var(--slinkor-color-brand) !important;
	border-radius: 30px !important;
	box-shadow: none !important;
	font-family: var(--slinkor-font-button) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	transition:
		background-color 0.2s ease,
		border-color 0.2s ease,
		transform 0.2s ease !important;
}

body.slinkor-contact-page .slinkor-contact-form button[type="submit"].wpforms-submit:hover {
	color: #fff !important;
	background: var(--slinkor-color-brand-hover-strong) !important;
	border-color: var(--slinkor-color-brand-hover-strong) !important;
	transform: translateY(-1px);
}

.slinkor-contact-info > h2 {
	margin-bottom: 28px;
}

.slinkor-contact-info__item + .slinkor-contact-info__item {
	margin-top: 28px;
}

.slinkor-contact-info__item h3 {
	margin: 0 0 8px;
	color: var(--slinkor-color-heading);
	font-family: var(--slinkor-font-heading);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.35;
}

.slinkor-contact-info__item p {
	margin: 0;
	font-size: 15px;
	line-height: 1.65;
}

.slinkor-contact-info__item a {
	color: inherit;
	text-decoration: none;
}

.slinkor-contact-info__item a:hover {
	color: var(--slinkor-color-brand-hover-strong);
}

.slinkor-contact-social__links {
	gap: 14px;
}

.slinkor-contact-social__links .wp-social-link {
	color: var(--slinkor-color-heading);
	background: transparent;
}

.slinkor-contact-social__links .wp-social-link a {
	padding: 0;
}

.slinkor-contact-social__links .wp-social-link svg {
	width: 22px;
	height: 22px;
}

.slinkor-contact-social__links .wp-social-link:hover {
	color: var(--slinkor-color-brand-hover-strong);
	transform: translateY(-1px);
}

/* City-level Google Maps embed; no API key or custom JavaScript. */
.slinkor-contact-location {
	padding: 36px 0 40px;
	background: var(--slinkor-color-background);
}

.slinkor-contact-location h2 {
	margin: 0 0 26px;
	color: var(--slinkor-color-heading);
	font-family: var(--slinkor-font-heading);
	font-size: 34px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.015em;
}

.slinkor-contact-map {
	width: 100%;
	height: 450px;
	overflow: hidden;
	background: var(--slinkor-color-surface);
	border: 1px solid var(--slinkor-color-border);
	border-radius: var(--slinkor-radius-medium);
}

.slinkor-contact-map iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

@media (max-width: 990px) {
	.slinkor-contact-section__grid {
		grid-template-columns: 1fr;
		gap: 48px;
	}
}

@media (max-width: 767.98px) {
	.slinkor-contact-container {
		width: calc(100% - (2 * var(--slinkor-outer-padding-mobile)));
	}

	.slinkor-contact-hero {
		height: auto;
		overflow: visible;
	}

	.slinkor-contact-hero__frame {
		height: auto;
	}

	.slinkor-contact-hero__media {
		height: 240px;
	}

	.slinkor-contact-hero__image--desktop {
		display: none;
	}

	.slinkor-contact-hero__image--mobile {
		display: block;
	}

	.slinkor-contact-hero__image--mobile img {
		object-position: 0 100%;
	}

	.slinkor-contact-hero__overlay {
		opacity: 0.3;
	}

	.slinkor-contact-hero__content-wrap {
		position: relative;
		inset: auto;
		height: auto;
		min-height: 0;
		padding: 24px 20px;
		align-items: flex-start;
		background: var(--slinkor-color-background);
	}

	.slinkor-contact-hero__content {
		max-width: 360px;
		color: var(--slinkor-color-heading);
	}

	.slinkor-contact-hero h1 {
		color: #202020;
		font-size: 32px;
	}

	.slinkor-contact-hero__description {
		margin-top: 14px;
		color: #5f6368;
		font-size: 14px;
	}

	.slinkor-contact-section {
		padding: 44px 0 36px;
	}

	.slinkor-contact-section__grid {
		gap: 42px;
	}

	.slinkor-contact-form > h2,
	.slinkor-contact-info > h2 {
		font-size: 28px;
	}

	.slinkor-contact-form__description {
		font-size: 15px;
	}

	body.slinkor-contact-page .slinkor-contact-form .wpforms-field-container {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 16px;
	}

	body.slinkor-contact-page .slinkor-contact-form #wpforms-359-field_2-container {
		grid-column: auto;
	}

	body.slinkor-contact-page .slinkor-contact-form input:not([type="checkbox"], [type="radio"], [type="submit"]),
	body.slinkor-contact-page .slinkor-contact-form select,
	body.slinkor-contact-page .slinkor-contact-form textarea {
		font-size: 16px !important;
	}

	body.slinkor-contact-page .slinkor-contact-form button[type="submit"].wpforms-submit {
		width: 100% !important;
	}

	.slinkor-contact-info__item + .slinkor-contact-info__item {
		margin-top: 24px;
	}

	.slinkor-contact-location {
		padding: 32px 0 36px;
	}

	.slinkor-contact-location h2 {
		margin-bottom: 22px;
		font-size: 28px;
	}

	.slinkor-contact-map {
		height: 315px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.slinkor-contact-page .slinkor-contact-form input,
	body.slinkor-contact-page .slinkor-contact-form select,
	body.slinkor-contact-page .slinkor-contact-form textarea,
	body.slinkor-contact-page .slinkor-contact-form button[type="submit"].wpforms-submit,
	.slinkor-contact-social__links .wp-social-link {
		transition: none !important;
	}
}
