/*
|----------------------------------------------------------------------------
	Multi-Step-Form - PHP Multi Step Multipurpose Ajax Form Script Main CSS
	Author: MGScoder
	Author URL: https://codecanyon.net/user/mgscoder
	Version: 2.2
|----------------------------------------------------------------------------
*/

/*
|------------------------------------------------------------------
	[Table of contents]:

	1. COMMON CSS
	2. FORM DESIGN
	3. STEP PROGRESS
	4. ATTCHMENT FIELD
	5. SELECT BOX
	6. SERVICES
	7. FINAL STEP REVIEW
	8. MATH CAPTCHA
	9. BUTTON
	10. CALENDAR STYLE
	11. RESPONSIVE
	
|-------------------------------------------------------------------
*/

/*
|----------------------------------------------------------------------------
	1. COMMON CSS
|----------------------------------------------------------------------------
*/
.intro-text {
	border: 1px solid #3e3e3e;
    border-radius: 10px;
    font-size: 18px;
    margin: 50px 20%;
    padding: 30px;
}

.QuoteForm-section{
	/*background-attachment: fixed;
	background-image: url(../images/bg.jpg);
	background-position: center center;
	background-repeat:  no-repeat;
	background-size:  cover;*/
    margin: -22vw auto 0;
    padding: 0;
	position: relative;
    width: 100%;
	z-index: 1;
}
.QuoteForm-section::before{
	/*background-color: #f5f5f5;*/
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	opacity: 1;
	top: 0;
    width: 100%;
	z-index: -1;
}
.column {
	margin: 0 0 30px;
}
.display-table {
    display: table;
    height: auto;
    width: 100%;
}
.display-table-cell {
    display: table-cell;
    vertical-align: middle;
}
.form-wrap {
    background-color: #fff;
    border-radius: 0px;
    margin: 30px auto;
    padding: 30px;
	box-shadow: 0px 5px 30px rgba(0,0,0,0.15);
}
h2.form-title {
    font-size: 32px;
    font-weight: bold;
	color: #004e98;
    margin: 50px 0;
    padding: 0 30px;
    text-align: center;
}
h3.section-title {
	/* background-color: rgba(62, 62, 62, 0.9); */
    /* border: 1px solid rgba(62, 62, 62, 0.9); */
    /* border-radius: 10px; */
    color: #333;
    font-weight: bold;
    /* padding: 10px; */
    margin: 25px 0 20px 0;
    text-align: left;
}
.section-wrap {
    overflow: hidden;
    position: relative;
}
.section {
    overflow: hidden;
	-webkit-transition: all 0.23s ease-in-out 0s;
    -moz-transition: all 0.23s ease-in-out 0s;
    -ms-transition: all 0.23s ease-in-out 0s;
    -o-transition: all 0.23s ease-in-out 0s;
    transition: all 0.23s ease-in-out 0s;
}
.section.slide-right {
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
    width: 100%;
}
.section.slide-left {
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
	-webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
}
.section.open {
    height: auto;
    opacity: 1;
}

