:root {
  --font: #242424;
  --blue: #3685fb;
  --aqua: #44d7b6;
}

.material-icons {
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: 'liga';
}

body .jGrowl-notification {
    padding: 20px 40px 20px 20px;
    color: #fff;
    font-size: 15px;
    line-height: 20px;
    border-radius: 0px;
    border: none;
    box-shadow: 0 0 10px 0px rgb(0 0 0 / 0.1);
    opacity: 1;
	font-family: 'Cascadia Code';
    position: relative;
}

body .jGrowl-notification.af-message-success, body .ms2-message-success {
    background-color: #3cf914 !important;
    background: -webkit-linear-gradient(135deg, rgb(38, 255, 0), rgb(229, 255, 0));
    background: -moz-linear-gradient(135deg, rgb(38, 255, 0), rgb(229, 255, 0));
    background: linear-gradient(135deg, rgb(38, 255, 0), rgb(229, 255, 0));
    color: #006f01 !important;
}
body .jGrowl-notification.af-message-error, body .ms2-message-error {
    background-color: #d11a00 !important;
    background: -webkit-linear-gradient(315deg, rgb(255, 79, 0), rgb(187, 0, 0));
    background: -moz-linear-gradient(315deg, rgb(255, 79, 0), rgb(187, 0, 0));
    background: linear-gradient(315deg, rgb(255, 79, 0), rgb(187, 0, 0));
}
body .jGrowl-notification.af-message-info, body .ms2-message-info {
    background-color: #00a6ff !important;
    background: -webkit-linear-gradient(135deg, rgb(0, 166, 255), rgb(48, 230, 121));
    background: -moz-linear-gradient(135deg, rgb(0, 166, 255), rgb(48, 230, 121));
    background: linear-gradient(135deg, rgb(0, 166, 255), rgb(48, 230, 121));
}

body .jGrowl-notification .jGrowl-close {
    position: absolute;
    right: 0;
    top: 0;
    margin: 10px;
    font-size: 18px;
    font-weight: normal;
    color: #fff;
}

body .jGrowl-notification.af-message-success .jGrowl-close {
    color: #006f01;
}

html, body {
    width: 100%;
    color: var(--font);
    font-family: 'Gotham Pro';
    height: 100vh;
    background: #f9f9f9;
}

hr.clear {
    display: block;
    margin: 0;
    border: none;
    height: 0;
    width: 100%;
    clear: both;
}

.wrapper {
    min-height: 100%;
    width: 100%;
    overflow: hidden;
    position: relative;
}

section.welcome {
    height: 100vh;
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 20px;
    border: 40px solid white;
    box-sizing: border-box;
    border-top: 100px solid #fff;
}

.welcome .background {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    background: #000000;
    border-radius: 20px;
    overflow: hidden;
}

.background span.jarallax {
    display: block;
    width: 100%;
    height: 100%;
    opacity: 1;
}

.adaptive {
    width: 1200px;
    position: relative;
    margin: 0 auto;
}

section.welcome .adaptive {
    z-index: 2;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    text-align: center;
}

section.welcome h1 {
    font-size: 70px;
    font-weight: 500;
    padding: 0 0 20px;
}

section.welcome h3 {
    font-size: 30px;
    line-height: 40px;
}

section.welcome .text {
    color: #fff;
}

section.welcome .bottom {padding: 0 0 50px;}

.background .pattern {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background-color: rgb(0 0 0 / 30%);
}

section.about_us .adaptive {
    display: flex;
    flex-direction: row;
}

section.about_us {
    padding: 100px 0;
}

section.about_us .left {
    width: 500px;
    box-sizing: border-box;
    padding: 0 50px 0 0;
}

