body {
    background-color: #fff;
    font-family: Roboto, sans-serif;
    color: #000;
}

.container {
   min-width: 320px;
}

h2  {
    font-family: "Roboto Slab", sans-serif;
    font-size: 44px;
    font-weight: 400;
    letter-spacing: -0.12px;
}
h3  {
    font-family: "Roboto Slab", sans-serif;
    font-size: 28px;
    font-weight: 400;
    letter-spacing: -0.6px;
}

/* Nav */
nav {
    z-index: 10;
}
.nav_line_one{
    background-color: #fff;
    border-bottom: 1px solid #f4f4f4;
}
.nav_line_one .container{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.nav_line_one img {
    margin-top: 22px;
    margin-bottom: 22px;
}
.nav_line_one p{
    margin-left: 53px;
    margin-top: 4px;
    margin-right: 64px;
    font-size: 22px;
    font-weight: 300;
    letter-spacing: -0.4px;
}
.nav_phone_block {
    margin-right: 35px;
}
.nav_phone_block span {
    display: block;
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 11px;
    letter-spacing: -0.51px;
}
.nav_phone_block a {
    font-size: 27px;
    font-weight: 500;
    text-decoration: none;
    color: #000;
    line-height: 25px;
    letter-spacing: -0.75px;
}
.nav_line_two {
    background: transparent;
    transition: .3s linear;
    height: 49px;
    margin-top: -1px;
}
.nav_line_two.active {
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.31);
}
.nav_line_two li {
    margin: 10px 60px;
}
.nav_line_two li:first-child {
    margin-left: 0;
}
.nav_line_two li:last-child {
    margin-right: 0;
    margin-left: 54px;
}
.nav_line_two li a {
    color: #fff;
    font-size: 19px;
    font-weight: 400;
    padding: 0;
    letter-spacing: -0.1px;
    margin-top: 1px;
    line-height: 23px;
    outline: none;
}
.nav_line_two li a:focus, .nav_line_two li a:hover {
    text-decoration: none;
    background-color: transparent;
}
.nav_line_two.active li a {
    color: #000;
}
.nav_line_two li a:hover {
    color: #c7dcce;
    background: transparent;
    border-bottom: 2px solid #c7dcce;
}
.nav_line_two.active li a:hover {
    color: #0b8267;
    border-bottom: 2px solid #0b8267;
}

/* Header */
header {
    background-image: url("../image/header.jpg");
    height: 576px;
    margin-top: 65px;
}
header::before {
    background: -moz-linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 18%, rgba(0, 0, 0, 0.41) 23%, rgba(0, 0, 0, 0.31) 29%, rgba(0, 0, 0, 0) 48%);
    background: -webkit-linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 18%, rgba(0, 0, 0, 0.41) 23%, rgba(0, 0, 0, 0.31) 29%, rgba(0, 0, 0, 0) 48%);
    background: -o-linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 18%, rgba(0, 0, 0, 0.41) 23%, rgba(0, 0, 0, 0.31) 29%, rgba(0, 0, 0, 0) 48%);
    background: -ms-linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 18%, rgba(0, 0, 0, 0.41) 23%, rgba(0, 0, 0, 0.31) 29%, rgba(0, 0, 0, 0) 48%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 18%, rgba(0, 0, 0, 0.41) 23%, rgba(0, 0, 0, 0.31) 29%, rgba(0, 0, 0, 0) 48%);
    content: "";
    height: 640px;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
header .container {
    padding-top: 136px;
}
.header-column-one img {
    margin-top: 40px;
    margin-bottom: 15px;
}
.header-column-one {
    font-size: 26px;
    font-weight: 500;
    letter-spacing: -0.24px;
}
.header-column-one sup {
    font-size: 16px;
}
.header-text-line-one {
    display: block;
    background-color: #ebebec;
    padding-right: 8px;
    position: absolute;
}
.header-text-line-one p {
    margin-left: 12px;
    letter-spacing: 0.3px;
    margin-bottom: -4px;
}
.header-text-line-two {
    margin-top: 34px;
    padding-right: 8px;
    display: inline-block;
    background-color: #ebebec;
    margin-bottom: 12px;
}
.header-text-line-two p {
    margin-left: 12px;
    letter-spacing: 0.3px;
    margin-bottom: -3px;
    margin-top: -1px;
}
.header-column-one .ibutton {
    margin-top: 10px;
    font-size: 20px;
    padding: 5px 19px;
    letter-spacing: -0.6px;
}
.header-column-two img:first-child {
    margin-left: 10px;
}
.header-column-two a {
    width: 88px;
    height: 88px;
    background-color: #0b8267;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 50%;
    margin-left: -38px;
    top: 200px;
}
.header-column-two a:active {
    margin-top:-2px;
}
#youtube-player {
    position: absolute;
    left: 101px;
    margin-top: 18px;
    width: 395px;
    height: 221px;
}