/*
|----------------------------------------------------------------------------
	2. FORM DESIGN
|----------------------------------------------------------------------------
*/
form#QuoteForm {
    margin: 0 0 20px;
}
#QuoteForm h4 {
    font-size: 15px;
    /*font-weight: bold;*/
	margin: 24px 0 15px;
	color:#555;
	line-height: 1.5em;
}
.form-group {
    margin: 0 0 37px;
	position: relative;
}
.form-control {
	padding-left: 15px!important;
}
.input-group-icon {
    background-color: #e6e6e6;
    border: 0 none;
    border-radius: 0;
    color: #004e98;
    display: table-cell;
    font-size: 14px;
    height: 100%;
    padding: 5px 7px 7px;
    text-align: center;
    vertical-align: top;
    white-space: nowrap;
    width: 40px;
    position: absolute;
    top: 0;
}
#QuoteForm .has-error .form-control {
    border-color: #EB5E55;
}
#QuoteForm .has-error .input-group-icon {
    background-color: #EB5E55;
    color: #ffffff;
}
#QuoteForm .form-control:focus, #QuoteForm .has-error .form-control:focus {
	border-color: #004e98;
}
#QuoteForm .form-control:focus + .input-group-icon, #QuoteForm .has-error .form-control:focus + .input-group-icon{
    background-color: #004e98;
    color: #fff;
}
.help-block {
    color: #EB5E55;
    margin: 0;
    position: absolute;
    bottom: -30px;
	left: 0;
	z-index: 9;
}
.help-block.with-errors.mandatory-error {
    bottom: auto;
    font-size: 16px;
    font-weight: bold;
    position: relative;
}
.form-group .help-block ul li {
    background-color: #EB5E55;
    color: rgba(255, 255, 255, 0.99);
    padding: 5px 15px;
    border-radius: 2px;
    top: 12px;
    font-size: 12px;
    position: relative;
    /* max-height: 24px; */
}
.form-group .help-block ul li::after {
	content: "";
    position: absolute;
    height: 0;
    width: 0;
    left:6px;
    top: -9px;
    border: 5px solid transparent;
    border-bottom: 5px solid #EB5E55;
}
.text-danger {
    color: #EB5E55;
    font-size: 20px;
}
.text-success:before {
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f00c";
    display: block;
    width: 80px;
    height: 80px;
    font-size: 35px;
    padding: 15px;
    margin: 20px auto;
    border: 3px solid;
    border-radius: 50%;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

/*Check box / Radio button */
.checkbox input[type="checkbox"], .checkbox-inline input[type="checkbox"], .radio input[type="radio"], .radio-inline input[type="radio"] {
    margin: 3px 0 0 -20px;
}
.checkbox-inline + .checkbox-inline, .radio-inline + .radio-inline  {
	margin-left: 0;
}
.checkbox-inline, .radio-inline  {
	margin: 0 10px 5px 0;
}
.validagree .checkbox label {
    font-weight: bold;
}
.mgs-checkbox li, .mgs-radio li {
    display: inline-block;
    margin: 0 3% 0 0;
	width: 30%
}
.mgs-checkbox li:last-child, .mgs-radio li:last-child {
    margin: 0;
}
.mgs-checkbox input[type="checkbox"][id^="cb"], .mgs-radio input[type="radio"][id^="opsys"] {
	display: none;
}
.mgs-radio input[type="radio"][id^="opsys"] {
	display: block;
	position: relative;
	left: 14px;
	top: 24px;
	z-index: 1;
}
.mgs-radio input[type="radio"][id^="opsys"]:checked {
	display: none;
}
.mgs-checkbox label, .mgs-radio label {
	border: 1px solid #e6e6e6;
	border-radius: 4px;
	padding: 2px;
	display: block;
	position: relative;
	cursor: pointer;
}
.mgs-checkbox label img, .mgs-radio label img {
	max-width: 100%;
	border-radius: 4px;
}
.mgs-checkbox :checked + label, .mgs-radio :checked + label {
	border-color: #004e98;
}
.mgs-checkbox :checked + label:before, .mgs-radio :checked + label:before {
	color: #004e98;
    content: "\f058";
    font-family: fontawesome;
    font-size: 30px;
    left: 7px;
    position: absolute;
    top: -2px;
}
#QuoteForm .mgs-checkbox :checked + label, #QuoteForm .mgs-radio :checked + label,
#QuoteForm .mgs-checkbox label:hover, #QuoteForm .mgs-radio label:hover {
    border-color: #004e98;
    background-color: #004e98;
}

