html, body {
    font:18px Montserrat, arial, sans-serif;
    color:rgba(51,51,51,.85);
    background:#f3eee8;
    overflow-x: hidden;
}

body.disabled {
    overflow:hidden;
}

body.disabled:after {
    content:"";
    display:block;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.5);
    z-index:80;
}

.button {
	display:inline-block;
	border:none;
	text-align:center;
    background:transparent;
    font-size:18px;
    font-weight:500;
    height:55px;
    line-height:55px;
    padding:0 30px;
    border-radius:28px;
}

.button:disabled {
    cursor:default;
}

.button.width-auto {
    display:block;
    width:100%;
}

.button.orange {
    background:#F4A745;
    color:white;
}

.button.orange:hover {
    background:#f18700;
}

.button.brown {
    background:#F4A745;
    color:white;
}

.button, a.item-img, .slick-arrow, .slick-arrow svg path, .text-orange-hover {
	-ms-transition:all .2s ease;
	-o-transition:all .2s ease;
	-moz-transition:all .2s ease;
	-webkit-transition:all .2s ease;
	transition:all .2s ease;
}

a.item-img, .item-img img {
    display:block;
}

.item-img img {
    width:100%;
}

.with-icon {
    position:relative;
}

.with-icon img {
    display:block;
    position: absolute;
    top:0;
    left:0;
}

.with-icon-orange .content-text p {
    margin-bottom:0;
}

.icon-orange {
    position:relative;
    width:67px;
    height:67px;
    background:#F4A745;
    border-radius:100%;
}

.icon-orange img {
    display:block;
    position: absolute;
    width:48%;
    height:auto;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
}

.br15 {
    border-radius:15px;
}

.br20 {
    border-radius:20px;
}

.br30 {
    border-radius:30px;
}

.with-shadow {
    box-shadow:0 0 10px 5px rgba(0,0,0,.05);
}

.caption {
    font-size:45px;
    font-weight:600;
    margin-bottom:60px;
}

.text-center {
    text-align:center;
}

.section-heading {
    margin-bottom:54px;
}

.section-heading .caption {
    margin-bottom:0;
}

.slider-wrapper {
    margin-left:-10px;
    margin-right:-10px;
}

.item-slide > * {
    display:block;
    margin:0 10px;
}

.text-grey {
    color:#615750;
}

.text-orange, .text-orange-hover:hover {
    color: #F4A745 !important;
}

.text-brown {
    color:#C8A27B !important;
}

.text-darkbrown {
    color:#615750 !important;
}

.pt-big {
    padding-top:clamp(60px, 10.8%, 200px);
}

.pb-big {
    padding-bottom:clamp(60px, 10.8%, 200px);
}

.pt-medium {
    padding-top:clamp(65px, 7.9%, 150px);
}

.pb-medium {
    padding-bottom:clamp(65px, 7.9%, 150px);
}

.bg {
    background-position:center top;
    background-size:cover;
}

.bg-white {
    background-color:white;
}

.slick-arrow {
    display:inline-block;
    position:relative;
    padding:0;
    width:60px;
    height:60px;
    background:#F4A745;
    outline:none !important;
    border:none !important;
    border-radius:100%;
}

.slick-arrow.slick-disabled {
    opacity:.4;
    cursor:default;
}

.slick-arrow svg {
    display:block;
    position: absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
}

.slick-arrow:hover {
    background:#f18700;
}

.slick-prev {
    margin-right:15px;
}

.abs-link {
    display:block;
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:none;
    background:transparent;
    box-shadow:none !important;
    outline:none !important;
    z-index:10;
}

.dark-hover {
    position:relative;
    overflow:hidden;
}

.dark-hover:before {
    content:"";
    display:block;
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.15);
    transition:all .2s ease;
    opacity:0;
}

.dark-hover:hover:before {
    opacity:1;
}

/* --------------------------------------------------------- HEADER -------------------------------------------------------- */
header {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    font-weight:500;
    z-index:100;
}

header.fly {
    position:fixed;
    background:white;
}

body.compensate-for-scrollbar header, body.disabled header {
    padding-right:15px;
}

.header-top {
    padding:26px 0 15px;
    border-bottom:1px solid rgba(51,51,51,.2);
}

.logo {
    display:block;
}

.logo img {
    max-height: 36px;
    width:100%;
}

.header-logo .logo {
    max-width:368px;
}

