/* normal */

* {
	margin: 0px;
	padding: 0px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	transition-duration:0.2s;
}
html,
body {
	font-family: "stevie-sans", sans-serif;
	font-size: 20px;
	color: #2a2929;
	font-weight: 300;
	line-height:1.75;
	word-break: break-word;
	scroll-behavior:smooth;
	overflow-x:hidden;
}

body {
	background: #fff;
}
img {
	border: 0px;
	display: block;
	max-width: 100%;
	height:auto;
}
a{color:inherit; text-decoration: none;}

input,
select,
textarea,
button{ -webkit-appearance: none;-moz-appearance:none; appearance:none; outline: none;}
input[type="checkbox"]{-webkit-appearance: unset;-moz-appearance:unset; appearance:unset;}

ul {
	list-style: disc;
}
h1,.h1,
h2,.h2,
h3,.h3,
h4,.h4,
h5,.h5,
h6,.h6 {
	font-weight: 300; line-height:1.3;
}

h1 span,.h1 span,
h2 span,.h2 span,
h3 span,.h3 span,
h4 span,.h4 span,
h5 span,.h5 span,
h6 span,.h6 span {
	color:#523629
}

h1, .h1{font-size:65px; margin-bottom:0.7em}
h2, .h2{font-size:65px; margin-bottom:0.7em}
h3, .h3{font-size:26px;}
h4, .h4{font-size:24px;}
h5, .h5{font-size:22px;}
h6, .h6{font-size:20px;}

p{margin-bottom:1em}


.maxw1{max-width:1590px; margin:0 auto; padding: 0 20px}
.maxw2{max-width:1480px; margin:0 auto; padding: 0 20px}

.clear{clear:both;}
.flexbox{display:flex; flex-wrap:wrap}
.flexbox.space_between{justify-content: space-between;} 
.flexbox.justify_center{justify-content: center;} 
.flexbox.align_right{justify-content: flex-end;}
.flexbox.align_center{align-items: center;}
.flexbox.align_bottom{align-items: flex-end;}
.flexbox.align_top{align-items: flex-start;}

.grid{display:grid; gap:15px}


.wrap{width:calc(100% + 50px); margin: 0 -25px}
.wrap .col25{width:calc(25% - 50px); margin: 0 25px;}
.wrap .col33{width:calc(33.3333% - 50px); margin: 0 25px;}
.wrap .col40{width:calc(40% - 50px); margin: 0 25px;}
.wrap .col50{width:calc(50% - 50px); margin: 0 25px;}
.wrap .col60{width:calc(60% - 50px); margin: 0 25px;}
.wrap .col66{width:calc(66.666% - 50px); margin: 0 25px;}
.wrap .col75{width:calc(75% - 50px); margin: 0 25px;}
.wrap .col100{width:calc(100% - 50px); margin: 0 25px;}

.col50{width:50%;}

.center_text{text-align:center;}
.center_text ul, .center_text ol{text-align:left;}

