/* Kenai Gravity Forms skin. Gravity Forms structural CSS stays enabled; forms use modern markup. */

.gform_wrapper .gform_button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	min-height: 48px !important;
	background: var(--ksa-red) !important;
	color: #ffffff !important;
	border: 2px solid var(--ksa-red) !important;
	border-radius: 999px !important;
	padding: 12px 24px !important;
	font-size: 14px !important;
	line-height: 20px !important;
	font-weight: 600 !important;
	letter-spacing: -.1px !important;
	cursor: pointer !important;
	text-decoration: none !important;
	box-shadow: 0 0 0 rgba(27, 13, 75, 0) !important;
	transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

.gform_wrapper .gform_button:hover,
.gform_wrapper .gform_button:focus-visible {
	background: #000000 !important;
	border-color: #000000 !important;
	color: #ffffff !important;
	box-shadow: 0 10px 24px rgba(27, 13, 75, .18) !important;
	transform: translateY(-1px);
}

.gform_wrapper input,
.gform_wrapper select,
.gform_wrapper textarea {
	box-sizing: border-box !important;
	width: 100% !important;
	border: 1px solid rgba(27, 13, 75, .95) !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	height: 48px !important;
	min-height: 48px !important;
	padding: 12px 16px !important;
	color: var(--ksa-ink) !important;
	font-family: Poppins, Arial, sans-serif !important;
	font-size: 14px !important;
	line-height: 20px !important;
	box-shadow: none !important;
	transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease !important;
}

.gform_wrapper input::placeholder,
.gform_wrapper textarea::placeholder {
	color: var(--ksa-ink) !important;
	opacity: .7 !important;
}

.gform_wrapper select:has(option.gf_placeholder:checked),
.gform_wrapper select:has(option[value=""]:checked) {
	color: rgba(27, 13, 75, .7) !important;
}

.gform_wrapper select option {
	color: var(--ksa-ink);
}

.gform_wrapper select option.gf_placeholder,
.gform_wrapper select option[value=""] {
	color: rgba(27, 13, 75, .7);
}

.gform_wrapper select {
	appearance: none !important;
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7L9 11L13 7' stroke='%231B0D4B' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-position: right 18px center !important;
	background-repeat: no-repeat !important;
	background-size: 18px 18px !important;
	height: 48px !important;
	min-height: 48px !important;
	padding: 12px 44px 12px 16px !important;
	text-indent: 0 !important;
}

