a {
    transition: all 0.3s ease-in-out;
}
a:hover{
	text-decoration:none;
}
body{
	color: rgba(49, 49, 49, 0.75);
	line-height: 1.7;
}
.kont_a{
	position:relative;
	padding-left:35px;
}
footer .tel a{color: rgba(49, 49, 49, 0.7);}
footer .socs a,
.info_contacts .address .socs a{
	display:inline-block;
	    height: 30px;
    width: 30px;
    padding: 0;
    margin: 10px 0 0 5px;
	background-image:url(../images/icons.png);
}
.kont_a:before{
	content:"";
	display:block;
	position:absolute;
	width:30px;
	height:30px;
	left:0px;
	top:-6px;
	background-image:url(../images/icons.png)
}
.socs .whatsapp,
.kont_a.whatsap:before{background-position:33px -1px}
.socs .telaga,
.kont_a.telaga:before{background-position:74px -36px}
.socs .vk,
.kont_a.vk:before{background-position:74px -1px}
.socs .b17,
.kont_a.b17:before{background-position:33px -36px}
.socs .prodoc,
.kont_a.prodoc:before{background-position:74px -71px}
.socs .zoon,
.kont_a.zoon:before{background-position:32px -71px}
.socs .gis,
.kont_a.gis:before{background-position:33px -106px}
.socs .yand,
.kont_a.yand:before{background-position:74px -106px}
header{
	position: fixed;
    left: 0;
    top: 0;
    right: 0;
    z-index: 1080;
    display: flex;
    align-items: center;
    height: 56px;
    padding: 8px;
    color: #313131;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);
    background: #fff;
}
img{
	display: inline-block;
    max-width: 100%;
    height: auto;
}
input:focus{outline:0}
.info{
	position:relative;
	width:100%;
}
.info .address a,
.info .phones a{
	font-size:15px;
	color: #313131;
	display:block;
	line-height: 1.5;
	transition: .25s;
}
footer .tel a:hover,
.info .address a:hover,
.info .phones a:hover{
	color: #d1bfec;
}
.info .address>div,
.info .phones>div{
	position:relative;
	display:inline-block;
}
.info .address>div:before,
.info .phones>div:before{
	content:"";
	display:block;
	position:absolute;	
	background-image:url(../images/icons.png);
}
.info .address>div:before{
	background-position:-40px 4px;
	width:45px;
	height:40px;
	top:-10px;
}
.info .phones>div:before{
	background-position:0px 0px;
	width:35px;
	height:30px;
	top:-5px;
}
.info .address .socs:before{display:none}
header .menu{
	position: fixed;
    left: 0;
    top: 56px;
    bottom: -56px;
    z-index: 1079;
    width: 270px;
    padding: 0 0 81px 0;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    font-size: 14px;
    line-height: 34px;
	color: #fff;
    background: #fff;
    border-right: 1px solid #f7f9f9;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);
	transform: translateX(-110%);
	transition: 0.35s all cubic-bezier(0.65, 0.05, 0.36, 1);
}
header .menu.act{
	transform: translateX(0);
}
header .menu>.container{
	padding:0;
}
header .menu .search{
	padding: 20px 5px;
}
.searchform input[type=submit]{
	position: absolute;
	opacity: .5;
    top: 12px;
    right: 15px;
    width:23px;
	height:23px;
    padding: 0;
    margin: 0;
    border: none;
    background: url(../images/icons.png) -1px -33px;
}
.searchform input[type=text]{
	display: block;
    width: 100%;
    min-height: 48px;
    padding: 11px 60px 11px 19px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #313131;
    background-color: #fff;
    background-image: none;
    border-radius: 6px;
    -webkit-appearance: none;
    transition: .3s ease-in-out;
    border: 1px solid #c5c6cd;
	outline: none;
	
}
.searchform{
	position:relative;
	width: 100%;
    transition: .3s;
}
.ul_menu{
	font-size:22px;
	padding:0;
	list-style:none;
	margin:0;
}
.ul_menu li a:hover {
    color: #d1bfec;
}
.ul_menu li>span,
.ul_menu li>a{
	padding: 14px 56px 14px 18px;
	display: block;
	color:#313131;
}
.ul_menu li>span{
	color:#fff;
	background-color:#613c6d;
}
.ul_menu li:hover a,
.ul_menu li.active a{
	background-color:#613c6d;
	color:#fff;
}
.info_contacts{
	position: fixed;
	background-color: #fff;
    box-shadow: 0 0 22px -4px rgba(0, 0, 0, 0.17);
    right: 0;
    top: 56px;
    z-index: 1079;
    transform: translate3d(0, -10px, 0);
    padding: 30px;
    width: auto;
    border-radius: 0 0 0 6px;
    text-align: left;
    font-size: 14px;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
}
.info_contacts .phones{
	margin-bottom:20px	
}
.info_contacts .address a,
.info_contacts .phones a{
	padding-left: 50px;
	display:block;
	margin-bottom:3px;
}
.info_contacts.act{
	transform: translate3d(0, 0, 0);
    opacity: 1;
    visibility: visible;
}
.kont_mob{
	float: right;
    margin-right: -15px;
	background: none;
    border: none;
	padding: 0;
    outline: none;
    outline-offset: 0;
	-webkit-appearance: none;
	width: 40px;
    height: 40px;
    line-height: 40px;
	color: #313131;
	position: relative;
}
.kont_mob>span{
	position: absolute;
    width: 5px;
    height: 5px;
    line-height: 5px;
    text-align: center;
    background: #313131;
    left: 50%;
    margin-left: -2.5px;
    border-radius: 50%;
    transition: .3s all ease;
	top: 50%;
    margin-top: -2.5px;
}
.kont_mob>span:before,
.kont_mob>span:after{
	position: absolute;
    width: 5px;
    height: 5px;
    line-height: 5px;
    text-align: center;
    background: #313131;
    left: 50%;
    margin-left: -2.5px;
    border-radius: 50%;
    transition: .3s all ease;
	content:"";
}
.kont_mob>span:after{
	top: 100%;
    margin-top: 2.5px;
}
.kont_mob>span:before{
	bottom: 100%;
    margin-bottom: 2.5px;
}
.kont_mob.act>span:after{
	transform: translateY(-15px);
}
.kont_mob.act>span:before{
	transform: translateY(15px);
}
.kont_mob.act>span{
	transform: scale(0.7);
}
.menu_mob{
	vertical-align: top;
	position: relative;
    width: 40px;
    height: 40px;
    line-height: 40px;
    display: inline-block;
    padding: 0;
    outline: none !important;
    color: #313131;
    background-color: transparent;
    border: none;
	cursor: pointer;
	margin: 2px 0 0 -15px;
}
.menu_mob>span{
	width: 24px;
    height: 2px;
    background-color: #313131;
    backface-visibility: hidden;
    border-radius: 5px;
	position: relative;
    display: block;
	margin: auto;
    transition: .3s all ease;
}
.menu_mob>span:after,
.menu_mob>span:before{
	content:"";
	position:absolute;
    transition: .3s all ease;
	width: 24px;
    height: 2px;
    background-color: #313131;
    backface-visibility: hidden;
    border-radius: 5px;
	left: 0;
}
.menu_mob>span:after{
	top: 6px;
}
.menu_mob>span:before{
	top: -6px;
}
.menu_mob.act>span:before{
	transform: rotate(45deg);
	transform-origin: 50% 50%;
    top: 0;
}
.menu_mob.act>span:after{
	transform: rotate(-45deg);
	transform-origin: 50% 50%;
    top: 0;
}
.menu_mob.act>span{
	background: transparent;
    transition: .01s;
}
.faq img,
.intro img{
	max-width:100%;
}
.intro h3{
	color:#313131;
	margin-top:50px;
}
.intro .txt p{
	font-size:18px;
	margin:14px 0 0 0;	
}
.row1 h4{
	color: #313131;
}
.row1>div{
	margin-bottom:30px;
	padding-left:80px;
	position:relative;
}
.row1>div:last-child{
	margin-bottom:0;
}
.row1>div:before{
	content:"";
	display:block;
	position:absolute;
	left:10px;
	top:5px;
	width:50px;
	height:50px;
	background-image:url(../images/icons.png);
}
.row1>div.years_5:before{
	background-position:-83px 0px;
}
.row1>div.free_consult:before{
	background-position:-137px 0px;
}
.row1>div.guaranteed:before{
	background-position:-194px 0px;
}
.intro{
	padding:50px 0;
}
.bg2{
	padding:40px 0;
	position:relative;
	color:#fff;
		background-color:#503a87;
}
.my_quotes{
	margin:30px 0 -20px 0px;
	content:"";
	display:inline-block;
	width:58px;
	height:37px;
	background:url(../images/icons.png) -3px -64px;
}
.bg2 h3{
	margin-bottom:0;
}
.bg2 .txt p{
	margin: 34px 0 0 0;
	opacity: .75;
	line-height: 1.8;
    letter-spacing: .03em;
}
.bg_1{
	background-color:#e3f5f9;	
	padding:50px 0;
}
.bg_pink h3{
	color: #313131;
	text-align:center;
	font-weight:600;
}
.bg_pink{
	background-color:#fdf5fc;
	padding:50px 0;
}
.cont{
	text-align:center;
	margin-top:35px;
}
.cont>div{
	margin-bottom:30px;
}
.cont>div>a>span{
	width:68px;
	height:68px;
	margin:0 auto 15px auto;
	border: 2px solid #fbe7f8;
	background-color:#fbe7f8;
	border-radius:100%;
	display:block;
}
.cont>div>a+p{
	margin:10px 0 0 0;
}
.cont>div a:hover span{
	box-shadow: 0 17px 24px 0 rgba(0, 0, 0, 0.05);
	background-color:#fff;
}
.cont>div a:hover{
	color:#613c6d;
}
.cont>div a>span:before{
	content:"";
	display:inline-block;
	margin-top:18px;
	border-radius:100%;
	background-image:url(../images/icons.png);
}
.cont .indi a>span:before{
	background-position: -72px -119px;
    width: 34px;
    height: 34px;
}
.cont .couples a>span:before{
	background-position: -36px -119px;
    width: 34px;
    height: 34px;
}
.cont .families a>span:before{
	background-position: 1px -118px;
    width: 34px;
    height: 34px;
}
.cont>div a{
	font-size: 18px;
	line-height: 1.5;
	color: rgba(49, 49, 49, 0.75);
}
.faq .txt{
	padding:50px 0 0 0;
}
.faq .txt ul li p{
	color:#9b9595;
	max-height: 0;
    transition: max-height .5s ease-out;
    overflow: hidden;
}
.faq .txt ul li.act p{
	max-height: 500px;
	transition: max-height .5s ease-in;
	margin:15px 0 0 0;
}
.faq .txt ul li:before{
	content:"+";
	display:block;
	width:20px;
	height:20px;
	background-color:#613c6d;
	position:absolute;
	left:10px;
	top:19px;
	color:#fff;
	border-radius:2px;
	text-align:center;
	line-height: 1.3;
}
.faq .txt ul li:hover h5{
	color:#940089;
}
.faq .txt ul li.act:before{
	content:"-";
}
.faq .txt ul li h5{
	font-size: 17px;
    line-height: 1.5;
	margin:0;
}
.faq .txt ul li.act h5{
	color:#613c6d
}
.faq .txt ul li:last-child{
	border-bottom: 1px solid #f5f6fa;
}
.faq .txt ul li{
	padding: 15px 20px 15px 50px;
	margin:0;
	border-top: 1px solid #f5f6fa;
	position:relative;
	cursor:pointer;
}
.faq .txt ul{
	padding:0;
	list-style:none;
	margin-top:30px;
}
.faq .txt h3{
	font-size: 24px;
    line-height: 1.3;
	margin:0;
	color: #313131;
}
.faq{
	padding: 50px 0;
}
.free_cons_2 h3{
	font-size: 24px;
    line-height: 1.3;
    letter-spacing: .02em;
	margin:10px 0 0 0;
	color:#313131;
}
.free_cons_2 p i{
	color:#613c6d;
	font-size: 16px;
    line-height: 1.5;
    letter-spacing: .01em;
}
.free_cons_2 .div_btn{
	margin:25px 0 0 0;
}
.free_cons_2 h3+p{
	margin:20px 0 0 0;
}
.free_cons_2{
	text-align:center;
	background-color:#e3f5f9;
	padding: 35px 0;
	margin-top:40px;
}
.callback .call_form{
	margin-top:20px
}
.modal_block form label,
.callback .call_form label{
	display:block;
	color: rgba(49, 49, 49, 0.75);
	margin-bottom: 10px;
    font-size: 14px;
	cursor: pointer;
	font-weight: 400;
}
.callback h3{
	color: #313131;
	margin:0;
}
.callback{
	background-color:#fdf5fc;
	padding: 50px 0 0 0;
}
.modal_block form input[type=submit],
.call_form input[type=submit],
.my_btn{
	color: #41333f;
	border:none;
	line-height: 1.5;
    padding: 10px 20px;
    background-color: #d1bfec;
    border-color: #d1bfec;
	transition: 0.25s cubic-bezier(0.2, 1, 0.3, 1);
}
.modal_block form input[type=submit]:active,
.modal_block form input[type=submit]:hover,
.call_form input[type=submit]:active,
.call_form input[type=submit]:hover,
.my_btn:active,
.my_btn:hover{
	color: #fff;
    background-color: #613c6d;
    border-color: #613c6d;
}
.kontakt_pink .col-md-4{
	padding:30px 0;
}
.kontakt_pink .col-md-4:first-child{
	padding-top:0;
}
.kontakt_pink .col-md-4:last-child{
	padding-bottom:0;
}
.kontakt_pink .col-md-4:nth-child(2){
	border-top:1px solid #e5cee1;
	border-bottom:1px solid #e5cee1;
}
.kontakt_pink{
	padding: 35px 0;
	background-color:#fbe7f8;
}
.kontakt_pink .phones:before,
.kontakt_pink .email:before,
.kontakt_pink .geo:before{
	content:"";
	display:block;
	background-image:url(../images/icons.png);
	margin:0 auto 15px auto;
}
.kontakt_pink .phones:before{
	width:35px;
	height:30px;
	background-position:0px 0px;
}
.kontakt_pink .email:before{
	width:33px;
	height:30px;
	background-position:-247px 0px;
}
.kontakt_pink .geo:before{
	width:35px;
	height:34px;
	background-position:-43px 0px;
}
.kontakt_pink a{
	color:#313131;
}
.kontakt_pink a:hover{
	color:#d1bfec;
}
footer .msgs a:hover{
	color:#000;
}
footer .txt p{
	margin:14px 0 0 0;
}
footer .txt h4{
	color: #313131;
	font-size: 18px;
    line-height: 1.5;
	letter-spacing: 0;
	margin:0;
}
footer .txt{
	padding:35px 0 11px 0;
}
footer .txt .col-md-4{
	margin-bottom:50px;
}
footer .txt a{
		font-size: 26px;
		line-height: 1.23077;
	}
	footer .txt a p{
		font-size: 16px;
		line-height: 1.5;
	}	
