:root {
    /*--primary: #344252;*/
    --primary: #84CFEF;
    /*--accent: #165492;*/
    /*--accent: #7ED0ED;*/
    --accent: #047ca5;
     /*--accent: #D1EDFB;*/
}

@font-face {
    font-family: 'Favorit Pro';
    src: url("../fonts/FavoritPro-Light.eot");
    src: url("../fonts/FavoritPro-Light.eot#iefix") format("embedded-opentype"), url("../fonts/FavoritPro-Light.woff2") format("woff2"), url("../fonts/FavoritPro-Light.woff") format("woff"), url("../fonts/FavoritPro-Light.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'GT Alpina';
    src: url("../fonts/GT-Alpina-Fine-Standard-Thin-Italic.eot");
    src: url("../fonts/GT-Alpina-Fine-Standard-Thin-Italic.eot#iefix") format("embedded-opentype"), url("../fonts/GT-Alpina-Fine-Standard-Thin-Italic.woff2") format("woff2"), url("../fonts/GT-Alpina-Fine-Standard-Thin-Italic.woff") format("woff"), url("../fonts/GT-Alpina-Fine-Standard-Thin-Italic.ttf") format("truetype");
    font-weight: 100;
    font-style: italic;
    font-display: swap;
}

@media (max-width: 575.98px) {
    HTML {
        font-size: 10px;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    HTML {
        font-size: 10px;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    HTML {
        font-size: 10px;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    HTML {
        font-size: 10px;
    }
}

@media (min-width: 1200px) and (max-width: 1399.98px) {
    HTML {
        font-size: 10px;
    }
}

@media (min-width: 1400px) {
    HTML {
        font-size: 10px;
    }
}

BODY {
    position: relative;
    font: 1.1rem/1.8rem "Favorit Pro", Arial, Helvetica, sans-serif;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    background-color: #FDFBF5;
    color: var(--primary);
    min-height: 100%;
    height: auto !important;
    overflow-y: scroll;
    margin: 0;
}

button {
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.overflow-h {
    overflow: hidden;
}

.row {
    position: relative;
}

.row.row--stretched > [class*="col-"] {
    display: flex;
    align-items: stretch;
}

@media (max-width: 575.98px) {
    .row.row--stretched > [class*="col-"] {
        display: block;
    }
}

@media (max-width: 575.98px) {
    .hidden-xs {
        display: none !important;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .hidden-sm {
        display: none !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .hidden-md {
        display: none !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .hidden-lg {
        display: none !important;
    }
}

.hidden-xs-down {
    display: none !important;
}

.hidden-sm-on {
    display: block;
}

@media (min-width: 575.98px) {
    .hidden-sm-on {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .hidden-sm-down {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    .hidden-md-down {
        display: none !important;
    }
}

@media (max-width: 991.98px) {
    .hidden-lg-down {
        display: none !important;
    }
}

.pagecontent {
    position: relative;
    padding-left: 120px;
    padding-right: 120px;
    padding-top: 4rem;
    padding-bottom: 4rem;
}

@media (max-width: 1199.98px) {
    .pagecontent {
        padding-left: 60px;
        padding-right: 60px;
    }
}

@media (max-width: 991.98px) {
    .pagecontent {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (max-width: 767.98px) {
    .pagecontent {
        padding-left: 15px;
        padding-right: 15px;
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
}

.pagecontent .container-fluid {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    position: relative;
}

.overlay {
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background: rgba(113, 135, 141, 0.8);
    z-index: 998;
    opacity: 0;
    transition: all 0.5s;
}

.overlay.active {
    display: block;
    opacity: 1;
}

.header {
    position: absolute;
    width: 100%;
    z-index: 999;
    padding-top: 0;
    padding-bottom: 0;
    background: #FDFBF5;
}

.header .container-fluid {
    height: 12rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header .container-fluid > * {
    width: 33%;
}

@media (max-width: 767.98px) {
    .header .container-fluid {
        height: 9.5rem;
        padding: 0 10px;
    }
}

.header .b-menu {
    z-index: 2;
}

#block__promo button {
    border: 1px solid var(--accent);
}

#block__promo button:hover {
    background-color: white; 
    border-color: var(--accent); 
    color: var(--accent);
}

.nav-container .checkbox {
    display: none;
}

.nav-container .hamburger-lines {
    height: 26px;
    width: 32px;
    top: 17px;
    left: 20px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
}

.nav-container .hamburger-lines .line {
    display: block;
    height: 4px;
    width: 100%;
    border-radius: 10px;
    background: rgba(52, 66, 82, .5);
}

.nav-container .hamburger-lines .line1 {
    transform-origin: 0% 0%;
    transition: transform 0.4s ease-in-out;
}

.nav-container .hamburger-lines .line2 {
    transition: transform 0.2s ease-in-out;
}

.nav-container .hamburger-lines .line3 {
    transform-origin: 0% 100%;
    transition: transform 0.4s ease-in-out;
}

.nav-container input[type="checkbox"]:checked ~ .menu-items {
    transform: translateX(0);
}

.nav-container input[type="checkbox"]:checked ~ .hamburger-lines .line1 {
    transform: rotate(45deg);
}

.nav-container input[type="checkbox"]:checked ~ .hamburger-lines .line2 {
    transform: scaleY(0);
}

.nav-container input[type="checkbox"]:checked ~ .hamburger-lines .line3 {
    transform: rotate(-45deg);
}

/*Hamburger*/

.header__logo {
    display: block;
    text-decoration: none;
    height: 90px;
    width: auto;
    margin: 0 auto;
}

@media (max-width: 767.98px) {
    .header__logo {
        height: 60px;
    }
}

.header__tel {
    text-align: right;
    z-index: 1;
    font-size: 18px;
    color: rgba(52, 66, 82, .5);
}

.header button {
    background: transparent;
    border: none;
}

.lang-switch {
    padding: 1px 0;
    margin-left: 20px;
    position: absolute;
    display: inline-flex;
    top: 0px;
}

@media (max-width: 1476px) {
    .lang-switch {
        padding: 1px 0;
        margin-left: 0px;
        right: 1px;
        top: 28px;
    }
}

@media (max-width: 575px) {
    .lang-switch {
        padding: 1px 0;
        margin-left: 0px;
        right: 40px;
        top: 0px;
    }
}

@media (max-width: 450px) {
    .lang-switch {
        padding: 1px 0;
        margin-left: 0px;
        right: 1px;
        top: 28px;
    }
}

.lang-switch a {
    margin: 0 5px;
}

.sidebar {
    position: fixed;
    top: 120px;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
    z-index: 999;
    min-width: 50%;
    height: 0;
    background-color: #FDFBF5;
    color: #b7c1c1;
    overflow-y: auto;
    transition: all 0.5s;
    opacity: 0;
}

.sidebar.active {
    height: calc(100vh - 120px);
    opacity: 1;
}

.sidebar__close {
    position: absolute;
    z-index: 5;
    top: 3rem;
    left: 2.5rem;
    background: transparent;
    border: none;
    width: 3rem;
    height: 3rem;
    background: url("../fonts/i-x.svg") 50% no-repeat;
}

.sidebar__header {
    display: none;
}

.sidebar__menu {
    margin: 12rem 1.5rem 3rem 3rem;
    font-size: 2rem;
    padding-left: 0;
    list-style: none;
}

.sidebar__menu li {
    margin-top: 1.2rem;
    margin-bottom: 5rem;
    text-align: center;
}

.sidebar__menu a {
    color: #b7c1c1;
}

.sidebar__menu a:hover {
    color: #567074;
}

.sidebar__tel {
    display: none;
}

@media (max-width: 767.98px) {
    .sidebar {
        top: 95px;
        min-width: 100%;
        background-color: var(--accent);
        color: #b7c1c1;
    }

    .sidebar.active {
        height: calc(100vh - 95px);
    }

    .sidebar__close {
        background: url("../fonts/i-x-w.svg") 50% no-repeat;
        left: 1.5rem;
    }

    .sidebar__header {
        display: flex;
        position: absolute;
        align-items: center;
        justify-content: center;
        height: 9.5rem;
        border-bottom: solid 1px #b7c1c1;
        width: 100%;
    }

    .sidebar__header .header_logo {
        height: 42px;
    }
}

@media (max-width: 767.98px) {
    .sidebar__menu {
        font-size: 1.3rem;
        margin: 12rem 1.5rem 0 2.5rem;
    }

    .sidebar__menu li {
        margin-top: 0.7rem;
        margin-bottom: 0.7rem;
    }

    .sidebar__menu li ul {
        margin-bottom: 1rem;
    }

    .sidebar__menu a {
        color: white;
        border-bottom: 1px solid transparent;
        transition: all .3s;
    }

    .sidebar__menu a:hover {
        color: white;
        border-bottom: 1px solid white;
    }

    .sidebar__tel {
        display: inline-block;
        font: 2.4rem/2.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
        margin: 2rem 2.5rem;
    }

    .sidebar__tel  a {
        text-align: center;
        color: white;
    }

    button {
        background: transparent;
        border: none;
    }
}

.b-mmenu {
    position: fixed;
    z-index: 998;
    top: -6rem;
    left: 2.8rem;
    background-color: rgba(255, 255, 255, 0.75);
    border: none;
    border-radius: 50%;
    padding: 2px;
    transition: all 0.3s ease-in-out;
}

@media (max-width: 767.98px) {
    .b-mmenu {
        left: 1.2rem;
    }
}

.b-mmenu.active {
    top: 3rem;
}

@media (max-width: 767.98px) {
    .b-mmenu.active {
        top: 1.8rem;
    }
}

#block__promo {
    padding: 0;
    position: relative;
}

#block__promo .container-fluid {
    max-width: 100%;
}

#block__promo .container-fluid .row {
    position: static;
}

#block__promo .block-cover {
    height: 100vh;
    z-index: 2;
}

#block__promo .promo-text {
    position: absolute;
    top: 50%;
    width: 100%;
    padding: 0 15px;
    text-align: center;
    color: white;
    z-index: 3;
}

#block__promo .promo-text p {
    font-size: 16px;
    font-weight: bold;
}

#block__promo .promo-text h1 {
    font-size: 34px;
    font-weight: bold;
}

#block__promo .button-main {
    margin-top: 30px;
}

#block__promo .promo__subheader {
    font-size: 14px !important;
}

#block__promo .promo__form {
    max-width: 800px;
    margin: 20px auto;
    border-radius: 3px 3px 3px 3px;
}

#block__promo .promo__form input {
    display: block;
    width: 100%;
    margin-top: 15px;
    padding: 10px 12px;
    border: 1px solid transparent;
    border-radius: 3px;
    transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
    background-color: #FDFBF5;
}

#block__promo .promo__form button {
    display: block;
    width: 100%;
    margin-top: 15px;
    padding: 10px 12px;
    border: 1px solid transparent;
    border-radius: 3px;
    font-size: 16px;
}

