.kf-contact-us-header {
	position: relative;
	overflow: hidden;
	color: var(--kf-contact-us-header-text-color, #1a1a1a);
	background-color: var(--kf-contact-us-header-background-color, #ffffff);
	padding: 150px 20px 64px 20px;
	isolation: isolate;

	overflow: hidden;
    border-radius: 50px;
	margin-top: 40px;
}

.kf-contact-us-header.kf-contact-us-header.kf-contact-us-header.kf-contact-us-header.kf-contact-us-header.kf-contact-us-header.kf-contact-us-header {
	max-width: 100%;
}

.kf-contact-us-header__background {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}



.kf-contact-us-header__background.kf-contact-us-header__background {
	margin: 0;
	max-width: none;
}

.kf-contact-us-header__background-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	pointer-events: none;
	user-select: none;
}

.kf-contact-us-header__background-image--mobile {
	display: none;
}

.kf-contact-us-header__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(320px, 660px) minmax(320px, 520px);
	gap: 100px;
	/* max-width: 1440px; */
	align-items: start;
}

.kf-contact-us-header__inner.kf-contact-us-header__inner {
	margin: 0 auto;
}



.kf-contact-us-header__content {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;

	height: 100%;

	position: relative;
}


@media (min-width: 1021px) {
	.kf-contact-us-header__content::after {
		content: '';

		position: absolute;
		right: -50px;
		top: 0px;
		pointer-events: none;
		width: 1px;
		height: 100%;

		border-right: 1px solid;

		border-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFFFFF88 50%, rgba(255, 255, 255, 0) 100%) 1;

	}
}

.kf-contact-us-header__overline {
	font-weight: 600;
	font-size: 16px;
	line-height: 125%;
	letter-spacing: 8%;
	text-transform: uppercase;

	color: #A5A7FF;
}

.kf-contact-us-header__title {
	font-weight: 200;
	font-size: clamp(clamp(clamp(40px, 0.41vw + 38.45px, 41.25px), 2.75vw + 22.61px, 49.53px), 7.44vw + -23.24px, 72px);
	line-height: 100%;
}

.kf-contact-us-header__title.kf-contact-us-header__title {
    margin: 0;
}

.kf-contact-us-header__subtitle {
	margin: 4px 0 20px;
	/* max-width: 720px; */

	opacity: 0.85;

	font-weight: 400;
	font-size: var(--wp--preset--font-size--x-18);
	line-height: 150%;
}

.kf-contact-us-header__section {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
}

.kf-contact-us-header__section-title {
    font-size: clamp(clamp(clamp(18px, 0.03vw + 17.87px, 18.1px), 0.5vw + 14.74px, 19.6px), 3.45vw + -14.1px, 30px);

	font-weight: 500;
	line-height: 90%;
	letter-spacing: -2%;
}

.kf-contact-us-header__section-title.kf-contact-us-header__section-title {
    margin: 0;
}

.kf-contact-us-header__items,
.kf-contact-us-header__contacts {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0;
	padding: 0;
}

.kf-contact-us-header__contacts {
	flex-direction: row;
}

.kf-contact-us-header__item,
.kf-contact-us-header__contact {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	min-width: 0;
}

.kf-contact-us-header__contact {
	flex-direction: column;
	flex: 1;
	gap: 0px;
}

.kf-contact-us-header__item-icon,
.kf-contact-us-header__contact-icon {
	flex: 0 0 auto;
	line-height: 0;
}

.kf-contact-us-header__item-image,
.kf-contact-us-header__contact-image {
	display: block;
	width: 100%;
	height: auto;
}

.kf-contact-us-header__item-content,
.kf-contact-us-header__contact-content {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;

	font-weight: 400;
	font-size: var(--wp--preset--font-size--x-18);
	line-height: 150%;


	opacity: 0.85;
}