/* Button */
.ibutton, a.ibutton {
    box-shadow: 0 8px 13px rgba(0, 0, 0, 0.31);
    background-color: #0b8267;
    padding: 5px 35px;
    color: #fff;
    font-size: 19px;
    font-weight: 400;
    line-height: 34px;
    letter-spacing: -0.09px;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    width: auto;
    border: none;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    outline: none;
}
.ibutton:hover, .ibutton:focus {
    text-decoration: none;
}
.ibutton:active {
    top: 2px;
}
.ripple_link{
    opacity: 1;
    position: relative;
    z-index: 0;
    overflow: hidden;
}
.ripple_link .ink.animate{
    opacity: 1;
}
.ink {
    display: block;
    position: absolute;
    background:rgba(255, 255, 255, 0.3);
    border-radius: 100%;
    -webkit-transform:scale(0);
    -moz-transform:scale(0);
    -o-transform:scale(0);
    transform:scale(0);
    z-index: 20;
}
.animate {
    -webkit-animation:ripple 0.65s linear;
    -moz-animation:ripple 0.65s linear;
    -ms-animation:ripple 0.65s linear;
    -o-animation:ripple 0.65s linear;
    animation:ripple 0.65s linear;
}
@-webkit-keyframes ripple {
    100% {opacity: 0; -webkit-transform: scale(2.5);}
}
@-moz-keyframes ripple {
    100% {opacity: 0; -moz-transform: scale(2.5);}
}
@keyframes ripple {
    100% {opacity: 0; transform: scale(2.5);}
}

/* Section lay-out*/
#lay-out h2 {
    margin-top: 70px;
    margin-bottom: 8px;
    letter-spacing: -0.5px;
}
#lay-out p {
    font-size: 25px;
    font-weight: 300;
    letter-spacing: -0.3px;
    line-height: 30px;
}