section.about_us .right {
    width: 700px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

section.about_us .right .title {
    font-size: 40px;
    font-weight: 500;
    margin: 0 0 20px;
}

article.article p, article.article div {
    font-size: 16px;
    margin: 0 0 15px;
    line-height: 22px;
}

article.article h2 {
    font-size: 22px;
    margin: 0 0 15px;
    font-weight: 500;
    line-height: 28px;
}

article.article h3 {
    font-size: 18px;
    margin: 0 0 15px;
    font-weight: 500;
}

article.article ul, article.article ol {
    margin: 0 0 15px;
}

article.article * li {
    font-size: 16px;
    list-style-type: square;
    list-style-position: inside;
    line-height: 20px;
}

article.article strong {
    font-weight: 500;
}

article.article  a {color: #3079d2;}

article.article a:hover {
    text-decoration: none;
}

article.article * li::marker {
    color: #3079d2;
}

article.article blockquote {
    padding: 20px 25px 0;
    background: #ffffff;
    border-left: 4px solid #3079d2;
    display: flex;
    width: 100%;
    box-sizing: border-box;
    box-shadow: 2px 2px 10px 0px rgb(0 0 0 / 20%);
    margin: 0 0 15px;
}

footer .bottom {background: rgb(0 0 0 / 10%);}

footer .bottom .adaptive {
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 100px;
    font-size: 18px;
    color: #fff;
}

section.about_us .right .subtitle {
    font-size: 24px;
    font-weight: 500;
    margin: 0 0 15px;
}

section.about_us .right .benefits {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

section.about_us .right .benefits .benBlock {
    font-size: 16px;
    line-height: 24px;
    margin: 0 10px 10px 0;
    background: #fff;
    padding: 8px 15px;
    border: 1px solid #e1e1e1;
    box-shadow: 0px 0px 0 0;
    font-weight: 500;
    border-radius: 4px;
}

section.about_us .right article.article {
    padding: 0 0 20px;
}

section.services {
    background: #f5f5f5;
    padding: 100px 0;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
}

.section_title {
    font-weight: 500;
    font-size: 40px;
    padding: 0 0 40px;
}

.grid {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
}

.srvBlock {
    width: 224px;
    margin: 0 20px 0 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    /* border: 1px solid rgb(0 0 0 / 10%); */
    box-sizing: border-box;
    padding: 30px 20px;
    text-align: center;
    border-radius: 20px;
    background: #fff;
}

.srvBlock:nth-child(5n) {
    margin: 0;
}

.srvBlock h3 {
    font-size: 16px;
    font-weight: 500;
}

.srvBlock img {
    display: block;
    margin: 0 0 20px;
}

header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 120;
    color: #000;
    background: #fff;
}

header .adaptive {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    height: 100px;
    align-items: center;
}

header .adaptive .right {
    display: flex;
}

header .adaptive .right ul {
    display: flex;
    flex-direction: row;
    padding: 0 50px;
    align-items: center;
}

header a.logotype {
    font-size: 30px;
    text-transform: uppercase;
    font-weight: 500;
    width: 400px;
    display: flex;
    align-items: center;
}

header a {
    color: inherit;
    text-decoration: none;
}

section.about_us .left img {
    display: block;
    border-radius: 20px;
}

header a.tel {
    font-size: 20px;
    font-weight: 500;
    font-family: 'Open Sans';
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    font-weight: 600;
    font-size: 28px;
}

header a.tel i {border: 1px solid #e1e1e1;width: 50px;height: 50px;border-radius: 100%;display: flex;flex-direction: column;align-items: center;justify-content: center;margin: 0 15px 0 0;transition: 0.3s;}

header .adaptive .right ul li {
    margin: 0 20px 0 0;
}

header .adaptive .right ul li a {
    font-size: 16px;
    font-weight: 500;
}

section.pagetitle {
    padding: 0;
    height: 180px;
    display: flex;
    align-items: center;
    border-top: 100px solid #fff;
    border-left: 40px solid #fff;
    border-right: 40px solid #fff;
    position: relative;
}

section.pagetitle .background {
    height: 100%;
    padding: 0;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    border-radius: 20px;
    overflow: hidden;
}

section.pagetitle .adaptive {
    position: relative;
    z-index: 120;
    color: #fff;
}

section.pagetitle .adaptive h1 {
    font-size: 40px;
    font-weight: 500;
}

section.container {
    padding: 50px 0;
}

footer {
    background: #242424;
    color: #fff;
    margin: -396px 0 0;
}

footer .top {
    padding: 80px 0 40px;
}

footer .top .adaptive {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

footer .top .adaptive .right {
    display: flex;
}

footer .top .adaptive .left {
    width: 440px;
}

.f_menu {
    padding: 0 80px 0 0;
}

footer a.logotype {
    color: #fff;
    text-decoration: none;
    font-size: 30px;
    text-transform: uppercase;
    font-weight: 500;
    margin: 0 0 20px;
    display: flex;
}

footer .top .adaptive .left p {
    font-size: 15px;
    line-height: 20px;
    color: #7f7f7f;
}

.f_menu ul li a {
    text-decoration: none;
    color: #fff;
    font-size: 16px;
    line-height: 20px;
    display: flex;
}

.f_menu ul li {
    margin: 0 0 10px;
}

.f_menu ul li a:before {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    background: transparent;
    border-radius: 100%;
    border: 2px solid #fff;
    box-sizing: border-box;
    margin: 3px 10px 0 0;
}

footer .contacts ul li a {
    text-decoration: none;
    color: inherit;
}

footer .contacts ul li {
    display: flex;
    flex-direction: row;
    margin: 0 0 20px;
    align-items: center;
}

footer .contacts ul li i {
    margin: 0 15px 0 0;
}

footer .bottom .adaptive {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

footer .bottom .adaptive .links a {
    color: inherit;
    text-decoration: none;
    font-size: 15px;
}

footer .copyright {
    font-size: 15px;
}

section.contacts_info .adaptive {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

section.contacts_info .adaptive .left {
    width: 50%;
    box-sizing: border-box;
    padding: 0 80px 0 0;
}

section.contacts_info .adaptive .right {
    width: 50%;
}

section.contacts_info {
    padding: 80px 0;
}

section.contacts_info .adaptive .left ul {
    font-size: 20px;
}

section.contacts_info .adaptive .left ul a {
    text-decoration: none;
    color: inherit;
}

section.contacts_info .adaptive .left ul li {
    display: flex;
    margin: 0 0 20px;
}

section.contacts_info .adaptive .left ul li i {
    margin: 0 10px 0 0;
}

section.contacts_info .entermap {
    height: 100%;
}

section.contacts_info .adaptive .left p {
    font-size: 16px;
    line-height: 24px;
}

hr.clear.footer {
    height: 396px;
}

body.contacts_page hr.clear.footer {
    height: 100px;
}

body.contacts_page footer {
    margin-top: -100px;
}

.categoryBlock {
    margin: 0 30px 30px 0;
    width: 585px;
}

.categoryBlock:nth-child(2n) {
    margin: 0 0 30px;
}

.categoryBlock a {
    display: block;
    overflow: hidden;
    border-radius: 20px;
    position: relative;
    background: #000;
}

.categoryBlock a img {
    display: block;
    opacity: 0.5;
    width: 100%;
}

.categoryBlock a .txt {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 0 40px 50px;
    color: #fff;
    font-size: 22px;
    width: 100%;
    box-sizing: border-box;
}

body.categories_page article.article {
    padding: 0 0 50px;
}

.apparts_block {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    padding: 0;
}

.apparts_block .left {
    width: 700px;
}

.apparts_block .right {
    width: 500px;
    box-sizing: border-box;
    padding: 0 0 0 50px;
}

.apparts_block .right ul.benefits img {
    display: block;
    width: 42px;
    margin: 0 15px 0 0;
}

.apparts_block .right ul.benefits li {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    padding: 0 0 20px;
}

.apparts_block .right ul.benefits li h3 {
    font-size: 16px;
}

ul.benefits {
    background: #fff;
    padding: 40px 40px 20px;
    border: 1px solid #e1e1e1;
    border-radius: 20px;
}

h3.apparts_title {
    padding: 0 0 20px;
    font-size: 26px;
    font-weight: 500;
}

section.appartaments {
    padding: 50px 0;
    background: whitesmoke;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
}

.appartBlock img {
    display: block;
    width: 100%;
    display: none;
}

.appartBlock {
    width: 386.666px;
    margin: 0 20px 20px 0;
}

.appartBlock a {
    display: block;
    background: #fff;
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0 0 0 1px #e1e1e1;
}

.appartBlock a h3 {
    padding: 0 0 10px;
    font-weight: 500;
    font-size: 15px;
}

.appartBlock:nth-child(3n) {
    margin: 0 0 20px;
}

footer .contacts ul li a.tel {
    font-size: 26px;
    font-family: 'Open Sans';
}

.appartBlock a .txt {
    padding: 15px 20px;
    display: flex;
    flex-direction: column;
}

.appartBlock a .txt span.price {
    font-size: 16px;
    font-weight: 600;
}

body.appart_page {}

body.appart_page section.container .adaptive {
    display: flex;
}

body.appart_page section.container .adaptive .left {
    width: 500px;
}

body.appart_page section.container .adaptive .right {
    width: 700px;
    box-sizing: border-box;
    padding: 0 0 0 50px;
}

a.zoomphoto img {
    display: block;
    position: relative;
}

a.zoomphoto .zoom, a.popup-youtube .zoom {
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 2;
    background: rgb(0 0 0 / 50%);
    color: #fff;
    font-size: 40px;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
}

body.appart_page section.container .adaptive .left .images {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
}

.photoBlock {
    width: 247.5px;
    margin: 0 5px 5px 0;
}

.photoBlock a img {
    display: block;
    width: 100%;
    height: auto;
}

.photoBlock:nth-child(2n) {
    margin: 0 0 5px;
}

a.zoomphoto, a.popup-youtube {
    position: relative;
    display: block;
    background-size: 200%;
    background-position: center;
}

a.zoomphoto:hover .zoom, a.popup-youtube:hover .zoom {
    opacity: 1;
    visibility: visible;
}

body.appart_page section.container .adaptive .right .price {
    font-size: 30px;
    padding: 0 0 30px;
    font-weight: 600;
}

div#bootcalendar .week, div#bootcalendar .week_head {
    display: flex;
    width: 100%;
    justify-content: flex-end;
}

div#bootcalendar .day, div#bootcalendar .empty-cell {
    width: 14.28%;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    box-sizing: border-box;
    padding: 18px 0;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-weight: 500;
}

.calendar_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    padding: 20px 30px;
    border: 1px solid #e1e1e1;
}

.calendar {
    border: 0px solid black;
    /* box-shadow: 2px 2px 15px 0px rgb(0 0 0 / 50%); */
}

h3.calendar_title {
    font-size: 20px;
    font-weight: 500;
}

.calendar_header a {
    text-decoration: none;
    color: #000;
}

.calendar_head {
    background: #e9e9e9;
    padding: 15px 30px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    border-right: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
}

.calendar_head .cleft {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
}

.calendar_head .cright {
    display: flex;
}

.calendar_head .cright a {
    text-decoration: none;
}

.calendar_head .cright a {
    color: #000;
    width: 40px;
    height: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.calendar_head .cleft h3.calendar-year {
    font-size: 22px;
    font-weight: 600;
}

.calendar_head .cleft h3.calendar-month {
    font-size: 16px;
    padding: 0 0 5px;
}

.calendar_container {
    border-top: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
}

div#bootcalendar .day.ob-selected {
    background: #b9ffd5;
}

div#bootcalendar .calendar_container {
  user-select: none; /* ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â¡ÃƒÆ’Ã¢â‚¬ËœÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â°ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â½ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â´ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â°ÃƒÆ’Ã¢â‚¬ËœÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÆ’Ã¢â‚¬ËœÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â½ÃƒÆ’Ã¢â‚¬ËœÃƒÂ¢Ã¢â€šÂ¬Ã‚Â¹ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â¹ ÃƒÆ’Ã¢â‚¬ËœÃƒâ€šÃ‚ÂÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â¸ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â½ÃƒÆ’Ã¢â‚¬ËœÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â°ÃƒÆ’Ã‚ÂÃƒâ€šÃ‚ÂºÃƒÆ’Ã¢â‚¬ËœÃƒâ€šÃ‚ÂÃƒÆ’Ã‚ÂÃƒâ€šÃ‚Â¸ÃƒÆ’Ã¢â‚¬ËœÃƒâ€šÃ‚Â */
  -webkit-user-select: none; /* Chrome/Safari */
  -moz-user-select: none; /* Firefox */
  -ms-user-select: none; /* IE/Edge */
  position: relative;
}

div#bootcalendar .day.notavailable {
    cursor: no-drop;
    background: #ffcece;
}

div#bootcalendar .day i {
    margin: 0;
    width: 20px;
    height: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    display: none;
}