.kf-contact-us-header__contact-inner {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

.kf-contact-us-header__contact-phone {
	font-size: var(--wp--preset--font-size--x-24);
	line-height: 120%;

	flex: 1;
}

.kf-contact-us-header__contact-description {
	font-weight: 400;
	font-size: 16px;
	line-height: 150%;
}

.kf-contact-us-header__closing {
	margin-top: 8px;
	
	opacity: 0.85;
		
	font-weight: 600;
	font-size: clamp(12px, 10.55px + 0.45vw, 16px);
	line-height: 125%;
	letter-spacing: 8%;
	text-transform: uppercase;

	position: relative;
}

.kf-contact-us-header__closing > span {
	background: #262535;
	position: relative;
    padding-right: .5em;
    display: inline-block;
}

.kf-contact-us-header__closing::before {
	content: '';
	position: absolute;
	inset: 0px;
	background: url('data:image/svg+xml,<svg width="227" height="1" viewBox="0 0 227 1" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 0.5H227" stroke="url(%23paint0_linear_314_97)"/><defs><linearGradient id="paint0_linear_314_97" x1="0" y1="1" x2="227" y2="1" gradientUnits="userSpaceOnUse"><stop stop-color="white" stop-opacity="0.4"/><stop offset="1" stop-color="white" stop-opacity="0"/></linearGradient></defs></svg>') no-repeat right center;
}

.kf-contact-us-header__form {
	min-width: 0;
	position: relative;

	color: #fff;
	gap: 30px;
	padding: 0px;
	border-radius: 20px;

}



.kf-contact-us-header__form::before {
	content: '';
	position: absolute;
	inset: 0px;
   
	border-radius: inherit;
	/* this is the border width */
	padding: 2px;

	background: linear-gradient(180deg, #5F61FF 0%, rgba(95, 97, 255, 0) 100%);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
  
	pointer-events: none;
}

.kf-contact-us-header__form-title {
	font-weight: 500;
	font-size: clamp(18px, 13.64px + 1.36vw, 30px);
	line-height: 90%;
	letter-spacing: -2%;

}

.kf-contact-us-header__form-title.kf-contact-us-header__form-title {
	margin: 0 0 24px;
}

.kf-contact-us-header__form-content {
	display: block;
	width: 100%;

	font-weight: 400;
	font-size: 14px;
	line-height: 150%;
}

.kf-contact-us-header__form-content a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: .1rem;
}

.kf-contact-us-header__form-content a:hover {
}

.kf-contact-us-header__form-content > *:first-child {
	margin-top: 0;
}

.kf-contact-us-header__form-content > *:last-child {
	margin-bottom: 0;
}

.kf-contact-us-header__form-content form {
	width: 100%;
}

.kf-contact-us-header__form-content input,
.kf-contact-us-header__form-content select,
.kf-contact-us-header__form-content textarea,
.kf-contact-us-header__form-content button {
	box-sizing: border-box;
	max-width: 100%;
	font: inherit;
}

.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),
.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content select,
.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content.kf-contact-us-header__form-content textarea {
	width: 100%;
}

.kf-contact-us-header__form-content input[type=text],
.kf-contact-us-header__form-content input[type=email],
.kf-contact-us-header__form-content input[type=tel],
.kf-contact-us-header__form-content input[type=url],
.kf-contact-us-header__form-content select,
.kf-contact-us-header__form-content textarea {
	background-color: #FFFFFF33;
	color: #fff;
	border-radius: 10px;
	border: none;
	padding: 14px 20px;

	position: relative;
}

.kf-contact-us-header__form-content input[type=text]::placeholder,
.kf-contact-us-header__form-content input[type=email]::placeholder,
.kf-contact-us-header__form-content input[type=tel]::placeholder,
.kf-contact-us-header__form-content input[type=url]::placeholder{
  color: #FFFFFF;
  opacity: 1;
}