/* lay-out filter */
.select-rooms {
    position: relative;
    display: inline-block;
}
.lay-out-filter {
    margin-top: 34px;
}
.lay-out-filter .dropdown-menu {
    border: none;
    background-color: #fff;
    margin: 0;
    padding-top: 0;
    box-shadow: none;
    padding-bottom: 0;
}
.lay-out-filter .dropdown-menu li {
    border: 1px solid #ccc;
    border-bottom: none;
}
.lay-out-filter .dropdown-menu li:first-child {
    border-top: none;
    padding-top: 5px;
}
.lay-out-filter .dropdown-menu li:last-child {
    border-bottom-right-radius: 7px;
    border-bottom-left-radius: 7px;
    border-bottom: 1px solid #ccc;
}
.lay-out-filter .dropdown-menu li a {
    padding: 20px 6px 20px 17px;
    color: #4d4d4d;
    font-size: 16px;
    font-weight: 300;
    letter-spacing: -0.17px;
    outline : none;
}
.lay-out-filter .dropdown-menu li a:hover {
    background-color: #fff;
}
.lay-out-filter .dropdown-menu li label {
    float: right;
}
.checkbox {
    display: none;
}
.checkbox-custom {
    position: absolute;
    margin-left: -23px;
    width: 23px;
    height: 24px;
    border-radius: 2px;
    background-color: #f2ebe1;
}
.checkbox-custom, .label {
    display: block;
    vertical-align: middle;
    cursor: pointer;
}
.checkbox:checked + .checkbox-custom::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 2px;
    background: url("../image/icon/checkbox_icon.png") no-repeat center;
    background-color: #0b8267;
}
.filter-item-width {
    width: 217px;
}
.filter-item-width-comnat {
    width: 228px;
}
.select-rooms .btn-select {
    border-radius: 7px;
}
.input-template span {
    white-space: nowrap;
    overflow: hidden;
    display: block;
    margin-right: 24px;
    background: -moz-linear-gradient(45deg, #000 25%, #fff);
    background: -webkit-linear-gradient(45deg, #000 25%, #fff);
    background: -o-linear-gradient(45deg, #000 25%, #fff);
    background: linear-gradient(45deg, #000 25%, #fff);
    background: -ms-linear-gradient(45deg, transparent 25%, transparent);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.input-template-text::after, .input-template-text-open::after, .input-template-text-close::after {
    content: "";
    position: absolute;
    width: 17px;
    height: 10px;
    top: 50%;
    margin-top: -4px;
    right: 14px;
    border-radius: 2px;
    background: url("../image/icon/select_icon_sprite.png") no-repeat center;
    background-position: 100% 0;
    -moz-transition: 0.4s linear;
    -o-transition: 0.4s linear;
    -webkit-transition: 0.4s linear;
}
.input-template-text-open::after {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}
.input-template-text-close::after {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}
.input-control .input-template {
    display: block;
    outline: none;
    width: 100%;
    border: 1px solid #ebebeb;;
    background-color: #ebebeb;
    padding: 27px 13px 9px;
    font-size: 20px;
    font-weight: 300;
    color: #000000;
    letter-spacing: -0.13px;
    text-align: left;
}
.input-control .label-template {
    display: block;
    position: absolute;
    left: 14px;
    top: 21px;
    color: #4d4d4d;
    font-size: 17px;
    font-weight: 300;
    letter-spacing: -0.17px;
    -webkit-transition: ease-out 0.3s;
    -moz-transition: ease-out 0.3s;
    -ms-transition: ease-out 0.3s;
    -o-transition: ease-out 0.3s;
    transition: ease-out 0.3s;
    cursor: text;
}
.filter-item-width-comnat .label-template {
    cursor: pointer;
}
.input-control .input-template:valid + .label-template,
.input-control .input-template:focus + .label-template {
    top: 12px;
    font-size: 13px;
    font-weight: 300;
    letter-spacing: -0.13px;
}
.input-control .input-template:focus {
    background-color: #fff;
    border: 1px solid #0b8267;
}
.btn-select:focus {
    border: 1px solid #ccc !important;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.label-template-filled {
    display: block;
    position: absolute;
    left: 14px;
    color: #4d4d4d;
    -webkit-transition: ease-out 0.3s;
    -moz-transition: ease-out 0.3s;
    -ms-transition: ease-out 0.3s;
    -o-transition: ease-out 0.3s;
    transition: ease-out 0.3s;
    top: 12px;
    font-size: 13px;
    font-weight: 300;
    letter-spacing: -0.13px;
}
.price-from-up {
    display: inline-block;
    margin-right: 16px;
    float: right;
}
.price-from-up .input-group {
    display: inline-block;
}
.price-from-up .input-group:first-child {
    margin-right: 3px;
}
.price-from-up .input-group:first-child input {
    border-bottom-left-radius: 7px;
    border-top-left-radius: 7px;
}
.price-from-up .input-group:last-child input {
    border-bottom-right-radius: 7px;
    border-top-right-radius: 7px;
}
.area-from-up {
    display: inline-block;
    float: right;
}
.area-from-up .input-group {
    display: inline-block;
}
.area-from-up .input-group:first-child {
    margin-right: 3px;
}
.area-from-up .input-group:first-child input {
    border-bottom-left-radius: 7px;
    border-top-left-radius: 7px;
}
.area-from-up .input-group:last-child input {
    border-bottom-right-radius: 7px;
    border-top-right-radius: 7px;
}
.filter-button {
    margin-top: 10px;
}
.center-filter-button {
    display: inline-block;
    position: absolute;
    margin-top: 29px;
}
.center-filter-button .ibutton {
    padding: 5px 20px;
    margin-left: -4px;
    letter-spacing: -0.28px;
}
.right-filter-link {
    display: block;
    float: right;
    color: #0b8267;
    font-size: 17px;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: -0.6px;
    border-bottom: 1px dashed #0b8267;
}
.right-filter-link:focus {
    outline: none;
    color: #0b8267;
    text-decoration: none;
}
.right-filter-link:hover {
    color: #0b8267;
    border-bottom: 1px solid transparent;
    text-decoration: none;
    outline: none;
    cursor: pointer;
}
.all-layouts-record {
    z-index: 1;
}

/* lay-out items */
.list-apartments {
    margin-top: 140px;
}
.list-apartments .col-lg-4 {
    margin-bottom: 3px;
}
.apartment-item {
    border: 1px solid #0b8267;
    margin-top: 13px;
}
.apartment-item:hover .magnifier{
    opacity: 0.71;
}
.apartment-item:hover .image-block-magnifier{
    opacity: 1;
}
.magnifier {
    top: 13px;
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    border: 1px solid #cccccc;
    background-color: #c7dcce;
    opacity: 0;
    -webkit-transition: .4s;
    -moz-transition: .4s;
    -ms-transition: .4s;
    -o-transition: .4s;
    transition: .4s;
}
.image-block-magnifier {
    opacity: 0;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    -webkit-transition: .5s;
    -moz-transition: .5s;
    -ms-transition: .5s;
    -o-transition: .5s;
    transition: .5s;
}
.magnifier-image {
    background-image: url("../image/icon/magnifier.png");
    width: 134px;
    height: 134px;
    display: inline-block;
    position: relative;
    top: 50%;
    margin-top: -60px;
}
.lg-apartment-item-column-one {
    padding-right: 5px;
}
.lg-apartment-item-column-one .magnifier,
.lg-apartment-item-column-one .image-block-magnifier {
    left: 15px;
    right: 5px;
}
.lg-apartment-item-column-two {
    padding-right: 10px;
    padding-left: 10px;
}
.lg-apartment-item-column-two .magnifier,
.lg-apartment-item-column-two .image-block-magnifier {
    left: 10px;
    right: 10px;
}
.lg-apartment-item-column-three {
    padding-left: 5px;
}
.lg-apartment-item-column-three .magnifier,
.lg-apartment-item-column-three .image-block-magnifier {
    left: 5px;
    right: 15px;
}
.apartment-item:hover {
    cursor: pointer;
}
.apartment-item img{
    margin-top: 8px;
    margin-bottom: 12px;
}
.lay-out-item-text {
    margin-left: 12px;
}
.lay-out-item-text sup {
    font-size: 12px;
    top: -.7em;
}
.lay-out-item-text p{
    font-size: 22px !important;
    font-weight: 300;
    letter-spacing: -0.16px;
    margin: 0;
}
.lay-out-item-text p strong{
    font-weight: 400;
}
.lay-out-item-text span {
    color: #262526;
    font-size: 33px;
    font-weight: 500;
    letter-spacing: -0.28px;
}
.view-all-lay-out {
    display: inline-block;
    margin-top: 32px;
    float: none;
    margin-bottom: 70px;
    font-size: 19px;
    line-height: 24px;
}

/* fancybox */
.fancybox-close {
    top: -13px;
    right: -56px;
}
.fancybox-skin {
    background: #fff;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}
.fancybox-overlay {
    background: url(../image/extra/fancybox_overlay.png);
}
#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
    background-image: none;
}
#fancybox-loading div {
    background: url(../image/extra/fancybox_loading.gif) center center no-repeat;
}
.fancybox-close {
    background-image: url(../image/icon/close_icon.png);
    width: 50px;
    height: 50px;
    background-size: cover;
}
.fancybox-inner {
    overflow: inherit !important;
}

/* section photo */
#photo {
    background-color: #ebebeb;
}
#photo h2 {
    margin-top: 70px;
    margin-bottom: 8px;
    letter-spacing: -0.5px;
}
#photo p {
    font-size: 25px;
    font-weight: 300;
    letter-spacing: -0.2px;
    line-height: 30px;
}
.view-entry {
    margin-top: 50px;
    padding: 5px 22px !important;
    margin-bottom: 72px;
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    padding: 33px;
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    padding: 30px;
}
#photo .swiper-slide-active .text-on-photo {
    transform: translate(0,-449px);
    -webkit-transform: translate(0,-449px);
    -o-transform: translate(0,-449px);
    -moz-transform: translate(0,-449px);
    -webkit-transition: .5s;
    -moz-transition: .5s;
    -ms-transition: .5s;
    -o-transition: .5s;
    transition: .5s;
}
#photo  .text-on-photo {
    position: absolute;
    bottom: -388px;
    left: 118px;
}
#photo .swiper-container p {
    font-size: 38px !important;
    color: #282828;
    display: inline-block;
    background-color: #c5decd;
    margin: 0;
    margin-top: 2px;
    padding: 8px 16px;
    line-height: 31px;
    letter-spacing: -0.5px;
    max-width: 930px;
}