#block__promo .promo__form button:hover {
    border: 1px solid var(--accent);
}

#block__promo .promo__form input::placeholder {
    text-align: center;
}

#block__promo .promo__form .policy {
    margin-top: 10px;
    font-size: 10px;
}

#block__about {
    padding-top: 15rem;
    padding-bottom: 10rem;
}

#block__about button {
    border: 1px solid white;
}

#block__about button:hover {
    background-color: white; 
    border-color: var(--accent); 
    color: var(--accent);
}

@media (max-width: 767.98px) {
    #block__about {
        padding-top: 10rem;
        padding-bottom: 14rem;
        background-color: #FDFBF5;
        min-height: 60rem;
    }

    #block__about .hdr {
        font: 2.5rem/3.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
        color: #b7c1c1;
        margin-bottom: 10rem;
    }

    #block__about .button-main {
        border: solid 1px var(--accent);
    }
}

#block__about .button-main {
    margin-top: 4rem;
}

#block__about .hdr {
    color: var(--accent);
    font-weight: bold;
}

#block__plans {
    padding-top: 8rem;
    padding-bottom: 8rem;
}

#block__advantages {
    background: no-repeat center bottom/100% fixed url(../images/cover.webp);
    background-size: cover;
}

#block__advantages .block-cover {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-image: -webkit-linear-gradient(top, rgba(0,0,0,0.50), rgba(0,0,0,0.7));
    background-image: -o-linear-gradient(top, rgba(0,0,0,0.50), rgba(0,0,0,0.7));
    background-image: -ms-linear-gradient(top, rgba(0,0,0,0.50), rgba(0,0,0,0.7));
    background-image: linear-gradient(top, rgba(0,0,0,0.50), rgba(0,0,0,0.7));
}