div#bootcalendar .day span.ob-calendar-date {
    font-size: 16px;
}

div#bootcalendar .day.available {cursor: pointer;}

.input_text input, .input_text textarea, button {
    display: flex;
    width: 100%;
    box-sizing: border-box;
    padding: 0 10px;
    height: 44px;
    margin: 0px 0 10px;
    border: 1px solid #e1e1e1;
    font-size: 15px;
    outline: none;
    font-family: 'Gotham Pro';
}

form#bookingForm .info {
    padding: 15px 0;
    font-size: 18px;
}

.input_text.textarea textarea {
    height: 120px;
    padding: 12px 10px;
}

div#bootcalendar .ob-calendar-widget {
    width: 100%;
    position: relative;
}

div#ob-dialog {
    font-size: 18px;
    line-height: 28px;
}

section.apparts_info {
    padding: 50px 0;
}

.apparts_block .entermap {
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #e1e1e1;
    height: 496px;
}

body.apparts_page section.container {
}

.apinfo {
    display: flex;
    flex-direction: column;
    background: whitesmoke;
    margin: 0 0 30px;
    padding: 15px 10px;
    border: 1px solid #e1e1e1;
    border-radius: 10px;
}

.apinfo p {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    position: relative;
    transition: 0.3s;
}

.apinfo p:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    border-top: 1px dashed #e1e1e1;
}