/* swiper photo */
.swiper-photo {
    margin-top: 35px;
}
#photo .container-fluid {
    overflow: hidden;
}
#photo .swiper-slide {
    height: 509px;
    cursor: default;
}
#photo .swiper-slide-next {
    opacity: 0.5;
    background-color: rgba(235, 235, 235, .74);
}
#photo .swiper-slide-prev {
    opacity: 0.5;
    background-color: rgba(235, 235, 235, .74);
}
#photo .button-prev {
    background-color:  #fff;
}
.prev-photo {
    margin-top: -34px;
}
.next-photo {
    right: 13px;
    margin-top: -30px;
}
/* photos */
.photo-1 {
    background-image:url(../image/photo/swiper-photo-2.jpg);
    background-position: top center;
    -webkit-background-size: cover;
    background-size: cover;
}
.photo-2 {
    background-image:url(../image/photo/swiper-photo-1.jpg);
    background-position: top center;
    -webkit-background-size: cover;
    background-size: cover;
}
.photo-3 {
    background-image:url(../image/photo/swiper-photo-3.jpg);
    background-position: top center;
    -webkit-background-size: cover;
    background-size: cover;
}

/* section presentation*/
#presentation {
    overflow: hidden;
}
#presentation .presentation-block {
    margin-top: 18px;
}
.presentation-block img {
    position: absolute;
    top:-15px;
    left: -56%;
}
#presentation h2 {
    margin-top: 200px;
    margin-bottom: 12px;
    letter-spacing: -0.16px;
}
#presentation p {
    font-size: 25px;
    font-weight: 300;
    margin-left: 3px;
    letter-spacing: -0.2px;
    line-height: 30px;
    margin-bottom: 14px;
}
#presentation .ibutton {
    margin-left: 3px;
}
.presentation-download {
    position: absolute;
    background-image: url("../image/icon/presentation-download.png");
    width: 76px;
    height: 76px;
    border-radius: 50%;
    top: 390px;
    left: 242px;
    z-index: 1;
}
.presentation-download:active {
    margin-top: -2px;
}
.empty-block {
    height: 210px;
    width: inherit;
}

