.display-flex {
    display: flex;
}

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
    background-color: #eeeeee;
    opacity: 1;
}

.text-input__error {
    color: red;
}

.checkbox {
    display: block;
}

.irs-line-mid,
.irs-line-left,
.irs-line-right,
.irs-bar,
.irs-bar-edge,
.irs-slider {
    background-color: #4A3EFF;
}

.irs {
    height: 40px;
}

.irs-with-grid {
    height: 60px;
}

.irs-line {
    height: 4px;
    top: 25px;
}

.irs-line-left {
    height: 4px;
    background-position: 0 -30px;
}

.irs-line-mid {
    height: 4px;
    background-position: 0 0;
}

.irs-line-right {
    height: 4px;
    background-position: 100% -30px;
}

.irs-bar {
    background-color: #41F0B7;
    left: unset !important;
    height: 4px;
    top: 25px;
    background-position: 0 -60px;
}

.irs-bar-edge {
    top: 25px;
    height: 8px;
    width: 9px;
    background-position: 0 -90px;
}

.irs-shadow {
    height: 3px;
    top: 34px;
    background: #000;
    opacity: 0.25;
}

.lt-ie9 .irs-shadow {
    filter: alpha(opacity=25);
}

.irs-slider {
    width: 15px;
    height: 15px;
    top: 19px;
}

.irs-slider.state_hover,
.irs-slider:hover {
    background-position: 0 -150px;
}

.irs-min,
.irs-max {
    display: none;
    color: #999;
    font-size: 10px;
    line-height: 1.333;
    text-shadow: none;
    top: 0;
    padding: 1px 3px;
    background: #e1e4e9;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

.irs-from,
.irs-to,
.irs-single {
    color: #fff;
    font-size: 10px;
    line-height: 1.333;
    text-shadow: none;
    padding: 1px 5px;
    top: -10px;
    background: #EBF3F6;
    -moz-border-radius: 4px;
    border-radius: 4px;
    display: none;
}

.irs-from:after,
.irs-to:after,
.irs-single:after {
    position: absolute;
    display: block;
    content: "";
    bottom: -6px;
    left: 50%;
    width: 0;
    height: 0;
    margin-left: -3px;
    overflow: hidden;
    border: 3px solid transparent;
    border-top-color: #EBF3F6;
}

.irs-grid-pol {
    background: #e1e4e9;
}

.irs-grid-text {
    color: #999;
}

.irs-slider.single {
    background-color: #10C288;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    -webkit-box-shadow: 0px 0px 8px 0px rgba(100, 100, 100, 0.50);
    -moz-box-shadow: 0px 0px 8px 0px rgba(100, 100, 100, 0.50);
    box-shadow: 0px 0px 8px 0px rgba(100, 100, 100, 0.50);
}

.irs-line-mid, .irs-line-left, .irs-line-right, .irs-bar-edge, .irs-slider {
    background-color: #41F0B7;
}

.row.greyRound {
    background-color: #FFFFFF;
    margin: 0px 5px 5px 5px;
    padding: 15px 5px 15px 5px;
    -moz-border-radius: 8px;
    border-radius: 8px;
}

.calculator h3 {
    margin: 5px 0 15px;
    padding: 0;
    color: #383838;
    font-weight: 100;
    font-size: 20px;
    margin-top: 20px;
}

.calculator h3 span {
    font-size: 14px;
    font-weight: bold;
    text-transform: none;
}

.calculator .total_col {
    color: #383838;
    font-weight: 700;
    font-size: 18px;
}

.calculator .total-sum {
    color: #03243d;
}

.calc-tab-content {
    display: none;
}

.calc-tab-content.current {
    display: block;
}

.calculator .calc-wrapper {
    padding-right: 0;
}

@media only screen and (max-width: 767px) {
    .calculator .calc-wrapper {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.calculator .calc-wrapper .calc-contain,
.calc-wrapper .calc-contain {
    display: block;
    width: 100%;
    padding: 15px;
}

.calc {
    border-radius: 4px;
    border: 1px solid #fff;
    background-color: #edeef2;
    -webkit-box-shadow: 0px 0px 8px 0px rgba(100, 100, 100, 0.50);
    -moz-box-shadow: 0px 0px 8px 0px rgba(100, 100, 100, 0.50);
    box-shadow: 0px 0px 8px 0px rgba(100, 100, 100, 0.50);
}

.calculator .calc-wrapper .small-slider {
    min-height: 0;
    height: 175px;
}

.calculator .info-wrapper {
    padding-left: 0;
    position: relative;
}

@media only screen and (max-width: 767px) {
    .calculator .info-wrapper {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.calculator .info-wrapper:before {
    content: "";
    display: block;
    position: absolute;
    top: 120px;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 0 25px 30px;
    border-color: transparent transparent transparent transparent;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .calculator .info-wrapper:before {
        display: none;
    }
}

@media only screen and (max-width: 767px) {
    .calculator .info-wrapper:before {
        display: none;
    }
}

.calculator .info-wrapper.small-slider:before {
    top: 60px;
}

.calculator .info-wrapper .calc_summary {
    background-color: #fff;
}

.form-control {
    height: unset;
}

.w-100 {
    width: 100%;
}

.w-auto {
    width: auto !important;
}

.d-none {
    display: none !important;
}

.input-group {
    display: flex;
}

@media screen and (min-width: 767px) {
    #previewAgreement {
        width: 100% !important;
    }
}

#previewAgreement table, #previewAgreement tr, #previewAgreement td, #previewAgreement th, #previewAgreement p, #previewAgreement li {
    font-size: 14px !important;
    text-align: justify;
}

#previewAgreement td, th {
    padding: 5px;
}

.has-error .form-control {
    border: 1px solid #a94442;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}

.has-error .form-control:focus {
    border-color: #843534;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
    -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}

.calc-wrapper {
    box-shadow: none !important;
}

.text-white {
    color: #FFFFFF;
}

.loader-overlay {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    background: rgba(255, 255, 255, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    z-index: 9999;
}

.spinner {
    width: 60px;
    height: 60px;
    border: 6px solid #ddd;
    border-top: 6px solid #28a745;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

