/* GG Welcome Conversation Form --------------------------------------------- */
.gg-welcome-form {
	font-family: var(--gg-font-sans, 'Poppins', sans-serif);
}

.gg-welcome-form__heading {
	font-family: var(--gg-font-serif, 'Playfair Display', serif);
	margin: 0 0 6px;
}

.gg-welcome-form__heading-icon {
	display: inline-flex;
	vertical-align: middle;
	margin-left: 4px;
	color: #D9A441;
}

.gg-welcome-form__heading-icon .gg-icon-svg,
.gg-welcome-form__heading-icon svg {
	width: 0.55em;
	height: 0.55em;
}

.gg-welcome-form__subheading {
	font-size: 13px;
	color: #5b6472;
	margin: 0 0 20px;
}

.gg-welcome-form__hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.gg-welcome-form__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin-bottom: 18px;
}

.gg-welcome-form__field--full {
	grid-column: 1 / -1;
}

/* The reference shows label text as the field's placeholder rather than a separate line
   above it — the real <label> stays in the DOM (screen-reader only) so the field is still
   properly associated and announced for accessibility. */
.gg-welcome-form__label-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.gg-welcome-form__field {
	position: relative;
}

.gg-welcome-form__field input,
.gg-welcome-form__field select,
.gg-welcome-form__field textarea {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #d9d2c2;
	border-radius: 8px;
	padding: 12px 14px;
	font-size: 13px;
	font-family: inherit;
	background: #fff;
	min-height: 44px;
}

.gg-welcome-form__field textarea {
	min-height: 90px;
}

.gg-welcome-form__field input::placeholder,
.gg-welcome-form__field textarea::placeholder {
	color: #8a93a3;
	opacity: 1;
}

.gg-welcome-form__field select {
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%238a93a3'%3E%3Cpath d='M5.5 7.5l4.5 4.5 4.5-4.5' stroke='%238a93a3' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 14px;
	padding-right: 36px;
}

.gg-welcome-form__submit {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: none;
	background: #152744;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	padding: 13px 28px;
	border-radius: 8px;
	cursor: pointer;
	min-height: 44px;
	transition: background-color .2s ease;
}

.gg-welcome-form__submit .gg-icon-svg,
.gg-welcome-form__submit svg,
.gg-welcome-form__submit i {
	font-size: 13px;
}

.gg-welcome-form__submit:disabled {
	opacity: 0.6;
	cursor: default;
}

.gg-welcome-form__status {
	margin-top: 12px;
	font-size: 12px;
	color: #2F8C82;
}

@media (max-width: 600px) {
	.gg-welcome-form__grid { grid-template-columns: 1fr; }
}