.kf-contact-us-header__form-content input[type=submit] {
	font-family: "degular-variable", sans-serif;
	/* font-weight: 500; */
	font-size: 16px;
	line-height: 100%;
	padding-top: 18px;
	padding-right: 24px;
	padding-bottom: 18px;
	padding-left: 24px;
	border-radius: 50vw;

	--c-light: #ffffff8c;
	--c-dark: #ffffff24;

	--glass-reflex-dark: 1;
	--glass-reflex-light: 1;
	
	--saturation: 150%;

	background-color: #ffffff18;
	backdrop-filter: blur(8px) saturate(var(--saturation));
	-webkit-backdrop-filter: blur(8px) saturate(var(--saturation));
	box-shadow: inset 0 0 0 1px 
			color-mix(in srgb, var(--c-light) calc(var(--glass-reflex-light) * 10%), transparent), inset 1.8px 3px 0px -2px 
			color-mix(in srgb, var(--c-light) calc(var(--glass-reflex-light) * 90%), transparent), inset -2px -2px 0px -2px 
			color-mix(in srgb, var(--c-light) calc(var(--glass-reflex-light) * 80%), transparent), inset -3px -8px 1px -6px 
			color-mix(in srgb, var(--c-light) calc(var(--glass-reflex-light) * 60%), transparent), inset -0.3px -1px 4px 0px 
			color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 12%), transparent), inset -1.5px 2.5px 0px -2px 
			color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 20%), transparent), inset 0px 3px 4px -2px 
			color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 20%), transparent), inset 2px -6.5px 1px -4px 
			color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 10%), transparent), 0px 1px 5px 0px 
			color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 10%), transparent), 0px 6px 16px 0px 
			color-mix(in srgb, var(--c-dark) calc(var(--glass-reflex-dark) * 8%), transparent);
	transition: background-color 400ms cubic-bezier(1, 0.0, 0.4, 1), box-shadow 400ms cubic-bezier(1, 0.0, 0.4, 1);

	color: #fff;
	cursor: pointer;

	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;

	margin: 0 auto;
    display: block;
}

.kf-contact-us-header__form-content input[type=submit]:hover,
.kf-contact-us-header__form-content input[type=submit]:active {
	--c-light: #ffffffa5;
	--c-dark: #ffffff3d;
	background-color: #ffffff35;
}

.kf-contact-us-header__section--questions {
	position: relative;

	padding: 30px;
	margin-top: 20px;
	border-radius: 10px;
	box-shadow: 0px 24px 26px 0px #0A0B5A14;
	background: #FFFFFF1A;

	margin-top: auto;
}

.kf-contact-us-header__section--questions::before {
	content: '';
	position: absolute;
	inset: 0px;
   
	border-radius: inherit;
	/* this is the border width */
	padding: 1px;

	background: linear-gradient(to bottom right, #ffffff78 0%, #e0e0e00d 62%, #ffffff61 100%);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
  
	pointer-events: none;
}


.kf-contact-us-header__form .hbspt-form label {
	display: block;
	margin-bottom: .4em;
}


.kf-contact-us-header__form .hbspt-form fieldset {
	max-width: 100%;
}

.kf-contact-us-header__form .hbspt-form fieldset.form-columns-1 .hs-form-field,
.kf-contact-us-header__form .hbspt-form fieldset.form-columns-2 .hs-form-field {
	width: auto;
    float: none;

	margin-top: 0;
	margin-bottom: 20px;
}

.kf-contact-us-header__form .hbspt-form fieldset.form-columns-1 .hs-input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]) {
	width: 100%;
}


.kf-contact-us-header__form .hbspt-form fieldset.form-columns-2 {
	display: flex;
	gap: 0px 20px;
	max-width: none;
}

.kf-contact-us-header__form .hbspt-form fieldset.form-columns-2 > * {
	flex: 1;
}

.kf-contact-us-header__form .hbspt-form fieldset.form-columns-1 .input,
.kf-contact-us-header__form .hbspt-form fieldset.form-columns-2 .input {
	margin: 0;
}

