// form-label
.form-label{
	font-size    : 16px;
	font-weight  : 700;
	color        : var(--bs-heading-color);
	margin-bottom: 15px;
	background   : transparent;
	border-color : $border-color;
	font-family  : var(--font-family-title);
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
	transition: background-color 9999s ease-in-out 0s;
}

// form-control
.form-control {
    height    	 : 50px;
    border       : 0;
    padding      : 10px 20px;
    font-size    : 15px;
    font-weight  : 400;
    color        : $headings-color;
    transition   : all 0.3s ease-in-out;
    background   : $white;
	border-radius:10px;
	border-radius:1px solid var(--bs-secondary);
    
	.select{
        padding: 12px 0;
    }
    span {
        margin-top: 0;
    }
    &::-webkit-input-placeholder {
        color: #787D8C;
    }
    &:-ms-input-placeholder {
        color: #787D8C;
    }
	&::placeholder{
		color: #787D8C;
	}
	&:focus,
    &:active,
    &.active{
        border-color: var(--bs-primary);
		background  : var(--bs-light);
		box-shadow: none;
    }
}
.form-check-primary:checked{
	background-color: var(--bs-primary);
}
.form-check-secondary:checked{
	background-color: var(--bs-secondary);
}
.form-check-info:checked{
	background-color: var(--bs-info);
}
.form-check-success:checked{
	background-color: var(--bs-success);
}
.form-check-danger:checked{
	background-color: var(--bs-danger);
}
.form-check-warning:checked{
	background-color: var(--bs-warning);
}
textarea.form-control{
    min-height: auto;
	height:unset;
}

// textarea
textarea{
	height: 120px;
	resize: none;
}
input:-internal-autofill-selected {
    background      : lighten($body-bg, 2%) !important;
    background-image: none !important;
    color           : -internal-light-dark-color(black, white) !important;
}
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance:none;
}
.input-group-text {
    padding         : 5px 15px;
    background      : $body-bg;
    margin-bottom   : 0px !important;
    color           : $body-color;
    border-color    : transparent;
}

