html, body{
    font-family: 'Montserrat';
    background-color: #fff;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.flex-container{
    display: flex;
    flex-direction: column;
}

.flex{
    display: flex;
}

.flex-grow{
    flex-grow: 1;
}

.min-height-100{
    min-height: 100%;
}

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 {
    -webkit-box-shadow: 0 0 0px 1000px white inset;
    box-shadow: 0 0 0px 1000px white inset;
    -webkit-text-fill-color: #000;
    caret-color: auto;
}

body .main-container{
    width: 100%;
    padding: 0;
}

img {
    display: inline-block;
    height: auto;
    max-width: 100%;
}

.fheader{
    flex: 0 0 auto;
    position: relative !important;
}

.fsection{
    flex: 1 0 auto;
}

.ffooter{
    flex:  0 auto;
    height: 3em;
}

/******Scroll styles******/
.wrap {
    overflow: hidden;
    height: 10em;
    position: relative;
}

.scroll {
    position: absolute;
    top: 0;
}

.scroll p {
    margin: 0 0 10px 0;
}

/******End******/

label.required::after {
    content: '*';
    color: red; /* Цвет звездочки, можно изменить на ваш вкус */
}

.font-weight-regular{
    font-weight: 400 !important;
}

.font-weight-500{
    font-weight: 500 !important;
}

.table-main {
    min-width: 20%;
}

.error-small-text{
    font-size: 1.250em;
    color: red;
}

.row-flex {
    display: flex;
    flex-flow: row wrap;
}

.display-inline-block{
    display: inline-block;
}

.red{
    color: red;
}

.green{
    color: green;
}

.opacity-02{
    opacity: 0.2;
}

.width-150{
    width: 150% !important;
}

.width-130{
    width: 130% !important;
}

.width-100{
    width: 100% !important;
}

.width-95{
    width: 95% !important;
}

.width-93{
    width: 93% !important;
}

.width-92{
    width: 92% !important;
}

.width-91{
    width: 91% !important;
}

.width-90{
    width: 90% !important;
}

.width-80{
    width: 80% !important;
}

.width-75{
    width: 75% !important;
}

.width-70{
    width: 70% !important;
}

.width-65{
    width: 65% !important;
}

.width-60{
    width: 60% !important;
}

.width-55{
    width: 50% !important;
}

.width-53{
    width: 53% !important;
}

.width-50{
    width: 50% !important;
}

.width-45{
    width: 45% !important;
}

.width-40{
    width: 40% !important;
}

.width-35{
    width: 35% !important;
}

.width-30{
    width: 30% !important;
}

.width-25{
    width: 25% !important;
}

.width-23{
    width: 23% !important;
}

.width-22{
    width: 22% !important;
}

.width-20{
    width: 20% !important;
}

.width-18{
    width: 18% !important;
}

.width-15{
    width: 15% !important;
}

.width-14{
    width: 14% !important;
}

.width-12{
    width: 12% !important;
}

.width-10{
    width: 10% !important;
}

.width-9{
    width: 9% !important;
}

.width-8{
    width: 8% !important;
}

.width-7{
    width: 7% !important;
}

.width-6{
     width: 6% !important;
 }

.width-5{
    width: 5% !important;
}

.width-3-5{
    width: 3.5% !important;
}

.width-3{
    width: 3% !important;
}

.width-2{
    width: 2% !important;
}

.width-1{
    width: 1% !important;
}

.padding-0{
    padding: 0 !important;
}

.padding-right-0{
    padding-right: 0 !important;
}

.padding-left-0{
    padding-left: 0 !important;
}

.margin-bottom-1600{
    margin-bottom: 1.600em;
}

.margin-bottom-40{
    margin-bottom: 2.250em;
}

.margin-left-9300{
    margin-left: 9.300em !important;
}

.margin-left-5{
    margin-left: 5em !important;
}

.margin-left-4{
    margin-left: 4em !important;
}

.margin-left-3{
    margin-left: 3em !important;
}

.margin-left-2{
    margin-left: 2em !important;
}

.margin-left-1{
    margin-left: 1em !important;
}

.margin-left--1{
    margin-left: -1em;
}

.margin-left-1100{
    margin-left: 1.150em;
}

.margin-left-07{
    margin-left: 0.7em !important;
}

.margin-left-05{
    margin-left: 0.550em !important;
}

.margin-left-04{
    margin-left: 0.400em;
}

.margin-left-03{
    margin-left: 0.300em;
}

.margin-left-02{
    margin-left: 0.200em;
}

.margin-right-5{
    margin-right: 5em !important;
}

.margin-right-4{
    margin-right: 4em !important;
}

.margin-right-3{
    margin-right: 3em !important;
}

.margin-right-2{
    margin-right: 2em !important;
}

.margin-right-1{
    margin-right: 1em !important;
}
.margin-right-05{
    margin-right: .500em !important;
}

.margin-bottom-0{
    margin-bottom: 0 !important;
}

.margin-bottom-01{
    margin-bottom: 0.100em !important;
}

.margin-bottom-05{
    margin-bottom: .500em;
}