@media (max-width: 767.98px) {
    #block__advantages {
        /*background-attachment: local;*/
        /*background-size: cover;*/
    }

    #block__plans {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    #block__plans .hdr-main {
        font-size: 4.1rem;
        line-height: 3.6rem;
        text-align: center;
        color: var(--accent);
    }
}

#block__matching .text-column {
    margin-left: 2rem;
    text-align: center;
}

#block__matching .hdr-text {
    color: rgba(52, 66, 82, .5);
}

@media (max-width: 767.98px) {
    #block__matching .hdr-main {
        font-size: 4.1rem;
        line-height: 3.6rem;
        text-align: center;
        color: var(--accent);
    }
}

#block__plans .button-main {
    width: 100%;
    max-width: 28.5rem;
    margin: 4rem auto 1.5rem 0;
}

@media (max-width: 767.98px) {
    #block__plans .button-main {
        max-width: 100%;
    }
}

#block__infrastructure {
    margin-top: 8rem;
    background-color: var(--accent);
}

#block__infrastructure .hdr {
    font: 2.5rem/3.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
    margin-bottom: 0.5rem;
    text-align: center;
    font-weight: bold;
}

@media (max-width: 767.98px) {
    #block__infrastructure {
        margin-top: 4rem;
    }

    #block__infrastructure .hdr {
        margin-top: 2rem;
    }
}