// toggle
.toggle {
    cursor          : pointer;
    display         : block;
}
.toggle-switch {
    display       : inline-block;
    background    : darken($body-bg, 3%);
    border-radius : 16px;
    width         : 45px;
    height        : 20px;
    position      : relative;
    vertical-align: middle;
    transition    : background 0.25s;

    &:before,
    &:after {
        content: "";
    }
    &:before {
        display      : block;
        background   : linear-gradient(to bottom, $white 0%, #eee 100%);
        border-radius: 50%;
        width        : 17px;
        height       : 17px;
        position     : absolute;
        top          : 1px;
        left         : 3px;
        transition   : left 0.25s;
    }
    .toggle:hover &:before {
        background   : linear-gradient(to bottom, $white 0%, $white 100%);
    }
    .toggle-checkbox:checked+& {
        background: var(--bs-primary);

        &:before {
            #{$dz-pos-left}: 26px;
        }
    }
}
.toggle-checkbox {
    position  : absolute;
    visibility: hidden;
}
.toggle-label {
    margin-#{$dz-pos-left}: 15px;
    position   : relative;
    top        : 2px;
    font-size  : 16px;
    font-weight: 400;
}

// Upload btn
.file-upload-wrapper {
    position     : relative;
    width        : 100%;
    height       : calc(1.5em + 1rem + 2px);
    border       : 1px solid $border-color;
    border-radius: 5px;
    color        : $text-muted;

	input,
    &:before,
    &:after{
        position      : absolute;
        top     : 0;
        pointer-events: none;
	}
    &:after {
        content       : attr(data-text);
        left          : 0;
        background    : $body-bg;
        padding       : 4px 15px;
        display       : block;
        width         : calc(100% - 40px);
        z-index       : 20;
        height        : calc(1.5em + 1rem + 2px);
        line-height   : 50px - 20px;
        border-radius : 5px 10px 10px 5px;
        font-weight   : 400;
        overflow      : hidden;
    }
    &:before {
        content : 'Upload';
        right   : 0;
        display : inline-block;
        height  : calc(1.5em + 1rem + 2px);
        background    : var(--bs-primary);
        color         : $white;
        font-weight   : 400;
        z-index       : 25;
        font-size     : 14px;
        line-height   : 40px;
        padding       : 0 15px;
        text-transform: capitalize;
        border-radius : 0 5px 5px 0;
    }
    input {
        opacity : 0;
        right   : 0;
        bottom  : 0;
        left    : 0;
        z-index : 99;
        height  : calc(1.5em + 1rem + 2px);
        margin  : 0;
        padding : 0;
        display : block;
        cursor  : pointer;
        width   : 100%;
    }
}

// Validation Error
label.error {
    color        : $danger;
    position     : absolute;
    bottom       : 0;
    margin-bottom: -22px;
    font-size    : 12px;
    font-weight  : 400;
}

// Select Opting
.form-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: 100%;
}
.label-title{
    font-weight: 500;
    color: var(--bs-secondary);
    font-size: 16px;
	margin-bottom:10px;
}
.form-select{
	height		 : 48px;
	border       : 1px solid rgba(0, 0, 0, 0.125);
    padding      : 10px 20px;
    font-size    : 15px;
    font-weight  : 400;
    color        : $headings-color;
    transition   : all 0.3s ease-in-out;
    background-color: var(--bs-light);
	
	select{
		display: none;
	}
	.dropdown-toggle{
		border: 0 !important;
		padding: 0;
		font-weight: normal;
		text-transform: unset;
		outline:none;
		background-color:transparent;
		&:focus {
			outline: 0 !important;
			outline: 0 !important;
			outline-offset: 0!important;
		}
		&:hover, &:active{
			background-color:transparent;
		}
		&:after{
			content:none;
		}
	}
	&.show {
		box-shadow: none !important;
		outline: 0px !important;
		.dropdown-toggle {
			box-shadow: none !important;
			outline: 0px !important;
		}
		&.btn-group .dropdown-menu.inner{
			display:block;
		}	
	}
	&.form-control{
		padding: 0!important;
	}
	.dropdown-menu {
		border: 0;
		border-radius: 0;
		box-shadow: none;
		margin-top: -1px;
		padding: 10px 0;
		box-shadow:0 15px 30px 0 rgba(0,0,0,0.2);
		font-size:14px;
		ul li {
			padding: 0;
			a {
				display: block;
				padding: 8px 20px;
				clear: both;
				font-weight: 400;
				color: #333;
				white-space: nowrap;
				
				img {
					border-radius: 100%;
					-webkit-border-radius: 100%;
					margin-#{$dz-pos-right}: 5px;
				}
				&:hover {
					background-color:#f2f2f4;
				}
			}
			&.selected{
				a{
					background-color: var(--bs-primary);
					color: $white;
				}
			}
		}
	}
	&:focus,
    &:active,
    &.active {
        border-color: var(--bs-primary);
    }
}
.bs-select{
	background-image: none;
	width: 100% !important;
	
	select{
		display: none;
	}
	.dropdown-toggle{	
		&::after{
			content: "\e842";
			font-family: 'feather';
			border: 0;
			position: absolute;
			right: 20px;
			top: 50%;
			transform: translateY(-50%);
			font-size: 20px;
		}
		.filter-option{
			height: auto;
		}
	}
}
.form-select.btn-group{
	padding: 10px 20px;
	border-width: 1px;
	
	&.show{
		box-shadow: 0 0px 10px 4px rgba(31, 66, 135, 0.1)!important;
		border-color: var(--bs-primary);
	}
	.form-control{
		.dropdown-toggle{
			&.btn-default{
				padding: 0;
			}
		}
	}
	.dropdown-toggle{
		.caret{
			font-size: 10px;
			top: 50%;
			#{$dz-pos-right}: 5px;
			transform: translateY(-50%);
			&:before{
				content: "\f078";
			}
		}
	}
}
.custom-file-label{
	box-shadow: 0 0px 10px 4px rgba(31, 66, 135, 0.1);
	height: 45px;
	border-radius: 30px!important;
	padding: 10px 20px;
	font-size: 15px;
	border-color: transparent;
	&:after{
		content: none!important;
	}
}
.form-check-input{
	width: 1.125em;
    height: 1.125em;
    border: 2px solid rgba(0, 0, 0, 0.25);
    border-radius: 0 !important;
    margin: 4px;
	
	&.radio{
		border-radius:50%!important;
		border: 1px solid #24262B;
		&:checked[type="radio"]{
			background-color: #0D775E;
			border: 1px solid #0D775E;
		}
	}
}
.input-group {
    margin-bottom: 20px;
}
.wpcf7-form{
	.row{
	    --bs-gutter-x: 20px;
	}
}
.checkout-form{
	margin-bottom: 40px;
	.form-label{
		font-size: 14px;
		font-weight: 600;
		color: var(--bs-primary);
	}
	.form-control{
		background: none;
		border: 1px solid transparent;
		border-bottom: 2px solid #E1E1E1;
		border-radius: 0;
		padding: 10px 0;
		&::placeholder {
			font-weight: 400;
			font-size: 15px;
			color: var(--seconday);
		}
	}
}
.input-group-text{
	&.checkout-text{
		background: none;
		border-color: transparent;
		position: relative;
		#{$dz-pos-right}: 60px;
		i{
			font-size:20px;
			font-weight:600;
		}
	}
}