/* section reviews */
#reviews {
    height: 100%;
    background: #4e4e4e url("../image/reviews-bg.jpg") no-repeat top center;
}
#reviews  h2 {
    z-index: 1;
    margin-top: 68px;
    letter-spacing: -0.4px;
    color: #fff;
    position: absolute;
}
#reviews .col-lg-6 {
    padding-right: 0;
}
.text-reviews-block {
    margin-top: 149px;
    min-height: 180px;
    width: 100%;
    background-color: #fff;
    box-shadow: 0 3px 7px rgba(0, 0, 0, 0.35);
    border-radius: 12px;
    overflow: hidden;
    transition: 0.5s;
}
.text-reviews-block span {
    font-size: 16px;
    font-weight: 400;
    color: #b2b2b2;
    letter-spacing: -0.16px;
    display: block;
    margin-top: 26px;
    margin-bottom: 10px;
    margin-left: 19px;
}
.text-reviews-block p {
    color: #2d2d2d;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: -0.15px;
    line-height: 18px;
    margin-left: 19px;
    margin-right: 68px;
    margin-bottom: 33px;
    text-align: left;
}
.phone-while-block {
    float: right;
    position: relative;
    margin-top: -480px;
}
.phone-reviews-image {
    margin-top: 25px;
}
.image-for-phone-block {
    width: 176px;
    height: 308px;
    position: absolute;
    overflow: hidden;
    top: 73px;
    left: 55px;
}
.image-for-phone-block img {
    width: 176px;
    height: 308px;
}
.prev-review {
    background-size: 16px;
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    right: 0;
    left: auto;
    top: 18px;
}
.next-review {
    background-size: 16px;
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    right: 2px;
    top: auto;
    bottom: 0;
}
#reviews .ibutton {
    margin-top: 18px;
    padding: 5px 55px;
    margin-bottom: 70px;
    font-size: 20px;
}