#block__infrastructure p {
    text-align: center;
}

#block__infrastructure .hdr-main,#block__infrastructure p,#block__infrastructure  .hdr-note {
    color: white;
    text-align: center;
}

#block__infrastructure .block-img_office {
    margin-right: 10px;
    margin-left: 10px;
    border-radius: 0.5rem;
    overflow: hidden;
}

#block__infrastructure .block-img_office img {
    transition: all .3s;
}

#block__infrastructure .block-img_office img:hover {
    transform: scale(1.2);
}

#block__infrastructure .block-txt {
    margin-bottom: 3rem;
}

#block__matching .hdr {
    font-size: 16px;
    font-weight: bold;
    color: var(--accent);
}

#sc--Location .container-fluid {
    padding: 0;
}

.footer {
    padding: 0;
    padding-bottom: 2rem;
    text-align: center;
}

@media (max-width: 767.98px) {
    #block__infrastructure .block-txt {
        margin: 0 auto 2rem auto;
    }

    .footer {
        margin-top: 4rem;
    }
}

.footer p {
    color: RGB(52, 66, 82);
}

.footer a {
    text-decoration: none;
    color: RGB(52, 66, 82);
}

.footer__logo {
    margin-top: 3rem;
    margin-bottom: 3rem;
    display: inline-block;
    text-decoration: none;
}

@media (max-width: 767.98px) {
    .footer__logo {
        height: 30px;
        margin-bottom: 4rem;
    }
}

.footer__logo img {
    height: 100%;
}

.modal.show {
    padding-right: 17px;
    padding-left: 17px;
}