// Radio Button ====
.form-check{
	padding-#{$dz-pos-left}: 0;
	padding-#{$dz-pos-right}: 0;
	
	span{
		height: 1rem;
		margin-#{$dz-pos-right}: 15px;
		width: 1rem;
		display:block;
		background-color: var(--bs-secondary);
		position: relative;
		border-radius: 50%;
		z-index: 1;
		&:after{
			content: "";
			position: absolute;
			top: 50%;
			#{$dz-pos-left}: 50%;
			width: 28px;
			height: 28px;
			background-color: transparent;
			border: 1px solid rgb(36, 38, 43);
			border-radius: 50%;
			opacity: 0.2;
			transform: translate(-50%, -50%) scale(0);
			z-index: -1;
		}
	}
	.form-check-input{
		opacity: 0;
		position: relative;
		z-index: 2;
		margin-#{$dz-pos-left}: 0;
		margin-top: 0;
	}
	.form-check-input:checked + span {
		&:after{
			transform: translate(-50%, -50%) scale(1);
		}
	}
}
.form-check1{
    height: 22px;
    width: 22px;
    background-color: var(--bs-light);
    border: 0;
    border-radius: 50% !important;
	
	&:checked[type="radio"],
	&:checked[type="checkbox"]{
		--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg width='10' height='8' viewBox='0 0 10 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M9 1L3.5 6.5L1 4' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e");
		background-size: 50%;
		background-position: center;
	}
}
.form-check2{
	.form-check-input{
		height: 18px;
		width: 18px;
		background-color: transparent;
		border: 1px solid var(--bs-body-color);
		border-radius: 2px !important;
		box-shadow: none;
		margin-right: 8px;
		margin-left: 0;
	}
	.form-check-input:checked[type="radio"],
	.form-check-input:checked[type="checkbox"]{
		background-color: var(--bs-primary);
		border-color: var(--bs-primary) !important;
	}
}