footer .txt img{
	max-width:100%;
	margin-top:15px;
}
footer .txt>div{
	margin-bottom:20px;
}
footer .msgs>div{
	margin:15px 0 0 0;
}
footer .msgs .meta{
	margin:5px 0 0 0;
	color: rgba(49, 49, 49, 0.6);
}
footer .msgs a{
	color:rgba(49, 49, 49, 0.75)
}
footer .msgs .meta span{
	margin:0 4px;
	width: 1px;
	height: 1px;
	border-radius: 50%;
	background: #313131;
	display:inline-block;
	vertical-align: middle;
}
footer .menu ul{
	padding:0;
	text-align:center;
	list-style:none;
	color: #984c8a;
}
footer .menu ul li{
	display:inline-block;
	vertical-align: middle;
	margin-top: 10px;
    padding-left: 10px;
    padding-right: 10px;	
}
footer .menu ul li a{
	color:inherit;
	font-size:16px;
}
footer .bottom{
	padding:30px 0;
	border-top:1px solid #e8e8e8;
	margin-top:30px;
	text-align:center;
}
footer .bottom img{
	margin-bottom:18px;
}
footer .menu>ul>li>a:hover{color:#613c6d}
.info_logo a img{
	display:inline-block;
	vertical-align: top;
	height:40px;
}
.info_logo>a {
	display:inline-block
}
.info_logo a>span{
	display:inline-block;
	padding:4px 0 0 15px;
	font-size:18px;
	color: #313131;
    font-weight: bold;
	transition: .25s;
}
.prices>div>div>div{
	margin:30px 15px 0 15px;
	padding: 25px 20px;
	border: 1px solid #aeb1be;
	border-radius: 6px;
	
}
.callback_form{padding: 0 0 40px 0}
.prices{
	background-color:#F5F6FA;
	margin: 0 -15px;
    padding: 35px 15px 50px 15px;
}
.prices>div>div>div button{
	color: #41333f;
    background-color: #d1bfec;
	user-select: none;
	cursor: pointer;
	border: 2px #d1bfec solid;
    transition: 0.25s cubic-bezier(0.2, 1, 0.3, 1);
	padding: 13px 35px;
    font-size: 15px;
    line-height: 1.25;
	text-align: center;
	display: inline-block;
	margin-top: 25px;
}
.overflow_body {
    overflow: hidden;
    position: relative;
}
#my_modal p{
	color:#313131;
}
#my_modal{
	background-color: rgba(0,0,0,.8);
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: auto;
    position: fixed;
    z-index: 1001;
    -webkit-transition: opacity .5s;
    -moz-animation: opacity .5s;
    -ms-animation: opacity .5s;
    -o-transition: opacity .5s;
    transition: opacity .5s;
    opacity: 0;
}
#my_modal.fadeIn {
    opacity: 1;
}
.modal_block {
    background-color: #FDF5FC;
    padding: 25px 35px 20px 35px;
    position: relative;
    max-width: 320px;
    margin: 80px auto 10px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 5px 3px rgba(0,0,0,.3);
    -moz-box-shadow: 0 1px 5px 3px rgba(0,0,0,.3);
    -ms-box-shadow: 0 1px 5px 3px rgba(0,0,0,.3);
    -o-box-shadow: 0 1px 5px 3px rgba(0,0,0,.3);
    box-shadow: 0 1px 5px 3px rgba(0,0,0,.3);
}
.search_btn{display:none}
.close_modal {
    width: 44px;
    transition: all .2s;
    background: transparent;
    height: 44px;
    display: block;
    box-shadow: none;
    border: none;
    position: absolute;
    opacity: .6;
    padding: 10px;
    right: 0;
    top: 0;
}
.close_modal:hover {opacity: 1}
footer .txt a{color: #313131}
footer .txt a:hover{color: #940089}
footer .txt a p{color: rgba(49, 49, 49, 0.75)}
.prices>div>div>div p{
	font-size:16px;
	margin:16px 0 0 0;
}
.prices>div>div>div .cost{
	font-size:20px;
	font-weight:bold;
	color: #313131;
	border-bottom: 1px solid #aeb1be;
	padding-bottom:20px;
}
.prices>div>div>div h4{
	font-size: 26px;
	color: #313131;
}
.post_intro2 h1,
.post_intro h1{
	margin: 15px 0 0 0;
	font-size:30px;
}
.post_intro2,
.post_intro{
	margin-top: 60px;
	background-size: cover;
    background-position: center center;
	color: #fff;
	padding: 50px 0 25px;
}
.post_intro2{
	background-image:url(../images/breadcrumbs-post.jpg);
	background-size: cover;
    background-position: center center;
	position:relative;
}
.post_intro2:before{
	content:"";
	display:block;
	background-color:rgba(0,0,0,0.7);
	position:absolute;
	bottom:0;
	top:0;
	right:0;
	left:0;
	z-index:1;
}
.post_intro2>.container{
	z-index:2;
	position:relative;
}
.breadcrumb > li + li:before {
    padding: 0 5px;
    color: #fff;
    content: " » ";
}
.breadcrumb,
.breadcrumbs{
	margin:25px 0 0 0;
	padding:0;
	background-color:transparent;
}
.breadcrumb > li,
.breadcrumbs span>span{padding:0 10px}
.breadcrumb > li:first-child,
.breadcrumbs span>span:first-child{padding-left:0}
.breadcrumb span,
.breadcrumbs span,
.breadcrumb a,
.breadcrumb .active,
.breadcrumbs a{
	color:#fff;
	font-size: 18px;
}
.breadcrumb > li + li:before{
	margin-right:10px;
}
.breadcrumb a:hover,
.breadcrumbs a:hover{
	color: rgba(255, 255, 255, 0.5);
}
.bg3{
	background-color:#613c6d;
	padding: 50px 0;
}
.modal_block form input[type=tel],
.modal_block form input[type=text],
.call_form textarea,
.call_form input[type=text]{
	font-size: 18px;
    color: #313131;
    background: transparent;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #d1d1d1;
    padding-bottom: 0;
    padding-left: 0;
	display: block;
    width: 100%;
    min-height: 48px;
    padding: 11px 19px 0 0;
	font-weight: 400;
    line-height: 1.5;
	-webkit-appearance: none;
    transition: .3s ease-in-out;
}
.modal_block form input[type=tel]:focus,
.modal_block form input[type=text]:focus,
.call_form input[type=text]:focus,
.call_form textarea:focus{
	outline:0;
	border-bottom: 1px solid #313131;
}
.modal_block form input[type=submit]
.call_form input[type=submit],
.btn_call{
	position: relative;
    overflow: hidden;
    display: inline-block;
    padding: 13px 35px;
    font-size: 14px;
    line-height: 1.25;
    border: 2px #d1bfec solid;
    border-radius: 0;
    font-weight: 400;
    letter-spacing: none;
    text-transform: none;
    white-space: nowrap;
    text-overflow: ellipsis;
	color: #41333f;
    background-color: #d1bfec;
	color: #41333f;
    border-color: #d1bfec;
	user-select: none;
    transition: 0.25s cubic-bezier(0.2, 1, 0.3, 1);
}
.modal_block form input[type=submit]:active,
.modal_block form input[type=submit]:hover,
.call_form input[type=submit]:active,
.call_form input[type=submit]:hover,
.btn_call:active,
.btn_call:hover,
.prices>div>div>div button:active,
.prices>div>div>div button:hover{
	color: #fff;
    background-color: #613c6d;
    border-color: #613c6d;
}
.bg3 .btn_call:active,
.bg3 .btn_call:hover{
	background-color: #fff;
	color:#313131;
    border-color: #fff;
}
.bg3>div{text-align:center}
.bg3 h3{
	color:#fff;
	display:inline-block;
	font-size: 24px;
    line-height: 1.3;
	margin-bottom: 25px;
}
.prices>div>h3{
	text-align:center;
	color: #313131;
}
.bg3 h3 span{
	font-weight:bold
}
.price_intro{
	padding:50px 0;
}
.price_intro>img{
	margin-bottom:50px;
}
.price_intro .txt p{
	color: rgba(49, 49, 49, 0.75);
	margin:16px 0 25px 0;
}
.price_intro .txt h5{
	font-size: 16px;
    line-height: 1.5;
    letter-spacing: .01em;
	margin:15px 0 0 0;
	font-weight: 400;
	color: #313131;
}
.price_intro .txt h3{
	color: #313131;
	font-size: 24px;
    line-height: 1.3;
    letter-spacing: .02em;
	margin:0;
	padding:0;
}
.kak_dobrat h3{
	color: #313131;
	font-weight:bold;
}
.kak_dobrat{
	padding-top:50px;
}
.kak_dobrat>div{
	margin-bottom:50px;
}
.hidden_txt{display:none!important}
.content404{
	background-image:url(../images/404.jpg);
	background-size: cover;
    background-position: center center;
	background-color: #151515;
	display: flex;
}
.body404{
	position: relative;
    overflow: hidden;
    min-height: 100vh;
}
.content404>div>div>div{
	color:#fff;
}
.content404>div{
	display: grid;
	justify-items: center;
	align-content: space-between;
	grid-template-columns: 1fr;
	align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 100vh;
	position: relative;
    z-index: 1;
}
.our_posts{padding:50px 0}
.content404 h1{font-size: 100px}
.inner404 h6{
	position:relative;
	font-size: 14px;
    line-height: 1.8;
    letter-spacing: .03em;
	margin:0;
}
.inner404 p{
	margin-top:16px;
}
.inner404 h6:before{
	content: '';
	position: absolute;
	left: 0;
	width: 30px;
    border-bottom: 1px solid;
	top: 0.8em;
}
.post_meta{
	margin-top:10px;
	padding: 0;
	transform: translate3d(0, -5px, 0);
    color: #313131;
}
.post_meta li{
	position: relative;
    display: inline-block;
    line-height: 24px;
}
.post_meta li:not(:last-child)::after{
	content: '';
    position: absolute;
    right: 0;
    top: 50%;
    width: 1px;
    height: 1.5em;
    background: #e8e9ee;
    transform: translate3d(0, -50%, 0);
}
.post_meta+p{
	margin:16px 0 0 0;
}
.our_posts_wrp{background-color: #f5f6fa}
.our_posts>div h4 a{color: #613c6d}
.our_posts>div h4 a:hover{color:#313131}
.our_posts>div h4{
	margin: 9px 0 0 0;
	line-height: 1.5;
    letter-spacing: 0;
}
.our_posts>div{margin-bottom:50px}
.our_posts>div img{max-width:100%}
.search_result{
	background-color:#F5F6FA;
	padding:72px 0
}
.search-list{
	padding:0 0 0 20px;
	font-size:18px;
	margin-top:40px;
}
.search-list li{
	padding:0 0 0 30px;
	position: relative;
	font-size: 16px;
    color: #151515;
	margin-top: 40px;
}
.search-list li h5 a{
	color: #613c6d;
	font-size: 16px;
    line-height: 1.5;
    letter-spacing: .01em;
}
.search-list li h5 a:hover{color: rgba(97, 60, 109, 0.8)}
.search-list li h5,
.search-list .entry-content p{margin:0}
.search-list .entry-content{
	margin-top:16px;
	color:#151515;
}
.search-list .match{
	margin: 10px 0 0 0;
	padding: 5px;
    font-size: 12px;
    line-height: 1.7;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #868e96;
}
.sigle_post{
	background-color: #f5f6fa;
	padding: 50px 0;
}
.callback_map iframe{height:300px;}
.profile-thin {
    position: relative;
    display: block;
    padding: 30px 20px 45px;
    background: #fff;
    text-align: center;
}
.profile-thin-aside {
    position: relative;
    display: inline-block;
}
.profile-thin-aside>a{
	color:#fff;
	white-space: nowrap;
	position: absolute;
    right: 0;
    bottom: 0;
    overflow: hidden;
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    font-size: 20px;
    line-height: 1;
    background: #613c6d;
	border:2px solid #613c6d;
}
.profile-thin-aside>a:before{
	content:"";
	display:inline-block;
	background-image:url(../images/icons.png);
	background-position:-248px -40px;
	width:20px;
	height:20px;
	margin-top: 8px;
}
.profile-thin-aside>a:hover{background: #fff}
.profile-thin-aside>a:hover:before{background-position:-284px -40px}
.profile-thin-main{margin-top:20px}
.profile-thin-aside img{border-radius:50%}
.profile-thin-title {
    font-size: 22px;
    line-height: 1.47;
	margin:0;
}
.profile-thin-main>a{
	padding: 9px 32px;
    font-size: 12px;
    line-height: 1.5;
	border:2px solid #d1bfec;
	color: #41333f;
	white-space: nowrap;
    text-overflow: ellipsis;
    transition: 0.25s cubic-bezier(0.2, 1, 0.3, 1);
	margin-top: 25px;
	display:inline-block;
}
.profile-thin-main>a:hover{
	background-color:#613c6d;
	border:2px solid #613c6d;
	color:#fff;
}
h2.wp-block-heading,
.sigle_post h2{
	font-size: 24px;
    line-height: 1.3;
    letter-spacing: .02em;
	color: #313131;
	font-weight:700;
}
.myreviews>div{
	margin:auto;
	width: 100% !important;
	max-width:560px;
}
footer .txt{
	grid-template-columns: repeat(1, 1fr);
}
@media (min-width: 240px) {
}
@media (min-width: 320px) {
}
@media (min-width: 560px) {

}
@media (min-width: 768px) {
	    footer .menu ul li a{
			padding:10px!important
	}
	.faq{
	grid-template-columns:repeat(2,1fr);
}
	.ul_menu{
		text-align:center;
	}
	.ul_menu li:hover a, .ul_menu li.active a{
		background-color:initial;
		color:#613c6d;
	}
	.cont{
		display: grid;
		grid-template-columns: repeat(2,1fr);
		gap: 20px;
	}
	h2.wp-block-heading,
	.sigle_post h2{
		font-size: 30px;
		line-height: 1.4;
	}
	.menu_mob,
	.kont_mob,
	.menu_mob{display:none}
	body {
		font-size: 16px;
		line-height: 1.5;
	}
	header{
		display:block;
		position:initial;
		height:initial;
		padding:initial;
		box-shadow:none;
	}
	.content404>div{
		padding-top: 7vh;
	}
	.info_logo a>span{
		font-size:18px;
		padding:15px 0 0 15px;
	}
	.post_meta{
		transform: translate3d(0, -5px, 0);
		margin-bottom: -5px;
		margin-left: -20px;
		margin-right: -20px;
	}
	.post_meta li{
		margin-top: 5px;
		padding-left: 20px;
		padding-right: 20px;
	}
	.post_meta+p{
		margin-top:20px;
	}
	.search-list .match{margin-top: 12px}
	.search-list {margin-top:55px}
	.search-list li h5 a{
		font-size: 24px;
		line-height: 1.16667;
	}
	.search_result{padding:72px 0}
	.search-list .entry-content{margin-top:20px}
	.sigle_post{padding: 72px 0}
	.info_logo a>span:hover{
		color:#d1bfec;
	}
	.callback_map iframe{height:100%}
	.info_logo a>span>span{
		display:block
	}
	.info_logo a img{
		height:initial;
	}
	.bg3{padding: 60px 0}
	.info_contacts{
		margin-top: 10px;
		position:initial;
		transform:initial;
		padding:initial;
		visibility:initial;
		opacity:initial;
		border:none;
		box-shadow:none;
	}
	.btn_call{font-size: 22px}
	.info{
		padding:30px 0;
	}
	.info .address,
	.info .phones{
		text-align: right;
	}
	footer .socs a,
	.info .address a,
	.info .phones a{
		text-align: left;
		color: rgba(49, 49, 49, 0.7);
	}
	.info .address>div:before,
	.info .phones>div:before{
		left: 0;
	}
	header .menu{
		padding: 16px 0;
		background-color:#f7f9f9;
		position: initial;
		width: initial;
		overflow: initial;
		border: none;
		box-shadow: none;
		transform: initial;
	}
	.menu>div{
		position:relative;
	}
	
	header .menu .search{
		float:right;
		position:relative;
		padding:0;
	}
	.search_btn{
		cursor:pointer;
		outline: 0;
		border: none;
		display:block;
		padding:0;
		width:23px;
		height:23px;
		background-color: transparent;
	}
	.search_btn>span:after,
	.search_btn>span:before{
		width:23px;
		height:23px;
		transition: .3s all ease-in-out;
		content:"";
		display:block;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		visibility: visible;
	}
	.search_btn>span:before{
		background:url(../images/icons.png) -1px -33px;
		opacity: 1;
		top:5px;
	}
	.search_btn>span:after{
		opacity: 0;
	}
	.search_btn.act>span:before{
		transform: rotate(45deg);
		transform-origin: 50% 50%;
		background-color: #313131;
		border-radius: 5px;
		height: 2px;
		top: 18px;
	}
	.search_btn.act>span:after{
		transform: rotate(-45deg);
		transform-origin: 50% 50%;
		background-color: #313131;
		border-radius: 5px;
		height: 2px;
		opacity: 1;
		top: 18px;
	}
	.searchform input[type=submit]{
		top: 12px;
		right: 13px;
	}.
	.searchform input[type=submit]:hover{opacity: 1}
	.cont .indi a>span:before{
		background-position:-199px -62px;
		width:52px;
		height:57px;
	}
	.cont .couples a>span:before{
		background-position:-139px -62px;
		width:52px;
		height:57px;
	}
	.cont .families a>span:before{
		background-position:-79px -62px;
		width:52px;
		height:57px;
	}
	.cont>div a>span:before{
		margin-top:21px;
	}
	.ul_menu li{
		display:inline-block;
		margin-left:35px;
	}
	.ul_menu li span,
	.ul_menu li a{
		padding: 10px;
		font-size: 16px;
		line-height: 1em;
		color: #313131;
		transition: .25s;
		font-weight:400;
		margin-bottom: 10px;
	}
	.ul_menu li a:hover,
	.ul_menu li.active a{
		color:#d1bfec;
		background-color:initial;
	}
	.ul_menu li span{
		color: #d1bfec;
	}
	.ul_menu li{
		margin-left:35px;
	}
	.ul_menu li:first-child{
		margin-left:0;
	}
	.post_intro2 h1,
	.post_intro h1{font-size:58px}
	.post_intro2,
	.post_intro{
		padding: 80px 0 30px;
		margin-top:0;
	}
	.breadcrumb,
	.breadcrumbs{margin-top:30px}
	.breadcrumb>span>span:first-child,
	.breadcrumbs>span>span:first-child{padding-left:0}
	.breadcrumb>span>span,
	.breadcrumbs>span>span{
		padding-left:15px;
		padding-right:15px;
	}
	.our_posts>div h4{margin-top: 15px}
	.our_posts>div{margin-bottom:0px}
	.intro{
		padding: 0 0 72px 0;
	}
	.intro img{
		max-width: 350px;
		float:left;
		display:block;
		margin:0 20px 0px 0;
	}
	.intro .txt p{
		margin: 24px 0 0 0;
		font-size:17px;
	}
	.intro .txt h3{
		font-size: 30px;
		line-height: 1.4;
		letter-spacing: .02em;
		padding:30px 0 0 0;
		margin:0;
	}
	.bg_1{
		padding: 72px 0;
	}
	.row1{
		display:grid;
		grid-template-columns:repeat(3,1fr);
		gap:20px;
	}
	.search .searchform{
		position: absolute;
		top: 100%;
		right: 0;
		width: 370px;
		opacity: 0;
		visibility: hidden;
		transition: .3s;
		margin-top: 20px;
		z-index: 2;
		margin-top: 40px;
	}
	#searchsubmit{display:none}
	.search  .search_btn.act+.searchform{
		visibility: visible;
		opacity: 1;
	}
	
	.inner404 p{
		margin-top: 32px;
	}
	.inner404 h6{
		padding-left: 80px;
		font-size: 18px;
		line-height: 26px;
	}
	.inner404 h6:before{
		top: 0.7em;
		border-bottom: 2px solid #fff ;
		width: 62px;
	}
	.our_posts,
	.inner404{
		display:grid;
		grid-template-columns:repeat(2,1fr);
		gap:20px;
	}
	.our_posts{padding:72px 0}
	.content404 h1{
		font-size: 130px;
		line-height: .7;
		font-weight: 800;
	}
	.footer404 a {color:#fff}
	.footer404 a img,
	.footer404 a span{display:inline-block}
	.footer404 a span>span{display:block}
	.footer404 a img{margin-right:10px;}
	.footer404>div>div>div:last-child p{color: #d1d1d1}
	.footer404>div>div>div:last-child{text-align:right}
	.footer404>div>div{
		display:grid;
		grid-template-columns:repeat(2,1fr);
		gap:20px;
	}
	.row1 h4{
		margin: 0;
		line-height:1.5;
		font-size:22px;
	}
	.row1>div{
		padding-left:65px;
		position:relative;
	}
	.row1>div:before{
		content:"";
		display:block;
		position:absolute;
		left:0px;
		top:5px;
		width:50px;
		height:50px;
		background-image:url(../images/icons.png);
	}
	.row1>div.years_5:before{
		background-position:-83px 0px;
	}
	.row1>div.free_consult:before{
		background-position:-137px 0px;
	}
	.row1>div.guaranteed:before{
		background-position:-194px 0px;
	}
	.row1 p{
		font-size:16px;
		margin:16px 0 0 0;
		color:#313131;
		line-height: 24px;
		color: rgba(49, 49, 49, 0.75);
	}
	.bg2{
		color: #fff;
		position:relative;
		padding:100px 0;
	}
	.bg2 .txt p{
		font-size: 18px;
		line-height: 26px;
		margin:20px 0 0 0;
		opacity:0.75;
	}
	.my_quotes{
		margin:30px 0 -30px 0px;
	}
	.bg2 .txt h3{
		font-size: 30px;
		line-height: 1.1;
		margin:0;
	}
	.bg_pink{
		padding:72px 0;
	}
	.bg_pink h3{
		font-size: 40px;
		line-height: 52px;
		font-weight: 600;
		margin:0;
		text-align:center;
	}

	.cont>div{
		text-align:center;
	}
	.cont>div a>span{
		display:block;
		width:92px;
		height:92px;
		margin:0 auto 24px auto;
		border-radius:100%;
		background-color:#fbe7f8;
		transition: .3s all ease;
	}
	.cont>div p{
		margin:16px 0 0 0;
		color:#7d6f6f;		
	}
	.cont>div a{
		font-size: 26px;
		line-height: 1.23077;
	}
	.faq .txt ul li h5{
		font-size: 20px;
		line-height: 1.4;
		margin:0;
	}
	.faq .txt ul li:last-child{
		border-bottom: 1px solid #f5f6fa;
	}
	.faq .txt ul li{
		padding: 15px 40px 15px 70px;
		margin:0;
		border-top: 1px solid #f5f6fa;
		position:relative;
		cursor:pointer;
	}
	.faq .txt ul{
		padding:0;
		list-style:none;
		margin-top:70px;
	}
	.faq .txt h3{
		font-size: 40px;
		line-height: 52px;
		margin:0;
	}
	.faq{
		padding: 72px 0;
		display:grid;
		gap:20px;
	}

	.free_cons_2{
		padding: 80px 0;
	}	
	.free_cons_2 p i{
		font-size: 24px;
		line-height: 1.16667;
	}
	.free_cons_2 h3+p{
		margin:30px 0 0 0;
		font-size: 18px;
		line-height: 26px;
		color: rgba(49, 49, 49, 0.75);
	}	
	.free_cons_2 h3{
		font-size: 40px;
		line-height: 52px;
		margin:12px 0 0 0;
	}
	.my_btn{
		font-size: 22px;
	}
	.div_btn{
		margin-top:28px;
	}
	.callback{
		background-color: #fdf5fc;
		position:relative;
	}
	.callback_form{
		padding: 72px 0;
	}
	.callback_form h3{
		font-size: 40px;
		line-height: 52px;
		margin:0;
	}
	.callback_map{
		overflow: hidden;
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:50%;
	}
	.call_form{
		margin-top: 40px;
	}	
	.kontakt_pink{
		padding: 60px 0;
	}
	.prices {
		padding: 35px 0;
		margin:0;
	}
	.prices>div>div{
		display:grid;
		grid-template-columns:repeat(2,1fr);
		gap:20px;
	}
	.about_me p{
		margin: 35px 0 0 0;
	}
	footer .txt h4{
		font-size: 26px;
		line-height: 1.23077;
	}
	
	footer .txt{
		padding: 80px 0 60px;
		display:grid;
		grid-template-columns:repeat(3,1fr);
		gap:20px;
	}
	footer .menu ul li a{
		padding:10px;
	}
	footer .menu>ul{
		text-align: center;
		padding:0;
		list-style:none;
	}
	footer .menu>ul>li:first-child{
		padding-left:0;
	}
	footer .menu>ul>li>a{
		color:#984c8a;
	}
	.faq .txt{
		padding:0;
	}
	footer .menu>ul>li{
		display:inline-block;
		vertical-align: middle;
		padding-left: 22px;
		padding-right: 22px;
		margin: 10px 0;
	}
	footer .menu{
		padding:35px 0;
	}
	.bg3 h3{
		font-size: 30px;
		line-height: 1.4;
	}
	.price_intro{
		padding:72px 0;
	}
	footer .bottom p{
		text-align:right;
	}
	footer .bottom{
		padding:35px 0;
		border-top:1px solid #f3f3f3;
		margin-top:10px;
		display:grid;
		grid-template-columns:repeat(2,1fr);
		gap:20px;
	}
	.kontakt_pink .col-md-4:nth-child(2){
		border-top:none;
		border-bottom:none;
		border-right:1px solid #e5cee1;
		border-left:1px solid #e5cee1;
	}
	
}
@media (min-width: 992px) {
	.ul_menu li{
		margin-left:15px;
	}
	footer .menu>ul>li{
		padding:0;
	}
	footer .menu ul li a {
        padding: 10px 15px;
    }
	.search-list .match{margin-top: 17px}
	.search-list li{margin-top: 40px}
	.bg3{padding: 60px 0 70px}
	.post_intro2,
	.post_intro{
		padding-bottom: 40px;
	}
	.price_intro{
		display:grid;
		grid-template-columns:repeat(2,1fr);
		gap:20px;
	}
	.price_intro .txt{
		grid-column: 1;
		grid-row: 1;
	}
	.kontakt_pink .col-md-4:first-child{
		padding-top:30px;
	}
	.callback .call_form label{
		margin-bottom:40px;
	}
	.content404 h1{
		font-size: 150px;
	}
}
@media (min-width: 1200px) {
	.cont{grid-template-columns: repeat(4,1fr)}
	.our_posts>div h4{
		padding-right: 40px;
		margin-top: 25px;
		font-size: 26px;
		line-height: 1.23077;
	}
	.search-list {margin-top:55px}
	.post_meta{margin-top: 15px}
	.post_meta+p{
		margin-top:20px;
	}
	.prices>div>h3,
	.bg3 h3{
		font-size: 40px;
		line-height: 52px;
	}
	.ul_menu li {
        margin-left: 25px;
    }
	footer .menu ul li a {
    padding: 10px 20px;
}
	.ul_menu li span, .ul_menu li a{
		font-size: 20px;
	}
	.bg2 .txt h3 {
		font-size: 40px;
		line-height: 52px;
	}
	.bg2 .txt p>i {
		font-size: 26px;
		line-height: 1;
		opacity: .75;
	}
	.profile-thin {padding: 55px 35px}
	h2.wp-block-heading,
	.sigle_post h2{
		font-size: 40px;
		line-height: 52px;
	}
}