.apinfo p strong, .apinfo p span {
    position: relative;
    z-index: 2;
    background: whitesmoke;
    padding: 0 20px;
    font-size: 18px;
    line-height: 34px;
    font-weight: 500;
}

.apinfo p strong, .apinfo p span {}

.details {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding: 0 0 30px;
}

.detailBlock {
    background: #e9e9e9;
    margin: 0 10px 10px 0;
    padding: 10px 15px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    font-size: 14px;
    font-weight: 500;
}

.detail_title {
    font-size: 20px;
    padding: 0 0 15px;
    font-weight: 500;
}

.detailBlock i {
    color: #41b740;
    margin: 0 5px 0 0;
}

.apinfo p:hover {
    color: #f17d00;
}

.apinfo * {
    cursor: default;
}

.bootcalendar_desc {
    font-size: 18px;
    padding: 15px 0 30px;
    color: #2a77c0;
    font-weight: 500;
}

body.appart_page section.container .adaptive .right .price strong {
    color: #ff6c00;
}

.srvList {
    margin: 0 0 30px;
    padding: 20px 20px 15px;
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e1e1e1;
}

.srvList h3 {
    font-size: 22px;
    font-weight: 500;
    padding: 0 0 15px;
}

.srvList ul {
    font-size: 18px;
    line-height: 24px;
    list-style-type: square;
    padding: 0 0 0 25px;
}