.btn_bar{display:block; margin-top:2em;}
.btn_bar .btn{margin:2px 4px}
.btn{display:inline-block; line-height:1; border:none}
.btn:hover{transform:translatey(-2px)}
.btn.round_btn{height:60px; line-height:60px; width:60px; border-radius:100%; text-align:center;}
.btn.xl_btn{font-weight:300; height:78px; line-height:78px; padding: 0 60px; border-radius:100px; font-size:30px;}
.btn.l_btn{font-weight:600; height:60px; line-height:60px; padding: 0 40px; border-radius:100px; font-size:20px;}
.btn.n_btn{font-weight:300; height:60px; line-height:60px; padding: 0 40px; border-radius:100px; font-size:20px;}
.btn.clr1_white{background:#523629; color:#fff}
.btn.clr2_white{background:#a79b94; color:#fff}
.btn.border_btn{border:1px solid #a79b94; color:#523629}
.btn.green_white{background:#2a8a30; color:#fff}

.btn .icon_right{display:inline-block; margin-left:20px;}
.btn .icon_left{display:inline-block; margin-right:20px;}

.table_wrap{overflow-x:auto; word-break: auto-phrase;}
.table_wrap table{border-collapse: collapse;}
.table_wrap table td{border:1px solid #ebebeb; padding:5px 10px; vertical-align:top; min-width: 200px}

.content_container ul, .content_container ol{margin-left:30px; margin-bottom:1em;}

#template.fixed{    overflow: hidden;    height: 100vh;    position: relative;}

.mob_menu{position:absolute; top:0; right:0; z-index:99999; width:0; height:0; overflow:scroll;     backdrop-filter: blur(2px); }
.mob_menu.active{width:100%; height:100%;}
.mob_menu .inner{background:#523629; color:#fff; padding: 20px; width:400px; max-width:100vw; min-height:100vh; position:absolute; right:0; top:0}
.mob_menu .menu_top{margin-bottom:2em}
.mob_menu .menu_top .round_btn{position:relative;}
.mob_menu .menu_top .round_btn span{position:absolute; bottom:8px; left:0; width:100%; text-align:center; font-size:10px; line-height:1 }

.mob_menu ul{font-size:22px; overflow:hidden;}
.mob_menu ul li{list-style:none; margin:15px 0}
.mob_menu ul li.menu-item-has-children{position:relative;}
.mob_menu ul li.menu-item-has-children i{position:absolute; right:0; top:5px; background:#523629; width:30px; height:30px; line-height:30px; border-radius:100%; text-align:center;}
.mob_menu ul li.menu-item-has-children.sub i{transform:rotate(180deg)}
.mob_menu ul li a{position:relative;}
.mob_menu ul li a:before{content:""; width:400px; border-top:1px solid rgba(255,255,255,0.1); position:absolute; top:50%; left:calc(100% + 20px); }
.mob_menu ul ul{margin-left:20px; font-size:85%; display:none }
.mob_menu ul ul li:last-of-type{margin-bottom:0}

.top_bar{background:#523629; color:#fff; font-size:13px; padding: 11px 0;}
.top_bar .stars i{display:inline-block; margin-right:3px;}
.top_bar .text{margin:0 15px}
.top_bar .trustpilot{transform:translatey(-2px)}

.header{padding:30px 0}
.header .logo{width: 300px;}
.header .logo img{display:block; width:100%;}
.header .menu_bar{width:calc(100% - 330px)}
.header .menu ul li{display:inline-block; margin-right:15px;}
.header .menu ul li a{display:block; padding: 0 15px;}
.header .menu > ul > li > a{position:relative;}
.header .menu > ul > li > a:before{content:""; position:absolute; top:calc(100% - 2px); left:50%; transform:translatex(-50%); width:0; height:1px; background:#a79b94; transition-duration:0.2s}
.header .menu > ul > li > a:hover:before{ width:calc(100% - 30px);}
.header .menu ul ul{position:absolute; background:#fff; display:none; z-index:9999; padding: 10px 0 0}
.header .menu ul li.menu-item-has-children:hover ul{display:block;}
.header .menu ul li.menu-item-has-children > a:after{content:"\f063"; font-family:"Font Awesome 6 Pro"; font-weight:300; display:inline-block; margin-left:10px;}
.header .menu ul ul li{display:block;}
.header .menu ul ul li a {border-left:2px solid #523629}
.header .menu ul ul li a:hover{border-left:2px solid #a79b94; color:#a79b94}
.header .right_btns{}
.header .right_btns .btn{margin-left:15px;}
.header .right_btns .menu_btn{display:none}

.header .menu > ul > li > ul > li > ul {display: none!important}

.col_content > div > ul > li > ul {display: none!important}
.col_content > div > ul > li > ul > li > ul {display: none!important}

.spacer{padding-bottom:70px;}

.content_block{margin-bottom:100px}

.content_block.slider .slide:after{content:""; padding-bottom:25%; display:block;}
.content_block.img_text .image{border-radius:30px}
.content_block.img_text .text{padding: 90px;}

.content_block.btn_block .btn{margin: 10px}
.content_block.btn_block .small_link{margin-top: 40px; color:#a79b94; font-size:24px;}

.content_block.text_img .flexbox{flex-direction: row-reverse;}
.content_block.text_img .image{border-radius:30px}
.content_block.text_img .text{padding: 90px;}

.content_block.gallery{position:relative;}
.content_block.gallery .img{position:absolute}

.content_block.usp_block{background:#2a2121;}
.content_block.usp_block .background_img{padding: 85px 0; background-position:right;  background-repeat: no-repeat;  background-size: inherit;}

.content_block.usp_block .usps{width:calc(100% + 100px); margin: 0 -50px 50px}
.content_block.usp_block .usp {position:relative; width:calc(25% - 100px); margin: 0 50px;}
.content_block.usp_block .usp .icon{width:138px; height:138px; border-radius:100%; background:#fff; color:#523629; font-size:48px; border:1px solid #523629; margin: 0 auto -69px; z-index:0; position:relative;}
.content_block.usp_block .usp .content{background:#fff; padding:100px 30px 50px 30px; text-align:center; font-size:18px; border-radius: 30px}
.content_block.usp_block .usp .content .title{font-weight:700; font-size:25px;}

.content_block.team .member{margin-bottom:50px;}
.content_block.team .member .image:after{content:""; padding-bottom:100%; display:block;}
.content_block.team .member .name{background:#523629; padding: 10px 20px; color:#fff; }

.content_block.maps iframe{width:100%; height:400px;}

.content_block.contact_page .contact_details{background:#523629; color:#fff; padding: 30px 40px; border-radius:30px;}
.content_block.contact_page .contact_details a i{width:30px ; display:inline-block;}

.content_block.reviews{}
.content_block.reviews .review-slider{overflow:hidden;}
.content_block.reviews .review{border:1px solid #a79b94; padding:30px; border-radius:30px; height:auto!important}
.content_block.reviews .review .name{font-weight:700}
.content_block.reviews .review .stars{color:#a79b94; margin-bottom:20px;}
.stars i {color: #04da8d}

.content_block.subpages .subpage{margin-bottom:50px; color:#fff; position:relative}
.content_block.subpages .subpage:after{content:""; padding-bottom:100%; display:block;}
.content_block.subpages .subpage .title{background:linear-gradient(180deg, transparent 30% , rgba(0,0,0,0.8)); padding: 10px 20px; position:absolute; top:0; left:0; height:100%; width:100%; display:flex;flex-wrap:wrap; align-items: flex-end; transition-duration:0.2s}
.content_block.subpages .subpage:hover .title{opacity:0.8}

.openinghours .row{display:grid; gap:20px; grid-template-columns:120px 1fr}
.openinghours .day{font-weight:700}

.bottom_images .img:after{content:""; padding-bottom:70%; display:block;}

.footer{background:#523629; color:#fff; padding-top:80px;}
.footer .title{font-size:40px; margin-bottom:1em; line-height:1}
.footer a:hover{color:#a79b94}
.footer a i{width:30px; display:inline-block;}
.footer ul li{list-style:none; margin-left:40px;}
.footer ul li a:before{content:"\f178"; font-family:"Font Awesome 6 Pro"; font-weight:100; width:40px; margin-left:-40px; display:inline-block;}

.footer .soc_btns {margin-bottom:20px;}
.footer .soc_btns a{width:72px; height:72px; border-radius:100%; text-align:center; line-height:72px; border-radius:100%; border:1px solid #a79b94; display:inline-block; margin-right:10px;}

.footer .part_of img{margin-left:20px;margin-bottom:-5px; display:block;}

.footer .bottom{margin-top:70px; padding:20px 0; border-top:1px solid rgba(255,255,255,0.2); font-size:18px;}

.wpcf7 .form_item{margin-bottom: 20px; display:flex; flex-wrap:wrap; text-align:left!important}
.wpcf7 .label{width: 180px; }
.wpcf7 .form_field{width: calc(100% - 180px);}
.wpcf7 input, .wpcf7 textarea,  .wpcf7 select{width:100%; padding:5px 15px; border: 1px solid #523629 ; font:inherit; border-radius:10px}
.wpcf7 input[type="submit"]{padding: 10px 26px 8px; border-radius: 100px; font-weight:700; font-size:18px; width:auto; color:#fff; background:#523629; border:none;}
.wpcf7 input[type="submit"]:hover{box-shadow:0 0 10px #523629;}
.wpcf7 select{background:url(img/angle-down.png) no-repeat calc(100% - 10px) 50% #fff;}

span.wpcf7-list-item {display: inline-block;margin: 0px 0 0;}
span.checkbox{margin-top:10px; display: block;}
.wpcf7 .wpcf7-list-item {display: inline-block; margin-right:35px; width: 60px;}
.wpcf7-list-item-label {margin-left: 30px;display: inline-block; vertical-align: top;}
.wpcf7-checkbox {padding: 5px 0px; display:inline-block}
.wpcf7-checkbox label {position: relative;cursor: pointer;}
.wpcf7-checkbox input[type=checkbox] {position: absolute;visibility: hidden;width: 16px;height: 16px;top: 0;left: 0;}
.wpcf7-checkbox input[type=checkbox] + span:before {display: block;position: absolute;content: '';border-radius: 0;height:16px;width: 16px;top: 0px;left: 0px;border: 1px solid #523629; background:#fff}
.wpcf7-checkbox input[type=checkbox] + span:after {display: block;position: absolute;content: "\f00d";font-family:"Font Awesome 6 Pro";font-weight:900;height: 16px;width: 16px;color:#523629;top: 1px;left: 1px;visibility: hidden;font-size: 16px;text-align: center;line-height: 16px;}
.wpcf7-checkbox input[type=checkbox]:checked + span:before {background: transparent;}
.wpcf7-checkbox input[type=checkbox]:checked + span:after {visibility: visible;}

.wpcf7-checkbox input[type=acceptance] {position: absolute;visibility: hidden;width: 16px;height: 16px;top: 0;left: 0;}
.wpcf7-checkbox input[type=acceptance] + span:before {display: block;position: absolute;content: '';border-radius: 0;height:16px;width: 16px;top: 0px;left: 0px;border: 1px solid #523629; background:#fff}
.wpcf7-checkbox input[type=acceptance] + span:after {display: block;position: absolute;content: "\f00d";font-family:"Font Awesome 6 Pro";font-weight:900;height: 16px;width: 16px;color:#523629;top: 1px;left: 1px;visibility: hidden;font-size: 16px;text-align: center;line-height: 16px;}
.wpcf7-checkbox input[type=acceptance]:checked + span:before {background: transparent;}
.wpcf7-checkbox input[type=acceptance]:checked + span:after {visibility: visible;}

.wpcf7-radio label {position: relative;cursor: pointer;}
.wpcf7-radio input[type=radio] {position: absolute;visibility: hidden;width: 16px;height: 16px;top: 0;left: 0;}
.wpcf7-radio input[type=radio] + span:before {display: block;position: absolute;content: '';border-radius: 100%;height: 16px;width: 16px;top: 0px;left: 0px;border: 1px solid #523629; background:#fff}
.wpcf7-radio input[type=radio] + span:after {display: block;position: absolute;content: "";font-family:"Font Awesome 6 Pro";font-weight:900;height: 12px;width: 12px;color:#523629; background:#523629; border-radius:100%; top: 3px;left: 3px;visibility: hidden;font-size: 15px;text-align: center;line-height: 16px;}
.wpcf7-radio input[type=radio]:checked + span:before {background: transparent;}
.wpcf7-radio input[type=radio]:checked + span:after {visibility: visible;}


@media only screen and (max-width: 1560px) {
	.content_block.img_text .text {    padding: 150px 0px 150px 100px;}	
	.content_block.text_img .text {   padding: 150px 100px 150px 0px ;}
}

@media only screen and (max-width: 1400px) {
	h1, .h1 {    font-size: 55px;	}
	h2, .h2 {    font-size: 55px;	}

	.header .menu ul li {  margin-right: 25px;}
	.content_block.img_text .text {    padding: 100px 0px 100px 50px;}	
	.content_block.text_img .text {   padding: 100px 50px 100px 0px ;}
	
	.content_block.usp_block .usps { width: calc(100% + 40px); margin: 0 -20px;}
	.content_block.usp_block .usp { width: calc(25% - 40px); margin: 0 20px;}
	
	.footer .title {    font-size: 34px;}
	
	.footer .wrap .col25{width:calc(50% - 50px); margin-bottom:50px}
	
}

@media only screen and (max-width: 1300px) {
	.header .logo { width:250px}
	.header .menu_bar  { width:calc(100% - 250px)}
	.content_block.team .member{width: calc(33.333% - 50px);}
	.content_block.subpages .subpage{width: calc(33.333% - 50px);}
}

@media only screen and (max-width: 1200px) {
	.btn.round_btn {height: 54px; line-height: 54px; width: 54px;}
	.btn.l_btn {height: 54px; line-height: 54px; padding: 0 30px;}
	
}


@media only screen and (max-width: 1160px) {
	.header .menu{display:none}
	.header .right_btns .menu_btn{display:inline-block;}
	.content_block.usp_block .usps { width:600px; max-width: calc(100% + 40px); margin: 0 -20px;}
	.content_block.usp_block .usp { width: calc(100%); margin: 0 20px 30px 20px;}
	.content_block.usp_block .usp .icon{position: absolute;    top: 50%;    transform: translatey(-50%); font-size:30px;    width: 80px;   height:80px;}
	.content_block.usp_block .usp .content{width:calc(100% - 40px); margin-left:40px; padding: 30px 20px 30px 60px; text-align:left;}
	
	.content_block .wrap .col40{width:calc(100% - 50px);}
	.content_block .wrap .col60{width:calc(100% - 50px); margin-bottom:50px;}
}

@media only screen and (max-width: 960px) {
	html, body {font-size: 18px;}
	h1, .h1 {    font-size: 50px;	}
	h2, .h2 {    font-size: 50px;	}
	h3, .h3{font-size:24px;}
	h4, .h4{font-size:22px;}
	h5, .h5{font-size:20px;}
	h6, .h6{font-size:18px;}
	.btn.l_btn{font-size:18px;}
	.btn .icon_right{ margin-left:10px;}
	.btn .icon_left{ margin-right:10px;}
	
	.btn.n_btn {height: 50px;    line-height: 50px;    padding: 0 30px;    font-size: 18px;}
	.btn.xl_btn { height: 65px;    line-height: 65px;    padding: 0 40px;    font-size: 28px;}
	
	
	.content_block.btn_block .small_link{font-size:20px}
	
	.footer .bottom{font-size:16px;}
	.wpcf7 .label{width: 150px; }
	.wpcf7 .form_field{width: calc(100% - 150px);}
}


@media only screen and (max-width: 830px) {
	.content_block.img_text .col50{width:100%; }
	.content_block.img_text .image:after{content:""; padding-bottom:60%; display:block}
	.content_block.img_text .text {padding: 50px 0px 0px 0px;}
	
	.content_block.text_img .col50{width:100%; }
	.content_block.text_img .image:after{content:""; padding-bottom:60%; display:block}
	.content_block.text_img .text {padding: 50px 0px 0px 0px;}
	.content_block.team .member{width: calc(50% - 50px);}
	.content_block.subpages .subpage{width: calc(50% - 50px);}
	.grid.masonry{grid-template-columns:repeat(3 , 1fr);}
}

@media only screen and (max-width: 700px) {
	.header .right_btns .menu_btn{position:relative; padding: 0 0px; width:54px; text-align:center;}
	.header .right_btns .menu_btn .icon_left{margin-right:0}
	.header .right_btns .menu_btn span{position:absolute; bottom:8px; left:0; width:100%; text-align:center; font-size:10px; line-height:1}
}

@media only screen and (max-width: 650px) {
	.header .right_btns .studio_btn{display:none}
	.header .right_btns .btn{margin-left:5px;}
	.content_block.img_text .image {    border-radius: 20px;}
	.footer .wrap .col25{width:calc(100% - 50px); }
	
	.content_block.contact_page .contact_details { border-radius: 20px;}
}

@media only screen and (max-width: 500px) {
	.spacer{padding-bottom:30px;}
	.content_block{margin-bottom:80px}
	.content_block.usp_block .background_img { background-position: center;}
	.content_block.team .member{width: calc(100% - 50px);}
	.content_block.subpages .subpage{width: calc(100% - 50px);}
	.wpcf7 .label{width: 100%; }
	.wpcf7 .form_field{width: 100%;}
	
}
@media only screen and (max-width: 430px) {
	h1, .h1 {    font-size: 40px;	}
	h2, .h2 {    font-size: 40px;	}
	.btn.xl_btn {height: 55px;  line-height: 55px; padding: 0 30px; font-size: 24px;}
	
	.header .logo {width: 200px;}
	.header .menu_bar  { width:calc(100% - 200px)}	
	.content_block.contact_page .contact_details { padding: 30px 30px;}
	.grid.masonry{grid-template-columns:repeat(2 , 1fr);}
}


@media only screen and (max-width: 380px) {
	.maxw1 { padding: 0 10px;}
	.header .logo {width: 160px;}
	.header .menu_bar  { width:calc(100% - 160px)}
	.header .right_btns .menu_btn {  height:48px; line-height:48px;  width: 48px;    }
	.btn.round_btn { height: 48px;  line-height: 48px;  width: 48px; }
	.spacer{padding-bottom:10px;}
	.content_block{margin-bottom:60px}
	
	.content_block.img_text .text {padding: 30px 0px 0px 0px;}
	.content_block.text_img .text {padding: 30px 0px 0px 0px;}
	.content_block.usp_block .background_img {padding: 60px 0;}
	.content_block.usp_block .usp .icon{top: 20px;    transform: translatey(0%); font-size:25px;    width: 60px;   height:60px;}
	.content_block.usp_block .usp .content{width:calc(100% - 30px); margin-left:30px; padding: 30px 20px 30px 40px; text-align:left;}
	
	.content_block.contact_page .contact_details { padding: 30px 20px; font-size: 17px;}
}

@media print {
   
	html, body {  
			page-break-after: avoid;
            page-break-before: avoid; 
			border: 1px solid white;
            height: 99%;}
   
	div{display:block; width:100%}
   
  
}