.kf-contact-us-header__form .hbspt-form .input {
	position: relative;
	border-radius: 10px;
}


.kf-contact-us-header__form .hbspt-form .input:has(input[type=text], input[type=email], input[type=tel], input[type=url], select, textarea)::before {
	content: '';
	position: absolute;
	inset: 0px;
   
	border-radius: inherit;
	/* this is the border width */
	padding: 2px;

	background: linear-gradient(180deg, #5F61FF 0%, rgba(95, 97, 255, 0) 100%);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
  
	pointer-events: none;
}


.kf-contact-us-header__form .hbspt-form .hs-fieldtype-select .input {
	position: relative;
}

.kf-contact-us-header__form .hbspt-form .hs-fieldtype-select .input select {
  -webkit-appearance: none;  /* Chrome, Safari, newer Edge */
  -moz-appearance: none;     /* Firefox */
  appearance: none;          /* Standard property */
}
.kf-contact-us-header__form .hbspt-form .hs-fieldtype-select .input::after {
    display: inline-block;
    content: "";
    width: 0;
    height: 0;
    right: 20px;
    top: 23px;
    transition: 150ms ease-in-out;
    transform: rotate(45deg);
    border: solid #fff;
    border-width: 0 2px 2px 0;
    padding: 2.3px;
    position: absolute;
}

.kf-contact-us-header__form .hbspt-form .input :is(input[type=text]:focus, input[type=email]:focus, input[type=tel]:focus, input[type=url]:focus, select:focus, textarea:focus) {
	outline: none;
}

.kf-contact-us-header__form .hbspt-form .input:has(input[type=text]:focus, input[type=email]:focus, input[type=tel]:focus, input[type=url]:focus, select:focus, textarea:focus)::before {
	background: linear-gradient(180deg, #95FFEC 0%, rgba(40, 185, 5, 0) 100%);
}

.kf-contact-us-header__form .hbspt-form ul.inputs-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.kf-contact-us-header__form .hbspt-form ul.hs-error-msgs {
	list-style: none;
	margin: 0;
	padding: 0;
}

.kf-contact-us-header__form .hbspt-form .hs-error-msg {
	color: #d50000;
	font-size: 12px;
	/* letter-spacing: .05em; */
    text-transform: uppercase;
}

.kf-contact-us-header__form .hbspt-form [type="radio"]:checked,
.kf-contact-us-header__form .hbspt-form [type="radio"]:not(:checked),
.kf-contact-us-header__form .hbspt-form [type="checkbox"]:checked,
.kf-contact-us-header__form .hbspt-form [type="checkbox"]:not(:checked) {
                  position: absolute;
                  left: -9999px;
            }
.kf-contact-us-header__form .hbspt-form [type="radio"]:checked + span,
.kf-contact-us-header__form .hbspt-form [type="radio"]:not(:checked) + span
            {
                  position: relative;
                  padding-left: 30px;
                  cursor: pointer;
                  line-height: 60px;
                  display: inline-block;
            }

.kf-contact-us-header__form .hbspt-form [type="checkbox"]:checked + span,
.kf-contact-us-header__form .hbspt-form [type="checkbox"]:not(:checked) + span{
                  position: relative;
                  padding-left: 30px !important;
                  cursor: pointer;
                  display: inline-block;
                  margin: 7px 0px;
                  text-transform: inherit !important;
            }
.kf-contact-us-header__form .hbspt-form [type="radio"]:checked + span:before,
.kf-contact-us-header__form .hbspt-form [type="radio"]:not(:checked) + span:before,
.kf-contact-us-header__form .hbspt-form [type="checkbox"]:checked + span:before,
.kf-contact-us-header__form .hbspt-form [type="checkbox"]:not(:checked) + span:before{
                  content: '';
                  position: absolute;
                  left: 0;
                  top: 0;
                  width: 20px;
                  height: 20px;
                  /* background: #fff; */
                  border: 1px solid #ccc;
                  border-radius: 4px;
            }
.kf-contact-us-header__form .hbspt-form [type="radio"]:not(:checked) + span:after {
                  content: '';
                  width: 32px;
                  height: 32px;
                  background: #fff !important;
                  position: absolute;
                  top: 14px;
                  left: 14px;
                  border-radius: 100%;	
            }
.kf-contact-us-header__form .hbspt-form [type="checkbox"]:not(:checked) + span:after {
                  content: '';
                  position: absolute;
            }
.kf-contact-us-header__form .hbspt-form [type="radio"]:checked + span:after {
                  content: '';
                  width: 8px;
                  height: 8px;
                  position: absolute;
                  border-radius: 100%;
            }
.kf-contact-us-header__form .hbspt-form [type="checkbox"]:checked + span:after {
                  content: '';
                  width: 20px;
                  height: 20px;
                  position: absolute;
                  top: 0;
                  left: 0;
				  border-radius: 4px;
                  background: #fff url(/wp-content/themes/keyfactor/library/images/i-check.png) no-repeat center center;
                  background-size: 90%;
                  text-align: center;
            }

.kf-contact-us-header__form .hbspt-form [type="radio"]:not(:checked) + span:after, 
.kf-contact-us-header__form .hbspt-form [type="radio"]:checked + span:after,
.kf-contact-us-header__form .hbspt-form [type="checkbox"]:not(:checked) + span:after, 
.kf-contact-us-header__form .hbspt-form [type="checkbox"]:checked + span:after {
                  opacity: 1;
                  -webkit-transform: scale(1);
                  transform: scale(1);
            }



.kf-contact-us-header__form::before {
	display: none;
}

.kf-contact-us-header__form .hbspt-form .input:has(input[type=text], input[type=email], input[type=tel], input[type=url], select, textarea)::before {
	padding: 1px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.25) 0%, rgba(255, 255, 255, 0) 100%);
}