.srvList ul li::marker {
    color: #3079d2;
}

.srvList ul li {
    padding: 0 0 5px;
}

.appartBlock .img {
    position: relative;
    display: block;
}

ul.imgs_pages {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: table;
    z-index: 2;
}

ul.imgs_pages li {
    display: table-cell;
    border-bottom: 4px solid #e1e1e1;
    vertical-align: middle;
    text-align: center;
}

.appartBlock img:first-child {
    display: block;
}

ul.imgs_pages li:hover {
    background: rgb(0 0 0 / 10%);
}

.appartBlock img.hddn {
    display: none;
}

.appartBlock img.active {
    display: block;
}

ul.imgs_pages li.act {
    border-bottom: 4px solid #242424;
}

ul.imgs_pages li span {opacity: 0;display: block;font-size: 20px;color: #fff;line-height: 26px;padding: 0 10px;font-weight: 400;}

ul.imgs_pages li:nth-child(5):hover span {
    opacity: 1;
}

ul.imgs_pages li span.count {
    font-size: 30px;
    line-height: 40px;
}

ul.imgs_pages li.more:nth-child(5):hover {
    background: rgb(0 0 0 / 40%);
}

header .adaptive .right ul li.active a {
    color: #2990ff;
}

header a.tel:hover i {background: #ffffff;color: green;border: 1px solid #ffffff;box-shadow: 2px 2px 10px 0 rgb(0 0 0 / 30%);}

a.popup-youtube img {
    opacity: 0;
}

a.popup-youtube .zoom {
    font-size: 100px;
    opacity: 1;
    visibility: visible;
}

article.article img.arc_img {
    float: left;
    margin: 0 20px 20px 0;
    max-width: 100%;
    display: block;
    height: 280px;
}

.fix_bottom {
    position: fixed;
    bottom: 80px;
    right: 0;
    z-index: 98;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    overflow: hidden;
}

.fix_bottom a {
    display: block;
}

.fix_bottom a img {
    display: block;
    width: 80px;
}

header a.logotype img {
    display: block;
    height: 70px;
    margin: 0 15px 0 0;
}

header a.logotype h2 {
    font-weight: 600;
}

section.appart_search {
    position: relative;
    z-index: 99;
    padding: 0px 0 30px;
    z-index: 130;
}

.asearch_wrap {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 130;
    height: 100%;
}

.asearch_cont {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #fff;
    max-height: 80%;
    overflow: auto;
    z-index: 2;
    border-top: 50px solid #fff;
    box-sizing: border-box;
    border-bottom: 50px solid #fff;
}

.asearch_overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 50%);
}

