/**
 * Sawatech Woo - Template: Amoonis Boutique Contact Form
 */

.amb-contact-form {
	--amb-contact-form-bg: var(--color-bg, #fdfcfb);
	--amb-contact-form-surface: #fff;
	--amb-contact-form-ink: var(--color-text, #20131a);
	--amb-contact-form-muted: var(--color-text-muted, #6a5661);
	--amb-contact-form-line: rgba(32, 19, 26, .1);
	--amb-contact-form-pink: var(--color-primary, #f083b4);
	--amb-contact-form-deep: var(--color-primary-hover, #b83b70);
	--amb-contact-form-soft: #fff5f8;
	--amb-contact-form-font-heading: var(--font-heading, 'Cormorant Garamond', 'Times New Roman', serif);
	--amb-contact-form-font-body: var(--font-body, Inter, system-ui, -apple-system, 'Segoe UI', sans-serif);

	position: relative;
	overflow: hidden;
	padding-block: clamp(4.5rem, 9vw, 8rem);
	background:
		linear-gradient(135deg, rgba(255, 246, 249, .88), rgba(255, 255, 255, .7) 48%, rgba(255, 241, 247, .78)),
		var(--amb-contact-form-bg);
	font-family: var(--amb-contact-form-font-body);
	margin-block-start: unset;
}

.amb-contact-form::before {
	content: "";
	position: absolute;
	inset-block-start: clamp(2rem, 8vw, 5rem);
	inset-inline-end: max(-8rem, -8vw);
	inline-size: clamp(18rem, 36vw, 34rem);
	block-size: clamp(18rem, 36vw, 34rem);
	border-radius: 50%;
	background: radial-gradient(circle, rgba(240, 131, 180, .2), transparent 68%);
	pointer-events: none;
}

.amb-contact-form__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, .86fr) minmax(320px, 1.14fr);
	gap: clamp(2rem, 5vw, 5rem);
	align-items: start;
	inline-size: 100%;
	max-inline-size: var(--stc-template-container-max, 1200px);
	margin-inline: auto;
	padding-inline: clamp(1.25rem, 4vw, 4rem);
}

.amb-contact-form__copy {
	position: sticky;
	inset-block-start: 2rem;
	padding-block-start: clamp(.5rem, 2vw, 1.5rem);
}

.amb-contact-form__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: .65rem;
	color: var(--amb-contact-form-deep);
	font-size: .72rem;
	font-weight: 600;
	letter-spacing: .24em;
	line-height: 1.4;
	text-transform: uppercase;
}

.amb-contact-form__eyebrow::before {
	content: "";
	display: inline-block;
	inline-size: 34px;
	block-size: 1px;
	background: currentColor;
}

.amb-contact-form__heading {
	margin-block: 1rem 1.2rem;
	margin-inline: 0;
	color: var(--amb-contact-form-ink);
	font-family: var(--amb-contact-form-font-heading);
	font-size: clamp(2.2rem, 5vw, 4rem);
	font-weight: 400;
	line-height: .98;
	letter-spacing: 0;
}

.amb-contact-form__heading em {
	color: var(--amb-contact-form-deep);
	font-style: italic;
}

html[dir="rtl"] .amb-contact-form__heading em,
body.rtl .amb-contact-form__heading em {
	font-style: normal;
}

.amb-contact-form__intro {
	max-inline-size: 56ch;
	margin: 0;
	color: var(--amb-contact-form-muted);
	font-size: clamp(1rem, 1.5vw, 1.1rem);
	line-height: 1.75;
}

.amb-contact-form__note {
	max-inline-size: 34rem;
	margin-block-start: clamp(1.5rem, 3vw, 2.25rem);
	padding: clamp(1.1rem, 2vw, 1.35rem);
	border: 1px solid rgba(184, 59, 112, .14);
	border-radius: min(var(--radius-corner, 8px), 8px);
	background: rgba(255, 255, 255, .72);
	box-shadow: 0 18px 45px -34px rgba(91, 36, 60, .45);
}

.amb-contact-form__note span {
	display: block;
	margin-block-end: .45rem;
	color: var(--amb-contact-form-deep);
	font-size: .7rem;
	font-weight: 700;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.amb-contact-form__note p {
	margin: 0;
	color: var(--amb-contact-form-muted);
	font-size: .95rem;
	line-height: 1.65;
}

.amb-contact-form__panel {
	position: relative;
	padding: clamp(1.1rem, 2.7vw, 2rem);
	border: 1px solid var(--amb-contact-form-line);
	border-radius: min(var(--radius-corner, 8px), 8px);
	background: rgba(255, 255, 255, .82);
	box-shadow: 0 34px 90px -48px rgba(89, 36, 60, .42);
	backdrop-filter: blur(14px);
}

.amb-contact-form__panel::before {
	content: "";
	position: absolute;
	inset: .55rem;
	border: 1px solid rgba(240, 131, 180, .16);
	border-radius: inherit;
	pointer-events: none;
}

.amb-contact-form__shortcode {
	position: relative;
	z-index: 1;
	min-block-size: 12rem;
}

.amb-contact-form__shortcode form,
.amb-contact-form__shortcode .bit-form,
.amb-contact-form__shortcode .bitform,
.amb-contact-form__shortcode [class*="bit-form"],
.amb-contact-form__shortcode [class*="bitform"] {
	max-inline-size: none;
}

.amb-contact-form__shortcode input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.amb-contact-form__shortcode textarea,
.amb-contact-form__shortcode select {
	inline-size: 100%;
	border: 1px solid var(--amb-contact-form-line);
	border-radius: min(var(--radius-corner, 8px), 8px);
	background: var(--amb-contact-form-soft);
	color: var(--amb-contact-form-ink);
	font-family: inherit;
}

.amb-contact-form__shortcode button,
.amb-contact-form__shortcode input[type="submit"] {
	border-radius: min(var(--radius-button, 8px), 8px);
	font-family: inherit;
}

@media (max-width: 980px) {
	.amb-contact-form__inner {
		grid-template-columns: 1fr;
	}

	.amb-contact-form__copy {
		position: relative;
		inset-block-start: auto;
	}

	.amb-contact-form__heading {
		max-inline-size: 13ch;
	}
}

@media (max-width: 620px) {
	.amb-contact-form {
		padding-block: clamp(3.5rem, 18vw, 5rem);
	}

	.amb-contact-form__inner {
		padding-inline: 1rem;
	}

	.amb-contact-form__panel {
		padding: 1rem;
	}
}