.header-logo .logo img {
    width: auto;
    max-height: 36px;
}

.header-phone {
    text-align:center;
    font-weight:700;
    font-size:18px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap:10px;
        
}
.header-phone img{
    width: 36px;
    height: 36px;
}

.header-address {
    font-size:16px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap:10px;
}

.header-address img{
    width: 36px;
    height: 36px;
}

.socnets a {
    display:inline-block;
    position:relative;
    width:36px;
    height:36px;
    margin-right:16px;
    transition:all .2s ease;
}

.socnets a:last-child {
    margin-right:0;
}


.socnets a img {
    display:block;
    position: absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:36px;
    height:36px;
}

.header-nav {
    padding:30px 0 20px;
}

.navigation {
    padding:0;
    font-size:20px;
    margin:unset !important;
}

.navigation li{
    border-bottom: 1px dashed;
    padding:unset !important;
}

.menu-toggler {
    position:relative;
    width:38px;
    height:22px;
    cursor:pointer;
}

.menu-toggler div {
    position: absolute;
    left:0;
    width:100%;
    height:4px;
    background:#F4A745;
    border-radius:2px;
    transition:all .2s ease;
}

.menu-toggler div:first-child {
    top:0;
}

.menu-toggler div:nth-child(2), .menu-toggler div:nth-child(3) {
    top:50%;
    margin-top:-2px;
}

.menu-toggler div:last-child {
    bottom:0;
}

.menu-toggler.active div:first-child, .menu-toggler.active div:last-child {
    display:none;
}

.menu-toggler.active div:nth-child(2) {
    -ms-transform:rotate(45deg);
    -moz-transform:rotate(45deg);
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
}

.menu-toggler.active div:nth-child(3) {
    -ms-transform:rotate(-45deg);
    -moz-transform:rotate(-45deg);
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
}

.start {
    height:165px;
}

