* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
.row {
	--bs-gutter-x: 1.5rem;
	--bs-gutter-y: 0;
	display: flex;
	flex-wrap: wrap;
	margin-top: calc(-1 * var(--bs-gutter-y));
	margin-right: calc(-0.5 * var(--bs-gutter-x));
	margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.wplm-form-container.w-col-12 {
	max-width: 480px;
}
.col-4 {
	flex: 0 0 auto;
	width: 33.33%;
	padding: 0 20px;
}
.col-6 {
	flex: 0 0 auto;
	width: 50%;
	padding: 0 20px;
}
.col-12 {
	flex: 0 0 auto;
	width: 100%;
	padding: 0 20px;
}
.wplm-form {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.wplm-form-group.full {
	max-width: 100%;
	flex: 0 0 100%;
}
.wplm-form-group.half {
	max-width: calc(50% - 6px);
	flex: 0 0 calc(50% - 6px);
}
.wplm-form-group label {
	text-transform: capitalize;
	margin-bottom: 5px;
	display: block;
}
.wplm-form-container {
	max-width: 1320px;
	margin: 40px auto;
	background: #fff;
	border-radius: 16px;
	padding: 30px 25px;
	box-shadow: 0 4px 30px rgba(0,0,0,0.05);
	font-family: 'Helvetica Neue', sans-serif;
	width: 100%;
    width: 100%;
    padding-right: calc(1.5rem * 0.5);
    padding-left: calc(1.5rem  * 0.5);
    margin-right: auto;
    margin-left: auto;
    position: relative;
}
.wplm-form, 
.wplm-form-calendar,
.wplm-form-thumbnail {
	width: 100%;
}
/***** Modal *****/
.wplm-modal.hidden {
  display: none; 
  position: fixed;
  z-index: 999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto; 
  background-color: rgba(0,0,0,0.5);
}

.modal-content {
  background-color: #fff;
  margin: 10% auto;
  padding: 20px;
  border-radius: 5px;
  width: 90%;
  max-width: 400px;
  position: relative;
}

.close {
  color: #aaa;
  position: absolute;
  top: 10px;
  right: 15px;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer;
}
.close:hover {
  color: #000;
}
div.wplm-form-title {
	color: rgba(34, 34, 34, 1);
	font-size: 40px;
	font-weight: 700;
    text-align: center;
}
div.wplm-sub-title {
    text-align: center;
    font-size: 40px;
    font-weight: 700;
    color: #1a40ff;
    margin-bottom: 24px;
}
div.wplm-sub-title.after-subtitle {
	background-image: url("data:image/svg+xml,%3Csvg width='387' height='37' viewBox='0 0 387 37' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.5 28.5955C87.8604 2.52377 227.67 -5.82052 176.585 10.036C125.5 25.8925 120.953 36.4022 152.196 34.5611C183.439 32.72 226.063 29.7002 240.5 28.5955L384.5 18.3925' stroke='%23AAD1FA' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center 18px;
	width: 382px;
	height: 60px;
	margin: 0 auto;
}
.wplm-form-subtitle {
	text-align: center;
	max-width: 510px;
	margin: 0 auto;
	color: rgba(17, 22, 36, 1);
	font-weight: 400;
	margin-bottom: 50px;
}
.wplm-form-thumbnail {
	border-right: 2px dashed rgb(211, 213, 216);
	/* margin-right: 20px; */
	padding-right: 20px;
}

.wplm-form-thumbnail {
	width: 100%;
	text-align: center;
	margin: 0 auto;
	margin-bottom: 24px;
}

.wplm-form-thumbnail img {
	width: 100%;
	height: auto;
}

.wplm-form-group {
    margin-bottom: 18px;
}

.wplm-form-group input[type="text"],
.wplm-form-group input[type="email"],
.wplm-form-group input[type="tel"] {
    width: 100%;
    padding: 20px 16px;
    border: 1px solid #111624;
    color: #111624;
    border-radius: 8px;
    font-size: 14px;
    box-sizing: border-box;
    outline: none;
    transition: border 0.2s ease;
}

.wplm-form-group input:focus {
    border-color: #1a40ff;
}

.wplm-form-group.wplm-name {
    display: flex;
    gap: 12px;
}

.wplm-form-group.wplm-name input {
    width: 100%;
}

.wplm-checkbox {
    display: flex;
    align-items: center;
    font-size: 12px;
}

.wplm-checkbox input[type="checkbox"] {
    margin-right: 8px;
}

.wplm-checkbox label a {
    color: #1a40ff;
    text-decoration: underline;
}

.wplm-checkbox .wplm-agree .wplm-checkbox-icon {
    font-weight: 500;
	opacity: 0.3;
}

.wplm-form-container .wplm-submit-button {
	width: auto;
	padding: 14px;
	background-color: #1a40ff;
	color: white;
	font-weight: bold;
	font-size: 16px;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.wplm-form-container .wplm-submit-button:hover {
    background-color: #1635ce;
    color: #fff;
}

.wplm-powered {
	text-align: center;
	font-size: 12px;
	color: #333;
	width: 100%;
}

.wplm-form-group.submit-group {
	width: 100%;
	text-align: center;
}

.wplm-form-container .wplm-powered a {
    color: #1a40ff;
    text-decoration: underline;
}

.wplm-success-message {
	margin-top: 0;
	color: green;
	font-size: 14px;
	text-align: center;
	display: block;
	width: 100%;
}

#wplm-phone {
	padding-left: 70px;
}
.iti.iti--allow-dropdown.iti--show-flags {
	display: block;
}
.iti__selected-flag::after {
	content: "";
	display: block;
	position: relative;
	width: 1px;
	height: 70%;
	background: #D3D5D8;
	margin-left: 15px;
}

.iti__arrow {
	margin-left: 6px;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 7px solid #2355E0;
}

/* WP LeadMagnet Blue Theme Overrides */
.wplm-form-calendar {
	margin-top: 20px;
	border-left: 2px dashed rgb(211, 213, 216);
	padding-left: 30px;
}   
[data-vc-theme="light"].vc {
	--tw-bg-opacity: 1;
	background-color: rgb(255 255 255/var(--tw-bg-opacity));
	color: #0f172a;
	border: 1px solid #D3D5D8;
}
[data-vc-theme="light"] .vc-arrow {
	background-color: #2355E0;
	color: #fff;
	padding: 10px;
	border-radius: 50%;
	width: 36px;
	height: 36px;
}
.vc-arrow.vc-arrow_prev {
	position: absolute;
	right: 40px;
}
[data-vc-header="content"] {
	align-items: center;
	display: grid;
	flex-grow: 1;
	grid-auto-columns: max-content;
	grid-auto-flow: column;
	justify-content: flex-start;
	padding-left: 0;
	padding-right: 1rem;
	white-space: pre-wrap;
}
[data-vc-theme="light"] .vc-arrow::before {
	background-image: url("data:image/svg+xml,%3Csvg width='12' height='19' viewBox='0 0 12 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.39844 17.6687L9.79533 9.27181L1.39844 0.874912' stroke='white' stroke-width='1.78125'/%3E%3C/svg%3E");
	content: var(--tw-content);
}
[data-vc-arrow="next"]::before {
	transform: rotate(0deg);
}
[data-vc-arrow="prev"]::before {
	transform: rotate(180deg);
}
[data-vc-theme="light"] .vc-header__content, [data-vc-theme="light"] .vc-month, [data-vc-theme="light"] .vc-year {
	color: #2355E0;
	font-size: 26px;
	font-weight: 700;
}
[data-vc-theme="light"] .vc-week__day {
	color: #2355E0;
	font-size: 10px;
	font-weight: 700;
}
[data-vc-theme="light"] .vc-date__btn {
	--tw-bg-opacity: 1;
	background-color: rgb(255 255 255/var(--tw-bg-opacity));
	color: #111624;
	font-size: 10px;
	font-weight: 700;
}
[data-vc-theme="light"] .vc-date__btn {
	--tw-bg-opacity: 1;
	background-color: rgb(255 255 255/var(--tw-bg-opacity));
	color: #111624;
	font-size: 10px;
	font-weight: 700;
	width: 40px;
	height: 40px;
}
[data-vc-theme="light"] .vc-date[data-vc-date-selected] .vc-date__btn,
[data-vc-theme="light"] .vc-date__btn:hover,
[data-vc-theme="light"] .vc-date[data-vc-date-selected] .vc-date__btn:hover  {
	--tw-bg-opacity: 1;
	background-color: rgba(35, 85, 224, .5);
	border-radius: 50%;
	height: 40px;
	width: 40px;
	font-weight: 700;
    color: #111624;
}
[data-vc-theme="light"] .vc-date[data-vc-date-today] .vc-date__btn {
	--tw-bg-opacity: 1;
	background-color: rgba(35, 85, 224, .1);
	border-radius: 50%;
	height: 40px;
	width: 40px;
	font-weight: 700;  
}
.wplm-agree {
	display: flex;
	align-items: center;
}
.wplm-checkbox {
    box-sizing: border-box;
    --background-color: #fff;
    --checkbox-height: 25px;
}
.wplm-checkbox-label {
	margin-left: 45px;
	margin-top: -20px;
	display: block;
}
@-moz-keyframes dothabottomcheck-19 {
    0% {
    height: 0;
    }
    100% {
    height: calc(var(--checkbox-height) / 2);
    }
}

@-webkit-keyframes dothabottomcheck-19 {
    0% {
    height: 0;
    }
    100% {
    height: calc(var(--checkbox-height) / 2);
    }
}

@keyframes dothabottomcheck-19 {
    0% {
    height: 0;
    }
    100% {
    height: calc(var(--checkbox-height) / 2);
    }
}

@keyframes dothatopcheck-19 {
    0% {
    height: 0;
    }
    50% {
    height: 0;
    }
    100% {
    height: calc(var(--checkbox-height) * 1.2);
    }
}

@-webkit-keyframes dothatopcheck-19 {
    0% {
    height: 0;
    }
    50% {
    height: 0;
    }
    100% {
    height: calc(var(--checkbox-height) * 1.2);
    }
}

@-moz-keyframes dothatopcheck-19 {
    0% {
    height: 0;
    }
    50% {
    height: 0;
    }
    100% {
    height: calc(var(--checkbox-height) * 1.2);
    }
}

.wplm-checkbox input[type=checkbox] {
    display: none;
}


.wplm-checkbox .wplm-agree .wplm-checkbox-icon {
    height: var(--checkbox-height);
    width: var(--checkbox-height);
    background-color: transparent;
    border: calc(var(--checkbox-height) * .1) solid #000;
    border-radius: 5px;
    position: relative;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -moz-transition: border-color ease 0.2s;
    -o-transition: border-color ease 0.2s;
    -webkit-transition: border-color ease 0.2s;
    transition: border-color ease 0.2s;
    cursor: pointer;
}
.wplm-checkbox .wplm-agree .wplm-checkbox-icon::before,
.wplm-checkbox .wplm-agree .wplm-checkbox-icon::after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    height: 0;
    width: calc(var(--checkbox-height) * .2);
    background-color: #2355E0;
    display: inline-block;
    -moz-transform-origin: left top;
    -ms-transform-origin: left top;
    -o-transform-origin: left top;
    -webkit-transform-origin: left top;
    transform-origin: left top;
    border-radius: 5px;
    content: " ";
    -webkit-transition: opacity ease 0.5;
    -moz-transition: opacity ease 0.5;
    transition: opacity ease 0.5;
}
.wplm-checkbox .wplm-agree .wplm-checkbox-icon::before {
    top: calc(var(--checkbox-height) * .72);
    left: calc(var(--checkbox-height) * .41);
    box-shadow: 0 0 0 calc(var(--checkbox-height) * .05) var(--background-color);
    -moz-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
.wplm-checkbox .wplm-agree .wplm-checkbox-icon::after {
    top: calc(var(--checkbox-height) * .37);
    left: calc(var(--checkbox-height) * .05);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.wplm-checkbox input[type=checkbox]:checked + .wplm-agree .wplm-checkbox-icon,
.wplm-checkbox .wplm-agree .wplm-checkbox-icon.checked {
    border-color: #2355E0;
}
.wplm-checkbox input[type=checkbox]:checked + .wplm-agree .wplm-checkbox-icon::after,
.wplm-checkbox .wplm-agree .wplm-checkbox-icon.checked::after {
    height: calc(var(--checkbox-height) / 2);
    -moz-animation: dothabottomcheck-19 0.2s ease 0s forwards;
    -o-animation: dothabottomcheck-19 0.2s ease 0s forwards;
    -webkit-animation: dothabottomcheck-19 0.2s ease 0s forwards;
    animation: dothabottomcheck-19 0.2s ease 0s forwards;
}
.wplm-checkbox input[type=checkbox]:checked + .wplm-agree .wplm-checkbox-icon::before,
.wplm-checkbox .wplm-agree .wplm-checkbox-icon.checked::before {
    height: calc(var(--checkbox-height) * 1.2);
    -moz-animation: dothatopcheck-19 0.4s ease 0s forwards;
    -o-animation: dothatopcheck-19 0.4s ease 0s forwards;
    -webkit-animation: dothatopcheck-19 0.4s ease 0s forwards;
    animation: dothatopcheck-19 0.4s ease 0s forwards;
}

@media (max-width: 768px) {
    .col-4,
    .col-6,
    .col-12  {
        width: 100%;
    }
    .wplm-form-calendar {
        margin-top: 20px;
        border-left: none;
        padding-left: 0;
    }
    .wplm-form-thumbnail {
        border-right: none;
        padding-right: 0;
    }
    .wplm-form-group.full, .wplm-form-group.half {
        max-width: 100%;
        flex: 0 0 100%;
    }
    }

#wplm-phone-error {
	position: absolute;
	right: 0;
	top: 20px;
}