.gform_wrapper input[type="radio"],
.gform_wrapper input[type="checkbox"] {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	width: 24px !important;
	height: 24px !important;
	min-height: 24px !important;
	padding: 0 !important;
	flex: 0 0 24px;
	border: 1px solid var(--ksa-ink) !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	accent-color: var(--ksa-ink) !important;
	color: #ffffff !important;
	color-scheme: light !important;
	forced-color-adjust: none !important;
	margin: 0 !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

.gform_wrapper input[type="checkbox"] {
	border-radius: 6px !important;
}

.gform_wrapper input[type="radio"]:checked {
	border: 1px solid var(--ksa-ink) !important;
	background-color: #ffffff !important;
	background-image: radial-gradient(circle, var(--ksa-ink) 0 5px, transparent 5.5px) !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 100% 100% !important;
	box-shadow: none !important;
}

.gform_wrapper input[type="checkbox"]:checked {
	border-color: var(--ksa-ink) !important;
	background-color: var(--ksa-ink) !important;
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 9.1L7.2 12.3L14 5.7' stroke='%23FFFFFF' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 18px 18px !important;
	color: #ffffff !important;
	forced-color-adjust: none !important;
	box-shadow: none !important;
}

.gform_wrapper input:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus {
	border-color: var(--ksa-red) !important;
	box-shadow: 0 0 0 2px rgba(207, 24, 40, .12) !important;
	outline: none !important;
}

.gform_wrapper input[type="radio"]:focus,
.gform_wrapper input[type="checkbox"]:focus {
	border: 1px solid var(--ksa-ink) !important;
	box-shadow: 0 0 0 2px rgba(27, 13, 75, .12) !important;
}

.gform_wrapper textarea {
	height: 132px !important;
	min-height: 132px !important;
	border-radius: 16px !important;
	padding: 16px !important;
	resize: vertical;
}

.ksa-contact-layout .gform_wrapper textarea {
	height: 48px !important;
	min-height: 48px !important;
	border-radius: 999px !important;
	padding: 12px 16px !important;
	resize: none;
}

.gform_wrapper .gfield_label,
.gform_wrapper legend.gfield_label {
	display: block !important;
	margin: 0 0 4px !important;
	font-size: 14px !important;
	line-height: 20px !important;
	font-weight: 600 !important;
	color: var(--ksa-ink) !important;
	letter-spacing: -.1px !important;
}

.gform_wrapper .gfield_required {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.ksa-form-card {
	width: min(100%, 636px);
	max-width: 636px;
	margin-inline: auto !important;
	padding: 40px !important;
	border: 0 !important;
}

.ksa-form-card .gform_heading,
.ksa-form-card .gform_body {
	margin: 0 !important;
}

.ksa-form-card .gform_wrapper {
	margin: 0 !important;
	padding-top: 34px !important;
}

.ksa-form-card .ginput_container {
	margin-top: 4px !important;
}

.ksa-form-card .gform_fields {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	column-gap: 6px !important;
	row-gap: 16px !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}

.ksa-form-card .gfield {
	grid-column: 1 / -1;
	margin: 0 !important;
	padding: 0 !important;
	min-width: 0;
}

.ksa-form-card .hidden_label > .gfield_label,
.ksa-form-card .hidden_label > legend.gfield_label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.ksa-form-card .gfield.ksa-field-half {
	grid-column: span 1 !important;
}

.ksa-form-card .gfield.ksa-field-full {
	grid-column: 1 / -1 !important;
}

.ksa-form-card .gfield.hidden_label > .gfield_label,
.ksa-form-card .gfield.hidden_label > legend.gfield_label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.ksa-form-card .ksa-terms-checkbox > .gfield_label,
.ksa-form-card .ksa-terms-checkbox > legend.gfield_label {
	display: none !important;
}

.ksa-form-card .gfield_radio,
.ksa-form-card .gfield_checkbox {
	display: flex !important;
	width: 100% !important;
	gap: 16px 20px !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.ksa-form-card .ginput_complex {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	column-gap: 6px !important;
	row-gap: 16px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.ksa-form-card .ginput_complex > span {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

.ksa-form-card .ginput_complex .address_line_1,
.ksa-form-card .ginput_complex .address_line_2 {
	grid-column: 1 / -1;
}

.ksa-form-card .ginput_complex label {
	display: block !important;
	order: -1 !important;
	margin: 0 0 4px !important;
	color: var(--ksa-ink) !important;
	font-size: 14px !important;
	line-height: 20px !important;
	font-weight: 600 !important;
	letter-spacing: -.1px !important;
}

.ksa-form-card .ginput_complex .address_line_1 label {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.ksa-form-card .gchoice {
	display: flex !important;
	align-items: center !important;
	gap: 4px !important;
	min-height: 24px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--ksa-ink);
	line-height: 20px;
	list-style: none !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	transition: border-color .18s ease, background-color .18s ease;
}

.ksa-form-card .gform_legacy_markup_wrapper ul.gfield_radio li.gchoice,
.ksa-form-card .gform_legacy_markup_wrapper ul.gfield_checkbox li.gchoice,
.ksa-form-card ul.gfield_radio li.gchoice,
.ksa-form-card ul.gfield_checkbox li.gchoice {
	padding: 0 !important;
}

.ksa-form-card .gchoice:has(input:checked) {
	color: var(--ksa-red);
}

.ksa-form-card .gchoice.ksa-choice-hidden {
	display: none !important;
}

.ksa-form-card .gchoice label {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 24px !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--ksa-ink) !important;
	font-size: 14px !important;
	line-height: 20px !important;
	font-weight: 400 !important;
	letter-spacing: -.1px !important;
	cursor: pointer !important;
}

.ksa-form-card .ksa-terms-checkbox .ginput_container {
	margin-top: 0 !important;
}

.ksa-form-card .ksa-terms-checkbox .gfield_checkbox {
	gap: 16px 20px !important;
}

.ksa-form-card .ksa-terms-checkbox .gchoice {
	align-items: center !important;
	gap: 4px !important;
}

.ksa-form-card .gfield.gfield--type-total,
.ksa-form-card .gfield.gfield_total {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	width: 100% !important;
	padding: 14px 18px !important;
	border: 1px solid rgba(27, 13, 75, .18) !important;
	border-radius: 18px !important;
	background: var(--ksa-lavender) !important;
	box-shadow: 0 10px 24px rgba(27, 13, 75, .08) !important;
}

.ksa-form-card .gfield.gfield--type-total > .gfield_label,
.ksa-form-card .gfield.gfield_total > .gfield_label {
	margin: 0 !important;
	color: var(--ksa-ink) !important;
	font-size: 16px !important;
	line-height: 22px !important;
	font-weight: 700 !important;
}

.ksa-form-card .gfield.gfield--type-total .ginput_container,
.ksa-form-card .gfield.gfield_total .ginput_container {
	width: auto !important;
	margin: 0 !important;
	flex: 0 0 auto !important;
}

.ksa-form-card .ginput_container_total input,
.ksa-form-card .ginput_total {
	width: 96px !important;
	max-width: 96px !important;
	min-width: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--ksa-red) !important;
	font-size: 20px !important;
	line-height: 24px !important;
	font-weight: 800 !important;
	text-align: left !important;
	box-shadow: none !important;
	pointer-events: none !important;
}

.ksa-form-card .ksa-hide-range-instruction .instruction {
	display: none !important;
}

.ksa-form-card .ksa-square-card-field {
	margin-top: 8px !important;
}

.ksa-form-card .ksa-square-card-field > .gfield_label,
.ksa-form-card .ksa-square-card-field > legend.gfield_label {
	margin: 0 0 16px !important;
	padding-bottom: 16px !important;
	border-bottom: 1px solid rgba(27, 13, 75, .68) !important;
	color: var(--ksa-ink) !important;
	font-size: 22px !important;
	line-height: 28px !important;
	font-weight: 600 !important;
	letter-spacing: -.2px !important;
}

.ksa-form-card .ginput_container_square_card {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 16px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.ksa-form-card .ginput_container_square_card > .ginput_full,
.ksa-form-card .ginput_container_square_card .sq-cardholder-container {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

.ksa-form-card .ginput_container_square_card label {
	display: block !important;
	order: -1 !important;
	margin: 0 0 4px !important;
	color: var(--ksa-ink) !important;
	font-size: 14px !important;
	line-height: 20px !important;
	font-weight: 600 !important;
	letter-spacing: -.1px !important;
}

.ksa-form-card .ginput_container_square_card .sq-input {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	height: 48px !important;
	min-height: 48px !important;
	border: 1px solid rgba(27, 13, 75, .95) !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	padding: 12px 16px !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease !important;
}

.ksa-form-card .ginput_container_square_card .sq-input:focus {
	outline: 0 !important;
	border-color: var(--ksa-red) !important;
	box-shadow: 0 0 0 2px rgba(207, 24, 40, .12) !important;
}

.ksa-form-card .ginput_container_square_card .square-single-form,
.ksa-form-card .gfield--type-square_creditcard .sq-card-component {
	display: block !important;
	width: 100% !important;
	min-height: 48px !important;
}

.ksa-form-card .gfield--type-square_creditcard .sq-card-iframe-container {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	height: 48px !important;
	min-height: 48px !important;
	border: 1px solid rgba(27, 13, 75, .95) !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	box-shadow: none !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
	transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease !important;
}

.ksa-form-card .gfield--type-square_creditcard .sq-card-wrapper,
.ksa-form-card .gfield--type-square_creditcard .sq-card-component {
	width: 100% !important;
	height: 48px !important;
	min-height: 48px !important;
	border: 0 !important;
	background: transparent !important;
}

.ksa-form-card .gfield--type-square_creditcard .sq-focus .sq-card-iframe-container {
	border-color: var(--ksa-red) !important;
	box-shadow: 0 0 0 2px rgba(207, 24, 40, .12) !important;
}

.ksa-form-card .gfield--type-square_creditcard .sq-error .sq-card-iframe-container {
	border-color: var(--ksa-red) !important;
	background: rgba(207, 24, 40, .04) !important;
}

.ksa-form-card .gfield_description,
.ksa-form-card .gfield_validation_message,
.ksa-form-card .validation_message {
	margin-top: 8px !important;
	font-size: 13px !important;
	line-height: 18px !important;
}

.gform_wrapper .gform_validation_errors {
	margin: 0 0 24px !important;
	border: 1px solid rgba(207, 24, 40, .34) !important;
	border-radius: 16px !important;
	background: rgba(207, 24, 40, .08) !important;
	box-shadow: none !important;
	padding: 18px 20px !important;
	color: var(--ksa-red) !important;
}

.gform_wrapper .gform_validation_errors h2,
.gform_wrapper .gform_validation_errors .gform_submission_error {
	margin: 0 !important;
	color: var(--ksa-red) !important;
	font-family: Poppins, Arial, sans-serif !important;
	font-size: 15px !important;
	line-height: 22px !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
}

.gform_wrapper .gfield_error input,
.gform_wrapper .gfield_error select,
.gform_wrapper .gfield_error textarea {
	border-color: var(--ksa-red) !important;
	background: rgba(207, 24, 40, .04) !important;
}

.gform_wrapper .gfield_error .gfield_label,
.gform_wrapper .gfield_error legend.gfield_label,
.ksa-form-card .gfield_validation_message,
.ksa-form-card .validation_message {
	color: var(--ksa-red) !important;
}

.gform_confirmation_wrapper,
.gform_confirmation_message {
	border: 1px solid rgba(27, 13, 75, .18) !important;
	border-radius: 16px !important;
	background: rgba(246, 244, 255, .94) !important;
	color: var(--ksa-ink) !important;
	padding: 20px 24px !important;
	font-family: Poppins, Arial, sans-serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 600 !important;
}

.ksa-form-card .ksa-waiver-field .gfield_description {
	margin-top: 16px !important;
	color: var(--ksa-ink) !important;
	font-size: 9px !important;
	line-height: 10px !important;
	font-weight: 600 !important;
}

.ksa-form-card .gfield.ksa-field-hidden,
.ksa-form-card .gfield.ksa-field-hidden.gfield_visibility_visible {
	display: none !important;
}

.ksa-form-card .gfield.ksa-payment-field-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	min-height: 1px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.ksa-form-card .gfield.ksa-returning-team-price-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	min-height: 1px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.ksa-form-card .gsection,
.ksa-form-card .gfield--type-section {
	border-bottom: 1px solid rgba(27, 13, 75, .68) !important;
	padding: 0 0 16px !important;
	margin: 4px 0 0 !important;
}

.ksa-form-card .gsection_title {
	margin: 0 !important;
	font-size: 24px !important;
	line-height: 1.3 !important;
	font-weight: 600 !important;
	color: var(--ksa-ink) !important;
}

.ksa-form-card .gform_footer {
	margin-top: 32px !important;
	padding: 0 !important;
}

.ksa-form-card .gform_footer .gform_button {
	width: 100% !important;
}

@media (max-width: 1023px) {
	.ksa-contact-layout .ksa-form-card {
		width: 100%;
		max-width: 100%;
		min-height: 0;
		padding: 24px;
	}

	.ksa-form-card {
		padding: 24px !important;
	}

	.ksa-form-card .gform_fields {
		grid-template-columns: 1fr !important;
	}

	.ksa-form-card .gfield.ksa-field-half,
	.ksa-form-card .gfield.ksa-field-full {
		grid-column: 1 / -1 !important;
	}

	.ksa-form-card .ginput_complex {
		grid-template-columns: 1fr !important;
	}

	.ksa-form-card .gfield_radio,
	.ksa-form-card .gfield_checkbox {
		flex-direction: row !important;
		align-items: center !important;
		gap: 12px 16px !important;
	}

	.ksa-form-card .ksa-terms-checkbox .gfield_checkbox,
	.ksa-form-card .ksa-terms-checkbox .gchoice {
		align-items: flex-start !important;
	}
}