.asearch_cont .ob-search-objects-wrap {
    margin: 0;
    width: 100%;
}

section.appart_search #ob-search-form-wrap {
    width: auto;
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding: 0;
    align-items: flex-end;
    background: #fff;
}

section.appart_search form#searchForm {
    display: flex;
    align-items: flex-end;
    background: #ffffff;
}

section.appart_search .input_text label {
    font-size: 16px;
    font-weight: 500;
    padding: 0 0 10px;
    display: block;
}

section.appart_search form#searchForm .input_text {
    padding: 0 20px 0 0;
}

section.appart_search form#searchForm button {
    background: #ff6c00;
    color: #fff;
    height: 44px;
    padding: 0 20px;
    width: 200px;
    font-size: 14px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    margin: 0 !important;
}

section.appart_search form#searchForm .input_text input {
    width: 210px;
    margin: 0;
}

section.appart_search #ob-search-form-wrap #error {
    width: 100%;
    padding: 0;
    display: none !important;
}

section.appart_search #ob-search-form-wrap .bg-danger button {
    float: left;
    width: 20px;
    height: 20px;
}

.asearch_cont .ob-search-objects-wrap table.table {
    width: 100%;
}

.asearch_cont .ob-search-objects-wrap table.table {
    width: 100%;
}

#ob-objects-table td.button {
    width: 150px;
}

#ob-objects-table td.button button {
    margin: 0;
    padding: 0;
    height: 40px;
    width: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 40px;
    border-radius: 4px;
    background: #e9e9e9;
    color: #000;
    border: none;
}

#ob-objects-table td.price {
    width: 200px;
    font-weight: 500;
    font-size: 16px;
}

#ob-objects-table td {
    padding: 5px 0;
}

.asearch_cont .ob-search-objects-wrap table.table tr td {
}

section.appart_search .adaptive {display: flex;flex-direction: row;box-sizing: border-box;padding: 30px 50px;background: #fff;box-shadow: 2px 2px 10px 0 rgb(0 0 0 / 20%);border-radius: 10px;align-items: center;}

section.appart_search .adaptive h2 {
    width: 410px;
    font-size: 30px;
    font-weight: 600;
    text-transform: uppercase;
    border-right: 4px solid #2990ff;
    margin: 0 30px 0 0;
    line-height: 38px;
    box-sizing: border-box;
}

#ob-objects-table td a {
    text-decoration: none;
    color: inherit;
    font-weight: 500;
}

