.gb-appointment-form {
	background: var(--color-white);
	color: var(--pk-text-color);
	padding-block: max(var(--section-spacing-lg), calc(7.5 * var(--su))) max(var(--section-spacing-xl), calc(9.25 * var(--su)));
	padding-inline: var(--pk-site-gutter);
}

.gb-appointment-form__inner {
	display: flex;
	width: min(100%, calc(57.125 * var(--su)));
	flex-direction: column;
	gap: max(4rem, calc(4 * var(--su)));
	margin-inline: auto;
}

.gb-appointment-form__content {
	display: flex;
	flex-direction: column;
	gap: max(1.5rem, calc(1.5 * var(--su)));
	background: transparent;
}

.gb-appointment-form__header {
	display: flex;
	flex-direction: column;
	gap: max(1rem, calc(1 * var(--su)));
	background: transparent;
}

.gb-appointment-form .gb-appointment-form__heading {
	margin: 0;
	color: var(--pk-heading-color);
	font-size: var(--scaling-h2);
}

.gb-appointment-form__text {
	color: var(--pk-text-color);
	font-size: var(--desktop-body-sm);
}

.gb-appointment-form__text > * {
	margin-block: 0;
}

.gb-appointment-form .gb-appointment-form__required {
	margin: 0;
	color: var(--pk-text-color);
	font-size: var(--desktop-body-xxs);
	font-style: italic;
}

.gb-appointment-form__gravity {
	width: 100%;
}

.gb-appointment-form .pk-form {
	--pk-form-gap: max(1rem, calc(1 * var(--su)));
	--pk-form-field-bg: var(--color-white);
	--pk-form-field-border-color: var(--color-deep-pine-20);
	--pk-form-field-border-color-hover: var(--color-deep-pine-60);
	--pk-form-field-border-color-focus: var(--color-deep-pine);
	--pk-form-field-height: max(2.75rem, calc(2.75 * var(--su)));
}

.gb-appointment-form .pk-form .gfield--type-section,
.gb-appointment-form .pk-form .gsection {
	padding: 0;
	border: 0;
}

.gb-appointment-form .pk-form .gsection_title,
.gb-appointment-form .pk-form .gfield--type-section .gfield_label {
	margin: 0;
	color: var(--color-deep-pine-80);
	font-size: var(--desktop-body-xxs);
	font-weight: var(--pk-text-font-weight);
	text-transform: uppercase;
}

.gb-appointment-form .pk-form select,
.gb-appointment-form .pk-form .gfield select {
	background-color: var(--color-deep-pine-025) !important;
}

.gb-appointment-form .pk-form textarea,
.gb-appointment-form .pk-form .gfield textarea {
	min-height: max(8.4375rem, calc(8.4375 * var(--su))) !important;
	height: max(8.4375rem, calc(8.4375 * var(--su))) !important;
}

.gb-appointment-form .pk-form .gfield--type-consent {
	margin-top: max(0.5rem, calc(0.5 * var(--su)));
}

.gb-appointment-form .pk-form .ginput_container_consent {
	display: flex;
	gap: max(0.75rem, calc(0.75 * var(--su)));
	align-items: flex-start;
}

.gb-appointment-form .pk-form .gfield_consent_label {
	color: var(--pk-text-color) !important;
	font-size: var(--desktop-body-xxs) !important;
	text-transform: none;
}

.gb-appointment-form .pk-form .gfield_consent_label a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

.gb-appointment-form__submit {
	margin: 0;
}

.gb-appointment-form__expert {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: max(1.5rem, calc(1.5 * var(--su)));
	padding: max(1.5rem, calc(1.5 * var(--su))) max(1.5rem, calc(1.5 * var(--su))) max(1.5rem, calc(1.5 * var(--su))) max(2rem, calc(2 * var(--su)));
	border: 1px solid var(--color-deep-pine-5);
	border-radius: 0 var(--radius-lg) 0 var(--radius-lg);
	background: var(--color-deep-pine-025);
	box-shadow: -17px 28px 16.5px rgba(1, 38, 30, 0.01), -4px 7px 9px rgba(1, 38, 30, 0.01);
	color: var(--pk-text-color);
	text-decoration: none;
	transition: background-color var(--transition-duration) var(--transition-easing),
		border-color var(--transition-duration) var(--transition-easing),
		transform var(--transition-duration) var(--transition-easing);
}

.gb-appointment-form__expert:hover,
.gb-appointment-form__expert:focus-visible {
	background: var(--color-pistachio);
	border-color: var(--color-cypress-10);
	transform: translateY(max(-0.125rem, calc(-0.125 * var(--su))));
}

.gb-appointment-form__expert:focus-visible {
	outline: var(--focus-ring-width) solid var(--pk-focus-ring-color);
	outline-offset: var(--focus-ring-offset);
}

.gb-appointment-form__expert-copy {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: max(0.5rem, calc(0.5 * var(--su)));
}

.gb-appointment-form__expert-heading {
	color: var(--pk-heading-color);
	font-size: var(--scaling-h5);
	font-weight: 500;
}

.gb-appointment-form__expert-text {
	color: var(--color-deep-pine-80);
	font-size: var(--desktop-body-sm);
}

.gb-appointment-form__expert-action {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: max(0.5rem, calc(0.5 * var(--su)));
}

.gb-appointment-form__avatars {
	display: flex;
	align-items: center;
}

.gb-appointment-form__avatars img {
	display: block;
	width: max(3rem, calc(3 * var(--su)));
	height: max(3rem, calc(3 * var(--su)));
	border-radius: var(--radius-pill);
	object-fit: cover;
}

.gb-appointment-form__expert-icon {
	--pk-button-icon-size: var(--pk-button-icon-size-xl);
	--pk-button-icon-glyph-size: var(--pk-button-icon-glyph-size-xl);
	background-color: var(--button-bg-1);
}

.gb-appointment-form__expert:hover .gb-appointment-form__expert-icon,
.gb-appointment-form__expert:focus-visible .gb-appointment-form__expert-icon {
	background-color: var(--button-bg-1-hover);
}

@media only screen and (max-width: 992px) {
	.gb-appointment-form {
		padding-block: max(var(--section-spacing-sm), calc(4 * var(--su)));
	}

	.gb-appointment-form__inner {
		gap: max(3rem, calc(3 * var(--su)));
	}
}

@media only screen and (max-width: 767px) {
	.gb-appointment-form__inner {
		width: 100%;
		gap: max(2rem, calc(2 * var(--su)));
	}

	.gb-appointment-form__header {
		gap: max(0.75rem, calc(0.75 * var(--su)));
	}

	.gb-appointment-form .gb-appointment-form__heading {
		font-size: var(--scaling-h3);
	}

	.gb-appointment-form__expert {
		flex-direction: column;
		align-items: stretch;
		padding: max(1.5rem, calc(1.5 * var(--su)));
	}

	.gb-appointment-form__expert-action {
		justify-content: space-between;
	}
}
