/*
 * BASE STYLING FOR THE FORMS
 * */
.vtc-form--base .vtc-form {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 20px;
}
.vtc-form--base .vtc-form * {
	font-family: 'DM Sans', sans-serif;
	font-size: 16px;
}
.vtc-form--base .vtc-form input,
.vtc-form--base .vtc-form select {
	border: 0;
	border-radius: 4px;
	padding: 0 18px;
	font-weight: 400;
	color: #90A4AE;
	height: 50px;
	width: 100%;
	box-shadow: 0px 2px 6px #00000020;
}
.vtc-form--base .vtc-form input::placeholder {
	color: #90A4AE;
}
.vtc-form--base .vtc-form__button {
	width: 100%;
	padding: 0;
	height: 50px;
	color: #fff;
	border-width: 0px;
	border-radius: 5px;
	font-weight: 600;
	cursor: pointer;
	background-color: #5F2CED;
	box-shadow: 0px 2px 6px #00000020;
}
.vtc-form--base .vtc-form__disclaimer {
	color: #fff;
	font-size: 14px;
	line-height: 1.3em;
}
.vtc-form--base .vtc-form__disclaimer a {
	color: #fff;
	text-decoration: underline;
	font-size: 14px;
}
.vtc-form--base .vtc-form__error-message {
    background: pink;
    padding: 10px;
    color: #000;
    border-radius: 5px;
}
/*
 * FORM WITH A YELLOW BUTTON
 * */
.vtc-form--yellow-btn .vtc-form__button {
    color: #000;
    font-weight: 400;
    font-size: 18px;
    text-transform: uppercase;
    background: transparent linear-gradient(262deg, #FFC950 0%, #E6A000 100%) 0% 0% no-repeat padding-box;
}

/*
 * FORM WITH A BLUE BUTTON
 * */
.vtc-form--blue-btn .vtc-form__button {
     color: #fff !important;
     text-transform: uppercase;
     background: transparent linear-gradient(265deg, #6CBBFF 0%, #006CEB 100%) 0% 0% no-repeat padding-box !important;
}
.vtc-form--blue-btn .vtc-form__button:hover {
     background: transparent linear-gradient(265deg, #0089FF 0%, #006CEB 100%) 0% 0% no-repeat padding-box !important;
}

/*
 * FORM WITH SPLIT NAME FIELDS
 * */
.vtc-form--split-name .vtc-form {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    grid-gap: 15px;
}
.vtc-form--split-name .vtc-form > :not(.vtc-form__group:has(> input[name="firstname"], > input[name="lastname"])) {
    grid-column: 1 / -1;
}

/*
 * FORM WITH INLINE SUBMIT BUTTON
 * */
.vtc-form--inline-submit form.vtc-form {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    column-gap: 0;
}
.vtc-form--inline-submit .vtc-form > * { width: 100% }
.vtc-form--inline-submit .vtc-form__group:has(> input[name="firstname"], > input[name="lastname"]) { width: calc(50% - 10px) }
.vtc-form--inline-submit .vtc-form__group:has(> select[name="location"]) { width: 65% }
.vtc-form--inline-submit .vtc-form select { border-radius: 5px 0 0 5px }
.vtc-form--inline-submit .vtc-form__button {
    width: 35%;
    border-radius: 0 5px 5px 0;
    font-size: clamp(16px,1.2vw,18px);
    text-transform: unset;
    color: #000;
    font-weight: bold;
	background: transparent linear-gradient(262deg, #FFC950 0%, #E6A000 100%) 0% 0% no-repeat padding-box;
}
.vtc-form--inline-submit .vtc-form__button::after {
    font-family: "Font Awesome 6 Pro";
    content: "\f058";
    margin-left: 5px;
}
.vtc-form--inline-submit .vtc-form__disclaimer,
.vtc-form--inline-submit .vtc-form__disclaimer a {
    font-size: 12px;
    text-align: center;
    color: #000;
}
@media only screen and (max-width: 1200px){
    .vtc-form--inline-submit .vtc-form > * { width: 100% !important }
    .vtc-form--inline-submit .vtc-form select,
    .vtc-form--inline-submit .vtc-form button {
        border-radius: 5px;
    }
}

/*
 * FORM WITH WHITE BACKGROUND DISCLAIMER
 * */
.vtc-form--white-bg-disclaimer .vtc-form__disclaimer {
	font-weight: 300;
	color: #000051;
	font-size: 12px;
	text-align: center;
	background-image: radial-gradient(circle at center, #ffffff 71%, rgba(255, 255, 255, 0) 100%);
	padding: 10px !important;
}
.vtc-form--white-bg-disclaimer .vtc-form__disclaimer a {
	color: #000051;
	font-size: 12px;
	font-weight: 300px;
}

/*
 * FORM WITH WHITE DISCLAIMER
 * */
.vtc-form--white-disclaimer .vtc-form__disclaimer,
.vtc-form--white-disclaimer .vtc-form__disclaimer a {
	font-weight: 300;
	color: #fff;
	font-size: 12px;
	text-align: center;
}

/*
 * FORM WITH VISIBLE LABELS
 * */
.vtc-form--inline-labels .vtc-form__label {
	all: revert !important;
	color: #fff !important;
	width: 100px !important;
	white-space: nowrap !important;
	display: flex !important;
	margin-bottom: 5px !important;
}