/************** MgsRadioStyle Radio button ***************/
.mgsradio-circle-buttons label {
    display: block;
    position: relative;
    padding: 0 30px;
    height: 22px;
    z-index: 9;
    cursor: pointer;
	margin-bottom: -8px;
}
.mgsradio-circle-buttons input[type="radio"]:checked ~ .check {
    border: 11px solid #004e98;
	width: 0;
	height: 0;
}
.mgsradio-circle-buttons input[type="radio"] {
    position: absolute;
    visibility: hidden;
}
.mgsradio-circle-buttons .check {
    display: block;
    position: relative;
    border: 1px solid #a0a0a0;
    border-radius: 100%;
    height: 22px;
    width: 22px;
    top: -15px;
    z-index: 5;
}
.radio-inline.mgsradio-circle-buttons {
    padding-left: 0;
	margin: 0;
}

/************** MgsCheckbox Style Checkbox ***************/
.mgsstyle-checkbox.mgscheckbox-style li {
    display: inline-block;
	width: 100%;
    margin: 0 3% 0 0;
}
.mgsstyle-checkbox.mgscheckbox-style li:last-child {
    margin: 0;
}
.mgsstyle-checkbox.mgscheckbox-style input[type="checkbox"] {
	display: none;
}
.mgsstyle-checkbox.mgscheckbox-style label  {
	position: relative;
	padding: 5px 35px;
}
.mgsstyle-checkbox.mgscheckbox-style label:before {
	border: 1px solid #a0a0a0;
	border-radius: 3px;
	content: "";
	left: 0;
	position: absolute;
	top: 4px;
	width: 24px;
	height: 24px;
}
.mgsstyle-checkbox.mgscheckbox-style :checked + label:before {
	border: 12px solid #004e98;
	border-radius: 0px;
	content: "";
	left: 0px;
	position: absolute;
	top: 5px;
	width: auto;
	height: auto;
}
.mgsstyle-checkbox.mgscheckbox-style :checked + label:after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f00c";
	left: 6px;
	position: absolute;
	top: 7px;
	width: auto;
	height: auto;
	color: white;
	font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

/*
|----------------------------------------------------------------------------
	3. STEP PROGRESS
|----------------------------------------------------------------------------
*/
.progress {
	background-color: #f5f5f5;
    margin: 0 0 24px;
	padding: 0;
	position: relative;
	height: 32px;
}
.progress-bar {
    background-color: #004e98;
}
.progress-bar-text {
    font-size: 16px;
    /* font-weight: bold; */
    /* left: 50%; */
    /* margin-left: -38px; */
    width: 100%;
    padding: 7px 0;
	color: #fff;
    /* position: absolute; */
}

#section-1 > fieldset > div.progress > div > div {
	position: absolute;
	left: 47%;
	width: auto;
	color: #666;
}

/*
|----------------------------------------------------------------------------
	4. ATTCHMENT FIELD
|----------------------------------------------------------------------------
*/
.section .form-group.attachmentFile {
	display: table;
	margin: 15px 0 40px;
}
.section .input-group-btn ~ .form-control {
    border-radius: 0 4px 4px 0;
    cursor: not-allowed;
    padding-left: 10px;
}
.section .input-group-btn > .btn {
    background-color: #004e98;
    border: 1px solid #004e98;
    border-radius: 4px 0 0 4px;
    color: #fff;
    height: 34px;
    padding: 4.5px 14px;
}
.attachmentFile .input-group-btn:first-child > .btn, .input-group-btn:first-child > .btn-group {
    margin-left: 0;
}
.section .input-group-btn > .btn > input[type="file"] {
    display: none;
}

/*
|----------------------------------------------------------------------------
	5. SELECT BOX
|----------------------------------------------------------------------------
*/
#QuoteForm select {
	background-color: transparent;
	display: inline-block;
	box-sizing: border-box;
	-webkit-appearance: none;
	-moz-appearance: none;
}
#QuoteForm select {
	background-image: linear-gradient(45deg, transparent 50%, #999 50%), linear-gradient(135deg, #999 50%, transparent 50%), radial-gradient(transparent 66%, transparent 66%);
    background-position: calc(100% - 18px) calc(1em + 3px), calc(100% - 13px) calc(1em + 3px), calc(100% - .5em) .5em;
    background-size: 4px 4px, 5px 4px, 1.5em 1.5em;
    background-repeat: no-repeat;
}
#QuoteForm select:focus {
	background-image: linear-gradient(45deg, transparent 50%, #004e98 50%),
		linear-gradient(135deg, #004e98 50%, transparent 50%),
		radial-gradient(transparent 66%, transparent 66%);
}
#QuoteForm select::-ms-expand {
    display: none;
}