/* section location */
#map {
    width: 100%;
    height: 504px;
}
.map-address {
    width: 570px;
    height: 278px;
    position: relative;
    margin-top: -414px;
    background-color: #323232;
}
#location h2 {
    color: #fff;
    padding-top: 68px;
    margin-left: 39px;
    letter-spacing: -0.45px;
}
#location h2 span {
    font-family: Roboto, sans-serif;
    font-size: 24px;
    font-weight: 400;
    display: block;
    margin-top: 7px;
    margin-bottom: 20px;
    letter-spacing: -0.3px;
}
#location .ibutton {
    margin-left: 40px;
    padding: 5px 22px;
}

/* section contacts */
#contacts .container {
    padding-top: 64px;
}
.contacts-phone {
    float: left;
}
.contacts-phone span {
    font-size: 20px;
    font-weight: 300;
    letter-spacing: -0.3px;
}
.contacts-phone a {
    display: block;
    font-size: 26px;
    font-weight: 500;
    letter-spacing: -0.5px;
    text-decoration: none;
    color: #000;
}
#callback-body {
    margin-left: 54px;
}
.callback-block {
    display: inline-block;
    margin-top: 8px;
}
.callback-phone::-webkit-input-placeholder {
    color:#626262;
}
.callback-phone::-moz-placeholder {
    color: #626262;
    opacity: 1;
}
.callback-phone:-moz-placeholder {
    color: #626262;
    opacity: 1;
}
.callback-phone:-ms-input-placeholder {
    color: #626262;
}
.callback-phone {
    background-color: #fff;
    color: #626262;
    opacity: 0.51;
    font-size: 20px;
    font-weight: 400;
    line-height: 35px;
    letter-spacing: -0.09px;
    border: none;
    border-bottom: 1px solid #626262;
    outline: none;
    float: left;
    margin-right: 12px;
    padding-bottom: 4px;
    margin-top: 4px;
}
.callback-phone:focus {
    border-bottom: 1px solid #0b8267;
}
#contacts .ibutton {
    margin-top: 3px;
    padding: 5px 39px;
}
.social {
    float: right;
    margin-top: 8px;
}
.social a {
    display: block;
    width: 48px;
    height: 48px;
    background-image: url("../image/icon/social-sprite.png");
}
.social li {
    list-style: none;
    float: left;
    margin-right: 10px;
}
.social li:last-child {
    margin-right: 0;
}
#social-youtube {
    background-position: 0;
}
#social-instagram {
    background-position: 164px;
}
#social-facebook {
    background-position: 106px;
}
#social-vk {
    background-position: 48px;
}
.public-offer {
    margin-top: 20px;
    margin-bottom: 64px;
    text-align: center;
}
.public-offer p {
    color: #000;
    font-size: 20px;
    font-weight: 300;
    letter-spacing: -0.17px;
}
#contacts .succes_callback_block {
    display: flex;
    justify-content: center;
}
#contacts form {
    display: inline-block;
}
#contacts .alert {
    display: none;
    margin-bottom: 0;
    color: #ff3537;
}
#callback-body .privacy-policy-modal {
    margin-left: 10px;
    margin-top: -2px;
}