section.appart_search .asearch_wrap .adaptive {
    padding: 0;
    box-shadow: none;
    border-radius: 0px;
}

#ob-objects-table td.button .flx {
    display: flex;
}

#ob-objects-table td.button a {
    height: 40px;
    display: flex;
    width: 150px;
    background: #e9e9e9;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    margin: 0;
    color: #000;
    font-size: 14px;
    font-weight: 500;
    transition: 0.3s;
}

#ob-objects-table td.button a:hover {
    background: #242424;
    color: #fff;
}

body.categories_page section.appart_search {
    padding: 50px 0 0;
}

body.home_page section.about_us {
    padding: 80px 0 100px;
}

body.home_page section.appart_search {
    padding: 0;
}

body.appart_page section.appart_search {padding: 50px 0 0;}

div#ob-form-wrap {
    width: 100%;
    padding: 0;
    box-sizing: border-box;
    margin: 15px 0 0;
    border: 1px solid #e1e1e1;
}

div#ob-form-wrap ul#info-steps {
    display: flex;
    border-bottom: 1px solid #e1e1e1;
}

div#ob-form-wrap ul#info-steps li {
    display: flex;
    width: 33.333%;
    align-items: center;
    justify-content: center;
    padding: 20px 10px;
    font-size: 24px;
    font-weight: 500;
    border: none;
}

div#ob-form-wrap ul#info-steps li span {
    font-weight: normal;
    padding: 5px 0 0;
}

div#ob-form-wrap .row {display: flex;flex-direction: column;justify-content: space-between;box-sizing: border-box;padding: 25px 25px 0;}

div#ob-form-wrap .row .input_text {
    width: 100%;
    box-sizing: border-box;
}

div#ob-form-wrap .row .input_text label {
    font-size: 16px;
    font-weight: 500;
    padding: 0 0 10px;
    display: block;
}

div#ob-form-wrap .stepButtons {
    display: flex;
    padding: 0 25px 20px;
    margin: 0;
    justify-content: space-between;
}

div#ob-form-wrap .stepButtons button {
    margin: 0;
    padding: 0;
    width: auto;
    height: 44px;
    line-height: 44px;
    padding: 0 25px;
    background: #e1e1e1;
    border: none;
    font-size: 15px;
    color: #000;
    border-radius: 4px;
    font-weight: 500;
}

div#ob-form-wrap .stepButtons button#bookNow {
    background: #ff6c00;
    color: #fff;
}

div#ob-form-wrap .row .total_count {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
    align-items: center;
    margin: 0px 0 20px;
}

div#ob-form-wrap .row .total_count h3 {
    font-size: 20px;
    font-weight: 500;
}

div#ob-form-wrap .row .total_count input#sum {
    width: 120px;
    height: 40px;
    border: none;
    margin: 0;
    padding: 0 15px;
    box-sizing: border-box;
    font-size: 22px;
    font-weight: 600;
    outline: none;
}

div#ob-form-wrap .row .total_count .prc {
    display: flex;
    flex-direction: row;
    align-items: center;
}

#ob-form-wrap #error {
    padding: 0 25px;
    display: flex;
    flex-direction: row;
    display: none !important;
}

#ob-form-wrap #error button.close {
    width: 24px;
    height: 24px;
    background: red;
}

video.arc_video {
    float: left;
    margin: 0 20px 20px 0;
    max-width: 100%;
    display: block;
    height: 280px;
}

/*start booking form */

div#ob-form-wrap fieldset#form-step2 {
    display: block !important;
}

div#ob-form-wrap fieldset#form-step3 {
    display: block !important;
}

div#ob-form-wrap fieldset#form-step1 {
    display: block;
}

div#ob-form-wrap fieldset#form-step1 .row {
    padding-top: 30px;
}

div#ob-form-wrap .stepButtons button#bookNow {
    display: flex !important;
}

div#ob-form-wrap .stepButtons button {
    display: none !important;
}

div#ob-form-wrap ul#info-steps {
    display: none;
}

div#ob-form-wrap .row .total_count h3 {
    /* display: none; */
}

div#ob-form-wrap .row .input_text input {
    width: 100%;
}

/*end booking form */