/*
|----------------------------------------------------------------------------
	6. SERVICES
|----------------------------------------------------------------------------
*/
.service-item {
    border: 1px solid #004e98;
    border-radius: 10px;
    margin: 0 0 50px;
    padding: 30px 15px;
	text-align: center;
}
.service-item i {
	border: 1px solid #004e98;
    border-radius: 50%;
    color: #004e98;
    font-size: 24px;
    line-height: 48px;
    width: 48px;
}
.service-item:hover i {
	background-color: #004e98;
	border-color: #004e98;
    color: #fff;
}
.service-item > h4 {
	color: #004e98;
    margin: 15px 0 0;
}
.service-item:hover > h4 {
	color: #004e98;
}

/*
|----------------------------------------------------------------------------
	7. FINAL STEP REVIEW
|----------------------------------------------------------------------------
*/
.review-submit-section h4 {
    background-color: transparent;
    /*border: 1px solid #3e3e3e;*/
    border-radius: 6px;
    color: #222;
    /*padding: 10px;*/
	font-weight: bold;
	text-align: left;
}
.review-submit-section h5 {
    /* background-color: rgba(62, 62, 62, 0.7); */
    border-radius: 6px;
    color: #333;
    /* padding: 10px; */
    margin: 30px 0 20px;
    font-size: 18px;
    text-align: left;
	line-height: 1.4em;
}
p#AggreData {
    margin: 0 0 40px;
}
.section-info-box strong {
    padding-right: 5px;
}

/*
|----------------------------------------------------------------------------
	8. MATH CAPTCHA
|----------------------------------------------------------------------------
*/
#humanCheckCaptchaBox {
    font-weight: bold;
}
#humanCheckCaptchaBox, #humanCheckCaptchaInput, #firstDigit, #secondDigit,  #mathfirstnum, #mathsecondnum {
    display: inline;
}
#humanCheckCaptchaInput.form-control {
    height: 30px;
    margin-left: 10px;
    padding: 4px;
    text-align: center;
    width: 45px;
}
#firstDigit #mathfirstnum, #secondDigit #mathsecondnum {
	border: none;
	box-shadow: none;
    width: 30px;
    height: 30px;
	padding: 0;
    pointer-events: none;
    text-align: center;
}

/*
|----------------------------------------------------------------------------
	9. BUTTON
|----------------------------------------------------------------------------
*/
.btn-default {
    background-color: transparent;
    border-color: #e6e6e6;
    color: #222;
}
.form-control[disabled], .form-control[readonly], .form-control {
    background-color: transparent;
    border: 1px solid #e6e6e6;
}
/* Change Autocomplete styles in Chrome*/
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
	border: 1px solid #e6e6e6;
	-webkit-text-fill-color: #555;
	-webkit-box-shadow: 0 0 0px 1000px #fff inset;
	transition: background-color 5000s ease-in-out 0s;
}
.btn {
    overflow: hidden;    
	font-size:16px;
	padding: 14px 41px;
}
.btn-custom {
    background-color: #e6e6e6;
	border: none;
    box-shadow: 0 0 1px transparent;
	color: #555;
    display: inline-block;
    position: relative;
	text-transform: capitalize;
    -webkit-transform: perspective(1px) translateZ(0px);
    -moz-transform: perspective(1px) translateZ(0px);
    -ms-transform: perspective(1px) translateZ(0px);
    -o-transform: perspective(1px) translateZ(0px);
    transform: perspective(1px) translateZ(0px);
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
    vertical-align: middle;
}
.btn-custom::before {
    background-color: #004e98;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
	-webkit-transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scaleX(0);
    -webkit-transform-origin: 50% 50% 0;
	-moz-transform-origin: 50% 50% 0;	
	-ms-transform-origin: 50% 50% 0;	
	-o-transform-origin: 50% 50% 0;	
    transform-origin: 50% 50% 0;
	-webkit-transition: transform 0.3s ease-out;
    -moz-transition: transform 0.3s ease-out;
    -ms-transition: transform 0.3s ease-out;
    -o-transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    z-index: -1;
}
.btn-custom:hover, .btn-custom:focus, .btn-custom:active {
    border-color: #004e98;
    color: #fff;
}
.btn-custom:hover::before, .btn-custom:focus::before, .btn-custom:active::before {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
	transform: scaleX(1);
}
.btn.btn-default.disable {
    pointer-events: none;
}
.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
	opacity: 1;
	background-color: #e6e6e6!important;
    color: #555!important;
}