@media (max-width: 767.98px) {
    .modal.show {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
}

.modal-dialog {
    max-width: 80rem;
    margin-top: 10%;
}

@media (max-width: 767.98px) {
    .modal-dialog {
        margin-top: 5px;
    }
}

.modal-dialog .modal-content {
    padding: 0;
    background: var(--accent);
    color: white;
    border-radius: 0;
    position: relative;
    border: none;
    text-align: center;
}

.modal-dialog .btn-close {
    position: absolute;
    z-index: 5;
    top: 3rem;
    right: 3rem;
    background: transparent;
    border: none;
    width: 3rem;
    height: 3rem;
    background: url("../fonts/i-x-w.svg") 50% no-repeat;
    opacity: 1;
}

.modal-dialog .btn-close:hover {
    opacity: 0.5;
}

@media (max-width: 767.98px) {
    .modal-dialog .btn-close {
        top: 1.2rem;
        right: 1.5rem;
    }
}

.modal-dialog .modal__logo {
    display: inline-block;
    text-decoration: none;
    width: auto;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 767.98px) {
    .modal-dialog .modal__logo {
        height: 30px;
    }
}

.modal-dialog .modal-header {
    position: relative;
    text-align: center;
    padding: 3rem 3rem 1.5rem 3rem;
    border: none;
    width: 100%;
}

@media (max-width: 767.98px) {
    .modal-dialog .modal-header {
        padding: 2rem 2rem 1.5rem 2rem;
    }
}

.modal-dialog .modal-body {
    padding: 1.5rem 3rem 3rem 3rem;
    overflow-y: auto;
}

.modal-dialog .modal-body .policy {
    font-size: 10px;
}

.modal-dialog a {
    text-decoration: underline;
    color: white;
}

.modal-dialog a:hover {
    text-decoration: none;
    color: #b7c1c1;
}

.modal-dialog span
form {
    margin: 2rem;
}

.modal-dialog .modal--control {
    background: #FDFBF5 !important;
    border: solid 1px white !important;
    text-align: center !important;
    color: var(--primary);
    text-transform: uppercase;
    padding: 1.5rem 1rem;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    width: 100%;
}

.modal-dialog .modal-body .form-response-error {
    color: #ff2020;
    font-weight: bold; 
}

@media (max-width: 767.98px) {
    .modal-dialog .modal--control {
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
    }
}

.modal-dialog ::-webkit-input-placeholder {
    color: rgba(52, 66, 82, .5);
}

.modal-dialog :-moz-placeholder {
    color: rgba(52, 66, 82, .5);
}

.modal-dialog ::-moz-placeholder {
    color: rgba(52, 66, 82, .5);
}

.modal-dialog :-ms-input-placeholder {
    color: rgba(52, 66, 82, .5);
}

.modal-dialog .btn-primary {
    width: 100%;
    height: 5rem;
    background: transparent;
    color: white;
    text-transform: uppercase;
    border: solid 1px white;
    margin-top: 1.5rem;
    margin-bottom: 3rem;
}

@media (max-width: 767.98px) {
    .modal-dialog .btn-primary {
        margin-top: 0.5rem;
        margin-bottom: 1.5rem;
    }
}

.modal-dialog .btn-primary:hover {
    background: #1fa5d3;
}

.hdr-main {
    font: 4.1rem/3.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
    letter-spacing: 2.93px;
    text-transform: uppercase;
    color: var(--accent);
    margin-top: 2rem;
    margin-bottom: 4rem;
}

@media (max-width: 767.98px) {
    .hdr-main {
        font: 2.4rem/2.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
    }
}

.hdr-sub {
    font: 3.8rem/4.2rem "GT Alpina", Arial, Helvetica, sans-serif;
    color: var(--accent);
    text-transform: none;
    margin-top: 0;
    margin-bottom: 4rem;
    letter-spacing: normal;
}

@media (max-width: 767.98px) {
    .hdr-sub {
        font: 2.3rem/2.3rem "GT Alpina", Arial, Helvetica, sans-serif;
        text-align: center;
    }
}

.hdr-note {
    color: rgba(52, 66, 82, .5);
    margin: -3rem 0 4rem 3rem;
}

@media (max-width: 767.98px) {
    .hdr-note {
        text-align: center;
    }
}

.centered {
    text-align: center;
}

@media (max-width: 767.98px) {
    .centered-xs {
        text-align: center;
    }
}

.arrow-down {
    display: none;
    position: absolute;
    z-index: 3;
    left: 50%;
    bottom: 4rem;
    width: 10px;
    height: 7.5rem;
    margin-left: -5px;
    background: url("../fonts/arr-d.svg") bottom no-repeat;
}

@media (max-width: 767.98px) {
    .arrow-down {
        display: block;
    }
}

i {
    font-style: normal;
}

@media (max-width: 767.98px) {
    i {
        font: 1.7rem/1.8rem "GT Alpina", Arial, Helvetica, sans-serif;
        letter-spacing: 1px;
        text-transform: none;
    }
}

A {
    text-decoration: none;
}

A:hover {
    color: var(--accent);
}

*:focus {
    outline: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

button.disabled,button.disabled:hover {
    background-color: #b7c1c1;
    color: white;
    box-shadow: none;
}

.button-main {
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    padding: 1rem 2rem;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    border: none;
    border-radius: .25rem;
    background-color: var(--accent);
    box-shadow: none;
    width: 30rem;
    height: 6rem;
    margin: auto;
    font-weight: bold;
    font-size: 14px;
}

.button-main:hover {
    background-color: white; 
    border-color: var(--accent); 
    color: var(--accent);
}

@media (max-width: 575.98px) {
    .button-main {
        width: 100%;
        margin: 3rem auto;
    }
}

.button-bordered {
    display: block;
    color: white;
    padding: 1rem 2rem;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    border: solid 1px white;
    border-radius: 0;
    background-color: transparent;
    line-height: 1.1;
    box-shadow: none;
    width: 30rem;
    height: 6rem;
    margin: 4rem auto;
    font-weight: bold;
    font-size: 14px;
}

.button-bordered:hover {
    background-color: white;
    border-color: var(--accent);
    color: var(--accent);
}

@media (max-width: 575.98px) {
    .button-bordered {
        width: 100%;
        margin: 3rem auto;
    }
}

.block-cover {
    height: calc(100vh - 12rem);
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-image: -webkit-linear-gradient(top, rgba(0,0,0,0.50), rgba(0,0,0,0.50));
    background-image: -o-linear-gradient(top, rgba(0,0,0,0.50), rgba(0,0,0,0.50));
    background-image: -ms-linear-gradient(top, rgba(0,0,0,0.50), rgba(0,0,0,0.50));
    background-image: linear-gradient(top, rgba(0,0,0,0.50), rgba(0,0,0,0.50));
}

.block-header {
    font: 4.1rem/3.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
    letter-spacing: 2.93px;
    text-transform: uppercase;
    color: #FDFBF5;
    margin-bottom: 4rem;
    text-align: center;
    text-shadow: 1px 1px 2px #FFFFFF;
    z-index: 1;
}

.block-text {
    max-width: 1200px;
    padding: 0 20px;
    font: 1.5rem/2.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
    color: #FFFFFF;
    text-align: center;
    z-index: 1;
}

.block-button {
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    padding: 1rem 2rem;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    border: none;
    border-radius: .25rem;
    background-color: var(--accent);
    box-shadow: none;
    width: 28.5rem;
    height: 5rem;
    margin-top: 3rem;
    z-index: 1;
}

.block-txt {
    margin-top: 0;
    margin-bottom: 0;
}

.block-slogan {
    font: 2.2rem/3.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
    color: rgba(52, 66, 82, .5);
    text-align: center;
    width: 75%;
    margin-left: auto;
    margin-right: auto;
}

.block-slogan span {
    color: var(--accent);
}

@media (max-width: 767.98px) {
    .block-slogan {
        font: 1.3rem/2.3rem "Favorit Pro", Arial, Helvetica, sans-serif;
        width: 100%;
    }

    .block-slogan i {
        font: 1.9rem/2.3rem "GT Alpina", Arial, Helvetica, sans-serif;
        color: white;
        text-transform: none;
    }

}

.hdr {
    margin-bottom: 2rem;
}

@media (max-width: 767.98px) {
    .hdr {
        margin-bottom: 1rem;
    }
}

.txt-note {
    color: #b7c1c1;
}

.block-img {
    margin-bottom: 4rem;
}

@media (max-width: 767.98px) {
    .block-img {
        margin-bottom: 3rem;
    }
}

.block-img_residences {
    max-width: 690px;
}

@media (max-width: 767.98px) {
    .block-img_residences {
        margin-top: 2rem;
        margin-bottom: 3rem;
    }

    .block-img_residences img {
        margin-left: auto;
        margin-right: auto;
    }
}

.block-img_office {
    max-width: 1324px;
    margin-bottom: 2rem;
}

@media (max-width: 767.98px) {
    .block-img_office {
        margin: 3rem -15px 1.5rem -15px !important;
    }
}

.services__item img {
    margin-bottom: 4rem;
}

@media (max-width: 767.98px) {
    .services__item img {
        margin-bottom: 2rem;
    }
}

.benefits__item {
    border-top: solid 1px white;
    border-bottom: solid 1px white;
    padding-top: 4rem;
    padding-bottom: 4rem;
    width: 100%;
    text-align: center;
    margin-top: -1px;
    font-weight: bold;
    color: white;
}

@media (max-width: 767.98px) {
    .benefits__item {
        padding-top: 3rem;
        padding-bottom: 3rem;
        border-color: #D2DFE2;
    }
}

.benefits__item span {
    display: block;
    font: 2.5rem/3.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
    margin-bottom: 1rem;
}

@media (max-width: 767.98px) {
    .benefits__item span {
        margin-bottom: 0;
    }
}

.block-map {
    height: 600px;
    overflow: hidden;
}

@media (max-width: 767.98px) {
    .block-map {
        height: 400px;
    }
}

#map {
    height: 100%;
}

.block-residencesruler {
    position: relative;
    z-index: 10;
}

@media (max-width: 767.98px) {
    .block-residencesruler {
        margin-top: 2rem;
        margin-bottom: 0;
        margin-left: 1px;
    }
}

.block-residencesruler .plan-img {
    width: 100%;
    padding: 0 20px;
}

.block-residencesruler .plan-header {
    display: block;
    font: 2.2rem/3.6rem "Favorit Pro", Arial, Helvetica, sans-serif;
    margin-bottom: .5rem;
    text-align: center;
    color: var(--accent);
    font-weight: bold;
}

.block-residencesruler .plan-subheader {
    font: 1.2rem/1.8rem "Favorit Pro", Arial, Helvetica, sans-serif;
    text-align: center;
    margin-bottom: 2rem;
    color: RGB(52, 66, 82);
}

.block-residencesruler .plan-img {
    display: block;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 3rem;
}

.block-residencesruler .plan-text {
    text-align: center;
}

.video-intro {
    height: 100vh;
    /*background: url("") bottom center;*/
    background-size: cover;
    position: relative;
    overflow: hidden;
}

@media (max-width: 768px) {
    .video-intro {
        /* height: auto; */
    }
}

.video {
    max-height: 100vh;
    position: relative;
    padding-bottom: 56.25%;
    z-index: 1;
}

.video__media {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

@media (max-width: 768px) {
    .video__media {
        /* height: auto; */
    }
}

.checkbox__input {
    -webkit-appearance: none;
    appearance: none;
    position: absolute;
}

.checkbox__label {
    text-transform: uppercase;
    padding-left: 33px;
    line-height: 22px;
    font-size: 1rem;
    color: #fff;
    cursor: pointer;
}

.checkbox__label::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border: 1px solid #fff;
    background-color: var(--accent);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    transition: all .1s linear;
}

.checkbox__label::after {
    content: "";
    display: block;
    width: 14px;
    height: 13px;
    background: url("../fonts/check.svg") no-repeat;
    background-size: 14px 13px;
    opacity: 0;
    position: absolute;
    top: 3px;
    left: 4px;
    z-index: 2;
    transition: opacity .1s linear;
}

.checkbox__input:checked + .checkbox__label::after {
    opacity: 1;
}

@media (max-width: 345px) {
    .modal-dialog .modal-body {
        padding: 1.5rem 4.5rem 3rem 4.5rem;
    }
}

.modal-content--request {
    margin: 0 auto;
    width: 60%;
}

.img-fluid-auto {
    max-width: 100%;
    width: 100%;
    max-height: 600px;
    object-fit: cover;
    object-position: bottom;
}