.kf-contact-us-header__form .kf-contact-us-header__form-content input[type=submit] {
	width: 100%;
	background-color: #5F61FF;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	box-shadow: none;
	color: #fff;

	padding: 18px 24px;
	margin-top: 12px;
}

.kf-contact-us-header__form .kf-contact-us-header__form-content input[type=submit]:hover,
.kf-contact-us-header__form .kf-contact-us-header__form-content input[type=submit]:active {
	background-color: #5f61ff;
}

@media (max-width: 1020px) {
	.kf-contact-us-header__background-image--desktop {
		display: none;
	}

	.kf-contact-us-header__background-image--mobile {
		display: block;
	}

	.kf-contact-us-header {
		background-image: var(--kf-contact-us-header-background-image-mobile, var(--kf-contact-us-header-background-image-desktop, none));
		padding: 40px 20px;
	}

	.kf-contact-us-header__inner {
		grid-template-columns: minmax(0, 1fr);
		gap: 32px;
	}

	.kf-contact-us-header__content {
		gap: 24px;
	}

	.kf-contact-us-header__title {
		text-align: center;
	}

	.kf-contact-us-header__subtitle {
		text-align: center;
	}

	.kf-contact-us-header__contacts {
		flex-direction: column;
	}

	.kf-contact-us-header__closing > span {
		background-color: transparent;
	}

	.kf-contact-us-header__closing::before {
		display: none;
	}

	.kf-contact-us-header__section-title,
	.kf-contact-us-header__form-title {
	}

	.kf-contact-us-header__item-content,
	.kf-contact-us-header__contact-content,
	.kf-contact-us-header__closing {
	}

	.kf-contact-us-header__contact-phone {
	}

	.kf-contact-us-header__form {
		padding: 20px;
	}

	.kf-contact-us-header__form .hbspt-form fieldset.form-columns-2 {
		flex-direction: column;
	}
}