/*
|----------------------------------------------------------------------------
	10. CALENDAR STYLE
|----------------------------------------------------------------------------
*/
.datepicker.datepicker-dropdown {
    width: 360px;
    max-width: 100%;
	padding: 30px 3px;
}
.datepicker.datepicker-dropdown table.table-condensed {
    width: 100%;
}
.datepicker.datepicker-dropdown .datepicker-switch {
    background-color: #004e98;
    color: #fff;
    font-size: 20px;
}
.datepicker.datepicker-dropdown .datepicker-switch:hover {
    background-color: #004e98;
    color: #000;
}
.datepicker.datepicker-dropdown table.table-condensed th.next, .datepicker.datepicker-dropdown table.table-condensed th.prev {
    color: #004e98;
    font-size: 24px;
}
.datepicker.datepicker-dropdown table.table-condensed thead > tr:nth-child(2) {
    height: 50px;
}
.datepicker.datepicker-dropdown table.table-condensed thead tr:nth-child(3) {
    background-color: #ddd;
}
.datepicker.datepicker-dropdown tfoot th.today:hover {
    background-color: #004e98;
    color: #fff;
}
.datepicker.datepicker-dropdown td.available:hover, .datepicker.datepicker-dropdown th.available:hover,
.datepicker.datepicker-dropdown table tr td span:hover, .datepicker.datepicker-dropdown table tr td.day:hover {
    background-color: #004e98;
    color: #fff;
}
.datepicker.datepicker-dropdown table tr td span {
	background-color: #004e98;
}
.datepicker.datepicker-dropdown table tr td.disabled, .datepicker.datepicker-dropdown table tr td.disabled:hover,
.datepicker.datepicker-dropdown table tr td span.disabled, .datepicker.datepicker-dropdown table tr td span.disabled:hover {
	cursor: not-allowed;
    color: #999;
}

/*
|----------------------------------------------------------------------------
	11. RESPONSIVE
|----------------------------------------------------------------------------
*/
@media screen and (max-width: 767px) {		
	h2.form-title {
		padding: 0 15px;
	}
	.form-wrap {
		padding: 30px 0;
	}
	.intro-text {
		margin: 50px 15%;
	}
}
@media screen and (max-width: 568px) {
	.intro-text {
		margin: 50px 10%;
	}
}
@media screen and (max-width: 480px) {
	.col-xs-6 {
		width: 100%;
	}
}
@media screen and (max-width: 420px) {
	#firstDigit #mathfirstnum, #secondDigit #mathsecondnum {
		width: 20px;
	}
}
@media screen and (max-width: 360px) {	
	#QuoteForm span.sub-text {
		right: 30px;
	}
	.datepicker.datepicker-dropdown {
		width: 90%;
		max-width: 100%;
	}
}
@media screen and (max-width: 340px) {
	.form-group.quoteForm-step-1 {
		text-align: right;
	}
	.btn {
		margin: 0 0 20px 10px;
	}
}