/* footer */
footer {
    background-color: #323232;
}
footer a {
    color: #fff;
    font-size: 20px;
    font-weight: 300;
    letter-spacing: -0.17px;
    outline: none;
}
footer a:hover {
    color: #fff;
    text-decoration: none;
}
footer a:focus {
    color: #fff;
    text-decoration: none;
}
footer span {
    display: inline-block;
    text-align: left;
    line-height: 26px;
}
footer a:first-child {
    float: left;
}
.footer-last-a {
    float: right;
}
.footer-middle-a {
    margin-left: 32px;
}
.footer-navigate {
    margin-top: 38px;
    margin-bottom: 116px;
}
/* modal custom*/
.modal-block {
    padding: 40px;
}
.modal-block h3  {
    margin: 0;
}
.modal-block p {
    margin-top: 3px;
    font-size: 18px;
    letter-spacing: 0.5px;
    line-height: 22px;
    font-weight: 300;
    margin-bottom: 15px;
}
.modal-block .callback-phone {
    opacity: 0.8;
    font-size: 17px;
    font-weight: 400;
    width: 100%;
    margin-top: 10px;
}
.input-modal::-webkit-input-placeholder {
    color:#626262;
}
.input-modal::-moz-placeholder {
    color: #626262;
    opacity: 1;
}
.input-modal:-moz-placeholder {
    color: #626262;
    opacity: 1;
}
.input-modal:-ms-input-placeholder {
    color: #626262;
}
.input-modal {
    margin-top: 10px;
    background-color: #fff;
    color: #626262;
    opacity: 0.8;
    font-size: 17px;
    font-weight: 400;
    width: 100%;
    line-height: 35px;
    letter-spacing: -0.09px;
    border: none;
    border-bottom: 1px solid #626262;
    outline: none;
    float: left;
    margin-right: 12px;
    padding-bottom: 4px;
}
.input-modal:focus {
    border-bottom: 1px solid #0b8267;
}
.checkbox-custom-modal {
    position: relative;
    width: 15px;
    height: 15px;
    border: 1px solid #787878;
    background-color: #f2ebe1;
}
.checkbox-custom-modal , .label {
    display: block;
    vertical-align: middle;
    cursor: pointer;
}
.checkbox:checked + .checkbox-custom-modal::before {
    content: "";
    position: absolute;
    top: 2px;
    right: 2px;
    bottom: 2px;
    left: 2px;
    background: url("../image/icon/checkbox_icon_modal.png") no-repeat center;
    -webkit-background-size: cover;
    background-size: cover;
}
.succes_callback_block {
    display: inline-block;
    width: 100%;
    margin-top: 15px;
    opacity: 0.8;
}
.modal-block .succes_callback_block label {
    float: left;
}
.succes_callback_block span {
    font-size: 15px;
    color: #626262;
    letter-spacing: -0.16px;
}
.modal-block .privacy-policy-modal {
    margin-top: -2px;
    display: block;
    margin-left: 25px;
}
.succes_callback_block span a {
    color: #626262;
    border-bottom: 1px solid #626262;
    outline: none;
}
.succes_callback_block span a:hover {
    text-decoration: none;
    border-bottom: none;
    color: #0b8267;
}
.succes_callback_block span a:focus {
    text-decoration: none;
    border-bottom: none;
    color: #0b8267;
}
.modal-block .ibutton {
    display: block;
    margin-top: 10px;
    margin-bottom: 5px;
    width: 100%;
}
.email-modal {
    margin-top: 60px;
}
.modal-content {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}
.close-modal {
    width: 50px;
    height: 50px;
    position: absolute;
    right: -50px;
    top: -13px;
    cursor: pointer;
    background-image: url("../image/icon/close_icon.png");
    -moz-background-size: cover;
    -o-background-size: cover;
    -webkit-background-size: cover;
    background-size: cover;
    z-index: 1;
}
.modal-dialog {
    width: 437px;
}

/* modal callback */
#callback {

    color: #000;
    width: 435px;
    height: 100%;
}
.callback-block-time span {
    font-weight: 300;
    font-size: 18px;
    letter-spacing: -0.2px;
    margin-right: 10px;
}
.callback-select {
    position: relative;
    display: inline-block;
    font-weight: 400;
    font-size: 16px;
    color: #626262;
}
.btn-callback-select {
    background-color: #fff;
    border: 1px solid #e5e5e5;
    padding: 5px 60px 5px 15px;
    cursor: pointer;
    display: inline-block;
    width: 212px;
}
.arrow-select{
    position: absolute;
    width: 17px;
    height: 10px;
    background: url("../image/icon/select_icon_sprite.png") no-repeat center;
    background-position: 100% 0;
    right: 15px;
    top: 50%;
    margin-top: -5px;
    cursor: pointer;
    -moz-transition: 0.4s linear;
    -o-transition: 0.4s linear;
    -webkit-transition: 0.4s linear;
}
.open .arrow-select {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}
.callback-select .dropdown-menu {
    font-family: Roboto, sans-serif;
    width: 100%;
    font-size: 16px;
    border-radius: 0;
    margin-top: 0;
}
.callback-select li span {
    cursor: pointer;
    font-size: 16px;
    padding-left: 10px;
    position: relative;
    display: block;
    padding-bottom: 10px;
    padding-top: 10px;
    margin-top: -9px;
    margin-bottom: -9px;
    margin-right: 0;
    font-weight: 400;
}
.callback-select li span:first-child {
    margin-top: -5px;
}
.callback-select li span:last-child {
    margin-bottom: -5px;
}

