/* Gravity Forms — floating labels */
.pk-form .gfield {
	position: relative;
}

.pk-form #field_submit{
	justify-content: flex-end;
}
.pk-form .gfield--type-consent {
	display: flex;
}
.pk-form .gfield--type-consent .gfield_label{
	display: none;
}
.pk-form .gfield--type-consent .gform-field-label{
	color: #FFF; font-size: max(.8rem, calc(.8 * var(--su)));
}
.pk-form #field_submit input{
	background-color: var(--button-bg-1);
    border: 1px solid var(--button-border-color);
    color: var(--button-text-color-1);
    text-decoration: none;
    font-size: max(.8rem, calc(.8 * var(--su)));
    padding-block: max(.6rem, calc(.6 * var(--su)));
    padding-inline: max(1rem, calc(1 * var(--su)));
    border-radius: var(--pk-button-border-radius);
    transition: all .7s cubic-bezier(.2, 1, .22, 1);
    text-transform: uppercase;
}
.pk-form #field_submit input:hover,
.pk-form #field_submit input:focus{
	background-color: var(--button-bg-1-hover);
    border: 1px solid var(--button-border-color-1-hover);
    color: var(--button-text-color-1-hover);
	transform: translateY(-3px);
	filter: drop-shadow(0px 0px 15.4px rgba(215, 62, 21, 0.07));
}
.pk-form #field_submit input:active{
	scale: .95;
}

.pk-form .gfield .gfield_label {
	position: absolute;
	top: 50%;
	left: max(1rem, calc(1 * var(--su)));
	transform: translateY(-50%);
	font-size: max(1rem, calc(1* var(--su)));
	color: var(--pk-text-color);
	background: var(--pull-grey);
	padding: 0 4px;
	pointer-events: none;
	transition: all .5s cubic-bezier(.2,1,.22,1);
	z-index: 1; font-weight: 400;
}
.pk-form .gfield .gfield_label .gfield_required{
	display: none;
}
.pk-form .gfield .validation_message{
	display: none;
}
.pk-form .gfield:has(.validation_message) input{
	border-color: var(--primary-color) !important;
}
.pk-form .gfield--type-date .gform_hidden{
	display: none;
}

/* Textarea: center label vertically in taller field */
.pk-form .gfield--type-textarea .gfield_label {
	top: 24px;
	transform: none;
}

.pk-form .gfield--type-date .ginput_container_date {
	position: static;
}

/* Inputs & textareas */
.pk-form .gfield input:not([type="checkbox"]),
.pk-form .gfield textarea,
.pk-form .gfield select {
	outline: none;
	/* box-shadow: 0 0 0 2px color-mix(in srgb, var(--primary-color) 30%, transparent); */
}

.pk-form .gfield input:not([type="checkbox"]),
.pk-form .gfield textarea,
.pk-form .gfield select {
	border: 1px solid var(--form-border-color);
	background: transparent;
	color: var(--pk-text-color);
	border-radius: 6px;
	padding: max(.5rem, calc(.5 * var(--su))) max(1rem, calc(1 * var(--su)));
	width: 100%;
	font-size: max(1rem, calc(1* var(--su)));
	height: unset; line-height: 1;
	transition: all .7s cubic-bezier(.2,1,.22,1);
}

.pk-form .gfield input:not([type="checkbox"]):focus,
.pk-form .gfield textarea:focus,
.pk-form .gfield select:focus {
	border-color: rgba(255, 255, 255, 1);
}

/* Float label on focus or when field has value — uses :has() because label is before input in GF DOM */
.pk-form .gfield:has(.ginput_container > input:not([type="checkbox"]):focus) .gfield_label,
.pk-form .gfield:has(textarea:focus) .gfield_label,
.pk-form .gfield:has(.ginput_container > input:not([type="checkbox"]):not(:placeholder-shown)) .gfield_label,
.pk-form .gfield:has(textarea:not(:placeholder-shown)) .gfield_label {
	top: 0;
	transform: translateY(-50%);
	font-size: max(.5rem, calc(.5* var(--su))); margin: 0;
}

.pk-form .gform_wrapper{
	--gf-ctrl-border-color-focus: var(--primary-color) !important;
}

.pk-form .gfield--input-type-datepicker .ginput_container_date::after{
	content: unset !important;
}

/* Hide GF placeholder text (we use the label as placeholder) */
.pk-form .gfield input::placeholder,
.pk-form .gfield textarea::placeholder {
	color: transparent;
}

/* Consent checkbox */
.pk-form .ginput_container_consent {
	display: flex;
	align-items: center;
	gap: 10px;
}

.pk-form .ginput_container_consent input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	width: 22px;
	height: 22px;
	min-width: 22px;
	border: .5px solid var(--pk-text-color);
	border-radius: 4px;
	background: transparent;
	cursor: pointer;
	position: relative;
}

.pk-form .gform-footer{
	margin: 0;
}


.pk-form .gform-theme--foundation .gform_fields{
	/* column-gap: max(.2rem,  calc(.2 * var(--su)));
	 */
	 row-gap: max(1rem, calc(.2 * var(--su)));
}

.pk-form .ginput_container_consent input[type="checkbox"]:checked::before{
	content: unset;
}
.pk-form .ginput_container_consent input[type="checkbox"]:checked::after {
	content: '';
	position: absolute;
	top: 3px;
	left: 6px;
	width: 6px;
	height: 11px;
	border: 1px solid #fff;
	border-top: none;
	border-left: none;
	transform: rotate(45deg);
}

/* Consent label & link */
.pk-form .gfield_consent_label,
.pk-form .gfield_consent_label a {
	color: #fff;
}