/* ------------------------------------------------- HOME ---------------------------------------------------*/
.start-section {
    padding-top:35px;
    background:linear-gradient(to bottom, #F3EEE8, #FBF7F3);
}

.start-block {
    z-index:10;
    position:relative;
    background:#FFFDFB;
    overflow:hidden;
    
}

.start-content {
    padding: 80px !important;
}

.start-content, .start-content > * {
    position:relative;
}

.start-content:before {
    content:"";
    display:block;
    position: absolute;
    bottom: -30px;
    right: 0;
    width: 56%;
    height: 270px;
    background-image:url(../images/hands.svg);
    background-repeat:no-repeat;
    background-size:contain;
}

.start-caption {
    display:inline-block;
    font-size:52px;
    font-weight:600;
    padding-bottom:10px;
    border-bottom:1px solid #C8A27B;
    margin-bottom:30px;
}

.start-content .button {
    margin:30px 0 45px;
}

.start-image {
    padding: 80px !important;
    padding-left: unset !important;
    position: absolute;
    top:0;
    right:0;
    height:100%;
}

.start-image img {
    height:100%;
    object-fit:cover;
}

.about-section {
    background:linear-gradient(to bottom, #FBF7F3, #F3EEE8);
}

.about-section, .about-section .container {
    position:relative;
}

.about-section .container {
    z-index:2;
}

.about-image {
    padding:36px 50px 0 15px !important;
    text-align:right;
}

.about-image .item-img {
    display:inline-block;
    width:69%;
}

.about-image img {
    border-radius:100%;
}

.about-content {
    padding-right: 5% !important;
}

.about-content .caption {
    margin-bottom:45px;
}

.about-content .with-icon-orange {
    max-width:550px;
    margin-bottom:20px;
}

.problems-right {
    padding-right:60px !important;
}

.problems-list {
    padding:0;
}

.problem-tab {
    position:relative;
    padding:26px 26px 26px 95px;
    font-size:20px;
    font-weight:600;
    border-bottom:1px solid #C8A27B;
    cursor:pointer;
    transition:all .2s ease;
    align-items: center;
    height: 100px;
    display:flex;
}

.problem-tab.active {
    border-radius:16px;
    border-bottom:1px solid transparent;
    background:#FBF7F3;
    cursor:default;
}

.problem-tab:hover {
    color:#F4A745;
}

.problem-tab.active:hover {
    color:rgba(51,51,51,.85);
}

.problem-num {
    display:block;
    position: absolute;
    top:50%;
    left:34px;
    width:44px;
    height:44px;
    transform:translateY(-50%);
    text-align:center;
    line-height:44px;
    font-size:24px;
    font-weight:700;
    color:rgba(51,51,51,.85);
    border-radius:100%;
    background:white;
}

.problem-tab.active .problem-num {
    background:#F4A745;
    color:white;
}

.problem-tab-block {
    display:none;
    padding:50px;
    min-height:100%;
}

.problem-tab-block.active {
    display:block;
}

.problem-tab-block .with-icon-orange {
    margin-bottom:36px;
}

.problem-tab-block .with-icon-orange .content-text {
    font-size:24px;
}

.service-item, .service-question {
    text-align:center;
    margin-bottom:24px;
    min-height:calc(100% - 24px);
}

.service-item {
    background:#E6D9CB;
    padding:55px 60px 38px;
}

.service-image {
    width:70%;
    margin:0 auto 50px;
}

.service-image img {
    border-radius:100%;
}

.service-title {
    font-size:30px;
    font-weight:700;
}

.service-item .service-title {
    padding-bottom:18px;
    border-bottom:1px solid rgba(97, 87, 80, 0.85);
    margin-bottom:30px;
}

.service-question {
    padding:0 60px;
}

.service-question .row {
    min-height:620px;
    padding:104px 0 50px;
}

.service-question-icon {
    margin-bottom:25px;
}

.service-question .service-title {
    margin-bottom:25px;
}

.service-question .content-text {
    margin: 0 auto 20px;
    max-width: 260px;
}

.cases-section {
    position:relative;
    z-index:2;
}

.cases-section .section-heading {
    margin-bottom:45px;
}

.cases-content {
    margin-bottom:30px;
}

.case-item .item-img {
    overflow:hidden;
}

.case-intro {
    padding:35px 25px 25px;
}

.case-title {
    font-size:22px;
    font-weight:600;
    margin-bottom:25px;
    min-height:54px;
}

.cons-section {
    position:relative;
}

.cons-section:before, .cons-section:after {
    content:"";
    display:block;
    position: absolute;
    background-repeat:no-repeat;
    background-size:contain;
}

.cons-section:before {
    top:-130px;
    left:0;
    bottom:305px;
    width:26%;
    background-image:url(../images/wave2-left.svg);
}

.cons-section:after {
    top: -190px;
    right: 0;
    bottom: 50px;
    width: 50.3%;
    background-image:url(../images/wave2-right.svg);
    background-position:right top;
}

.cons-wrapper {
    position:relative;
    height:844px;
    z-index:2;
}

.cons-image {
    display:block;
    margin:0 auto;
    width:842px;
}

.cons-item {
    position: absolute;
    padding:30px;
    width:398px;
}

.cons-num {
    font-size:40px;
    font-weighT:500;
    margin-bottom:10px;
}

.cons-item:nth-child(2) {
    top:6%;
    left:5%;
    border-radius:30px 30px 0 30px;
}

.cons-item:nth-child(3) {
    top: 19%;
    right: 7%;
    border-radius:30px 30px 30px 0;
}

.cons-item:nth-child(4) {
    bottom: 12%;
    left: 14.5%;
    border-radius:30px 0 30px 30px;
}

.cons-item:nth-child(5) {
    bottom:0;
    right:22%;
    border-radius:0 30px 30px 30px;
}

.video-section, .video-section .container {
    position:relative;
}

.video-section {
    background:linear-gradient(to bottom, #F3EEE8, #FBF7F3);
}

.video-section:before {
    content:"";
    display:block;
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-image:url(../images/wave-bottom.svg);
    background-position:right bottom;
    background-repeat:no-repeat;
    background-size:90% auto;
}

.video-item .item-img {
    position:relative;
    display:block;
    overflow:hidden;
    margin-bottom:40px;
}

.video-button {
    display:block;
    position: absolute;
    top:50%;
    left:50%;
    width:80px;
    height:80px;
    margin:-40px 0 0 -40px;
    border-radius:100%;
    transition:all .2s ease;
}

.video-button img {
    display:block;
    position: absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    height:auto;
}

.video-item:hover .video-button {
    transform:scale(1.2);
}

.video-title {
    font-size:22px;
    font-weight:600;
    text-align:center;
    padding:0 15px;
}

.contacts-section {
    background:linear-gradient(to bottom, #FBF7F3, #F3EEE8);
}

.contacts-map {
    position:relative;
}

.map {
    position:relative;
    height:672px;
    overflow:hidden;
}

.map iframe {
    display:block;
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}

.contacts-block {
    position: absolute;
    top:50%;
    left:5%;
    transform:translateY(-50%);
    padding:40px;
    width:560px;
    max-height:100%;
    overflow-y:auto;
    z-index:10;
}

.contacts-block .caption {
    margin-bottom:40px;
}

.contacts-main {
    font-size:22px;
    font-weight:600;
}

.contacts-block .content-text {
    margin-top:30px;
}

.contacts-block .button.width-auto {
    margin-top:35px;
    max-width:322px;
}

.footer-top {
    padding:36px 0 30px;
    border-bottom:1px solid rgba(51,51,51,.2);
}

.footer-logo .logo img{
    height:26px;
    width:auto;
}

.footer-nav ul {
    padding:0;
    text-align:center;
    font-size:16px;
}

.footer-nav li {
    display:inline-block;
    margin:0 20px;
}

.footer-bottom {
    padding:20px 0;
    font-weight:500;
}

.footer-bottom a {
    text-decoration:underline;
}

.footer-bottom a:hover {
    text-decoration:none;
}


/* ----------------------------------------------------------------- CONTENT ------------------------------------- */
.content-section {
    padding-top:40px;
    min-height:calc(100vh - 335px);
}

.content-text {
    font-size:18px;
    line-height: 1.5;
}

.content-text p, .content-text dl, .content-text ul, .content-text ol {
    margin-bottom: 1em;
}

.content-text ol ol, .content-text ul ul, .content-text ol ul, .content-text ul ol {
  margin-bottom: 0;
}

.content-text h1, .content-text h2, .content-text h3, .content-text h4, .content-text h5, .content-text h6 {
    font-weight:600;
    margin-bottom: 0.5em;
}

.content-text h1, .content-text h2 {
    font-size:28px;
}

.content-text h3 {
    font-size:24px;
}

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

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

.table-wrapper {
    width:100%;
    overflow-x:auto;
}

.content-text table {
    width:100%;
}

.content-text table td, .content-text table th {
    padding:10px;
    border:1px solid #cecece;
}

.content-text table tr:first-child td {
    background: #dae4f1;
}

.content-text img {
    height:auto !important;
}

.content-text iframe {
    max-width:100% !important;
}

.content-text ol, .content-text ul {
    overflow:hidden;
}

.content-text ol {
    list-style:decimal;
}

.content-text ul {
    list-style:disc;
}


/* ----------------------------------------------- FORMS ---------------------------------------------------*/

input[type="text"].form-control, input[type="email"].form-control, textarea.form-control, textarea.form-control:focus {
    padding:15px 20px;
    font-size:14px;
    font-weight:600;
    border-radius:28px;
}

input[type="text"].form-control, input[type="email"].form-control, textarea.form-control, input[type="text"].form-control:focus, input[type="email"].form-control:focus, textarea.form-control:focus {
    border:none !important;
    background-color:#F5E6D7 !important;
    outline:none !important;
    box-shadow:none !important;
}

input[type="text"].form-control, input[type="email"].form-control {
    height:55px;
}

input[type="text"].form-control.name, input[type="text"].form-control.phone {
    padding-left:40px;
    background-repeat:no-repeat;
    background-position:20px 50%;
}

input[type="text"].form-control.name {
    background-image:url(../images/icons/user-grey.svg);
}

input[type="text"].form-control.phone {
    background-image:url(../images/icons/phone-grey.svg);
}

label {
    display:block;
    font-size:inherit;
    margin-bottom:5px;
}

.error-text {
    font-size:14px;
    color:#a30000;
    font-weight:500;
}

.req {
    display:none;
}

.form-group {
    margin-bottom:15px;
}

.conf {
    font-size:12px;
    color:rgba(75,90,104,.45);
    line-height:1.5;
}

.conf a {
    text-decoration:underline;
}

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

/* ------------------------------------------ POPUP BLOCKS -------------------------------------------------*/
.popup-blocks {
    display:none;
}

.popup-block {
    width:100%;
}

.popup-form {
    position:relative;
    background:white;
    padding:60px;
    max-width:775px;
    color:#515050;
}

.popup-title {
    font-size:32px;
    font-weight:600;
    margin-bottom:15px;
}

.popup-text {
    font-size:16px;
    margin-bottom:30px;
}

.popup-form.fancybox__content>.carousel__button.is-close {
    top:10px;
    right:10px;
    color:#4B5A68;
}

.popup-form .carousel__button svg {
    filter:none;
}

/* попытка пофиксить баг в сафари */
.fancybox__container {
    overflow:visible !important;
}

.popup-video {
    position:relative;
    padding:0 !important;
}

.popup-video img {
    display:block;
    max-width:100%;
    max-height:80vh;
}

.popup-video video {
    display:block;
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

#mobileMenu {
    position:fixed;
    top:0;
    right:-400px;
    width:100%;
    max-width:400px;
    height:100%;
    overflow-y:auto;
    background:white;
    z-index:90;
    padding:80px 15px 20px;
    transition:right .2s ease;
}

#mobileMenu.active {
    right:0;
}

.mobile-nav {
    padding:0;
    font-size:16px;
    font-weight:600;
}

.mobile-nav li {
    margin-bottom:15px;
}

.mobile-contacts {
    background:#FAF6F2;
    padding:20px 20px 10px;
    margin-bottom:10px;
}

.mobile-contact-item {
    padding-left:22px;
    min-height:14px;
    font-weight:500;
    font-size:15px;
    margin-bottom:10px;
}

.mobile-contact-item.with-icon img {
    top:2px;
}

.agree-cookie {
    position:fixed;
    left:0;
    bottom:0;
    width:100%;
    background:white;
    padding:30px 0;
    box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, .09);
    z-index:100;
}

.agree-cookie .content-text {
    font-size: 14px;
}


/* ------------------------------------------------------ MEDIA QUERIES ------------------------------------ */

@media screen and (max-width:1699px) {
    .header-logo .logo {max-width:250px;}
    .header-logo .logo img {height:23px;}
    .header-phone {font-size:20px;}
    .header-address {font-size: 17px;}
    .start-content {padding: 35px !important;}
    .start-caption {font-size:48px;}
    .start-content .button {margin-bottom:0;}
    .problem-tab-block {padding: 40px;}
    .problem-tab-block .with-icon-orange .content-text {font-size: 20px;}
    .service-item {padding:30px 50px;}
    .service-image {margin-bottom:30px;}
    .service-title {font-size: 26px;}
    .service-item .service-title {padding-bottom: 15px;margin-bottom:25px;}
    .service-question {padding: 0 40px;}
    .service-question .row {min-height: 536px;padding: 90px 0 30px;}
    .service-question .service-title {margin-bottom: 20px;}
    .case-title {font-size: 18px;min-height:44px;}
    .case-intro {padding: 30px 20px 25px;}
    .video-item .item-img {margin-bottom:30px;}
    .video-title {font-size: 18px;}
    .contacts-block {left:30px;}
    .footer-nav li {margin:0 10px;}
    .socnets a {margin-right:10px;}
}

@media screen and (max-width:1399px) {
    html, body, .content-text, .button {font-size:16px;}
    .header-top {padding: 10px 0 10px;}
    .header-address {display:none;}
    .header-phone {text-align:right;}
    .navigation {font-size:18px;}
    .start {height:142px;}
    .start-section {padding-top: 20px;}
    .start-caption {font-size: 40px;}
    .start-content:before {width: 40%;height: 250px;}
    .caption {font-size: 40px;margin-bottom:50px;}
    .about-content .caption {margin-bottom: 30px;}
    .about-content {padding-right:15px !important;}
    .problems-right {padding-right: 40px !important;}
    .problem-tab {padding: 20px 20px 20px 75px;font-size: 18px;height:80px;}
    .problem-num {left: 20px;width: 40px;height: 40px;line-height: 40px;font-size: 20px;}
    .problem-tab-block {padding: 30px;}
    .problem-tab-block .with-icon-orange {margin-bottom: 20px;}
    .problem-tab-block .with-icon-orange .content-text {font-size: 18px;}
    .service-question {padding: 0 20px;}
    .service-question .row {min-height: 450px;padding: 70px 0 30px;}
    .cons-wrapper {height:700px;}
    .cons-item:nth-child(2) {left:0;}
    .cons-item:nth-child(3) {right:0;}
    .cons-item:nth-child(4) {left:5%;}
    .cons-item:nth-child(5) {right:12%;}
    .cons-image {width:60%;}
    .video-button {width: 60px;height: 60px;margin: -30px 0 0 -30px;}
    .contacts-block {left:20px;padding:30px;width:460px;}
    .contacts-main {font-size: 18px;}
    .contacts-block .content-text {margin-top: 15px;}
    .footer-nav ul {display:none;}
    .footer-top {padding: 26px 0 18px;}
    .content-section {min-height:calc(100vh - 286px);}
}

@media screen and (max-width:1199px) {
    html, body, .content-text, .button {font-size: 14px;}
    .content-text strong {font-weight:600;}
    .button {padding:0 20px;}
    .header-top .row.gutters12 {margin-right: -7px;margin-left: -7px;}
    .header-top .row.gutters12 > .col,
    .header-top .row.gutters12 > [class*="col-"] {padding-right:7px;padding-left:7px;}
    .header-nav {padding-top:20px;}
    .navigation {font-size: 16px;}
    .start-caption {font-size: 34px;}
    .about-image .item-img {display:block;width:100%;}
    .icon-orange {width:60px;height:60px;}
    .caption {font-size: 32px;margin-bottom:30px;}
    .about-content .caption {margin-bottom: 20px;}
    .section-heading {margin-bottom: 32px;}
    .problem-tab, .problem-tab-block .with-icon-orange .content-text {font-size:16px;}
    .with-icon-orange.row {margin-right: -7px;margin-left: -7px;}
    .with-icon-orange.row > .col, .with-icon-orange.row > [class*="col-"] {padding-right: 7px;padding-left: 7px;}
    .problems-right {padding-right: 30px !important;}
    .problem-tab-block {padding: 30px;}
    .problem-tab-block.br30 {border-radius:16px;}
    .service-item {padding: 30px 20px;}
    .service-title {font-size: 20px;}
    .row.gutters12 {margin-right: -5px;margin-left: -5px;}
    .row.gutters12 > .col,
    .row.gutters12 > [class*="col-"] {padding-right:5px;padding-left:5px;}
    .cons-wrapper {height: 500px;}
    .cons-item {padding: 20px;width: 280px;}
    .cons-num {font-size: 30px;}
    .cons-item:nth-child(2) {top: 2%;}
    .cons-item:nth-child(3) {top: 5%;}
    .cons-item:nth-child(4) {bottom: 2%;}
    .cons-item:nth-child(5) {right: 10%;}
    .contacts-block {left:10px;width:400px;}
    .contacts-main {font-size: 16px;}
    .contacts-block .button.width-auto {margin-top: 25px;max-width: 230px;}
    .map {height:600px;}
    .content-section {padding-top:20px;}
    .agree-cookie {padding:20px 0;}
}

@media screen and (max-width:991px) {
    header {background: #f3eee8;position:fixed;}
    .header-top {border-bottom:none;}
    .header-button, .header-nav {display:none;}
    .start {height:60px;}
    .about-section:after {display:none;}
    .about-section:before {width:auto;left:15px;right:15px;top:auto;bottom:0;height:60%;background-position:center bottom;background-image:url(../images/wave-about-mobile.svg);}
    .start-image {padding: unset !important;position:relative;height:600px;}
    .start-image img {object-position:top;}
    .about-image {padding:40px 15px 0 !important;}
    .about-image .item-img {width:60%;margin:0 auto;}
    .service-question {margin-bottom:0;}
    .service-question .row {min-height: 400px;padding: 60px 0 30px;}
    .cases-section .section-heading {margin-bottom: 20px;}
    .problems-right {padding-right:0 !important;}
    #problemsTabBlocks {display:none;}
    .problem-tab-wrapper {border-radius:30px;}
    .problem-tab {padding: 25px 20px 25px 75px;}
    .problem-num {width: 44px;height: 44px;line-height: 44px;font-size: 24px;}
    .problem-tab.active {
        background:#FBF7F3;
    }
    .problem-tab-block {padding: 20px 20px;margin-bottom:10px;}
    .problem-tab-block .with-icon-orange {margin-bottom: 10px;}
    .problem-tab-block .icon-orange {width:44px;height:44px;}
    .problem-tab-block .with-icon-orange .content-text strong {font-weight:600;}
    .cons-section:before, .cons-section:after, .video-section:before {display:none;}
    .contacts-block {position:relative;top:0;left:0;width:auto;max-height:none;margin-bottom:-30px;transform:none;z-index:10;}
    .map {height:400px;}
    .content-section {min-height:calc(100vh - 203px);}
    .agree-cookie .content-text {font-size:12px;}
    .agree-cookie .container {max-width:none;}
}

@media screen and (max-width:767px) {
    .header-phone {display:none;}
    .start-content:before {height:200px;}
    .start-image {height:500px;}
    .caption {font-size: 26px;}
    .start-content .button {margin-top:10px;}
    .about-image {padding-top:30px !important;}
    .slick-arrow {width:50px;height:50px;}
    .slick-prev {margin-right: 8px;}
    .service-item {padding: 40px 20px;margin-bottom:10px;}
    .service-image {width: 50%;}
    .service-question-icon {margin-bottom: 20px;}
    .case-intro {padding: 20px 15px 20px;}
    .case-title {font-size: 16px;min-height: 38px;margin-bottom:15px;}
    .cons-wrapper {height:auto;}
    .cons-image {width:432px;height:350px;object-position:top;object-fit:cover;}
    .cons-item {position:relative;width:auto;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;margin-bottom:15px;padding: 30px 30px 10px;}
    .cons-num {font-size: 40px;margin-bottom:5px;}
    .conf {margin-top:5px;}
}

@media screen and (max-width:575px) {
    .header-logo .logo img {height:15px;}
    .start-section {padding-top: 10px;}
    .start-content {padding: 25px 15px 50px !important;}
    .start-caption {font-size: 28px;margin-bottom:20px;}
    .start-content .button {display:none;}
    .start-content:before {width: 220px;height: 180px;bottom: -55px;}
    .start-image {height: 400px;}
    .caption {font-size: 22px;margin-bottom: 20px;}
    .about-content .caption {margin-bottom: 15px;}
    .icon-orange {width: 50px;height: 50px;}
    .with-icon-orange .content-text {line-height:1.3;}
    .about-content .with-icon-orange {margin-bottom:15px;}
    .about-section:before {bottom:20px;}
    .popup-form {padding:40px;}
    .popup-title {font-size: 28px;}
    .slick-arrow {width: 26px;height: 26px;}
    .slick-prev {margin-right: 4px;}
    .slick-arrow svg {height: 40%;width: auto;}
    .section-heading {margin-bottom: 20px;}
    .problems-section .caption.text-center, .cons-section .caption.text-center {text-align:left;}
    .case-intro {padding-top:30px;}
    .case-item .button {height:44px;line-height:44px;padding:0 20px;}
    .contacts-block .caption {margin-bottom: 20px;}
    .contacts-main {font-size: 14px;}
    .footer-bottom {padding:20px 0 10px;}
    .footer-bottom p {margin-bottom:10px;}
    .content-section {min-height:calc(100vh - 237px);}
}

@media screen and (max-width:500px) {
    .start-image {height: 350px;}
    .about-image {padding-top:10px !important;}
    .problem-tab, .problem-tab-block .with-icon-orange .content-text {font-size: 14px;}
    .problem-tab {padding: 15px 15px 15px 70px;}
    .problem-num {left:15px;}
    .problem-tab-block {padding: 15px;}
    .service-item {padding: 30px 15px;}
    .service-image {width: 70%;}
    .service-title {font-size: 18px;}
    .service-item .service-title {padding-bottom: 10px;margin-bottom: 15px;}
    .service-question .row {padding:50px 0 20px;}
    .service-question-icon {margin-bottom: 5px;width: 110px;}
    .service-question {padding: 0 5px;}
    .cases-section .section-heading {margin-bottom: 15px;}
    .cases-content {margin-bottom: 15px;}
    .cons-image {width: 366px;height: 298px;}
}

@media screen and (max-width:400px) {
    .start-image {height: 250px;}
    .cons-image {width: 275px;height: 220px;}
    .popup-form {padding:40px 15px 30px;}
    .popup-title {font-size: 22px;}
}

.waves-bg {
    rotate: 130deg;
    position: absolute;
    left: -60%;
    top: 0;
    width: 200%;
    height: 300px;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
}
@media screen and (max-width:992px) {
    .waves-bg {
        rotate: 136deg;
        left: -40%;
        top: 37%;
    }
}
#wavesCanvas {
width: 100%;
height: 100%;
display: block;
}
.problems-section{
    z-index: 2;
    position: relative;
}