/* modal record-on-view */
#record-on-view {
    color: #000;
    width: 435px;
    height: 100%;
}
#record-on-view p {
    margin-bottom: 0;
}

/* modal record-on-all-lay-outs */
#record-all-layouts {
    color: #000;
    width: 435px;
    height: 100%;
}
#record-all-layouts p {
    margin-bottom: 0;
}
#record-all-layouts .succes_callback_block {
    margin-top: 25px;
}

/* modal record-on-excursion */
#record-on-excursion {
    color: #000;
    width: 448px;
    height: 100%;
}
#record-on-excursion p {
    margin-bottom: 0;
}

/* modal write-review */
#write-review {
    color: #000;
    width: 435px;
    height: 100%;
}
#write-review p {
    margin-bottom: 0;
}
#write-review .email-modal {
    margin-top: 0;
}
#write-review textarea {
    margin-top: 10px;
    width: 100%;
    resize: none;
    padding: 5px 10px;
    color: #626262;
    font-size: 17px;
    font-weight: 400;
    border: 1px solid #626262;
    background-color: #fff;
    opacity: 0.8;
    outline: none;
}

/* modal download-presentation */
#download-presentation {
    width: 750px;
}
#download-presentation p {
    margin-bottom: 0;
}
#download-presentation .download-presentation-block {
    color: #000;
    width: 355px;
    height: 100%;
}
#download-presentation .download-presentation-block .succes_callback_block {
    margin-top: 25px;
}
.modal-image-presentation {
    position: absolute;
    right: -295px;
    width: 880px;
    top: -25px;
}

/* modal width */
#modal-download-presentation .modal-dialog {
    width: 752px;
}
#modal-record-excursion .modal-dialog {
    width: 450px;
}

/* modal error */
.error-input {
    border-bottom: 1px solid #ff3537 !important;
}
.error-checkbox {
    border: 1px solid #ff3537 !important;
}

.modal-block .alert {
    display: none;
}
.modal-block .alert {
    margin-bottom: 0;
    margin-top: 0;
    text-align: center;
    color: #ff3537;
    padding-top: 10px;
    padding-bottom: 0;
}

input:invalid {
    box-shadow: none;
}

/* modal success */
.modal-success {
    padding: 40px;
    width: 460px;
}
#record-on-view-success .modal-success,
#record-on-excursion-success .modal-success{
    width: 528px;
}
#record-all-layouts-success .modal-success {
    width: 515px;
}
#write-review-success .modal-success {
    width: 455px;
}
#download-presentation-success .modal-success {
    width: 575px;
}
.modal-success p {
    font-size: 20px;
    line-height: 24px;
}
.repeat-link {
    color: #0b8267;
    font-size: 17px;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: -0.6px;
    border-bottom: 1px dashed #0b8267;
}
.repeat-link:focus {
    outline: none;
    color: #0b8267;
    text-decoration: none;
}
.repeat-link:hover {
    color: #0b8267;
    border-bottom: 1px solid transparent;
    text-decoration: none;
    outline: none;
    cursor: pointer;
}
#modal-callback-success .modal-dialog {
    width: 462px;
}
#modal-record-view-success .modal-dialog,
#modal-record-excursion-success .modal-dialog {
    width: 530px;
}
#modal-record-layouts-success .modal-dialog {
    width: 517px;
}
#modal-write-review-success .modal-dialog {
    width: 457px;
}
#modal-download-presentation-success .modal-dialog {
    width: 576px;
}