.dz-ajax-overlay{
	position: relative;
	.btn:before{
		content: "";
		height: 100%;
		width: 100%;
		background-color: #000;
		position: absolute;
		#{$dz-pos-left}: 0;
		top: 0;
		z-index: 99;
		border-radius: 0;
		opacity: 0.8;
		color: #fff;
		text-transform: uppercase;
		display: flex;
		align-items: center;
		justify-content: center;
		letter-spacing: 2px;
		font-weight: 500;
		font-size: 14px;
		font-style: italic;
		background-image:url('data:image/svg+xml,<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="24px" height="30px" viewBox="0 0 24 30" style="enable-background:new 0 0 50 50;" xml:space="preserve"> <rect x="0" y="13" width="4" height="5" fill="%23fff"> <animate attributeName="height" attributeType="XML" values="5;21;5" begin="0s" dur="0.6s" repeatCount="indefinite"></animate> <animate attributeName="y" attributeType="XML" values="13; 5; 13" begin="0s" dur="0.6s" repeatCount="indefinite"></animate> </rect> <rect x="10" y="13" width="4" height="5" fill="%23fff"> <animate attributeName="height" attributeType="XML" values="5;21;5" begin="0.15s" dur="0.6s" repeatCount="indefinite"></animate> <animate attributeName="y" attributeType="XML" values="13; 5; 13" begin="0.15s" dur="0.6s" repeatCount="indefinite"></animate> </rect> <rect x="20" y="13" width="4" height="5" fill="%23fff"> <animate attributeName="height" attributeType="XML" values="5;21;5" begin="0.3s" dur="0.6s" repeatCount="indefinite"></animate> <animate attributeName="y" attributeType="XML" values="13; 5; 13" begin="0.3s" dur="0.6s" repeatCount="indefinite"></animate> </rect> </svg>');
		background-repeat:no-repeat; 
		background-position:center;
		background-size:18px;
	}
}
.input-recaptcha{
	@include respond('phone'){
		margin-bottom: -15px;
	}
}
.floating-underline{
	position: relative;
	
	.form-control{
		padding: 15px 0;
		border-bottom: 2px solid var(--bs-secondary);
		height: 60px;
		color: var(--bs-body-color);
		outline: 0 !important;
		font-size: 18px;
		background-color: transparent;
		
		&:not(:placeholder-shown) ~ label,
		&:focus ~ label{
			font-size: 12px;
			color: var(--bs-primary);
			transform: translateY(-22px);
		}
	}
	.form-control[rows]{
		height: auto;
	}
	label{
		padding: 0;
		height: auto;
		border: 0;
		font-size: 16px;
		color: rgba(0, 0, 0, 0.6);
		top: 15px;
		
		&::after{
			content: none !important;
		}
	}
	.bs-select{
		.bs-placeholder .filter-option-inner-inner{
			color: rgba(255, 255, 255, 0.6);
			font-size: 16px;
		}
		.dropdown-toggle::after {
			right: 0;
		}
	}
	&.underline-1{
		.form-control{
			border-bottom-width: 1px !important;
		}
	}
	.input-group-text{
		background-color: transparent;
		font-size: 24px;
		position: absolute;
		top: 16px;
		left: 0;
		border: 0;
		padding: 0;
	}
	&.input-light{
		&.floating-underline{
			.form-control{
				border-bottom: 2px solid #fff;
				color: #fff;
				
				&:-webkit-autofill,
				&:-webkit-autofill:hover,
				&:-webkit-autofill:focus,
				&:-webkit-autofill:active{
					-webkit-text-fill-color: #fff;
				}
			}
			label{
				color: rgba(255, 255, 255, 0.6);
			}
		}
	}
	&.input-icon-left .form-control{
		padding-left: 40px;
	}
	&.input-icon-right .form-control{
		padding-right: 40px;
		left: auto;
		right: 0;
	}
	&.input-icon-left,
	&.input-icon-right{
		.form-control{
			&::-webkit-input-placeholder{
				color: var(--bs-body-color);
			}
			&:-ms-input-placeholder {
				color: var(--bs-body-color);
			}
			&::placeholder{
				color: var(--bs-body-color);
			}
		}
	}
}
.floating-outline{
	.form-control{
		background-color: transparent;
		padding: 15px 20px !important;
		border: 2px solid rgba(0, 0, 0, 0.3);
		height: 60px;
		min-height: 60px;
		color: var(--bs-body-color);
		outline: 0 !important;
		font-size: 15px;
		border-radius: 15px;
		padding-right: 50px;
	}
	.bs-select .dropdown-toggle::after{
		opacity: 0.5;
	}
	.dropdown-toggle{
		padding: 15px 20px;
		height: 100%;
		width: 100%;
		text-align: left;
	}
	.form-control[rows]{
		height: auto;
	}
	label{
		padding: 0;
		height: auto;
		border: 0;
		font-size: 15px;
		color: var(--bs-body-color);
		top: 18px;
		left: 20px;
		
		&::after{
			content: none !important;
		}
	}
	.input-group-text{
		background-color: transparent;
		color: #fff;
		font-size: 20px;
		position: absolute;
		top: 13px;
		right: 5px;
		opacity: 0.5;
	}
	&.input-light{
		.form-control{
			border: 2px solid rgba(255, 255, 255, 0.3);
			color: #fff;
			
			&:-webkit-autofill,
			&:-webkit-autofill:hover,
			&:-webkit-autofill:focus,
			&:-webkit-autofill:active{
				-webkit-text-fill-color: #fff;
			}
		}
		label{
			color: #fff;
		}
		.dropdown-toggle .filter-option-inner-inner{
			color: #fff;
		}
	}
}
.form-floating{
	&.floating-underline{
		.form-control{
			&:not(:placeholder-shown) ~ label,
			&:focus ~ label{
				font-size: 12px;
				color: var(--bs-primary);
				transform: translateY(-22px);
				font-weight: 600;
			}
		}
		.form-control:focus,
		.form-control:not(:placeholder-shown):not(.dropdown-toggle){
			padding: 15px 0;
			border-color: var(--bs-primary);
		}
	}
	&.floating-outline{
		.form-control{
			&:not(:placeholder-shown) ~ label,
			&:focus ~ label{
				font-size: 13px;
				color: var(--bs-secondary);
				transform: translateY(-27px);
				background-color: #fff;
				padding: 0 8px;
				left: 15px;
			}
		}
	}
	&.input-light{
		&.floating-underline{
			.form-control{
				&:not(:placeholder-shown) ~ label,
				&:focus ~ label{
					color: #FAFF17;
				}
			}
			.form-control:focus,
			.form-control:not(:placeholder-shown):not(.dropdown-toggle){
				border-color: #FAFF17;
			}
		}
		&.floating-outline{
			.form-control{
				&:not(:placeholder-shown) ~ label,
				&:focus ~ label{
					color: #EDFF00;
					background-color: var(--bs-secondary);
				}
			}
		}
	}
}
.form-wrapper{
	&.style-1{
		position: relative;
		
		.dz-alert {
			position: static;
			padding: 10px 20px;
			box-shadow: none;
			border-radius: 5px;
		}
		&.text-vr-wrapper{
			padding-left: 50px;
		}
		.text-vertical{
			writing-mode: tb;
			transform: rotate(-180deg);
			border-radius: 0 25px 25px 0;
			color: #fff;
			text-align: center;
			padding: 30px 10px;
			font-size: 18px;
			text-transform: uppercase;
			font-weight: 600;
			background-color: var(--bs-secondary);
			width: 50px;
			display: flex;
			align-items: center;
			justify-content: center;
			position: absolute;
			left: 0;
			top: 45px;
		}
		.form-body{
			padding: 50px 40px;
			border-radius: 30px;
		}
		.title-head{
			margin-bottom: 30px;
		}
		.form-title{
			color: #fff;
			
			span{
				color: #FAFF17;
			}
		}
		@include custommq ($max:1380px){
			&[class*="m-l"]{
				margin-left: 0;
			}
		}
		@include respond('tab-port'){
			&.text-vr-wrapper{
				padding-left: 0;			
			}
			.text-vertical{
				display: none;
			}
		}
		@include respond('phone'){
			.form-title{
				font-size: 20px;
			}
			.title-head{
				margin-bottom: 20px;
			}
			.form-body{
				padding: 30px 25px;
				border-radius: 15px;
			}
		}
	}
	&.style-2{
		position: relative;
		border-radius: 20px;
		padding: 55px;
		
		&.bg-primary,
		&.bg-secondary{
			.form-title{
				color: #fff;
			}
		}
		&.bg-secondary{
			.form-control{
				&::-webkit-input-placeholder{
					color: #BED2E7
				}
				&:-ms-input-placeholder {
					color: #BED2E7
				}
				&::placeholder{
					color: #BED2E7
				}
			}
		}
		&::before {
			content: "";
			background-image:url('data:image/svg+xml,<svg width="146" height="146" viewBox="0 0 146 146" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M115.583 12.1667H109.5V6.08333C109.5 4.46993 108.859 2.92261 107.718 1.78177C106.577 0.640921 105.03 0 103.417 0C101.803 0 100.256 0.640921 99.1151 1.78177C97.9743 2.92261 97.3333 4.46993 97.3333 6.08333V12.1667H48.6667V6.08333C48.6667 4.46993 48.0257 2.92261 46.8849 1.78177C45.7441 0.640921 44.1967 0 42.5833 0C40.9699 0 39.4226 0.640921 38.2818 1.78177C37.1409 2.92261 36.5 4.46993 36.5 6.08333V12.1667H30.4167C22.3526 12.1763 14.6216 15.384 8.9195 21.0862C3.21737 26.7883 0.00965947 34.5193 0 42.5833L0 115.583C0.00965947 123.647 3.21737 131.378 8.9195 137.081C14.6216 142.783 22.3526 145.99 30.4167 146H115.583C123.647 145.99 131.378 142.783 137.081 137.081C142.783 131.378 145.99 123.647 146 115.583V42.5833C145.99 34.5193 142.783 26.7883 137.081 21.0862C131.378 15.384 123.647 12.1763 115.583 12.1667ZM12.1667 42.5833C12.1667 37.7431 14.0894 33.1012 17.512 29.6786C20.9345 26.2561 25.5765 24.3333 30.4167 24.3333H115.583C120.424 24.3333 125.065 26.2561 128.488 29.6786C131.911 33.1012 133.833 37.7431 133.833 42.5833V48.6667H12.1667V42.5833ZM115.583 133.833H30.4167C25.5765 133.833 20.9345 131.911 17.512 128.488C14.0894 125.065 12.1667 120.424 12.1667 115.583V60.8333H133.833V115.583C133.833 120.424 131.911 125.065 128.488 128.488C125.065 131.911 120.424 133.833 115.583 133.833Z" fill="white" fill-opacity="0.05"/><path d="M73 100.375C78.0396 100.375 82.125 96.2896 82.125 91.25C82.125 86.2104 78.0396 82.125 73 82.125C67.9604 82.125 63.875 86.2104 63.875 91.25C63.875 96.2896 67.9604 100.375 73 100.375Z" fill="white" fill-opacity="0.05"/><path d="M42.5835 100.375C47.6231 100.375 51.7085 96.2896 51.7085 91.25C51.7085 86.2104 47.6231 82.125 42.5835 82.125C37.5439 82.125 33.4585 86.2104 33.4585 91.25C33.4585 96.2896 37.5439 100.375 42.5835 100.375Z" fill="white" fill-opacity="0.05"/><path d="M103.417 100.375C108.456 100.375 112.542 96.2896 112.542 91.25C112.542 86.2104 108.456 82.125 103.417 82.125C98.3769 82.125 94.2915 86.2104 94.2915 91.25C94.2915 96.2896 98.3769 100.375 103.417 100.375Z" fill="white" fill-opacity="0.05"/></svg>');
			width: 145px;
			aspect-ratio: 1 / 1;
			position: absolute;
			right: 20px;
			top: 20px;
			z-index: 0;
			background-size: 100%;
			background-repeat: no-repeat;
		}
		
		.floating-underline.input-light.floating-underline .form-control{
			border-color: #BED2E7;
		}
		.form-title{
			font-size: 28px;
			margin-bottom: 20px;		
		}
		.form-check2{
			.form-check-input{
				border: 1px solid #fff;
			}
			.form-check-label{
				color: #BED2E7;
				font-size: 16px;
				display: inline;
			}
		}
		@include custommq ($max:1380px){
			padding: 40px;
		}
		@include respond('phone'){
			padding: 25px;
			
			&::before {
				width: 65px;
			}
			.form-title{
				font-size: 24px;
				margin-bottom: 15px;
			}
		}
	}
}

#rc-imageselect,
.g-recaptcha{
	@include respond('phone'){
        transform: scale(0.85);
        -moz-transform: scale(0.85);
        -o-transform: scale(0.85);
        -webkit-transform: scale(0.85);
        transform-origin: 0 0;
        -moz-transform-origin: 0 0;
        -o-transform-origin: 0 0;
        -webkit-transform-origin: 0 0;
	}
}