.fluentform * {
	box-sizing: border-box;
}

.fluentform .clearfix:after, .fluentform .clearfix:before, .fluentform .ff-el-group:after, .fluentform .ff-el-group:before, .fluentform .ff-el-repeat .ff-el-input--content:after, .fluentform .ff-el-repeat .ff-el-input--content:before, .fluentform .ff-step-body:after, .fluentform .ff-step-body:before {
	content: " ";
	display: table;
}

.fluentform .clearfix:after, .fluentform .ff-el-group:after, .fluentform .ff-el-repeat .ff-el-input--content:after, .fluentform .ff-step-body:after {
	clear: both;
}

@media (min-width:768px) {
	.frm-fluent-form .ff-t-container {
		display: flex;
		gap: 15px;
		width: 100%;
	}
	
	.frm-fluent-form .ff-t-cell {
		display: flex;
		flex-direction: column;
		vertical-align: inherit;
		width: 100%;
	}
	
	.frm-fluent-form .ff-t-cell:first-of-type {
		padding-left: 0;
	}
	
	.frm-fluent-form .ff-t-cell:last-of-type {
		flex-grow: 1;
		padding-right: 0;
	}
}

@media (max-width:768px) {
	.ff-t-cell {
		margin-left: 0 !important;
	}
}

.fluentform .ff-el-group {
	margin-bottom: 20px;
}

.fluentform .ff-el-group.ff-el-form-top .ff-el-input--label {
	display: block;
	float: none;
	text-align: left;
}

.fluentform .ff-el-group.ff-el-form-top .ff-el-input--content {
	margin-bottom: 0;
	margin-left: auto;
}

.fluentform .ff-el-input--label {
	display: inline-block;
	margin-bottom: 5px;
	position: relative;
}

.fluentform .ff-el-input--label.ff-el-is-required.asterisk-right label:after {
	color: var(--fluentform-danger);
	content: " *";
	margin-left: 3px;
}

.fluentform .ff-el-form-control {
	display: block;
	width: 100%;
}

.fluentform .ff-el-tooltip {
	cursor: pointer;
	display: inline-block;
	margin-left: 2px;
	position: relative;
	vertical-align: middle;
	z-index: 2;
}

.fluentform .ff-el-tooltip:hover {
	color: #000;
}

.fluentform .ff-el-tooltip svg {
	fill: var(--fluentform-primary);
}

.fluentform .ff-el-tc {
	border: none;
	border-collapse: collapse;
	display: table;
	width: 100%;
}

.fluentform .ff-el-tc label.ff_tc_label {
	display: table-row;
}

.fluentform .ff-el-tc label.ff_tc_label>span {
	padding-top: 8px !important;
	width: 20px;
}

.fluentform .ff-el-tc label.ff_tc_label>div, .fluentform .ff-el-tc label.ff_tc_label>span {
	display: table-cell;
}

.fluentform .ff_t_c {
	margin: 0;
	padding: 0 5px 0 0;
}

.fluentform .ff_t_c p {
	margin: 0;
	padding: 0;
}

.fluentform input[type=checkbox], .fluentform input[type=radio] {
	display: inline-block;
	margin: 0;
}

.fluentform input[type=checkbox] {
	-webkit-appearance: checkbox;
}

.fluentform input[type=radio] {
	-webkit-appearance: radio;
}

.fluentform .ff-el-form-check {
	margin-bottom: 5px;
}

.fluentform .ff-el-form-check-label .ff-el-form-check-input {
	position: relative;
	top: -2px;
	vertical-align: middle;
}

.fluentform .ff-text-center {
	text-align: center;
}

.fluentform .ff-el-form-control:focus~.ff-el-help-message {
	display: block !important;
}

.fluentform .ff-el-form-control::-moz-placeholder {
	color: #868e96;
	opacity: 1;
}

.fluentform .ff-el-form-control::placeholder {
	color: #868e96;
	opacity: 1;
}

.fluentform .ff-el-form-control:disabled, .fluentform .ff-el-form-control[readonly]:not(.flatpickr-input) {
	background-color: #e9ecef;
	opacity: 1;
}

.fluentform .has-conditions {
	display: none;
}

.ff-errors-in-stack {
	display: none;
	margin-top: 15px;
}

@keyframes skeleton-loading {
	0% {
		background-color: #e3e6e8;
	}
	
	to {
		background-color: #f0f3f5;
	}
}

.fluentform .ff_left {
	text-align: left;
}

@keyframes ff-progress-anim {
	0% {
		width: 0;
	}
	
	5% {
		width: 0;
	}
	
	10% {
		width: 15%;
	}
	
	30% {
		width: 40%;
	}
	
	50% {
		width: 55%;
	}
	
	80% {
		width: 100%;
	}
	
	95% {
		width: 100%;
	}
	
	to {
		width: 0;
	}
}

.ff-el-section-break .ff-el-section-title {
	font-weight: 600;
	margin-bottom: 5px;
}

.ff-el-section-break hr {
	background-color: #dadbdd;
	border: none;
	height: 1px;
	margin-bottom: 10px;
}