.margin-bottom-1{
    margin-bottom: 1em !important;
}

.margin-bottom-2{
    margin-bottom: 2em;
}

.margin-0{
    margin: 0 !important;
}

.margin-center{
    margin: 0 auto;
}

.padding-02{
    padding: 0.200em;
}

.padding-07{
    padding: 0.700em;
}

.padding-1{
    padding: 1em;
}

.padding-2{
    padding: 2em;
}

.padding-2-rem{
    padding: 2rem;
}


.padding-left-1{
    padding-left: 1em;
}

.padding-left-05{
    padding-left: .500em;
}

.padding-right-1{
    padding-right: 1em;
}

.padding-left-2{
    padding-left: 2em;
}

.padding-bottom-1500{
    padding-bottom: 1.500em;
}

.padding-bottom-4500{
    padding-bottom: 4.500em;
}

.padding-right-1500{
    padding-right: 1.500em;   
}

.padding-top-1850{
    padding-top: 1.850em;
}

.padding-bottom-1{
    padding-bottom: 1em;
}

.padding-bottom-2{
    padding-bottom: 2em;
}

.padding-bottom-3{
    padding-bottom: 3em;
}

.padding-top-1500{
    padding-top: 1.500em;
}

.padding-top-0500{
    padding-top: 0.500em;
}

.padding-bottom-01{
    display: inline-block;
    padding-bottom: 0.100em;
}

.margin-top-02{
    margin-top: 0.200em !important;
}

.margin-top-03{
    margin-top: 0.300em !important;
}

.margin-top-04{
    margin-top: 0.400em;
}
.margin-top-05{
    margin-top: 0.500em;
}

.margin-top-06{
    margin-top: 0.600em;
}

.margin-top-07{
    margin-top: 0.700em !important;
}

.margin-top-2850{
    margin-top: 2.850em;
}

.margin-top-1600{
    margin-top: 1.600em;
}

.margin-top-1{
    margin-top: 1em;
}

.margin-top-2{
    margin-top: 2em;
}

.margin-top-3{
    margin-top: 3em;
}

.margin-top-5{
    margin-top: 5em;
}

.margin-top--1{
    margin-top: -1em;
}

.font-size-06{
    font-size: .6rem !important;
}

.font-size-08{
    font-size: .8rem !important;
}

.font-size-09{
    font-size: .9rem !important;
}

.font-size-1{
    font-size: 1rem !important;
}

.font-size-1100{
    font-size: 1.1rem !important;
}

.font-size-1350{
    font-size: 1.35rem !important;
}

.font-size-1500{
    font-size: 1.5rem !important;
}

.font-size-1750{
    font-size: 1.75rem !important;
}

.font-size-1800{
    font-size: 1.8rem !important;
}

.font-size-2{
    font-size: 2rem !important;
}

.font-size-4{
    font-size: 4rem !important;
}

.cursor{
    cursor: pointer;
}

.height-90-percent{
    height: 90%;
}

.height-100-percent{
    height: 100%;
}

.height-2{
    height: 2em;
}

.height-4{
    height: 4em;
}

.height-45v{
    height:60vh !important;
}

.vertical-align-middle{
    vertical-align: middle;
}

.vertical-align-top{
    vertical-align: top;
}

.vertical-align-text-top{
    vertical-align: text-top;
}

.vertical-align-bottom{
    vertical-align: bottom;
}

.vertical-align-baseline{
    vertical-align: baseline;
}

.line{
    border: 1px solid transparent;
}

.border-1-ccc{
    border: 1px solid #ccc;
}

.border-bottom-1-ccc{
    border-bottom: 1px solid #ccc;
}

.text-decoration-none{
    text-decoration: none !important;
}

.text-decoration-underline{
    text-decoration: underline;
}

.bold{
    font-weight: bold;
}

.relative{
    position: relative;
}

.line-height-1500{
    line-height: 1.5rem;
}

.hr{
    width: 90%;
    margin: 0 auto;
    border-bottom: 1px solid #b3ceff;
    margin-top: 2em;
    margin-bottom: 2em;
}

.register-alert{
    padding: 0.875em;
    border: 1px solid red;
    border-radius: 8px;
}

.register-done{
    padding: 1em;
    border: 1px solid #990ae3;
    border-radius: 8px;
}

.max-width-80{
    max-width: 80%;
}

.disabled{
    pointer-events: none;
    opacity: .5;
}

/**
 * Убираем оформление автоматически добавленных ссылок iPhone'ом
 */
a[href^=tel] {
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    color: inherit;
}




/* Large Devices, Wide Screens */
@media only screen and (max-width : 1370px) {
    .main-menu a.btn{
        padding-bottom: 0.800em;
        letter-spacing: 0.005em;
    }

    .nav > li > a{
        padding: .8em;
    }
}

@media only screen and (min-width : 1920px) {

}

/* Стили для устройств с шириной экрана до 812px */
@media (max-width: 812px) {

}

@media only screen and (max-width : 370px) {

}

@media only screen and (max-width : 320px) {

}



/* Стили для центрирования модального окна по горизонтали и вертикали */
.modal-dialog {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
}