/*
Theme Name: Renovate
Theme URI: https://quanticalabs.com/wordpress-themes/renovate-construction-wordpress-theme/
Description: Renovate is a responsive and retina ready WordPress Theme best suitable for construction, renovation, remodeling or handyman business. The Theme comes with Cost Calculator Tool - a quick and easy way to get cost estimates for construction or remodeling services. Renovate includes Slider Revolution plugin, premium font icons, 12 page templates, sticky menu, touch friendly slider and carousels, ajax contact form and more. 
Author: QuanticaLabs
Author URI: https://quanticalabs.com/
License: GNU General Public License version 3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Version: 10.4
Tested up to: 7.0
Requires PHP: 5.6
Text Domain: renovate
Tags: light, white, one-column, two-columns, three-columns, right-sidebar, flexible-width, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, sticky-post, theme-options, translation-ready
*/

/* Table of Content
==================================================
#general
#body styles
#site container
#header
#footer
#page
#blog
#single post
#lists
#taxonomies
#forms
#pagination
#comments
#carousel
#icons
#buttons
#misc
#Gutenberg
#WPBakery Page Builder
#WP core
*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@200;300;400;500;600;700;800;900&display=swap');
@import url("fonts/all.min.css");

body,
input,
textarea,
select,
button {
	font-family: "Montserrat", sans-serif !important;
}

body {
	font-size: 15px;
	font-weight: 400;
}
/* --- general --- */
.clearfix:after
{
    font-size: 0px;
    content: ".";
    display: block;
    height: 0px;
    visibility: hidden;
    clear: both;
}
body
{
	background: #E5E5E5;
	padding: 0px;
	margin: 0px;
	font-family: 'Montserrat';
	font-size: 14px;
	color: #444;
}
a
{
	text-decoration: none;
	outline: none;
}
a:hover
{
	text-decoration: underline;
}
a img
{
	display: block;
	transition: opacity 0.3s ease 0s;
	opacity: 1;
	max-width: 100%;
	height: auto;
}
a:hover img
{
	opacity: 0.8;
}
.wpb_text_column.description
{
	display: block;
}
p.description,
.description p
{
	font-size: 16px;
	line-height: 26px;
	margin-top: 34px;
}
p
{
	color: #444;
	font-family: 'Montserrat';
	margin-top: 24px;
	padding: 0;
}
.textwidget p
{
	font-size: 14px;
	line-height: 24px;
}
p a,
table a,
.wpb_text_column a
{
	color: #82B541;
	font-weight: 600;
}
strong
{
	color: #000;
}
blockquote
{
	text-align: center;
	font-family: 'Montserrat';
	font-size: 16px;
	color: #444;
	line-height: 26px;
}
blockquote:before
{
	display: block;
	font-size: 48px;
	color: #82B541;
	text-align: left;
	margin-bottom: 10px;
}
pre
{
	font-family: 'Courier new';
    font-size: 14px;
    line-height: 1.71429;
	background: linear-gradient(#f0f0f0 50%, transparent 50%) repeat scroll 0 0 / 100% 48px;
	text-shadow: 0 1px 0 #FFF;
	zoom:1;
	filter: dropshadow(color=#ffffff, offx=0, offy=1); 
	padding: 0 5px;
	margin: 0;
	overflow: auto;
}
label
{
	color: #25282A;
	font-family: 'Montserrat';
}
.relative
{
	position: relative;
}
.responsive
{
	display: block;
	width: 100%;
	height: auto;
}
input, textarea
{
	font-family: 'Montserrat';
	border: 1px solid #E2E6E7;
	font-size: 14px;
	line-height: 24px;
	padding: 12px 15px;
	color: #444;
	margin: 0;
}
input[type='number'] 
{
   appearance: textfield;
	-moz-appearance: textfield;
	-webkit-appearance: textfield;
	-webkit-appearance: none;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button 
{
    -webkit-appearance: none;
}
table
{
	width: 100%;
}
table td, table th
{
	padding: 18px 30px;
	font-family: 'Montserrat';
	font-size: 14px;
	line-height: 24px;
}
table td, table th
{
	border-left: 1px solid #E2E6E7;
}
table td:first-child, table th:first-child
{
	text-align: right;
	border-left: none;
}
.align-left table td:first-child, .align-left table th:first-child
{
	text-align: left;
}
table tr:nth-child(odd)
{
	background: #F5F5F5;
}
.radius
{
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
}
img.radius
{
	max-width: 100%;
}
.float
{
	float: left;
}
.align-center
{
	text-align: center;
}
.align-left
{
	text-align: left;
}
.align-right
{
	text-align: right;
}
.padding-left-right-100
{
	padding: 0 100px !important;
}
.padding-bottom-17
{
	padding-bottom: 17px;
}
.padding-bottom-50
{
	padding-bottom: 50px !important;
}
.padding-bottom-61
{
	padding-bottom: 61px;
}
.padding-bottom-66
{
	padding-bottom: 66px;
}
.padding-bottom-70
{
	padding-bottom: 70px;
}
.padding-bottom-87
{
	padding-bottom: 87px;
}
.padding-top-0
{
	padding-top: 0 !important;
}
.padding-top-7
{
	padding-top: 7px;
}
.padding-top-54
{
	padding-top: 54px;
}
.padding-top-67
{
	padding-top: 67px;
}
.padding-top-70
{
	padding-top: 70px;
}
.padding-top-bottom-30
{
	padding: 30px 0;
}
.margin-top-0
{
	margin-top: 0 !important;
}
.margin-top-10
{
	margin-top: 10px !important;
}
.margin-top-20
{
	margin-top: 20px;
}
.margin-top-24
{
	margin-top: 24px;
}
.margin-top-26
{
	margin-top: 26px;
}
.margin-top-30,
.cost-calculator-form.margin-top-30
{
	margin-top: 30px;
}
.margin-top-34
{
	margin-top: 34px !important;
}
.margin-top-40
{
	margin-top: 40px !important;
}
.margin-top-67
{
	margin-top: 67px;
}
.margin-top-70
{
	margin-top: 70px !important;
}
.margin-bottom-20
{
	margin-bottom: 20px;
}
.margin-bottom-30
{
	margin-bottom: 30px;
}
.nounderline,
.nounderline:hover
{
	text-decoration: none;
}
.top-border
{
	border-top: 1px solid #E2E6E7;
}
.show-on-mobiles
{
	display: none;
}
.re-smart-column .wpb_wrapper
{
	height: auto;
}
/* --- site container --- */
.site-container
{
}
/* --- headers --- */
h1, h2, h3, h4, h5, h6
{
	font-family: "Montserrat", sans-serif !important;
	margin: 0;
	padding: 0;
	color: #000;
	font-weight: 600;
}
.homepage h4 {
	color: white;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a
{
	color: #000;
	transition: opacity 0.3s ease 0s;
	opacity: 1;
}
.site-container h1 a:hover, .site-container h2 a:hover, .site-container h3 a:hover, .site-container h4 a:hover, .site-container h5 a:hover, .site-container h6 a:hover
{
	opacity: 0.6;
	text-decoration: none;
}
h1
{
	font-size: 22px;
	line-height: 34px;
}
h2
{
	font-size: 29px;
	line-height: 40px;
}
h3
{
	font-size: 22px;
	line-height: 34px;
}
h4
{
	font-size: 18px;
	line-height: 28px;
}
h5
{
	font-size: 14px;
	line-height: 24px;
	font-weight: 700;
}
h2.widgettitle,
body .elementor-widget-wp-widget-categories h5,
body .elementor-widget-wp-widget-archives h5,
body .elementor-widget-wp-widget-tag_cloud h5,
h6
{
	font-size: 15px;
	line-height: 24px;
	font-weight: 500;
	letter-spacing: normal;
}
h2.box-header
{
	text-align: center;
	/*margin-bottom: 50px;*/
}
h2.box-header.align-left
{
	text-align: left;
}
h2.widgettitle::after,
.elementor-widget-wp-widget-categories h5::after,
.elementor-widget-wp-widget-archives h5::after,
.elementor-widget-wp-widget-tag_cloud h5::after,
.box-header::after,
.box-header.elementor-widget-heading .elementor-heading-title::after
{
	display: block;
	content: "";
	background: #82B541;
	width: 40px;
	height: 2px;
	margin-top: 13px;
	margin-bottom: 30px;
}
.box-header.no-border::after,
.box-header.elementor-widget-heading::after
{
	display: none;
}
h2.box-header::after,
.box-header.elementor-widget-heading h2.elementor-heading-title::after
{
	width: 80px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
}
h2.box-header.align-left:after,
.box-header.align-left.elementor-widget-heading h2.elementor-heading-title::after
{
	margin-left: 0;
}
h3 .more
{
	margin-left: 50px;
}
h2.widgettitle,
.elementor-widget-wp-widget-categories h5,
.elementor-widget-wp-widget-archives h5,
.elementor-widget-wp-widget-tag_cloud h5,
h6.box-header,
.box-header.elementor-widget-heading h6
{
	border-bottom: 1px solid #E2E6E7;
}
h2.widgettitle:after,
.elementor-widget-wp-widget-categories h5::after,
.elementor-widget-wp-widget-archives h5::after,
.elementor-widget-wp-widget-tag_cloud h5::after,
h6.box-header:after,
.box-header.elementor-widget-heading h6.elementor-heading-title:after
{
	margin-bottom: -1px;
}
/* --- header --- */
.header-container
{
	background: #FFF;
	padding: 13px 0;
}
.header-container .vertical-align-table
{
	width: 100%;
}
.header-top-bar-container
{
	background-color: #F5F5F5;
}
.header-top-bar-container .header-toggle
{
	display: none;
	clear: both;
	text-align: center;
	color: #444;
	padding: 15px 0;
}
.header-top-bar-container .header-toggle:hover
{
	color: #000;
}
.header-top-bar-container .header-toggle
{
	-moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
    -ms-filter: fliph;
    filter: fliph;
}
.header-top-bar-container .header-toggle.active
{
	-moz-transform: rotate(0);
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
}
.header-top-bar,
.header
{
	width: 1170px;
	margin-left: auto;
	margin-right: auto;
}
.header .logo
{
	width: 200px;
	max-width: 200px;
	/*float: left;*/
}
.header .logo a img
{
	transition: none;
	-moz-transition: none;
	-webkit-transition: none;
}
.header .logo a:hover img
{
	opacity: 1;
}
body .header h2
{
	font-size: 37px;
	font-weight: 900;
	color: #82B541;
	line-height: 1;
}
body .header h2 a
{	
	color: #82B541;
	font-weight: 900;
}
body .header h2 a:hover
{
	opacity: 1;
}
body,
body p,
body li,
body td,
body th,
body label,
body input,
body textarea,
body select,
body button,
.post-content p {
	font-family: "Montserrat", sans-serif !important;
	font-size: 16px;
	font-weight: 300;
}
/* --- page header --- */
.page-header
{
	-webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.05) inset;
	-moz-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.05) inset;
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.05) inset;
}
.page-header>.vc_inner
{
	padding: 33px 0;
}
.page-header-left
{
	display: table-cell;
	width: 520px;
	vertical-align: middle;
}
.page-header-left h1
{
	text-transform: uppercase;
}
.page-header-right
{
	display: table-cell;
	width: 650px;
	vertical-align: middle;
}
.page-header-right label
{
	float: left;
}
/* --- bread crumbs --- */
.bread-crumb-container
{
	float: right;
	padding: 7px 0;
}
.bread-crumb
{
	float: left;
}
.bread-crumb li
{
	float: left;
	margin-left: 3px;
	text-transform: uppercase;
}
.bread-crumb-container label,
.bread-crumb li,
.bread-crumb li a
{
	font-family: 'Montserrat';
	font-weight: 500;
	font-size: 13px;
	color: #999;
	line-height: 20px;
}
.bread-crumb li a
{
	color: #444;
}
/* --- menu --- */
.menu-container
{
	width: 800px;
	/*float: right;*/
}
.menu-container nav
{
	float: right;
}
.header-container.sticky.move
{
	position: fixed;
    top: calc(var(--ql-bar-height, 0px) + var(--wp-admin--admin-bar--height, 0px));
    width: 100%;
    z-index: 1001;
	padding: 16px 0;
	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.1);
	-webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.1);
}
.boxed .header-container.sticky.move
{
	max-width: 1310px;
	width: 100%;
}
.sf-menu
{
	float: none;
	padding: 0;
	margin: 0;
}
.sf-menu ul
{
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}
.sf-menu li
{
	border: none;
	overflow: hidden;
}
.sf-menu li, .sf-menu li:hover, .sf-menu li.sfHover, .sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active
{
	background: none #fff;
	
}
.sf-menu li:hover a, .sf-menu li:hover a:visited
{
	color: #82B541;
}
.sf-menu li a, .sf-menu li a:visited
{
	font-family: 'Montserrat';
	font-size: 15px;
	font-weight: 400;
	line-height: 24px;
	color: #444444;
	padding: 12px 0 12px 12px;
	border: none;
}
.sf-menu a:hover,
.sf-menu a:visited:hover,
.sf-menu li.current-menu-item a,
.sf-menu li.current-menu-parent a,
.sf-menu li.current-menu-ancestor a
{
	color: #82B541;
}
body .header-container .menu-container .sf-menu>li:first-child>a
{
	padding-left: 0;
}
.sf-menu li ul
{
	border: 1px solid #E2E6E7;
}
.sf-menu li ul
{
	width: 218px;
}
.sf-menu li:hover, .sf-menu li.sfHover
{
	overflow: visible;
}
.sf-menu li:hover ul, .sf-menu li.sfHover ul
{
	top: 48px;
	left: 5px;
}
.sf-menu li.left-flyout:hover ul, .sf-menu li.left-flyout.sfHover ul
{
	left: auto;
	right: 0;
}
.sf-menu li.left-flyout:hover ul ul 
{
    left: -220px;
}
.sf-menu>li:first-child:hover ul, .sf-menu>li:first-child.sfHover ul
{
	left: -21px;
}
.sf-menu li ul li
{
	width: 218px;
	height: auto;
	padding: 0;
	border: none;
}
.menu-container .sf-menu li:hover ul a,
.menu-container .sf-menu li.menu-item-has-children:hover ul a,
.menu-container .sf-menu li ul li a,
.menu-container .sf-menu li.menu-item-has-children:hover ul li.current-menu-item ul li a,
.menu-container .sf-menu li.menu-item-has-children:hover ul li.current-menu-parent ul li a,
.menu-container .sf-menu li.menu-item-has-children:hover ul li.current-menu-ancestor ul li a
{
	color: #444;
}
.menu-container .sf-menu li ul li a,
.menu-container .sf-menu li.current-menu-item ul li a,
.menu-container .sf-menu li.current-menu-parent ul li a,
.menu-container .sf-menu li.current-menu-ancestor ul li a,
.menu-container .sf-menu li.current-menu-parent.menu-item-has-children ul li a, 
.menu-container .sf-menu li.current-menu-ancestor.menu-item-has-children ul li a,
.menu-container .sf-menu li.menu-item-has-children ul li a,
.menu-container .sf-menu li.menu-item-has-children:hover ul li a,
.menu-container .sf-menu li:hover ul li a
{
	color: #444;
	border-top: 1px solid #E2E6E7;
	background-color: #FFF;
	padding: 13px 20px;
	background-image: none;
}
body .menu-container .sf-menu li ul.sub-menu li:first-child>a
{
	border-top: none;
}
.menu-container .sf-menu li ul li.current-menu-item a,
.menu-container .sf-menu li ul li.current-menu-parent a,
.menu-container .sf-menu li ul li.current-menu-ancestor a,
.menu-container .sf-menu li.menu-item-has-children ul li a:hover,
.menu-container .sf-menu li.menu-item-has-children:hover ul li.current-menu-item a,
.menu-container .sf-menu li.menu-item-has-children:hover ul li.current-menu-parent a,
.menu-container .sf-menu li.menu-item-has-children:hover ul li.current-menu-ancestor a,
.menu-container .sf-menu li.menu-item-has-children:hover ul li.current-menu-item ul li a:hover,
.menu-container .sf-menu li.menu-item-has-children:hover ul li.current-menu-parent ul li a:hover,
.menu-container .sf-menu li.menu-item-has-children:hover ul li.current-menu-ancestor ul li a:hover,
.menu-container .sf-menu li.menu-item-has-children:hover ul li ul li.current-menu-item a,
.menu-container .sf-menu li.menu-item-has-children:hover ul li ul li.current-menu-parent a,
.menu-container .sf-menu li.menu-item-has-children:hover ul li ul li.current-menu-ancestor a,
.menu-container .sf-menu li:hover ul li.sfHover>a
{	
	color: #82B541;
}
ul.sf-menu li li:hover ul, ul.sf-menu li li.sfHover ul,
ul.sf-menu>li:first-child li:hover ul, ul.sf-menu>li:first-child li.sfHover ul,
ul.sf-menu li li li:hover ul, ul.sf-menu li li li.sfHover ul
{
	left: 218px;
	z-index: 2 !important;
}
ul.sf-menu li li:first-child:hover ul, ul.sf-menu li li.sfHover:first-child ul,
ul.sf-menu li li:first-child li:first-child:hover ul, ul.sf-menu li li:first-child li.sfHover:first-child ul
{
	top: -1px;
}
.sf-menu li ul li.menu-item-has-children>a::after, .sf-menu li:hover ul li.menu-item-has-children>a::after
{
	float: right;
	font-family: 'template';
	font-size: 11px;
	color: #444444;
	content: "b";
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	vertical-align: middle;
	direction: ltr;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
/* --- mobile menu --- */
.mobile-menu-container
{
	display: none;
}
.header .mobile-menu-switch,
.mobile-menu,
.mobile-menu-divider
{
	display: none;
	margin-left: auto;
	margin-right: auto;
}
.mobile-menu-divider
{
	margin-top: 15px;
}
.mobile-menu li a
{
	display: block;
	color: #25282A;
	background: #F0F0F0;
	font-size: 14px;
	font-family: 'Montserrat';
	line-height: 24px;
	padding: 12px 20px;
	margin-bottom: 1px;
}
.mobile-menu li.current-menu-item>a,
.mobile-menu li.current-menu-ancestor ul li.current-menu-item a,
.mobile-menu li.current-menu-ancestor ul li.current-menu-parent ul li.current-menu-item a,
.mobile-menu li.current-menu-ancestor a,
.mobile-menu li.current-menu-ancestor ul li.current-menu-parent a,
.mobile-menu li.current-menu-ancestor ul li.current-menu-parent ul li.current-menu-parent a
{
	background: #82B541;
	color: #FFF;
}
.mobile-menu li ul a
{
	font-size: 14px;
	padding-left: 40px;
}
.mobile-menu li ul ul a
{
	font-size: 13px;
	padding-left: 80px;
}
.mobile-menu li.current-menu-ancestor ul a,
.mobile-menu li.current-menu-ancestor ul li.current-menu-item ul a,
.mobile-menu li.current-menu-ancestor ul li.current-menu-parent ul a,
.mobile-menu li.current-menu-ancestor ul li.current-menu-parent ul li.current-menu-item ul a,
.mobile-menu li.current-menu-ancestor ul li.current-menu-parent ul li.current-menu-parent ul a
{
	color: #25282A;
	background: #F0F0F0;
}
.mobile-menu-switch .line
{
	display: block;
	width: 30px;
	height: 3px;
	background: #444;
	margin-top: 6px;
}
.mobile-menu-switch .line:first-child
{
	margin-top: 0;
}
.mobile-menu-switch:hover .line
{
	background: #82B541;
}
/* --- vertical menu --- */
.vertical-menu li
{
	margin-top: 10px;
	list-style: none;
}
.vertical-menu li:first-child
{
	margin-top: 0;
}
.vertical-menu li a
{	
	display: block;
	background: #F5F5F5;
	padding: 18px 18px 18px 19px;
	font-family: 'Montserrat';
	line-height: 24px;
	color: #444;
}
.vertical-menu li.current-menu-item a,
.vertical-menu li:hover a
{
	background: #82B541;
}
.vertical-menu li.current-menu-item a,
.vertical-menu li:hover a,
.vertical-menu li.current-menu-item a:after,
.vertical-menu li:hover a:after
{
	color: #FFF;
}
.vertical-menu li a:after
{
	float: right;
	color: #AAA;
	font-size: 11px;
	margin-top: 7px;
	font-family: "template";
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-transform: none;
    vertical-align: middle;
	content: "e";
}
/* --- page --- */
.theme-page
{
}
.page-margin-top,
.error404 .feature-item.feature-item-big h4.page-margin-top,
.page-template-404 .feature-item.feature-item-big h4.page-margin-top
{
	margin-top: 50px;
}
body .page-margin-top-section
{
	margin-top: 65px;
}
.page-padding-top
{
	padding-top: 50px;
}
.page-padding-top-section
{
	padding-top: 65px;
}
/* --- vertical align --- */
.vertical-align-table
{
	display: table;
}
.vertical-align
{
	display: table-row;
}
.vertical-align-cell
{
	display: table-cell;
	vertical-align: middle;
}
/* --- body styles --- */
body.image-1
{
	background: url("images/backgrounds/images/image_1.jpg") fixed no-repeat center 0;
}
body.image-2
{
	background: url("images/backgrounds/images/image_2.jpg") fixed no-repeat center 0;
}
body.image-3
{
	background: url("images/backgrounds/images/image_3.jpg") fixed no-repeat center 0;
}
body.image-4
{
	background: url("images/backgrounds/images/image_4.jpg") fixed no-repeat center 0;
}
body.image-5
{
	background: url("images/backgrounds/images/image_5.jpg") fixed no-repeat center 0;
}
body.pattern-1
{
	background: url("images/backgrounds/patterns/pattern_1.png") fixed;
}
body.pattern-2
{
	background: url("images/backgrounds/patterns/pattern_2.png") fixed;
}
body.pattern-3
{
	background: url("images/backgrounds/patterns/pattern_3.png") fixed;
}
body.pattern-4
{
	background: url("images/backgrounds/patterns/pattern_4.png") fixed;
}
body.pattern-5
{
	background: url("images/backgrounds/patterns/pattern_5.png") fixed;
}
body.pattern-6
{
	background: url("images/backgrounds/patterns/pattern_6.png") fixed;
}
body.pattern-7
{
	background: url("images/backgrounds/patterns/pattern_7.png") fixed;
}
body.pattern-8
{
	background: url("images/backgrounds/patterns/pattern_8.png") fixed;
}
body.pattern-9
{
	background: url("images/backgrounds/patterns/pattern_9.png") fixed;
}
body.pattern-10
{
	background: url("images/backgrounds/patterns/pattern_10.png") fixed;
}
body.overlay .background-overlay
{
	display: block;
}
.background-overlay
{
	position: fixed;
	display: none;
	width: 100%;
	height: 100%;
	top: 0;
	background: url("images/backgrounds/images/overlay.png");
	z-index: 1;
}
/* --- page layout --- */
.site-container
{
	background: #FFF;
}
.site-container.boxed
{
	max-width: 1310px;
	margin-left: auto;
	margin-right: auto;
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.10);
	-moz-box-shadow: 0 0 15px rgba(0, 0, 0, 0.10);
	-webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.10);
}
body.overlay .site-container
{
	position: relative;
	z-index: 2;
}
.flex-box
{
	display: block;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-flexbox;
	display: -webkit-flex;
}
.flex-hide
{
	display: none;
}
@media all and (min-width:0\0) and (min-resolution: .001dpcm)
{
    .flex-hide
	{
		display: inline;
	}
	.flex-hide.wpb_single_image img
	{
		width: 100%;
		height: auto;
	}
}
.flex-box .vc_column_container
{
	background-position: center center;
	background-size: cover;
}
.site-container .vc_row
{
	width: 1170px;
	margin-left: auto;
	margin-right: auto;
}
.site-container .vc_row .wpb_column .vc_row
{
	width: auto;
}
.site-container .vc_row.full-width .vc_col-sm-12.wpb_column .vc_row
{
	width: 1170px;
}
.column .row
{
	width: auto;
}
.site-container .vc_row.full-width,
body .site-container .vc_row.full-width .wpb_column .vc_row.full-width
{
	width: 100%;
}
.site-container .vc_row.full-width.flex-box>.vc_col-sm-6 
{
	width: 50%;
}
.site-container .vc_row.full-width>.vc_col-sm-4
{
	width: 33.33333%;
}
.site-container .vc_row.full-width.flex-box>.wpb_column
{
	margin: 0;
}
.site-container .vc_row.gray
{
	background: #F5F5F5;
}
.site-container .vc_row.yellow
{
	background: #82B541;
}
.site-container .vc_row:after
{
    font-size: 0px;
    content: ".";
    display: block;
    height: 0px;
    visibility: hidden;
    clear: both;
}
.column 
{
	position: relative;
	float: left;
	margin-left: 30px;
}
.column:first-child,
.column.first
{
	margin-left: 0;
}
.vc_row .vc_col-sm-8 .vc_col-sm-6 
{
	width: 370px;
}
.column-1-3 .column-1-2
{
	width: 150px;
}
.column-2-3 .column-1-3
{
	width: 210px;
}
.vc_row .vc_col-sm-3,
.vc_row .vc_col-sm-6 .vc_col-sm-6 
{
	width: 270px;
}
.vc_row .vc_col-sm-1\/5 
{
	width: 210px;
}
.vc_row .vc_col-sm-9
{
	width: 870px;
}
.vc_row .vc_col-sm-9 .vc_col-sm-9 
{
	width: 645px;
}
.vc_row .vc_col-sm-9 .vc_col-sm-8
{
	width: 570px;
}
.vc_row .vc_col-sm-9 .vc_col-sm-6 
{
	width: 420px;
}
.vc_row .vc_col-sm-9 .vc_col-sm-4
{
	width: 270px;
}
.vc_row .vc_col-sm-9 .vc_col-sm-3
{
	width: 195px;
}
.column-right
{
	float: right;
}
.columns.no-width .column-left,
.columns.no-width .column-right
{
	width: auto;
}
/* --- services --- */
.services-list .vc_row.wpb_row.vc_row-fluid
{
	float: none;
	padding: 0;
	background: transparent;
	margin-left: auto;
	margin-right: auto;
	border: none;
}
.services-list li,
.team-box
{
	position: relative;
	float: left;
	width: 390px;
	background: #FFF;
	padding-bottom: 26px;
	overflow: hidden;
}
.vc_col-sm-9 .services-list li
{
	width: 290px;
}
div.team-box
{
	width: 100%;
}
.team-box
{
	padding-bottom: 0;
	background: transparent;
}
.services-list.services-icons .vc_row
{
	margin-top: 30px;
}
.services-list.services-icons .vc_row:first-child
{
	margin-top: 0;
}
.services-list.services-icons ul li
{
	width: 570px;
	padding: 40px 40px 36px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.services-list.services-items-border.services-icons li
{
	border: 1px solid #E2E6E7;
}
.services-list.services-icons li:nth-child(even)
{
	margin-left: 30px;
}
.services-list li .service-icon::before
{
	float: left;
	font-size: 48px;
	color: #82B541;
	border: 1px solid #E2E6E7;
	padding: 19px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.services-list.services-icons li .service-content
{
	margin-left: 128px;
}
.services-list li h4
{
	margin-top: 22px;
	text-align: center;
}
.team-box h4
{
	text-align: center;
}
.services-list li h4.box-header::after,
.team-box h4.box-header::after
{
	margin-top: 23px;
	margin-left: auto;
	margin-right: auto;
}
.team-box h4 span
{
	display: block;
	font-weight: 500;
	font-size: 11px;
	color: #999; 
	line-height: 21px;
	letter-spacing: 1px;
	padding-top: 7px;
}
.services-list li p,
.team-box p
{
	text-align: center;
	font-size: 16px;
	font-weight: 300;
	letter-spacing: 0.03em;
	line-height: 24px;
	padding: 24px 25px 0;
	margin: 0;
}
.services-list.services-icons li h4
{
	margin-top: -8px;
}
.services-list.services-icons li h4,
.services-list.services-icons li p
{
	text-align: left;
}
.services-list.services-icons li p
{
	padding: 24px 0 0;
}
.services-list.services-icons li h4.box-header::after
{
	margin-left: 0;
	margin-right: 0;
}
.services-list a>.re-preloader,
.team-box a>.re-preloader
{
	height: 260px;
}
.services-list img,
.team-box img
{
	max-width: 100%;
	height: auto;
}
.team-box ul.social-icons
{
	display: none;
	position: absolute;
	background: transparent;
}
.team-box ul.social-icons.social-static
{
	position: static;
	display: block;
	background: #FFF;
}
.team-box:hover ul.social-icons
{
	display: block;
}
.team-box .team-content
{
	padding-top: 23px;
	padding-bottom: 26px;
	background: #FFF;
	position: relative;
	z-index: 1;
}
.single .team-box .team-content
{
	background: #F5F5F5;
}
.team-box ul.social-icons li
{
	border: none;
	margin-left: 1px;
	background: #FFF;
}
.team-box ul.social-icons li a
{
	padding: 17px 18px;
	height: 16px;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.team-box ul.social-icons li:first-child
{
	margin-left: 0;
}
.team-box ul.social-icons li:hover
{
	background: #82B541;
}
.team-box ul.social-icons li:hover a
{
	color: #FFF;
}
/* --- projects --- */
.projects-list
{
	width: 100%;
	transition: all 0.4s ease 0s;
	-webkit-transition: all 0.4s ease 0s;
	-moz-transition: all 0.4s ease 0s;
}
.projects-list li
{
	position: relative;
	float: left;
	width: 25%;
	overflow: hidden;
}
.projects-list.isotope li
{
	width: 270px;
	height: 180px;
	margin-top: 30px;
}
.projects-list li img
{
	width: 100%;
}
.projects-list a>.re-preloader
{
	height: 250px;
}
.projects-list li .view
{
	position: absolute;
	top: 0;
	background: rgba(38, 38, 40, 0.5);
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: all 0.3s ease 0s;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
}
.projects-list li:hover .view
{
	opacity: 1;
}
.projects-list li .view .vertical-align-table
{
	width: 100%;
	height: 100%;
}
.projects-list li .view p.description
{
	display: block;
	color: #FFF;
	margin-top: -20px;
	margin-bottom: 55px;
	font-size: 14px;
	line-height: 24px;
	transition: all 0.3s ease 0s;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
}
.projects-list li:hover .view  p.description
{
	margin-bottom: 35px;
}
/* --- features --- */
.feature-item
{
	position: relative;
	float: left;
	width: 100%;
}
.feature-item.feature-item-big
{
	text-align: center;
}
.feature-item::before
{
	float: left;
	font-size: 48px;
	margin-right: 30px;
	color: #82B541;
	border: 1px solid #E2E6E7;
	padding: 19px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
body .feature-item::before
{
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.feature-item.feature-item-big::before
{
	clear: both;
	float: none;
	display: block;
	width: 60px;
	font-size: 60px;
	margin-left: auto;
	margin-right: auto;
	padding: 39px;
}
.feature-item .featured-item-icon-url 
{
	position: absolute;
	width: 88px;
    height: 88px;
    left: 0;
    top: 0;
}
.feature-item.feature-item-big .featured-item-icon-url
{
	width: 140px;
	height: 140px;
	right: 0;
	margin-left: auto;
	margin-right: auto;
}
.featured-item-icon-url:hover
{
	text-decoration: none;
}
.feature-item h4
{
	padding-bottom: 5px;
}
.feature-item p
{
	font-family: 'Montserrat';
	font-size: 14px;
	line-height: 24px;
	padding: 0;
	margin-top: 19px;
	margin-left: 118px;
}
.feature-item.no-icon p
{
	margin-left: 0;
}
.feature-item.feature-item-big h4
{
	margin-top: 35px;
}
.feature-item.feature-item-big.no-icon h4
{
	margin-top: 0;
}
.feature-item.feature-item-big h4:after
{
	margin-top: 20px;
	margin-left: auto;
	margin-right: auto;
}
body .feature-item.feature-item-big p
{
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.vc_col-sm-3 .feature-item.feature-item-big p
{
	width: 100%;
}
.feature-item.feature-item-big .ornament
{
	position: relative;
	width: 1px;
	height: 20px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 13px;
	background: #E2E6E7;
}
.feature-item.feature-item-big .ornament:after
{
	position: absolute;
	content: "";
	border: 1px solid #E2E6E7;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	width: 11px;
	height: 11px;
	left: -6px;
	bottom: -13px;
}
.error404 .feature-item.feature-item-big h4,
.page-template-404 .feature-item.feature-item-big h4
{
	font-size: 29px;
    line-height: 40px;
	padding-bottom: 0;
}
.error404 .feature-item.feature-item-big h4:after,
.page-template-404 .feature-item.feature-item-big h4:after
{
	width: 80px;
}
.error404 .feature-item.feature-item-big p,
.page-template-404 .feature-item.feature-item-big p
{
	font-size: 16px;
    line-height: 26px;
    margin-top: 34px;
}
/* --- timeline --- */
.timeline-item .timeline-left
{
	width: 190px;
	min-width: 190px;
}
.timeline-item .label-container
{
	position: relative;
}
.timeline-item .label-container .timeline-circle
{
	position: absolute;
	display: block;
	width: 19px;
	height: 19px;
	top: 4px;
	right: -11px;
	border: 1px solid #E2E6E7;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	background: #FFF;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.timeline-item .label-container .timeline-circle::after
{
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	margin-left: 6px;
	margin-top: 6px;
	background: #82B541;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.timeline-item label
{
	float: right;
	max-width: 100px;
	overflow: hidden;
	font-family: 'Montserrat';
	font-weight: 500;
	color: #FFF;
	font-size: 13px;
	line-height: 20px;
	background: #82B541;
	padding: 4px 15px 6px 20px;
	white-space: nowrap;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.timeline-item .label-triangle
{
	float: right;
	width: 0;
	height: 0;
	margin-right: 40px;
	border-style: solid;
	border-width: 15px 0 15px 15px;
	border-color: transparent transparent transparent #82B541;
}
.timeline-content
{
	padding: 22px 0 26px 40px;
	border-left: 1px solid #E2E6E7;
}
.timeline-content p
{
	font-size: 14px;
	line-height: 24px;
}
.timeline-content span.timeline-title
{
	margin-right: 10px;
}
.timeline-content span.timeline-subtitle
{
	font-family: 'Montserrat';
	font-weight: 500;
	font-size: 11px;
	color: #999;
	line-height: 16px;
	letter-spacing: 1px;
	margin-top: 9px;
}
/* --- testimonials --- */
.testimonials-container
{
	position: relative;
}
.testimonials-container .caroufredsel_wrapper_testimonials
{
	width: 1050px !important;
	left: 60px !important;
}
.testimonials-container.type-small .caroufredsel_wrapper_testimonials
{
	width: 100% !important;
	left: 0 !important;
}
.testimonials-list li
{
	float: left;
	width: 1050px;
	text-align: center;
}
.testimonials-list li::before
{
	display: block;
	width: 48px;
	font-size: 48px;
	margin-left: auto;
	margin-right: auto;
	color: #FFF;
	border: 1px solid #E2E6E7;
	padding: 19px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.testimonials-list .ornament
{
	position: relative;
	width: 1px;
	height: 20px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 13px;
	background: #E2E6E7;
}
.testimonials-list .ornament::after
{
	position: absolute;
	content: "";
	border: 1px solid #E2E6E7;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	width: 11px;
	height: 11px;
	left: -6px;
	bottom: -13px;
}
.testimonials-list p
{
	font-family: 'Montserrat';
	font-weight: 300;
	font-size: 21px;
	color: #FFFFFF;
	line-height: 36px;
	padding: 29px 50px 0;
	margin-top: 0;
}
.testimonials-list p::after
{
	display: block;
	content: "";
	background: #82B541;
	width: 40px;
	height: 2px;
	margin-top: 30px;
	margin-bottom: 34px;
	margin-left: auto;
	margin-right: auto;
}
.testimonials-list .author
{
	font-family: 'Montserrat';
	font-weight: 500;
	font-size: 13px;
	color: #FFF;
	line-height: 20px;
}
.testimonials-list .author-details
{
	margin-top: 7px;
	font-family: 'Montserrat';
	font-weight: 500;
	font-size: 11px; 
	color: #FFF;
	line-height: 16px;
	letter-spacing: 1px;
}
.testimonials-container .re-carousel-pagination
{
	position: absolute;
	right: 0;
	top: -52px;
}
.testimonials-container .re-carousel-pagination a
{
	margin-top: 0;
}
.type-small .testimonials-list p
{
	font-size: 16px;
	line-height: 26px;
	color: #444;
	border: 1px solid #E2E6E7;
	padding: 33px 40px 37px;
}
.type-small .testimonials-list p::after
{
	content: none;
}
.type-small .testimonials-list .ornament
{
	float: left;
	margin-left: 44px;
	margin-right: 43px;
	height: 101px;
}
.type-small .testimonials-list .ornament::after
{
	background: #FFF;
	bottom: 0;
	top: -7px;
}
.type-small .testimonials-list .ornament::before
{
	position: relative;
	display: block;
	color: #82B541;
	background: #FFF;
	width: 48px;
	font-size: 48px;
	top: 26px;
	left: -44px;
	border: 1px solid #E2E6E7;
	padding: 19px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
body .type-small .testimonials-list .ornament.empty-circle
{
	height: 79px;
	margin-right: 6px;
}
body .type-small .testimonials-list .ornament.empty-circle::before
{
	content: "";
	width: 11px;
	height: 11px;
	top: 66px;
	left: -6px;
	padding: 0;
}
.type-small .testimonials-list .author-details-box
{
	float: left;
	margin-top: 50px;
	margin-left: 30px;
}
.type-small .testimonials-list .author
{
	color: #444;
}
.type-small .testimonials-list .author-details
{
	color: #999;
}
.vc_col-sm-9 .type-small .testimonials-list li,
.vc_col-sm-6 .type-small .testimonials-list li,
.vc_col-sm-4 .type-small .testimonials-list li
{
	width: 570px;
	text-align: left;
	margin-right: 30px;
}
.vc_col-sm-9 .type-small .testimonials-list li
{
	width: 870px;
}
.vc_col-sm-4 .type-small .testimonials-list li
{
	width: 370px;
}
/* --- our clients --- */
.our-clients-list-container
{
	overflow: hidden;
	text-align: center;
}
.our-clients-list li
{
	float: left;
	width: 170px;
	height: 120px;
	margin-right: 30px;
}
.our-clients-list li img
{
	width: 100%;
	height: auto;
}
.our-clients-list.type-list li
{
	position: relative;
	margin-right: -1px;
	border: 1px solid #E2E6E7;
	width: 33%;
	height: 150px;
	text-align: center;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.our-clients-list.type-list li:nth-child(n+4)
{
	margin-top: -1px;
}
.our-clients-list.type-list .our-clients-item-container
{	
	display: inline-block;
}
.our-clients-list.type-list li .vertical-align-cell
{
	text-align: center;
	height: 150px;
}
/* --- contact details --- */
.contact-details-box:before
{
	display: block;
	float: left;
	width: 48px;
	height: 48px;
	font-size: 48px;
	color: #82B541;
	background: #FFF;
	border: 1px solid #FFF;
	padding: 19px;
	margin-right: 30px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.contact-details-box h4
{
	color: #FFF;
}
.contact-details-box p
{
	font-family: 'Montserrat';
	font-size: 16px;
	line-height: 26px;
	color: #FFF;
	padding: 1em 0;
	margin: 0;
}
.contact-details-box p a
{
	color: #FFF;
}
/* --- contact details widget --- */
.re_contact_details_widget p
{
	font-size: 14px;
	line-height: 24px;
}
/* --- slider control --- */
.slider-control
{
	position: absolute;
	width: 26px;
	height: 26px;
	color: #FFF;
	border: 1px solid #E2E6E7;
	padding: 16px;
	left: 0;
	top: 43%;
	font-size: 24px;
	z-index: 1;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	transition: all 0.3s ease 0s;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
}
.slider-control.right
{
	left: auto;
	right: 0;
	-moz-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    transform: scaleX(-1);
    -ms-filter: fliph;
    filter: fliph;
}
.slider-control:hover
{
	background: #82B541;
	border-color: #82B541;
}
body .slider-control
{
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
/* --- parallax --- */
.re-parallax
{
	background-attachment: fixed;
	background-size: cover;
	background-position: center 0;
}
.re-white,
.re-white h2,
.re-white h4,
.re-white p,
.re-white .feature-item::before,
.re-parallax,
.re-parallax h2,
.re-parallax h4,
.re-parallax p,
.re-parallax .feature-item::before
{
	color: #FFF;
}
/* --- counters --- */
span.number, 
span.odometer.number
{
	margin-top: 10px;
	font-family: 'Montserrat';
	font-weight: 100;
	font-size: 80px;
	color: #FFF;
	visibility: visible;
}
span.number:after, 
span.odometer.number:after
{
	display: block;
	content: "";
	background: #82B541;
	width: 40px;
	height: 2px;
	margin: 20px auto 0;
}
/* --- blog --- */
.blog>li
{
	clear: both;
	float: left;
	margin-top: 70px;
}
.blog.two-columns>li,
.blog.three-columns>li
{
	clear: none;
	margin-top: 0;
}
.layout-column .blog.three-columns>li
{
	float: none;
	margin-top: 50px;
}
.blog.two-columns
{
	margin-top: 70px;
}
.blog.three-columns
{
	margin-top: 50px;
}
.blog>li:first-child,
.blog.small>li:first-child,
.blog.two-columns:first-child,
.blog.three-columns:first-child,
.layout-column .blog.three-columns>li:first-child
{
	margin-top: 0;
}
.blog .post-image,
.blog .post-content,
.blog .post-details,
.blog .post-content-details li
{
	float: left;
}
.blog .post-content h2,
.blog .post-content h3,
.blog.three-columns h4.box-header,
.blog.horizontal-carousel h4
{
	text-transform: uppercase;
}
.blog .post-content ol li,
.blog .post-content ul li
{
	padding-top: 3px;
	padding-bottom: 3px;
	line-height: 1.65rem;
}
.blog .post-details
{
	width: 90px;
	margin-right: 30px;
	font-family: 'Montserrat';
	font-weight: 500;
	font-size: 13px;
	color: #999;
	line-height: 20px;
}
.blog .post-details a
{
	color: #999;
}
.blog .post-content
{
	width: 750px;
}
.vc_col-sm-12 .blog .post-content
{
	width: 1050px;
}
.blog .post-content .re-preloader
{
	height: 300px;
}
.blog .post-content .row
{
	width: auto;
}
.blog.small .post-content
{
	width: 160px;
}
.blog .post-details li
{
	border-top: 1px solid #E2E6E7;
	border-right: 1px solid #E2E6E7;
	text-align: center;
	padding: 10px 0;
}
.blog .post-details li:first-child
{
	border-top: none;
}
.blog .post-details .date h2,
.blog .post-details li:before
{
	color: #82B541;
}
.blog .post-details li.date:before
{
	display: none;
}
.blog .post-details li:before
{
	display: block;
	margin-bottom: 2px;
	font-size: 14px;
}
.blog .post-content-details
{
	margin-bottom: 16px;
}
.blog ul.post-content-details li
{
	font-family: 'Montserrat';
	font-weight: 500;
	font-size: 13px;
	color: #999;
	line-height: 20px;
	margin-left: 10px;
	padding: 0;
}
.blog .post-content-details li:first-child
{
	margin-left: 0;5
}
.blog .post-content-details li a
{
	color: #444;
}
.blog p
{
	font-size: 14px;
	line-height: 24px;
	margin-top: 34px;
}
.blog.horizontal-carousel p
{
	font-size: 14px;
	line-height: 24px;
	margin-top: 24px;
}
.blog .post-image
{
	width: 100%;
	margin-bottom: 5px;
}
.blog.small>li
{
	margin-top: 30px;
}
.blog.small .post-content a
{
	display: block;
	font-family: 'Montserrat';
	font-size: 14px;
	color: #444444;
	line-height: 24px;
}
.blog.small .post-image
{
	width: auto;
	margin-bottom: 0;
	margin-right: 20px;
}
.blog.small li .post-details
{
	width: auto;
	clear: both;
	margin-top: 13px;
	margin-right: 0;
}
.blog.small li .post-details li
{
	text-align: left;
	padding: 0;
	border: none;
}
.vc_row .vc_col-sm-6 .blog .post-content,
.vc_row .blog .vc_col-sm-6 .post-content
{
	width: 450px;
}
.blog.three-columns .post-details
{
	width: 100%;
	margin-right: 0;
	border-bottom: 1px solid #E2E6E7;
	margin-bottom: 20px;
}
.blog.three-columns .post-details li
{
	float: left;
	border-top: none;
	padding: 10px 20px;
}
.blog.three-columns .post-details li:first-child
{
	padding-left: 0;
}
.blog.three-columns .post-details li:last-child
{
	border-right: none;
	padding-right: 0;
}
.blog.three-columns .post-details li::before,
.blog.three-columns .post-details li.date:before
{
	display: inline;
	margin-bottom: 0;
	margin-right: 10px;
}
.blog.three-columns .post-details li.date h2
{
	display: inline;
	margin: 0 2px;
	color: #999;
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
}
.blog.three-columns .post-details li.date h2::after
{
	content: ",";
}
/* --- post carousel --- */
.caroufredsel-wrapper 
{
	width: 100% !important;
    margin: 0 !important;
    overflow: hidden;
}
.blog.horizontal-carousel .post
{
	margin-left: 0;
	margin-right: 30px;
}
.horizontal-carousel
{
	display: none;
	transition: opacity 0.4s ease-in-out 0s;
}
.carousel-container
{
	position: relative;
	text-align: center;
}
.re-carousel-pagination
{
	display: block;
}
.re-carousel-pagination a
{
	display: inline-block;
	width: 1px;
	height: 1px;
	background: #E2E6E7;
	border: 5px solid #E2E6E7;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	margin-left: 10px;
	margin-top: 50px;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.re-carousel-pagination a:first-child
{
	margin-left: 0;
}
.re-carousel-pagination a.selected,
.re-carousel-pagination a:hover
{
	border-color: #82B541;
	background: #82B541;
}
.re-carousel-pagination span
{
	display: none;
}
/* --- single post --- */
.post.single blockquote, .post.single p, .post.single h3, .post.single h4
{	
	margin-top: 24px;
}
.post.single p
{
	padding: 1em 0;
}
.post.single p:empty
{
	display: none;
}
.post.single p+p
{
	margin-top: 0;
}
.post.single blockquote::before
{
	content: "u";
    height: 48px;
    line-height: 52px;
	font-family: "streamline-small" !important;
    font-style: normal !important;
    font-variant: normal !important;
    font-weight: normal !important;
    line-height: 1;
    text-transform: none !important;
    vertical-align: middle;
}
.post.single blockquote p
{
	padding: 0;
	margin: 0;
	font-size: 16px;
	line-height: 26px;
}
.post.single .post-content img
{
	max-width: 100%;
}
.post.single .post-content ul:not([class^="elementor-"]), 
.post.single .post-content ol,
.single-page ul:not([class^="elementor-"]),
.single-page ol,
.wpb_text_column ul,
.wpb_text_column ol
{
	padding: 0;
	margin: 5px 0px 20px;
}
.post.single .post-content ol ol,
.single-page ol ol,
.wpb_text_column ol ol,
.post.single .post-content ul li:not([class^="elementor-"]),
.single-page ul li:not([class^="elementor-"]),
.wpb_text_column ul li
{
	padding-left: 30px;
}
.post.single .post-content ul.accordion li
{
	padding-left: 0;
	padding-right: 0;
}
.post.single .post-content ul:not([class^="elementor-"]),
.single-page ul:not([class^="elementor-"]),
.wpb_text_column ul
{
	list-style: none;
}	
.post.single .post-content li:not([class^="elementor-"]),
.single-page li:not([class^="elementor-"]),
.wpb_text_column li
{
	height: auto;
	line-height: 24px;
	padding: 2px 0;
	list-style-position: inside;
}
.post.single .post-content ul li:not([class^="template-"]):not([class*=" template-"]):not([class*="post"]):not([class^="elementor-"])::before,
.single-page ul li:not([class^="template-"]):not([class*=" template-"]):not([class*="post"]):not([class^="elementor-"])::before,
.wpb_text_column ul li:not([class^="template-"]):not([class*=" template-"]):not([class*="post"]):not([class^="elementor-"])::before
{
	display: inline-block;
	font-family: 'template';
	color: #82B541;
	padding-right: 15px;
	margin-left: -30px;
	content: "i";
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	vertical-align: text-top;
	line-height: 1;
	direction: ltr;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.site-container .post.single ul.post-content-details
{
	margin-top: 0;
	margin-bottom: 16px;
}
.site-container .post.single ul.post-content-details li
{
	padding: 0;
	line-height: 20px;
}
.post.single ul.post-content-details li:not([class^="template-"]):not([class*=" template-"]):not([class*="post"]):not([class^="elementor-"])::before,
.single-page ul.post-content-details li:not([class^="template-"]):not([class*=" template-"]):not([class*="post"]):not([class^="elementor-"])::before,
.post.single .post-content ul.accordion li::before
{
	content: none;
}
/* --- taxonomies --- */
.widget_categories ul,
.widget_archive ul,
.widget_tag_cloud .tagcloud,
.elementor-widget-wp-widget-categories ul,
.elementor-widget-wp-widget-archives ul,
.elementor-widget-wp-widget-tag_cloud .tagcloud
{
	margin-top: 30px;
}
.widget_categories li,
.widget_archive li,
.widget_tag_cloud a,
.taxonomies li,
.elementor-widget-wp-widget-categories li,
.elementor-widget-wp-widget-archives li,
.elementor-widget-wp-widget-tag_cloud a
{
	float: left;
	margin-right: 7px;
	margin-bottom: 7px;
}
.widget_categories a,
.widget_archive a,
.widget_tag_cloud a,
.taxonomies a,
.elementor-widget-wp-widget-categories a,
.elementor-widget-wp-widget-archives a,
.elementor-widget-wp-widget-tag_cloud a
{
	display: block;
	border: 1px solid #E2E6E7;
	color: #999;
	line-height: 16px;
	letter-spacing: 1px;
	font-family: 'Montserrat';
	font-size: 11px;
	font-weight: 500;
	padding: 10px 12px;
	text-align: left;
	text-transform: uppercase;
}
.widget_tag_cloud a,
.elementor-widget-wp-widget-tag_cloud a
{
	font-size: 11px !important;
}
.widget_categories a:hover,
.widget_archive a:hover,
.widget_tag_cloud a:hover,
.taxonomies a:hover,
.elementor-widget-wp-widget-categories a:hover,
.elementor-widget-wp-widget-archives a:hover,
.elementor-widget-wp-widget-tag_cloud a:hover
{
	color: #FFF;
	background: #82B541;
	border-color: #82B541;
}
.full-width>.widget_categories li,
.full-width>.widget_archive li,
.full-width>.widget_tag_cloud a,
.taxonomies.full-width li,
.elementor-widget-wp-widget-categories.full-width li,
.elementor-widget-wp-widget-archives.full-width li,
.elementor-widget-wp-widget-tag_cloud.full-width a
{
	width: 100%;
	margin-right: 0;
}
.widget_categories a span,
.widget_archive a span,
.widget_tag_cloud a span,
.taxonomies a span,
.elementor-widget-wp-widget-categories a span,
.elementor-widget-wp-widget-archives a span,
.elementor-widget-wp-widget-tag_cloud a span
{
	float: right;
	margin-left: 5px;
}
/* --- buttons --- */
.buttons li
{
	margin-top: 10px;
}
.buttons li:first-child
{
	margin-top: 0;
}
.re-action-button
{	
	display: block;
	background: #F5F5F5;
	padding: 18px 18px 18px 62px;
	font-family: 'Montserrat';
	line-height: 24px;
	color: #444;
}
.re-action-button:before
{
	color: #82B541;
    float: left;
    font-size: 24px;
    margin-right: 19px;
	margin-left: -43px;
}
a.re-action-button.selected,
a.re-action-button:hover
{
	background: #82B541;
	color: #FFF;
}
a.re-action-button.selected:before,
a.re-action-button:hover:before
{
	color: #FFF;
}
/* --- announcement --- */
.announcement
{
	width: 100%;
	padding: 30px 0;
}
.vc_row.full-width>.vc_col-sm-12>.wpb_wrapper>.announcement
{
	width: 1170px;
	margin-left: auto;
	margin-right: auto;
}
.site-container .vc_row.full-width .vc_col-sm-12.wpb_column .announcement>.vc_row
{
	width: 100%;
}
.announcement .vertical-align-cell:before
{
	float: left;
	font-size: 48px;
	margin-right: 30px;
	color: #82B541;
	border: 1px solid #E2E6E7;
	padding: 19px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.announcement .vertical-align
{
	height: 88px;
}
.announcement  h3
{
	margin-left: 118px;
	line-height: 24px;
}
.announcement p.description
{
	display: block;
	color: #444;
	margin-top: 14px;
	margin-left: 118px;
	/*white-space: nowrap;*/
}
.announcement .vc_row .vc_col-sm-3
{
	width: auto;
	float: right;
	margin-left: 0;
}
/* --- call to action --- */
.call-to-action
{
	border: 1px solid #E2E6E7;
	padding: 30px 18px 47px;
	text-align: center;
}
.site-container .call-to-action::before
{
	display: block;
	width: 48px;
	height: 48px;
	font-size: 48px;
	margin-right: 30px;
	color: #82B541;
	border: 1px solid #E2E6E7;
	padding: 19px;
	margin-left: auto;
	margin-right: auto;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.call-to-action h4
{
	margin-top: 22px;
}
.call-to-action p
{
	margin-top: 17px;
	margin-bottom: 43px;
	line-height: 24px;
}
.call-to-action .more
{
	margin-top: 28px;
}
/* --- comment form, contact form --- */
.comment-form input,
.comment-form textarea,
.re-contact-form input,
.re-contact-form textarea
{
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
}
.comment-form input,
.re-contact-form input
{
	margin-top: 20px;
}
.comment-form .block:first-child input,
.re-contact-form .block:first-child input
{
	margin-top: 0;
}
.comment-form textarea,
.re-contact-form textarea
{
	height: 190px;
	resize: none;
}
.comment-form [type='submit'],
.re-contact-form [type='submit']
{
	width: auto;
	font-size: 12px;
	color: #25282a;
	margin-top: 0;
	outline: none;
}
#cancel-comment
{
	display: none;
	font-size: 12px;
	margin-right: 20px;
	color: #82B541;
}
.comment-form p,
.re-contact-form p
{
	font-size: 14px;
	line-height: 24px;
	margin-top: 14px;
}
.comment-form .hint,
.re-contact-form .hint,
.cost-calculator-form .hint,
.cost-calculator-form input.hint,
.cost-calculator-form input[type='text'].hint,
.cost-calculator-form input[type='email'].hint,
.cost-calculator-form input[type='number'].hint
{
	color: #999;
}
div.cost-calculator-box ::-webkit-input-placeholder,
::-webkit-input-placeholder 
{
	color: #999;
}
div.cost-calculator-box :-moz-placeholder,
:-moz-placeholder 
{
	color: #999;
    opacity:  1;
}
div.cost-calculator-box ::-moz-placeholder,
::-moz-placeholder
{
	color: #999;
    opacity:  1;
}
div.cost-calculator-box :-ms-input-placeholder,
:-ms-input-placeholder 
{
	color: #999;
}
.re-contact-form .g-recaptcha-wrapper,
.comment-form .g-recaptcha-wrapper
{
	float: right;
	clear: none;
	width: 300px;
	height: 72px;
	overflow: hidden;
	border: 1px solid #E2E6E7;
	margin-right: 50px;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.re-contact-form .g-recaptcha,
.comment-form .g-recaptcha
{
	position: relative;
	margin-top: -2px;
	margin-left: -1px;
}
.re-contact-form .submit-container .vc_row
{
	text-align: center;
}
.re-contact-form .submit-container .vc_col-sm-6>.vc_row
{
	text-align: right;
}
.re-contact-form .button-with-recaptcha
{
	float: right;
	margin-top: 12px;
}
.vc_col-sm-8 .fieldset-with-recaptcha .recaptcha-container
{
	display: -ms-flexbox;
	display: -webkit-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-direction: column-reverse;
	-webkit-flex-direction: column-reverse;
	-moz-flex-direction: column-reverse;
	flex-direction: column-reverse;
}
.vc_col-sm-8 .column-with-recaptcha
{
	display: -ms-flexbox;
	display: -webkit-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: column-reverse;
	-moz-flex-flow: column-reverse;
	-ms-flex-flow: column-reverse;
	flex-flow: column-reverse;
}
.vc_col-sm-8 .re-contact-form .column-with-recaptcha .g-recaptcha-wrapper,
.comment-form .g-recaptcha-wrapper
{
	float: none;
	margin: 0;
	-ms-flex-item-align: flex-end;
	-webkit-align-self: flex-end;
	-moz-align-self: flex-end;
	align-self: flex-end;
}
.vc_col-sm-8 .re-contact-form .submit-container .column-with-recaptcha .button-with-recaptcha
{
	float: none;
	margin-top: 30px;
	margin-left: 0;
	margin-right: 0;
}
.vc_col-sm-8 .fieldset-with-recaptcha .terms-container
{
	max-width: 438px;
}
.vc_col-sm-8 .fieldset-with-recaptcha .recaptcha-container
{
	display: -ms-flexbox;
	display: -webkit-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-direction: column-reverse;
	-webkit-flex-direction: column-reverse;
	-moz-flex-direction: column-reverse;
	flex-direction: column-reverse;
}
.vc_col-sm-8 .fieldset-with-recaptcha .recaptcha-container .g-recaptcha-wrapper
{
	margin-right: 0;
}
.vc_col-sm-8 .submit-container.fieldset-with-recaptcha .recaptcha-container .button-with-recaptcha
{
	float: none;
	margin-top: 30px;
	margin-left: auto;
	margin-right: 0;
}
.vc_col-sm-8 .submit-container .column-with-recaptcha .terms-container,
.comment-form .fieldset-with-recaptcha .terms-container
{
	-ms-flex-order: 1;
	-webkit-order: 1;
	-moz-order: 1;
	order: 1;
	-ms-flex-item-align: flex-end;
	-webkit-align-self: flex-end;
	-moz-align-self: flex-end;
	align-self: flex-end;
}
.re-contact-form .terms-container,
.comment-form .terms-container
{
	display: -ms-flexbox;
	display: -webkit-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	align-items: center;
	padding-bottom: 30px;
}
.comment-form .terms-container
{
	float: right;
	padding-bottom: 0;
}
.fieldset-with-recaptcha .terms-container
{
	float: left;
	max-width: 640px;
	height: 74px;
	padding-bottom: 0;
}
.comment-form .fieldset-with-recaptcha .terms-container
{
	height: auto;
}
.recaptcha-container
{
	float: right;
}
.column-with-recaptcha .recaptcha-container,
.comment-form .recaptcha-container
{
	clear: both;
	margin-top: 30px;
	display: -ms-flexbox;
	display: -webkit-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-direction: column-reverse;
	-webkit-flex-direction: column-reverse;
	-moz-flex-direction: column-reverse;
	flex-direction: column-reverse;
}
.comment-form .fieldset-with-recaptcha
{
	display: -ms-flexbox;
	display: -webkit-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-direction: column-reverse;
	-webkit-flex-direction: column-reverse;
	-moz-flex-direction: column-reverse;
	flex-direction: column-reverse;
}
.submit-container .vc_col-sm-6 .terms-container
{
	float: right;
	padding-bottom: 0;
}
.submit-container .vc_col-sm-6 .terms-container + .vc_row
{
	float: right;
	clear: both;
	margin-top: 30px;
}
.column-with-recaptcha .recaptcha-container .g-recaptcha-wrapper
{
	float: none;
	margin: 0;
}
.re-contact-form .submit-container .column-with-recaptcha .recaptcha-container .button-with-recaptcha,
.comment-form .button-with-recaptcha
{
	float: none;
	margin-top: 30px;
	margin-left: auto;
	margin-right: 0;
}
.terms-container input
{
	width: auto;
	cursor: pointer;
	margin-top: 0;
}
.terms-container label
{
	margin-left: 10px;
	cursor: pointer;
	line-height: 18px;
}
/* --- tooltip --- */
.qtip-default
{
	background: none;
	border-color: transparent;
}
.ui-tooltip-error .qtip-content,
.ui-tooltip-success .qtip-content
{
	font-size: 13px;
	font-family: arial;
	color: #FFF;
}
.ui-tooltip-error .qtip-content,
.ui-tooltip-success .qtip-content
{
	border:none; 
}
.qtip-content
{
	padding: 10px 20px 10px 20px;
}
.ui-tooltip-error .qtip-content
{
	background: #E9431C;
}
.ui-tooltip-success .qtip-content
{
	background: #61911B;
}
/* --- comments list --- */
.comment
{
	margin-top: 30px;
}
#comments-list>.comment:first-child
{
	margin-top: 40px;
}
.comment-author-avatar
{
    float: left;
	width: 90px;
    height: 90px;
}
.posted-by abbr,
.bypostauthor
{
	font-family: 'Montserrat';
	color: #999;
	font-size: 13px;
	margin-top: 7px;
	font-weight: 500;
	line-height: 20px;
	border: none;
	text-decoration: none;
}
.posted-by .in-reply
{
	margin-left: 5px;
	color: #ABABAB;
}
#comments-list .comment-details
{
	float: left;
	width: 750px;
	margin-left: 30px;
}
#comments-list .comment-details p
{
	font-family: 'Montserrat';
	font-size: 14px;
	line-height: 24px;
	border-bottom: 1px solid #E2E6E7;
	padding: 24px 0;
	margin-top: 0;
}
#comments-list .children 
{
    clear: both;
    float: left;
    margin-left: 120px;
}
#comments-list .children .children
{
	margin-left: 0;
}
#comments-list .children .comment-details
{
	width: 630px;
}
#comments-list .comment-details .more
{
	float: right;
	color: #999;
	margin-top: -22px;
	font-weight: 500;
	font-size: 11px;
	line-height: 16px;
}
#comments-list .comment-details .more:hover
{
	color: #FFF;
}
/* --- pagination --- */
.pagination
{
	clear: both;
	float: right;
}
.pagination li
{
	font-family: 'Montserrat';
	float: left;
	margin-left: 7px;
}
.pagination li:first-child
{
	margin-left: 0;
}
.pagination li a,
.pagination li span
{
	display: block;
    color: #999;
    font-size: 16px;
	width: 35px;
    padding: 9px 0 10px;
	border: 1px solid #E2E6E7;
	text-align: center;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.pagination li a:hover,
.pagination li.selected a,
.pagination li.selected span,
.pagination.post-pagination span,
.pagination.post-pagination a:hover span
{
	color: #FFF;
	background-color: #82B541;
	border-color: #82B541;
}
.pagination.post-pagination a span
{
	color: #999;
	background: #FFF;
	padding: 0;
	border: none;
}
/* --- list bullet --- */
.list li
{
	list-style: none;
	padding-top: 3px;
	padding-bottom: 10px;
	font-family: 'Montserrat';
	font-size: 14px;
	line-height: 1.4em;
	padding-left: 30px;
	border: none;
}
.list li a
{
	color: #82B541;
	font-weight: 600;
}
li.template-bullet:before
{
	color: #82B541;
	padding-right: 15px;
	margin-left: -30px;
	vertical-align: text-top;
}
/* --- tabs navigation --- */
.tabs.ui-widget.ui-widget-content
{
	border: none;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	background: none;
	padding: 0;
}
.tabs.ui-tabs .ui-tabs-nav,
.ui-tabs-nav
{
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	box-sizing: content-box;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	background: none;
	border: none;
	text-align: center;
}
.tabs.align-left .ui-tabs-nav
{
	text-align: left;
}
.tabs.align-left .ui-tabs-panel
{
	text-align: left;
}
.tabs.ui-tabs .ui-tabs-nav li,
.ui-tabs-nav li
{
	position: relative;
	float: none;
	display: inline-block;
	padding: 0;
	border: none;
	list-style: none;
	text-align: center;
	margin-left: 30px;
	margin-top: 0;
	margin-bottom: 0;
	margin-right: 0;
}
.tabs.ui-tabs .ui-tabs-nav li:first-child,
.ui-tabs-nav li:first-child
{
	margin-left: 0;
}
.small.gray.tabs.ui-tabs .ui-tabs-nav li a,
.small.gray .ui-tabs-nav li a
{
	background: #F5F5F5;
}
.small.tabs.ui-tabs .ui-tabs-nav li,
.small .ui-tabs-nav li
{
	margin-right: 10px;
	margin-bottom: 10px;
	margin-left: 0
}
.small.tabs.ui-tabs .ui-tabs-nav li a,
.small.tabs.ui-tabs .ui-tabs-nav li a.none,
.small .ui-tabs-nav li a
{
	min-width: 0;
	padding: 15px 20px;
}
.tabs.ui-tabs .ui-tabs-nav a::before
{
	display: block;
	margin-left: auto;
	margin-right: auto;
	font-size: 48px;
	color: #82B541;
	padding: 20px 20px 12px;
}
.tabs.ui-tabs .ui-tabs-nav li a,
.ui-tabs-nav li a
{
	display: block;
	float: none;
	min-width: 180px;
	text-align: center;
	font-size: 13px;
	color: #444;
	background: #FFF;
	padding: 10px 0 23px;
	border: none;
	font-family: 'Montserrat';
	line-height: 24px;
	outline: none;
	text-decoration: none;
}
.tabs.ui-tabs .ui-tabs-nav li a.none
{
	padding: 23px 0;
}
.tabs.ui-tabs .ui-tabs-nav li:last-child a
{
	border-right: none;
}
.tabs.ui-tabs .ui-tabs-nav li a:hover,
.tabs.ui-tabs .ui-tabs-nav li a.selected,
.tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active a,
.small.gray.tabs.ui-tabs .ui-tabs-nav li a:hover,
.small.gray.tabs.ui-tabs .ui-tabs-nav li a.selected,
.small.gray.tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active a,
.ui-tabs-nav li a:hover,
.ui-tabs-nav li a.selected,
.ui-tabs-nav li.ui-tabs-active a,
.small.gray .ui-tabs-nav li a:hover,
.small.gray .ui-tabs-nav li a.selected,
.small.gray .ui-tabs-nav li.ui-tabs-active a
{
	background: #82B541;
	color: #FFF;
}
.tabs.ui-tabs .ui-tabs-nav li a:hover::before,
.tabs.ui-tabs .ui-tabs-nav li a.selected::before,
.tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active a::before
{
	color: #FFF;
}
.tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active::after
{
	content: "";
	display: inline;
	position: absolute;
	border-style: solid;
	border-width: 9px 9px 0;
	border-color: #82B541 transparent;
	bottom: -9px;
	margin-left: -9px;
}
.small.tabs.ui-tabs .ui-tabs-nav li.ui-tabs-active::after
{
	display: none;
}
.tabs .ui-tabs-panel
{
	text-align: center;
	padding: 42px 0 0;
}
.small .ui-tabs-panel
{
	padding: 0;
}
.tabs.ui-tabs .ui-tabs-panel p
{
	font-family: 'Montserrat';
	font-size: 14px;
	line-height: 24px;
	padding: 34px 0 0;
	margin-top: 0;
}
.small.tabs.ui-tabs .ui-tabs-panel p
{
	padding: 24px 0 0;
	margin: 0;
}
.tabs.ui-tabs .ui-tabs-panel h4.box-header::after
{
	margin-left: auto;
	margin-right: auto;
}
/* --- accordion --- */
.accordion .ui-accordion-content
{
	padding: 30px 0 20px;
}
.accordion .ui-accordion-header
{
	padding: 16px 15px;
	cursor: pointer;
	border-bottom: 1px solid #E2E6E7;
	font-family: 'Montserrat';
	line-height: 24px;
	font-size: 16px;
	transition: padding-left 300ms, padding-right 300ms;
	-webkit-transition: padding-left 300ms, padding-right 300ms;
	-moz-transition: padding-left 300ms, padding-right 300ms;
	transition-timing-function: ease;
	-webkittransition-timing-function: ease;
	-mozkittransition-timing-function: ease;
}
.accordion .ui-accordion-header h3
{
	font-size: 16px;
	line-height: 24px;
	font-weight: 500;
	letter-spacing: normal;
	margin-top: 2px;
	margin-bottom: 1px;
	margin-left: 39px;
}
.accordion .ui-accordion-header.ui-state-active
{
	background-color: #82B541;
	border-bottom-color: #82B541;
}
.accordion .ui-accordion-header.ui-state-active h3
{
	color: #FFF;	
}
.accordion .ui-accordion-header.ui-state-active .ui-accordion-header-icon
{
	color: #FFF;
}
.accordion .ui-accordion-header .ui-accordion-header-icon
{
	float: left;
	margin-right: 15px;
	font-size: 24px;
	color: #82B541;
	text-indent: 0;
}
.accordion .ui-accordion-header:hover
{
	padding-left: 25px;
	padding-right: 5px;
}
.accordion .ui-accordion-header.ui-state-active:hover
{
	padding: 16px 15px;
}
.accordion p:first-child
{
	margin: 0;
}
.accordion .list li
{
	border: none;
}
.accordion li
{
	list-style: none;
}
/* --- preloader --- */
.re-preloader
{
	display: block;
	height: auto;
	min-height: 20px;
	background: url('images/preloader.gif') no-repeat center center;
}
.blog .post-content>a>img,
.blog.three-columns li>a>img,
.post.single .post-image img,
.services-list a>img,
.team-box img,
.projects-list a>img,
.our-clients-list,
.re-preload>img,
.wpb_single_image img
{
	display: none;
}
.vc_editor .blog .post-content>a>img,
.vc_editor .blog.three-columns li>a>img,
.vc_editor .post.single .post-image img,
.vc_editor .services-list a>img,
.vc_editor .team-box img,
.vc_editor .projects-list a>img,
.vc_editor .our-clients-list,
.vc_editor .re-preload>img,
.vc_editor .wpb_single_image img
{
	display: block;
}
.blog.horizontal-carousel.three-columns li>a>img,
.our-clients-list.type-list
{
	display: block;
}
.projects-list.isotope li>a,
.projects-list.isotope a>img
{
	display: block;
	width: 270px;
	height: 180px;
}
.re-preload .re-preloader
{
	height: 200px;
}
/* --- contact details --- */
.header-top-bar .contact-details
{
	float: left;
}
.contact-details li
{
	float: left;
	border-right: 1px solid #E2E6E7;
	font-family: 'Montserrat';
	font-weight: 500;
	font-size: 13px;
	color: #999999;
	line-height: 20px;
	padding: 15px 20px;
}
.contact-details li a
{
	color: #999;
	font-weight: 500;
}
.contact-details li:first-child
{
	border-left: 1px solid #E2E6E7;
}
.contact-details li:before
{
	font-size: 14px;
	margin-right: 10px;
}
/* --- social icons --- */
.social-icons
{
	list-style: none;
	padding: 0;
}
.social-icons li
{
	float: left;
	width: auto;
	padding: 0;
	border-right: 1px solid #E2E6E7;
}
.social-icons li:first-child
{
	border-left: 1px solid #E2E6E7;
}
.social-icons a
{
	display: block;
	color: #AAA;
}
.social-icons a:hover
{
	color: #444;
}
.social-icons a:before
{
	display: block;
	text-align: center;
	font-size: 14px;
}
.header-top-bar .social-icons
{
	float: right;
}
.social-icons li a
{
	width: 14px;
	padding: 17px;
}
.social-icons.yellow li
{
	background: #82B541;
	border: 2px solid #82B541;
	margin-left: 1px;	
}
.social-icons.yellow li:hover
{
	background: transparent;
}
.social-icons.yellow li a
{
	padding: 16px;
}
.social-icons.yellow li a:before
{
	color: #FFF;
}
.social-icons.yellow li a:hover:before
{
	color: #000;
}
.social-icons.yellow li:first-child
{
	margin-left: 0;
}
/* --- search --- */
.header-top-bar .search-container
{
	float: right;
	position: relative;
}
.widgettitle+.search-container
{
	margin-top: 30px;
}
.search-container .template-search
{
	display: block;
	font-size: 14px;
	padding: 17px;
	border-right: 1px solid #E2E6E7;
	color: #AAA;
}
.theme-page .search-container a.template-search
{
	display: none;
}
.template-search:hover
{
	color: #444;
}
.header-top-bar .search-form
{
	position: absolute;
	display: none;
	width: 179px;
	right: 0;
	padding: 12px 10px;
	margin-top: 5px;
	background: #F5F5F5;
	z-index: 99;
}
.search-form .search-input
{
	float: left;
	width: 100%;
	color: #444;
	font-size: 14px;
	background: #FFF;
	border: 1px solid #E2E6E7;
	margin: 0;
	padding: 12px 14px 12px 12px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.header-top-bar .search-form .search-input
{
	width: 91px;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.theme-page .search-form .search-input
{
	padding-right: 50px;
}
.search-form .search-input.hint
{
	color: #858d94;
}
.search-form .search-input::-webkit-input-placeholder 
{
	color: #858d94;
}
.search-form .search-input:-moz-placeholder 
{
	color: #858d94;
    opacity:  1;
}
.search-form .search-input::-moz-placeholder
{
	color: #858d94;
    opacity:  1;
}
.search-form .search-input:-ms-input-placeholder 
{
	color: #858d94;
}
.search-form .search-submit-container
{
	position: relative;
	float: right;
}
.search-form .search-submit-container .template-search
{
	padding: 18px 18px 17px 18px;
	border: none;
}
.search-form .search-submit-container:hover .template-search
{
	color: #444;
}
.theme-page .search-form .search-submit-container .template-search
{
	position: relative;
	margin-top: -33px;
	margin-right: 20px;
	padding: 0;
}
.search-form .search-submit
{
	position: absolute;
	width: 50px;
	height: 50px;
	background: none;
	padding: 0;
	top: 0;
	left: 0;
	cursor: pointer;
}
.theme-page .search-form .search-submit
{
	position: absolute;
	height: 48px;
	top: -49px;
	left: -17px;
	border: none;
}
.footer-row .search-container
{
	margin-top: 30px;
}
.footer-row .search-container>.template-search
{
	display: none;
}
.footer-row .search-form .search-submit-container
{
	float: left;
	margin-left: 10px;
}
/* --- footer menu --- */
.footer-row .menu
{
	margin-top: 20px;
}
.footer-row .menu li
{
	list-style: none;
}
.footer-row .menu li a
{
	color: #444;
	padding-top: 3px;
	padding-bottom: 3px;
	font-family: 'Montserrat';
	font-size: 14px;
	line-height: 24px;
}
/* --- ui dropdown --- */
/* right-aligned */
div.cost-calculator-datepicker.ui-datepicker
{
	width: 370px;
}
/* --- cost calculator --- */
.vc_row .vc_col-sm-8 .cost-calculator-contact-box-submit-container .vc_col-sm-6
{
	width: 340px;
}
div.cost-calculator-box .cost-slider-container
{
	width: auto;
	margin-left: 30px;
}
.vc_col-sm-3 div.cost-calculator-box .cost-slider-container
{
	width: 100%;
}
.cost-calculator-container div.cost-calculator-box input,
.cost-calculator-container div.cost-calculator-box input[type='text'],
.cost-calculator-container div.cost-calculator-box input[type='email'],
.cost-calculator-container div.cost-calculator-box input[type='number']
{
	width: 40px;
	margin-left: 30px;
	box-sizing: content-box;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
}
body .cost-calculator-container div.cost-calculator-box input.cost-calculator-big,
body .cost-calculator-container div.cost-calculator-box input[type='text'].cost-calculator-big,
body .cost-calculator-container div.cost-calculator-box input[type='email'].cost-calculator-big,
body .cost-calculator-container div.cost-calculator-box input[type='number'].cost-calculator-big
{
	width: 370px;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
body .cost-calculator-container .vc_col-sm-4 div.cost-calculator-box input.cost-calculator-big,
body .cost-calculator-container .vc_col-sm-4 div.cost-calculator-box input[type='text'].cost-calculator-big,
body .cost-calculator-container .vc_col-sm-4 div.cost-calculator-box input[type='email'].cost-calculator-big,
body .cost-calculator-container .vc_col-sm-4 div.cost-calculator-box input[type='number'].cost-calculator-big,
body .cost-calculator-container .vc_col-sm-3 div.cost-calculator-box input.cost-calculator-big,
body .cost-calculator-container .vc_col-sm-3 div.cost-calculator-box input[type='text'].cost-calculator-big,
body .cost-calculator-container .vc_col-sm-3 div.cost-calculator-box input[type='email'].cost-calculator-big,
body .cost-calculator-container .vc_col-sm-3 div.cost-calculator-box input[type='number'].cost-calculator-big
{
	width: 100%;
	float: none;
	margin-top: 10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.cost-calculator-container .cost-calculator-box .ui-slider
{
	width: 300px;
}
div.cost-calculator-box .cost-calculator-cost-slider-input-hidden+.ui-slider,
div.cost-calculator-box .cost-calculator-cost-slider-input-hidden+input+.ui-slider
{
	width: 402px;
}
div.cost-calculator-box .ui-selectmenu-button
{
	width: 402px !important;
}
.vc_col-sm-4 div.cost-calculator-box .cost-calculator-cost-slider-input-hidden+.ui-slider,
.vc_col-sm-4 div.cost-calculator-box .cost-calculator-cost-slider-input-hidden+input+.ui-slider,
.vc_col-sm-3 div.cost-calculator-box .cost-calculator-cost-slider-input-hidden+.ui-slider,
.vc_col-sm-3 div.cost-calculator-box .cost-calculator-cost-slider-input-hidden+input+.ui-slider
{
	width: 100%;
}
.vc_col-sm-4 div.cost-calculator-box .ui-selectmenu-button,
.vc_col-sm-3 div.cost-calculator-box .ui-selectmenu-button
{
	width: 100% !important;
	margin-top: 10px;
}
/* --- buttons --- */
.more,
.more[type="submit"]
{	
	color: #FFF; 
	font-family: 'Montserrat';
	font-size: 12px;
	font-weight: 700;
	background: #82B541;
	padding: 16px 23px 15px;
	text-align: center;
	cursor: pointer;
	line-height: normal;
	letter-spacing: 1px;
	border-radius: 999px;
	-moz-border-radius: 999px;
	-webkit-border-radius: 999px;
	transition: all 0.3s ease 0s;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	border: 2px solid #82B541;
}
.more:hover,
.more[type="submit"]:hover
{
	color: #000;	
	background: transparent;
	opacity: 1;
}
.more.simple
{
	background: transparent;
	color: #FFF;
	border: 1px solid #E2E6E7;
	padding: 17px 24px 16px;
	transition: all 0.3s ease 0s;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
}
.more.simple:hover
{
	border-color: #82B541;
	background: #82B541;
}
.more.small
{
	padding: 12px 19px 11px;
}
/* --- copyright row --- */
.copyright
{	
	color: #999;
	font-family: 'Montserrat';
	line-height: 24px;
}
.copyright a
{
	color: #444;
	font-weight: 400;
}
/* --- prettyPhoto --- */
/*div.pp_default .pp_nav
{
	margin-top: 9px;
}
div.pp_default .pp_close
{
	margin-top: 7px;
}*/
body div.pp_default .pp_content_container .pp_left,
body div.pp_default .pp_content_container .pp_right,
body div.pp_default .pp_top .pp_left,
body div.pp_default .pp_top .pp_middle,
body div.pp_default .pp_top .pp_right,
body div.pp_default .pp_bottom .pp_left,
body div.pp_default .pp_bottom .pp_middle,
body div.pp_default .pp_bottom .pp_right
{
	background: none;
	padding: 0;
}
body div.pp_default .pp_content, body div.light_rounded .pp_content
{
	padding: 10px;
}
body div.pp_default .pp_description
{
	display: block !important;
	font-size: 12px;
	color: #7C7C7C;
	padding: 1em 0;
}
body div.pp_default .pp_close
{
	margin-top: 8px;
	background: url("images/close.png") 0 0 no-repeat;
}
body div.pp_default .pp_close:hover
{
	opacity: 1;
	background-position: 0 -30px;
}
/* --- map --- */
#map
{
	width: 100%;
	height: 450px;
}
.google-map-container
{
	position: relative;
	overflow: hidden;
	height: 450px;
}
.google-map-container iframe
{
	position: absolute;
	top: -110px;
}
/* --- slider revolution container --- */
sr7-module
{
	overflow-x: hidden;
}
.revolution-slider-container
{
	width: 100%;
	position: relative;
	padding: 0;
}
.revolution-slider
{
	width: 100%;
	height: 600px;
	position: relative;
	background: #F5F5F5;
}
/* --- slider revolution label --- */
.slider-content-box
{
	width: 460px;
	max-height: auto;
	white-space: normal;
	background: rgba(38, 38, 40, 0.7);
	padding-bottom: 30px;
}
.slider-content-box h2
{
	color: #FFF;
	border-bottom: 1px solid #82B541;
	padding: 21px 30px 20px;
	background: rgba(38, 38, 40, 0.68);
}
.slider-content-box h2 a
{
	color: #FFF;
}
.slider-content-box h2 a:hover
{
	text-decoration: underline;
	opacity: 1;
}
.slider-content-box p
{
	font-family: 'Montserrat';
	font-size: 16px;
	font-weight: 400;
	color: #FFF;
	line-height: 26px;
	padding: 23px 30px 23px;
	margin-top: 0;
}
.slider-content-box .more
{
	display: inline-block;
	margin-left: 30px;
}
.tp-caption a:hover
{
	color: #FFF !important;
}
/* --- slider revolution navigation arrows --- */
.tparrows.custom,
.sr7-arrows.custom
{
	width: 40px !important;
	height: 100px !important;
	background: none !important;
}
.tparrows.custom::before,
.tparrows.custom.tp-leftarrow::before,
.tparrows.custom.tp-rightarrow::before,
.sr7-arrows.custom::before,
.sr7-arrows.custom.sr7-leftarrow::before,
.sr7-arrows.custom.sr7-rightarrow::before
{
	content: none !important;
	display: none !important;
}
.tp-rightarrow.custom::after,
.sr7-rightarrow.custom::after
{
	right: 0;
	-moz-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    transform: scaleX(-1);
    -ms-filter: fliph;
    filter: fliph;
	border-left: none;
}
.tparrows.custom::after,
.sr7-arrows.custom::after
{
	content: 'a';
	font-family: "template";
	font-size: 24px;
	position: absolute;
	left: 0px;
	top: 0px;
	color: #FFF;
	width: 40px;
	height: 100px;
	text-align: center;
	background: rgba(0, 0, 0, 0.15);
	z-index: 2;
	line-height: 100px;
	-webkit-transition: background 0.2s, color 0.2s;
	-moz-transition: background 0.2s, color 0.2s;
	transition: background 0.2s, color 0.2s;
}
.tparrows.custom:hover::after,
.sr7-arrows.custom:hover::after
{
	color: #666;
	background: #FFF;
}
/* --- slider revolution navigation bullets --- */
.tp-bullets.custom,
.sr7-bullets.custom
{
	height: 12px !important;
}
.tp-bullets.custom .tp-bullet,
.sr7-bullets.custom .sr7-bullet
{
	background: rgba(0, 0, 0, 0.15) none repeat scroll 0 0;
    border: 8px solid rgba(0, 0, 0, 0);
	transition: background-color 0.2s ease 0s, border-color 0.2s ease 0s;
	-webkit-transition: background-color 0.2s ease 0s, border-color 0.2s ease 0s;
	-moz-transition: background-color 0.2s ease 0s, border-color 0.2s ease 0s;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	width: 11px;
	height: 11px;
	border: none;
	margin-right: 10px;
	margin-bottom: 0px;
	
}
.sr7-bullets.custom .sr7-bullet
{
	background: rgba(0, 0, 0, 0.15) none repeat scroll 0 0 !important;
	width: 11px !important;
	height: 11px !important;
}
.tp-bullets.custom .tp-bullet:hover,
.tp-bullets.custom .tp-bullet.selected
{
	background: #FFF;
	width: 11px;
	height: 11px;
	border: none;
}
.sr7-bullets.custom .sr7-bullet:hover,
.sr7-bullets.custom .sr7-bullet.selected
{
	background: #FFF !important;
}
/* --- misc --- */
.scroll-top.animated-element
{
	position: fixed;
	visibility: hidden;
	display: block;
	width: 50px;
	padding: 13px 0;
	background: rgba(38,38,40,0.4);
	right: 30px;
	bottom: 30px;
	text-align: center;
	z-index: 2;
}
.scroll-top:before
{
	font-size: 24px;
	color: #FFF;
}
.scroll-top:hover
{
	background: #82B541;
}
.site-container .header h2 a,
.site-container .sf-menu a:hover,
.site-container .social-icons a:hover,
.site-container .header-top-bar .template-search:hover,
.site-container .header-top-bar-container .header-toggle:hover,
.site-container .slider-control:hover,
.site-container .more:hover,
.site-container a.re-action-button:hover,
.vertical-menu li a:hover,
.buttons li a:hover,
.tabs.ui-tabs .ui-tabs-nav li a:hover,
.tabs.ui-tabs .ui-tabs-nav li a:focus,
.tabs.ui-tabs .ui-tabs-nav li a:active,
.ui-tabs-nav li a:hover,
.ui-tabs-nav li a:focus,
.ui-tabs-nav li a:active,
.site-container .widget_categories a:hover,
.site-container .widget_archive a:hover,
.site-container .widget_tag_cloud a:hover,
.site-container .taxonomies a:hover,
.site-container .pagination li a:hover,
body a.scroll-top:hover,
.site-container .elementor-widget-wp-widget-categories a:hover,
.site-container .elementor-widget-wp-widget-archives a:hover,
.site-container .elementor-widget-wp-widget-tag_cloud a:hover
{
	text-decoration: none;
}
input, textarea
{
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	-webkit-appearance: none;
}
input[type='checkbox']
{
	-webkit-appearance: checkbox;
}
input[type='radio']
{
	-webkit-appearance: radio;
}
:focus 
{
	outline:none;
}
::-moz-focus-inner 
{
	border:0;
}
body.lock-position 
{
	position: fixed;
	overflow: hidden;
	width: 100%;
	height: 100%;
}
ol ol,
ul ul
{
	padding-left: 10px;
	list-style: inside;
}
ol
{
	list-style: inside decimal;
}
ol ol
{
	list-style-type: lower-alpha;
}
cite
{
	font-style: italic;
}
code
{	
	color: #7B7B7B;
	overflow-y: auto;
	margin: 5px 0px 5px 0px;
	font: 13px "Courier New";
	border: solid 1px #E1E5E9;
	line-height: 19px;
	text-shadow: 0px 1px 0px #FFFFFF;
}
kbd
{
	font: 13px "Courier New";
}
q:before,
q:after
{
	content: "\"";
}
.pagination,
.blog .post-details,
.blog .post-content-details,
.mobile-menu ul,
.comments-list-container .children,
.team-list .vc_row>ul,
.services-list .vc_row>ul
{
	list-style: none;
	padding: 0;
}
/* --- gutenberg --- */
.clearfix.has-gutenberg-blocks>*
{
	width: 1170px;
	margin-left: auto;
	margin-right: auto;
}
.has-gutenberg-blocks .alignfull
{
	width: 100%;
}
.has-gutenberg-blocks .alignleft
{
	width: auto;
	margin-left: calc((100% - 1170px) / 2);
	margin-right: 30px;
}
.has-gutenberg-blocks .alignright
{
	width: auto;
	margin-left: 30px;
	margin-right: calc((100% - 1170px) / 2);
}
.has-gutenberg-blocks .alignwide
{
	width: 1400px;
}
.has-gutenberg-blocks h1,
.has-gutenberg-blocks h2,
.has-gutenberg-blocks h3,
.has-gutenberg-blocks h4,
.has-gutenberg-blocks h5,
.has-gutenberg-blocks h6,
.has-gutenberg-blocks .wp-block-preformatted,
.has-gutenberg-blocks .wp-block-verse,
.has-gutenberg-blocks .wp-block-table,
.has-gutenberg-blocks>ol,
.has-gutenberg-blocks>ul,
.has-gutenberg-blocks .wp-block-quote,
.has-gutenberg-blocks .wp-block-columns,
.has-gutenberg-blocks .wp-block-cover.alignfull
{
	margin-top: 30px;
}
.has-gutenberg-blocks>p
{
	padding: 0;
	margin: 30px 0;
}
.has-gutenberg-blocks .wp-block-preformatted,
.has-gutenberg-blocks .wp-block-verse,
.has-gutenberg-blocks p.has-background
{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.has-gutenberg-blocks p.has-background
{
	padding: 20px 30px;
}
p.wp-block-subhead
{
	font-size: 14px;
}
.has-gutenberg-blocks table
{
	line-height: 1.8;
}
.has-gutenberg-blocks table td:first-child, 
.has-gutenberg-blocks table th:first-child
{
	text-align: left;
	border-left: 1px solid currentColor;
}
.has-gutenberg-blocks ul
{
	list-style: inside disc;
}
.has-gutenberg-blocks dd,
.has-gutenberg-blocks li
{
	margin-bottom: 6px;
	line-height: 1.8;
}
.wp-block-latest-posts a,
.wp-block-categories a,
.wp-block-archives a
{
	color: #82B541;
}
.wp-block-categories span,
.wp-block-archives span
{
	color: #777;
	margin-left: 5px;
	text-decoration: none;
}
.wp-block-categories span::before,
.wp-block-archives span::before
{
	content: "(";
}
.wp-block-categories span::after,
.wp-block-archives span::after
{
	content: ")";
}
body .site-container .clearfix.has-gutenberg-blocks blockquote.wp-block-quote
{
	border: none;
	padding: 0;
}
.has-gutenberg-blocks blockquote.wp-block-quote::before
{	
	content: "u";
    display: block;
	height: 48px;
	margin-bottom: 20px;
	font-family: 'streamline-small';
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	vertical-align: middle;
	line-height: 1;
	direction: ltr;
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.has-gutenberg-blocks blockquote.wp-block-quote p
{
	font-size: 16px;
	line-height: 26px;
	margin: 0;
}
.has-gutenberg-blocks blockquote.wp-block-quote.is-large p
{
	font-size: 24px;
	line-height: 1.6;
}
.wp-block-pullquote p
{
	margin-top: 0;
}
.wp-block-pullquote blockquote::before
{
	content: none;
}
.has-gutenberg-blocks .wp-block-quote cite,
.wp-block-pullquote cite
{
	display: block;
}
.wp-block-pullquote cite
{
	margin-top: 20px;
}
.wp-block-button__link
{
	font-family: 'Montserrat';
	line-height: 1.8;
}
.has-gutenberg-blocks .aligncenter
{
	text-align: center;
	clear: both;
}
.has-renovate-yellow-color 
{ 
	color: #82B541;
}
.has-renovate-yellow-background-color
{
	background-color: #82B541;
}
.has-renovate-turquoise-color 
{ 
	color: #5FC7AE;
}
.has-renovate-turquoise-background-color
{
	background-color: #5FC7AE;
}
.has-renovate-orange-color 
{ 
	color: #F68220;
}
.has-renovate-orange-background-color
{
	background-color: #F68220;
}
.has-renovate-green-color 
{ 
	color: #82B541;
}
.has-renovate-green-background-color
{
	background-color: #82B541;
}
.has-renovate-light-blue-color 
{ 
	color: #66A1C3;
}
.has-renovate-light-blue-background-color
{
	background-color: #66A1C3;
}
/* --- WPBakery Page Builder --- */
/*.wpb_row *,
.wpb_row *:before,
.wpb_row *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}*/
.wpb_row:before,
.wpb_row:after 
{
  content: " ";
  display: table;
}
.wpb_row:after 
{
  clear: both;
}
body .vc_row .wpb_column.vc_column_container > .vc_column-inner
{
	padding: 0;
}
body .vc_row
{
	margin-left: 0;
	margin-right: 0;
}
.site-container .wpb_row
{
	margin-bottom: 0;
}
.wpb_widgetised_column .widget:first-child
{
	margin-top: 0;
}
body .wpb_widgetised_column,
body .wpb_content_element, body ul.wpb_thumbnails-fluid > li, body .last_toggle_el_margin, body .wpb_button
{
	margin-bottom: 0 !important;
}
.wpb_widgetised_column .wpb_wrapper > ul
{
	padding: 0;
}
.wpb_text_column.margin-top-0 p
{
	margin-top: 0;
}
.vc_row-fluid .wpb_column.page_left
{
	float: left;
    width: 630px;
}
.vc_row-fluid .wpb_column.page_right
{
	float: right;
    width: 330px;
	margin: 0;
}
.wpb_separator.wpb_content_element,
.vc_text_separator.wpb_content_element
{
	border-color: #E0E0E0;
	margin-bottom: 0;
	height: auto;
}
.vc_text_separator.wpb_content_element
{
	position: static;
	top: 0;
}
.wpb_single_image a
{
	display: block;
}
.wpb_single_image figure.vc_figure
{
	display: block;
}
dl.gallery-item a img
{
    display: inline-block;
}
.vc_row-fluid [class*="vc_col-sm"]
{
	float: left;
	margin-left: 30px;
	min-height: auto;
	padding-left: 0;
	padding-right: 0;
}
.vc_row-fluid [class*="vc_col-sm"]:first-child ,
.vc_row-fluid .vc_container-anchor+[class*="vc_col-sm"]
{
	margin-left: 0;
}
.vc_row .vc_col-sm-12 
{
	width: 100%;
}
.vc_row .vc_col-sm-10 
{
	width: 820px;
}
.vc_row .vc_col-sm-9 
{
	width: 870px;
}
.vc_row .vc_col-sm-8 
{
	width: 770px;
}
.vc_row .vc_col-sm-6 
{
	width: 570px;
}
.vc_row .vc_col-sm-4,
.vc_row .vc_col-sm-8 .vc_col-sm-6
{
	width: 370px;
}
.vc_row .vc_col-sm-3 
{
	width: 270px;
}
.vc_row .vc_col-sm-2,
.vc_row .vc_col-sm-4 .vc_col-sm-6
{
	width: 170px;
}
.vc_btn-content
{
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
/*.wpb_content_element .accordion.ui-accordion .ui-accordion-header
{
	background-color: transparent;
}*/
/* --- vc layouts --- */
.vc_col-sm-8 .vc_col-sm-9
{
	width: 570px;
}
.vc_col-sm-8 .vc_col-sm-6
{
	width: 330px;
}
.vc_col-sm-8 .vc_col-sm-4
{
	width: 210px;
}
.vc_col-sm-8 .vc_col-sm-3
{
	width: 170px;
}
.vc_row .vc_grid-item[class*="vc_col-sm"] 
{
	margin-left: 0;
}
.vc_row .vc_grid-item.vc_col-sm-12
{
	width: 100%
}
.vc_row .vc_grid-item.vc_col-sm-11 
{
	width: 91.66666667%
}
.vc_row .vc_grid-item.vc_col-sm-10 
{
	width: 83.33333333%
}
.vc_row .vc_grid-item.vc_col-sm-9 
{
	width: 75%
}
.vc_row .vc_grid-item.vc_col-sm-8 
{
	width: 66.66666667%
}
.vc_row .vc_grid-item.vc_col-sm-7 
{
	width: 58.33333333%
}
.vc_row .vc_grid-item.vc_col-sm-6 
{
	width: 50%
}
.vc_row .vc_grid-item.vc_col-sm-5 
{
	width: 41.66666667%
}
.vc_row .vc_grid-item.vc_col-sm-4 
{
	width: 33.33333333%
}
.vc_row .vc_grid-item.vc_col-sm-3 
{
	width: 25%
}
.vc_row .vc_grid-item.vc_col-sm-2 
{
	width: 16.66666667%
}
.vc_row .vc_grid-item.vc_col-sm-1 
{
	width: 8.33333333%
}
/* --- progress bars --- */
body .vc_progress_bar .vc_single_bar
{
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	box-shadow: none;
	background: #E2E6E7;
}
body .vc_progress_bar.wpb_content_element .vc_general.vc_single_bar .vc_label
{
	font-family: "Montserrat";
	font-size: 14px;
	color: #444;
	text-shadow: none;
	height: 10px;
	bottom: -29px;
	padding: 0;
}
body .vc_progress_bar .vc_single_bar,
body .vc_progress_bar .vc_single_bar:last-child
{
	margin-bottom: 64px;
}
body .vc_progress_bar .vc_single_bar .vc_bar
{
	background: #82B541;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	-moz-transition: width 1s ease 0s;
	-webkit-transition: width 1s ease 0s;
	transition: width 1s ease 0s;
}
.vc_progress_bar .vc_general.vc_single_bar.vc_progress-bar-color-bar_grey .vc_bar, .vc_progress_bar.vc_progress-bar-color-bar_grey .vc_single_bar .vc_bar
{
	background-color: #D0D0D0;
}
.vc_label_units
{	
	float: right;
	color: #999;
}
/* --- WordPress Core --- */
.alignnone 
{
    margin: 5px 20px 20px 0;
}
.aligncenter,
div.aligncenter 
{
    display: block;
    margin: 5px auto 5px auto;
}
.alignright 
{
    float: right;
    margin: 5px 0 20px 20px;
}
.alignleft 
{
    float: left;
    margin: 5px 20px 20px 0;
}
.aligncenter 
{
    display: block;
    margin: 5px auto 5px auto;
}
a img.alignright 
{
    float: right;
    margin: 5px 0 20px 20px;
}
a img.alignnone 
{
    margin: 5px 20px 20px 0;
}
a img.alignleft 
{
    float: left;
    margin: 5px 20px 20px 0;
}
a img.aligncenter 
{
    display: block;
    margin-left: auto;
    margin-right: auto
}
.wp-caption 
{
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}
.wp-caption.alignnone
{
    margin: 5px 20px 20px 0;
}
.wp-caption.alignleft 
{
    margin: 5px 20px 20px 0;
}
.wp-caption.alignright 
{
    margin: 5px 0 20px 20px;
}
.wp-caption img 
{
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}
.wp-caption p.wp-caption-text 
{
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}
.sticky
{
}
.gallery-caption
{
}
.rs-update-notice-wrap
{
	display: none !important;
}
.page-header.vertical-align-table {
	display: block !important;
}

.page-header > .vc_inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
}

.page-header-left,
.page-header-right {
	display: block !important;
	float: none !important;
	width: 100% !important;
	text-align: left !important;
}

.page-header-right {
	margin-top: 12px;
}

.page-header .bread-crumb-container {
	float: none !important;
}

.page-header .bread-crumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0;
}

/* CSS — style.css */

.royal-projects-fluid {
	width: calc(100vw - 60px) !important;
	max-width: 1920px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box !important;
}

@media screen and (max-width: 767px) {
	.royal-projects-fluid {
		width: calc(100vw - 30px) !important;
	}
}
.royal-projects-fluid .projects-list .view .description {
	display: block;
	width: 100%;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 10px !important;
	padding-right: 10px !important;
	box-sizing: border-box !important;
	text-align: center !important;
}
.post-content p {
	font-family: "Montserrat", sans-serif !important;
	font-size: 16px;
	font-weight: 300;
	letter-spacing: 0.03em;
}
.vc_do_custom_heading {
    margin-top: 2.5rem !important;
    font-size: 36px;
}
body ul li {
	font-size: 15.5px !important;
}
ul.list {
	margin-top: 1rem;
}
.accordion .ui-accordion-header.ui-state-active {
	/*margin-top: 30px !important;*/
}
/* Royal Wood — широкая галерея портфолио по центру */

.royal-projects-fluid {
	width: 100% !important;
	max-width: none !important;
}

.royal-projects-fluid .projects-list.isotope {
	width: 270px !important;
	max-width: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
	float: none !important;
	clear: both !important;
	box-sizing: border-box !important;
}

/* 2 колонки */
@media (min-width: 610px) {
	.royal-projects-fluid .projects-list.isotope {
		width: 570px !important;
	}
}

/* 3 колонки */
@media (min-width: 910px) {
	.royal-projects-fluid .projects-list.isotope {
		width: 870px !important;
	}
}

/* 4 колонки */
@media (min-width: 1210px) {
	.royal-projects-fluid .projects-list.isotope {
		width: 1170px !important;
	}
}

/* 5 колонок */
@media (min-width: 1510px) {
	.royal-projects-fluid .projects-list.isotope {
		width: 1470px !important;
	}
}

/* 6 колонок — для экранов около 1920 px */
@media (min-width: 1810px) {
	.royal-projects-fluid .projects-list.isotope {
		width: 1770px !important;
	}
}
/* Главная: серый фон на всю ширину, форма внутри контейнера */
.royal-contact-section > .wpb_column > .wpb_wrapper {
	width: calc(100% - 80px) !important;
	max-width: 1170px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}

/* Кнопка SEND MESSAGE не выходит за контейнер */
.royal-contact-section .contact-form,
.royal-contact-section .contact-form .vc_row {
	max-width: 100%;
	box-sizing: border-box;
}

@media (max-width: 767px) {
	.royal-contact-section > .wpb_column > .wpb_wrapper {
		width: calc(100% - 30px) !important;
	}
}

table.margin-top-40 td {
	font-size: 14px !important;
}
.tabs.ui-tabs .ui-tabs-panel p {
	font-size: 16px;
	line-height: 1.65rem;
}

/* ROYAL_DESKTOP_MEGAMENU_CSS */

.royal-menu-icon {
	display: none;
}

@media screen and (min-width: 1025px) {

	.sf-menu,
	.menu-container > ul,
	.menu-main-menu-container > ul {
		position: relative;
	}

	.sf-menu > li.royal-mega-menu,
	.menu-container > ul > li.royal-mega-menu,
	.menu-main-menu-container > ul > li.royal-mega-menu {
		position: static !important;
	}

	.royal-mega-menu > ul.sub-menu {
		left: var(--royal-mega-left, 0) !important;
		right: auto !important;

		width: var(--royal-mega-width, 100%) !important;
		min-width: var(--royal-mega-width, 100%) !important;
		max-width: none !important;

		padding: 20px 22px 20px 50px !important;
		box-sizing: border-box !important;

		grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
		column-gap: 18px;
		row-gap: 0;
		background: #f4f4f4 !important;
	}

	.royal-mega-menu:hover > ul.sub-menu,
	.royal-mega-menu.sfHover > ul.sub-menu,
	.royal-mega-menu.focus > ul.sub-menu {
		display: grid !important;
	}

	.royal-mega-menu > ul.sub-menu > li {
		float: none !important;
		clear: none !important;

		width: auto !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.royal-mega-menu > ul.sub-menu > li > a {
		display: flex !important;
		align-items: center !important;

		min-height: 46px;
		padding: 9px 12px !important;
		box-sizing: border-box;

		font-size: 14.5px !important;
		line-height: 1.35 !important;
		white-space: normal !important;
	}

	.royal-menu-icon {
		display: inline-flex;
		align-items: center;
		justify-content: flex-start;

		flex: 0 0 40px;
		width: 40px;
		margin: 0;
		color: #82B541;
	}

	.royal-menu-icon i,
	.royal-menu-icon svg {
		display: block;
		width: 21px !important;
		height: 21px !important;
		font-size: 21px !important;
		line-height: 1 !important;
	}

	.royal-menu-title {
		display: block;
		min-width: 0;
	}
}

/* /ROYAL_DESKTOP_MEGAMENU_CSS */

/* ROYAL_DESKTOP_MEGAMENU_FINAL_FIX */

@media screen and (min-width: 1025px) {

	/* Весь контейнер сдвигаем вправо на 50px */
	.royal-mega-menu > ul.sub-menu {
		margin-left: 50px !important;

		width: calc(var(--royal-mega-width, 100%) - 50px) !important;
		min-width: calc(var(--royal-mega-width, 100%) - 50px) !important;

		padding: 20px 22px !important;

		background: #f4f4f4 !important;
		background-color: #f4f4f4 !important;

		border: 0 !important;
		border-top: 0 !important;
		border-right: 0 !important;
		border-bottom: 0 !important;
		border-left: 0 !important;

		box-shadow: none !important;
		outline: 0 !important;
	}

	/* Нигде внутри мегаменю не оставляем белый фон */
	.royal-mega-menu > ul.sub-menu,
	.royal-mega-menu > ul.sub-menu > li,
	.royal-mega-menu > ul.sub-menu > li > a,
	.royal-mega-menu > ul.sub-menu > li:hover,
	.royal-mega-menu > ul.sub-menu > li:hover > a,
	.royal-mega-menu > ul.sub-menu > li.current-menu-item,
	.royal-mega-menu > ul.sub-menu > li.current-menu-item > a,
	.royal-mega-menu > ul.sub-menu > li.current-menu-ancestor,
	.royal-mega-menu > ul.sub-menu > li.current-menu-ancestor > a {
		background: #f4f4f4 !important;
		background-color: #f4f4f4 !important;
		background-image: none !important;
	}

	/* Убираем все линии и тени у пунктов */
	.royal-mega-menu > ul.sub-menu > li,
	.royal-mega-menu > ul.sub-menu > li > a {
		border: 0 !important;
		border-top: 0 !important;
		border-right: 0 !important;
		border-bottom: 0 !important;
		border-left: 0 !important;

		box-shadow: none !important;
		outline: 0 !important;
	}

	/* Убираем линии, которые тема может рисовать псевдоэлементами */
	.royal-mega-menu > ul.sub-menu::before,
	.royal-mega-menu > ul.sub-menu::after,
	.royal-mega-menu > ul.sub-menu > li::before,
	.royal-mega-menu > ul.sub-menu > li::after,
	.royal-mega-menu > ul.sub-menu > li > a::before,
	.royal-mega-menu > ul.sub-menu > li > a::after {
		display: none !important;
		content: none !important;
		border: 0 !important;
		box-shadow: none !important;
	}

	/* Hover только цветом текста — без белых плашек */
	.royal-mega-menu > ul.sub-menu > li > a:hover,
	.royal-mega-menu > ul.sub-menu > li:hover > a {
		color: #82B541 !important;
		background: #f4f4f4 !important;
	}
}

/* /ROYAL_DESKTOP_MEGAMENU_FINAL_FIX */

.royal-video-hero {
	position: relative;
	width: 100%;
	height: clamp(380px, 62vw, 880px);
	overflow: hidden;
	background: #000;
}

.royal-video-hero__video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.vid h1 {
		font-size: 24px !important;
		text-align: center;
}

@media (max-width: 992px) {
	.vid h1 {
		font-size: 21px !important;
		font-weight: 500;
		text-align: center;
	}
}

@media (max-width: 767px) {
	.royal-video-hero {
		height: 420px;
	}
}
.con p {
	font-size: 16px;
	font-weight: 500;
}

/* ROYAL_PROJECTS_INLINE_START */

/*
 * Обычный блок проектов внутри страницы:
 * без высоты экрана и без вертикального центрирования.
 */
.royal-projects-inline.vc_row,
.royal-projects-inline.vc_row.vc_row-o-full-height {
	min-height: 0 !important;
	height: auto !important;
}

.royal-projects-inline > .vc_column_container,
.royal-projects-inline > .vc_column_container > .vc_column-inner {
	min-height: 0 !important;
	height: auto !important;
}

.royal-projects-inline.vc_row-o-content-middle
> .vc_column_container
> .vc_column-inner {
	justify-content: flex-start !important;
}

.royal-projects-inline.vc_row-o-columns-stretch {
	align-content: flex-start !important;
}

/* ROYAL_PROJECTS_INLINE_END */

/* ROYAL OBJECTS BLOCK START */

.royal-objects-row {
	margin: 0 !important;
}

.royal-objects-row > .wpb_column,
.royal-objects-row > .wpb_column > .vc_column-inner,
.royal-objects-row > .wpb_column > .vc_column-inner > .wpb_wrapper,
.royal-objects-row > .wpb_column > .wpb_wrapper {
	padding: 0 !important;
}

.royal-objects,
.royal-objects * {
	box-sizing: border-box;
}

.royal-objects {
	--ro-accent: #82B541;

	position: relative;
	width: 100%;
	min-height: clamp(690px, 79vh, 900px);
	overflow: hidden;
	isolation: isolate;
	background: #1b211e;
	color: #fff;
}

.royal-objects__visuals,
.royal-objects__visual,
.royal-objects__shade {
	position: absolute;
	inset: 0;
}

.royal-objects__visuals {
	z-index: 0;
	background: linear-gradient(135deg, #354039, #171a18);
}

.royal-objects__visual {
	opacity: 0;
	visibility: hidden;
	background-repeat: no-repeat;
	background-size: cover;
	transform: scale(1.045);
	transition:
		opacity 0.7s ease,
		visibility 0.7s ease,
		transform 8s cubic-bezier(0.2, 0.62, 0.2, 1);
}

.royal-objects__visual.is-active {
	opacity: 1;
	visibility: visible;
	transform: scale(1);
}

.royal-objects__shade {
	z-index: 1;
	background:
		linear-gradient(
			90deg,
			rgba(7, 10, 8, 0.9) 0%,
			rgba(7, 10, 8, 0.69) 38%,
			rgba(7, 10, 8, 0.25) 68%,
			rgba(7, 10, 8, 0.13) 100%
		),
		linear-gradient(
			0deg,
			rgba(7, 10, 8, 0.62),
			transparent 45%
		);
}

.royal-objects__inner {
	position: relative;
	z-index: 4;
	display: flex;
	align-items: center;
	width: min(90%, 1740px);
	min-height: inherit;
	margin: auto;
	padding: clamp(70px, 7vw, 120px) 0;
}

.royal-objects__content-wrap {
	width: min(720px, 47vw);
}

.royal-objects__eyebrow {
	position: relative;
	margin: 0 0 27px;
	padding-left: 54px;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0.17em;
	text-transform: uppercase;
}

.royal-objects__eyebrow::before {
	position: absolute;
	left: 0;
	top: 50%;
	width: 36px;
	height: 2px;
	content: "";
	background: var(--ro-accent);
	transform: translateY(-50%);
}

.royal-objects__content {
	position: relative;
	min-height: 410px;
}

.royal-objects__panel {
	position: absolute;
	inset: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(30px);
	transition:
		opacity 0.52s ease,
		visibility 0.52s ease,
		transform 0.52s ease;
}

.royal-objects__panel.is-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: none;
}

.royal-objects .royal-objects__panel h2 {
	max-width: 760px;
	margin: 0;
	color: #fff !important;
	font-family: "Montserrat", sans-serif !important;
	font-size: clamp(48px, 4.9vw, 92px);
	font-weight: 300;
	line-height: 0.98;
	letter-spacing: -0.045em;
	text-transform: none;
	text-wrap: balance;
}

.royal-objects__text {
	margin-top: 30px;
}

.royal-objects .royal-objects__text,
.royal-objects .royal-objects__text p {
	max-width: 500px;
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.92) !important;
	font-family: "Montserrat", sans-serif !important;
	font-size: clamp(16px, 1.05vw, 20px) !important;
	font-weight: 300 !important;
	line-height: 1.65 !important;
	letter-spacing: 0.01em !important;
}

.royal-objects .royal-objects__text p:first-child {
	margin-top: 0;
}

.royal-objects__button {
	display: inline-flex;
	align-items: center;
	gap: 24px;
	margin-top: 37px;
	padding: 14px 0 11px;
	border-bottom: 2px solid var(--ro-accent);
	color: #fff !important;
	font-family: "Montserrat", sans-serif !important;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.1em;
	text-decoration: none !important;
	text-transform: uppercase;
	transition:
		gap 0.22s ease,
		color 0.22s ease;
}

.royal-objects__button:hover,
.royal-objects__button:focus-visible {
	gap: 34px;
	color: var(--ro-accent) !important;
}

.royal-objects__button b {
	font-size: 23px;
	font-weight: 300;
}

.royal-objects__rings {
	position: absolute;
	z-index: 2;
	left: max(73.4vw, calc(128vw - 1044px), 1414px);
	right: auto;
	top: 150px;
	width: min(91vw, 1740px);
	aspect-ratio: 1;
	pointer-events: none;
	transform: translateX(-40%);
}

.royal-objects__ring {
	position: absolute;
	left: 50%;
	top: 50%;
	aspect-ratio: 1;
	transform: translate(-50%, -30%) scaleY(0.8);
}

/*
 * Четыре окружности с общим центром.
 * Равный шаг по диаметру: 6%.
 */
.royal-objects__ring--1 {
	width: 75%;
}

.royal-objects__ring--2 {
	width: 81%;
}

.royal-objects__ring--3 {
	width: 87%;
}

.royal-objects__ring--4 {
	width: 93%;
}

.royal-objects__ring-svg {
	display: block;
	width: 100%;
	height: 100%;
	overflow: visible;
	transform-origin: 50% 50%;
	will-change: transform;
	animation-name: royal-objects-ring-spin;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

.royal-objects__ring-svg circle {
	fill: none;
	stroke: rgba(255, 255, 255, 0.34);
	stroke-width: 1;
	stroke-linecap: round;
	vector-effect: non-scaling-stroke;

	/*
	 * Каждая SVG-окружность рисует только одну дугу:
	 * 30% линии и 70% пустоты.
	 */
	stroke-dasharray: 30 70;
}

/*
 * Три дуги расположены через 120 градусов.
 * Итого на каждой окружности ровно три сегмента.
 */
.royal-objects__segment--1 {
	stroke-dashoffset: 0;
}

.royal-objects__segment--2 {
	stroke-dashoffset: -33.333;
}

.royal-objects__segment--3 {
	stroke-dashoffset: -66.666;
}

/*
 * Разные скорости, направления и отрицательные задержки:
 * кольца начинают движение с разных углов и не синхронизируются.
 */
.royal-objects__ring--1 .royal-objects__ring-svg {
	animation-duration: 18s;
	animation-direction: normal;
	animation-delay: -11s;
}

.royal-objects__ring--2 .royal-objects__ring-svg {
	animation-duration: 24.5s;
	animation-direction: reverse;
	animation-delay: -27s;
}

.royal-objects__ring--3 .royal-objects__ring-svg {
	animation-duration: 20.5s;
	animation-direction: normal;
	animation-delay: -19s;
}

.royal-objects__ring--4 .royal-objects__ring-svg {
	animation-duration: 28.5s;
	animation-direction: reverse;
	animation-delay: -35s;
}

@keyframes royal-objects-ring-spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@media (prefers-reduced-motion: reduce) {
	.royal-objects__ring-svg {
		animation: none !important;
	}
}

.royal-objects__nav {
	position: absolute;
	z-index: 5;
	right: clamp(35px, 4vw, 90px);

	/*
	 * Пункты распределены строго равномерно
	 * между верхней и нижней границами.
	 */
	top: 12%;
	bottom: 12%;

	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: space-between;
	width: min(430px, 34vw);
}

.royal-objects__nav-button {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	width: min(100%, 360px);
	min-height: 58px;
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	background: transparent;
	color: rgba(255, 255, 255, 0.66);
	font-family: "Montserrat", sans-serif !important;
	text-align: left;
	cursor: pointer;
	appearance: none;
	transition:
		color 0.22s ease,
		transform 0.22s ease;
}

.royal-objects__nav-button:nth-child(1) {
	margin-right: clamp(120px, 11vw, 220px);
}

.royal-objects__nav-button:nth-child(2) {
	margin-right: clamp(78px, 7.5vw, 150px);
}

.royal-objects__nav-button:nth-child(3) {
	margin-right: clamp(38px, 3.8vw, 78px);
}

.royal-objects__nav-button:hover,
.royal-objects__nav-button:focus-visible,
.royal-objects__nav-button.is-active {
	color: #fff;
}

.royal-objects__nav-button:hover,
.royal-objects__nav-button:focus-visible {
	transform: translateX(-7px);
}

.royal-objects__nav-button span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border: 1px solid rgba(255, 255, 255, 0.45);
	border-radius: 50%;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.08em;
	transition: 0.22s ease;
}

.royal-objects__nav-button.is-active span {
	border-color: var(--ro-accent);
	background: var(--ro-accent);
	color: #fff;
}

.royal-objects__nav-button em {
	font-size: clamp(13px, 0.92vw, 17px);
	font-style: normal;
	font-weight: 400;
	line-height: 1.35;
	letter-spacing: 0.015em;
	text-wrap: balance;
}

@media (max-width: 1200px) {
	.royal-objects__content-wrap {
		width: min(650px, 50vw);
	}

	.royal-objects__nav {
		width: 35vw;
	}

	.royal-objects__nav-button:nth-child(1) {
		margin-right: 105px;
	}

	.royal-objects__nav-button:nth-child(2) {
		margin-right: 70px;
	}

	.royal-objects__nav-button:nth-child(3) {
		margin-right: 35px;
	}
}

@media (max-width: 900px) {
	.royal-objects {
		min-height: 790px;
	}

	.royal-objects__shade {
		background:
			linear-gradient(
				0deg,
				rgba(7, 10, 8, 0.92),
				rgba(7, 10, 8, 0.65) 55%,
				rgba(7, 10, 8, 0.24)
			);
	}

	.royal-objects__inner {
		align-items: flex-start;
		width: calc(100% - 48px);
		padding: 70px 0 235px;
	}

	.royal-objects__content-wrap {
		width: 100%;
	}

	.royal-objects__rings {
		left: auto;
		right: -88vw;
		top: 50%;
		width: 170vw;
		opacity: 0.7;
		transform: translateY(-35%);
	}

	.royal-objects__nav {
		right: 24px;
		left: 24px;
		top: auto;
		bottom: 28px;
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px 18px;
		width: auto;
	}

	.royal-objects__nav-button,
	.royal-objects__nav-button:nth-child(n) {
		width: 100%;
		min-height: 64px;
		margin-right: 0;
		padding: 8px 10px;
		border: 1px solid rgba(255, 255, 255, 0.22);
		background: rgba(10, 13, 11, 0.28);
	}

	.royal-objects__nav-button:hover,
	.royal-objects__nav-button:focus-visible {
		transform: none;
	}

	.royal-objects .royal-objects__panel h2 {
		font-size: clamp(44px, 8vw, 70px);
	}
}

@media (max-width: 600px) {
	.royal-objects {
		min-height: 760px;
	}

	.royal-objects__inner {
		width: calc(100% - 30px);
		padding: 52px 0 245px;
	}

	.royal-objects__eyebrow {
		margin-bottom: 20px;
		padding-left: 43px;
		font-size: 11px;
	}

	.royal-objects__eyebrow::before {
		width: 28px;
	}

	.royal-objects__content {
		min-height: 395px;
	}

	.royal-objects .royal-objects__panel h2 {
		font-size: clamp(38px, 12vw, 58px);
		line-height: 1;
	}

	.royal-objects__text {
		margin-top: 22px;
	}

	.royal-objects .royal-objects__text,
	.royal-objects .royal-objects__text p {
		font-size: 15px !important;
		line-height: 1.55 !important;
	}

	.royal-objects__button {
		margin-top: 25px;
	}

	.royal-objects__nav {
		right: 15px;
		left: 15px;
		bottom: 18px;
		gap: 8px;
	}

	.royal-objects__nav-button,
	.royal-objects__nav-button:nth-child(n) {
		grid-template-columns: 38px minmax(0, 1fr);
		gap: 10px;
		min-height: 72px;
		padding: 7px;
	}

	.royal-objects__nav-button span {
		width: 38px;
		height: 38px;
		font-size: 10px;
	}

	.royal-objects__nav-button em {
		font-size: 11px;
		line-height: 1.3;
	}
}

@media (prefers-reduced-motion: reduce) {
	.royal-objects__visual,
	.royal-objects__panel,
	.royal-objects__button,
	.royal-objects__nav-button,
	.royal-objects__nav-button span {
		transition-duration: 1ms !important;
	}

	.royal-objects__visual {
		transform: none !important;
	}
}

/* ROYAL OBJECTS BLOCK END */

/* ROYAL OBJECTS FINAL THREE DASHES START */

/*
 * Реальная длина окружности при r=49: 307.876.
 *
 * 86 линия
 * 5 маленький разрыв
 * 86 линия
 * 5 маленький разрыв
 * 86 линия
 * 39.876 большой разрыв между концами дуги
 *
 * Итого ровно три разрыва.
 */
.royal-objects__ring-svg circle.royal-objects__ring-line {
	fill: none;
	stroke: rgba(255, 255, 255, 0.34);
	stroke-width: 2;
	stroke-linecap: round;
	vector-effect: non-scaling-stroke;
	stroke-dasharray: 86 5 86 5 86 39.876 !important;
	stroke-dashoffset: 0 !important;
}

/* ROYAL OBJECTS FINAL THREE DASHES END */

/* ROYAL OBJECTS LOWER FLATTEN FINAL START */

/*
 * Общий центр всех четырёх фигур:
 * было 50%, стало 70% — опущены вниз на 20%.
 *
 * Ширины не изменяются.
 * Из каждой высоты вычтено одинаково 20 процентных пунктов:
 *
 * 75 → 55
 * 81 → 61
 * 87 → 67
 * 93 → 73
 *
 * Разница между соседними линиями остаётся 6%.
 */
@media (min-width: 901px) {
	.royal-objects__rings > .royal-objects__ring {
		top: 36.5% !important;
		transform: translate(-50%, -50%) !important;
	}
}

@media (max-width: 900px) {
	.royal-objects__rings > .royal-objects__ring {
		top: 60% !important;
		transform: translate(-50%, -50%) !important;
	}
}

.royal-objects__rings > .royal-objects__ring--1 {
	height: 55% !important;
}

.royal-objects__rings > .royal-objects__ring--2 {
	height: 61% !important;
}

.royal-objects__rings > .royal-objects__ring--3 {
	height: 67% !important;
}

.royal-objects__rings > .royal-objects__ring--4 {
	height: 73% !important;
}

/* ROYAL OBJECTS LOWER FLATTEN FINAL END */

/* ROYAL OBJECTS VIEWPORT HEIGHT START */

:root {
	/*
	 * Пока sticky-меню не сделано — 0px.
	 * После создания sticky-меню здесь укажем его высоту.
	 */
	--royal-sticky-menu-height: 0px;
}

/*
 * Вся WPBakery-строка и сам блок занимают
 * высоту окна минус высота sticky-меню.
 */
.royal-objects-row,
.royal-objects-row > .vc_column_container,
.royal-objects-row > .vc_column_container > .vc_column-inner,
.royal-objects-row > .vc_column_container > .vc_column-inner > .wpb_wrapper,
.royal-objects {
	height: calc(100vh - var(--royal-sticky-menu-height));
	min-height: calc(100vh - var(--royal-sticky-menu-height));
}

/*
 * Корректная высота на мобильных браузерах.
 */
@supports (height: 100dvh) {
	.royal-objects-row,
	.royal-objects-row > .vc_column_container,
	.royal-objects-row > .vc_column_container > .vc_column-inner,
	.royal-objects-row > .vc_column_container > .vc_column-inner > .wpb_wrapper,
	.royal-objects {
		height: calc(100dvh - var(--royal-sticky-menu-height));
		min-height: calc(100dvh - var(--royal-sticky-menu-height));
	}
}

/* ROYAL OBJECTS VIEWPORT HEIGHT END */

/* Весь объект: номер + текст */
.royal-objects__nav-button {
	position: relative;
}
.royal-objects__nav-button em {
		font-weight: 500;
		width: 100px;

}
/* 01 — Индивидуальное строительство… */
/* 01 */
.royal-objects .royal-objects__nav-button:nth-child(1) {
	--ro-x: 7;
	--ro-y: -8;
}

/* 02 */
.royal-objects .royal-objects__nav-button:nth-child(2) {
	--ro-x: 0;
	--ro-y: 14;
}

/* 03 */
.royal-objects .royal-objects__nav-button:nth-child(3) {
	--ro-x: -4;
	--ro-y: 36;
}

/* 04 */
.royal-objects .royal-objects__nav-button:nth-child(4) {
	--ro-x: 0;
	--ro-y: 58;
}
.royal-objects__ring {
	left: 40% !important;
}
.cost-calculator-form .cost-calculator-contact-box-submit-container .vc_row {
	margin-top: 33px !important;
}
.cost-calculator-form .cost-calculator-contact-box-submit-container {
	padding: 0 30px 15px !important;
	margin-top: 30px;
}
.cost-calculator-form .cost-calculator-contact-box .vc_row {
	margin-top: 30px;
}
ul.blog.clearfix {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px 30px;
	margin: 0;
	padding: 0;
	list-style: none;
}

ul.blog.clearfix::before,
ul.blog.clearfix::after {
	display: none !important;
	content: none !important;
}

ul.blog.clearfix > li {
	float: none !important;
	clear: none !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
	box-sizing: border-box;
}

ul.blog.clearfix > li > .post-content {
	width: 100% !important;
	min-width: 0;
	margin: 0 !important;
}

/* Скрываем картинки, вставленные внутрь текста записи */
ul.blog.clearfix > li img {
	display: none !important;
}

/* Оставляем только главную миниатюру записи */
ul.blog.clearfix > li a.post-image {
	display: block;
	width: 100%;
	height: 240px;
	overflow: hidden;
}

ul.blog.clearfix > li a.post-image img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center;
}

/* Категория */
ul.blog.clearfix > li .post-content-details {
	margin-top:0px;
}

/* Заголовок */
ul.blog.clearfix > li h2.box-header {
	display: block;
	width: 100%;
	margin: 12px 0 18px;
	font-size: 18px !important;
	line-height: 1.35 !important;
	white-space: normal !important;
	overflow-wrap: anywhere;
}

ul.blog.clearfix > li h2.box-header a {
	display: block;
	font-size: inherit !important;
	line-height: inherit !important;
	white-space: normal !important;
}

/* Текст */
ul.blog.clearfix > li p {
	width: 100%;
	margin: 0;
	overflow-wrap: anywhere;
}

@media (max-width: 1024px) {
	ul.blog.clearfix {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	ul.blog.clearfix {
		grid-template-columns: 1fr;
	}

	ul.blog.clearfix > li a.post-image {
		height: 220px;
	}
}
ul.blog.clearfix {margin-bottom: 60px;}

/* Последние и популярные записи — вертикальным списком */
ul.blog.clearfix.small {
	display: block !important;
	margin: 30px 0 0 !important;
	padding: 0 !important;
}

ul.blog.clearfix.small > li {
	display: block !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	margin: 0 0 20px !important;
	padding: 0 !important;
	overflow: hidden;
}

ul.blog.clearfix.small > li > strong {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	width: 100%;
}

ul.blog.clearfix.small > li .post-image {
	display: block !important;
	flex: 0 0 90px;
	width: 90px !important;
	height: 90px !important;
	margin: 0 !important;
	overflow: hidden;
	aspect-ratio: auto !important;
}

ul.blog.clearfix.small > li .post-image img {
	display: block !important;
	width: 90px !important;
	height: 90px !important;
	max-width: 90px !important;
	object-fit: cover;
}

ul.blog.clearfix.small > li .post-content {
	flex: 1;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

ul.blog.clearfix.small > li .post-content > a {
	display: block;
	line-height: 1.35;
}

ul.blog.clearfix.small > li .post-details {
	margin-top: 8px;
}
h6.box-header.page-margin-top{
	margin-top: 0 !important;
}
ul.blog:not(.small) {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 30px;
	row-gap: 0;
}

ul.blog:not(.small) > li {
	display: grid !important;
	grid-template-rows: subgrid;
	grid-row: span 4;
	margin: 0 0 40px !important;
}

ul.blog:not(.small) > li > .post-content {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: 1 / span 4;
}

ul.blog:not(.small) > li > .post-content > .post-image {
	grid-row: 1;
}

ul.blog:not(.small) > li > .post-content > .post-content-details {
	grid-row: 2;
}

ul.blog:not(.small) > li > .post-content > h2.box-header {
	grid-row: 3;
}

ul.blog:not(.small) > li > .post-content > p {
	grid-row: 4;
	align-self: start;
}
ul.blog:not(.small) {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 30px;
	row-gap: 0;
}

ul.blog:not(.small) > li {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: subgrid;
	grid-row: span 8;
	width: auto !important;
	min-width: 0;
	margin: 0 0 40px !important;
}

ul.blog:not(.small) > li > .post-content {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: subgrid;
	grid-row: 1 / span 8;
	grid-auto-flow: row;
	min-width: 0;
}

/* Убираем лишние обёртки из раскладки */
ul.blog:not(.small) > li > .post-content > strong,
ul.blog:not(.small) > li > .post-content > .post-content {
	display: contents;
}

/* Все элементы карточки только в одной колонке */
ul.blog:not(.small) > li > .post-content > *,
ul.blog:not(.small) > li > .post-content > strong > *,
ul.blog:not(.small) > li > .post-content > .post-content > * {
	grid-column: 1;
	min-width: 0;
}

/* Картинка */
ul.blog:not(.small) > li .post-image {
	grid-row: 1;
	display: block;
	width: 100%;
	aspect-ratio: 3 / 2;
	overflow: hidden;
}

ul.blog:not(.small) > li .post-image img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center;
}

/* Рубрика */
ul.blog:not(.small) > li .post-content-details {
	grid-row: 2;
}

/* Заголовок */
ul.blog:not(.small) > li h2.box-header {
	grid-row: 3;
	margin-bottom: 8px !important;
}

/* Текст автоматически идёт строками ниже заголовка */
ul.blog:not(.small) > li p {
	margin-top: 0 !important;
	grid-column: 1;
}

@media (max-width: 1024px) {
	ul.blog:not(.small) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	ul.blog:not(.small) {
		grid-template-columns: 1fr;
	}
}
ul.blog:not(.small) > li .post-content p {
	grid-column: 1;
	grid-row: auto !important;
	position: static !important;
	margin: 0 0 12px !important;
}

ul.blog:not(.small) > li .post-content h2.box-header + p {
	margin-top: 0 !important;
}
/* =========================================================
   ROYAL: галереи в трёх статьях блога — 2 колонки
   ========================================================= */

body.postid-3698 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul,
body.postid-3757 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul,
body.postid-3775 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.postid-3698 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul > li,
body.postid-3757 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul > li,
body.postid-3775 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul > li {
	position: static !important;
	inset: auto !important;
	transform: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.postid-3698 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul > li > a,
body.postid-3757 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul > li > a,
body.postid-3775 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul > li > a {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
}

body.postid-3698 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul img,
body.postid-3757 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul img,
body.postid-3775 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center;
}

@media (max-width: 767px) {
	body.postid-3698 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul,
	body.postid-3757 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul,
	body.postid-3775 .wpb_gallery_slides.wpb_image_grid .wpb_image_grid_ul {
		grid-template-columns: 1fr;
		gap: 15px;
	}
}


/* =========================================================
   ROYAL: Magnific Popup — галереи статей
   ========================================================= */

.royal-mfp-gallery.mfp-bg {
	opacity: 0.94;
}

.royal-mfp-gallery .mfp-container {
	padding: 40px 70px;
}

.royal-mfp-gallery .mfp-content {
	max-width: 1600px;
}

.royal-mfp-gallery img.mfp-img {
	max-height: calc(100vh - 80px) !important;
	padding: 0;
}

.royal-mfp-gallery .mfp-figure::after {
	background: transparent;
	box-shadow: none;
}

.royal-mfp-gallery .mfp-close {
	position: fixed;
	top: 18px;
	right: 22px;
	width: 46px;
	height: 46px;
	font-size: 42px;
	line-height: 46px;
	color: #fff;
	opacity: 1;
}

.royal-mfp-gallery .mfp-arrow {
	position: fixed;
	opacity: 0.9;
}

.royal-mfp-gallery .mfp-arrow:hover {
	opacity: 1;
}

.royal-mfp-gallery .mfp-bottom-bar {
	margin-top: 12px;
}

.royal-mfp-gallery .mfp-title,
.royal-mfp-gallery .mfp-counter {
	color: #fff;
	font-family: "Inter Tight", sans-serif;
	font-size: 14px;
}

.royal-mfp-gallery.mfp-with-zoom .mfp-container,
.royal-mfp-gallery.mfp-with-zoom.mfp-bg {
	opacity: 0;
	transition: opacity 0.25s ease-out;
}

.royal-mfp-gallery.mfp-with-zoom.mfp-ready .mfp-container,
.royal-mfp-gallery.mfp-with-zoom.mfp-ready.mfp-bg {
	opacity: 1;
}

.royal-mfp-gallery.mfp-with-zoom.mfp-removing .mfp-container,
.royal-mfp-gallery.mfp-with-zoom.mfp-removing.mfp-bg {
	opacity: 0;
}

@media (max-width: 767px) {
	.royal-mfp-gallery .mfp-container {
		padding: 55px 10px 20px;
	}

	.royal-mfp-gallery img.mfp-img {
		max-height: calc(100vh - 90px) !important;
	}

	.royal-mfp-gallery .mfp-arrow {
		transform: scale(0.8);
	}
}
.single-post .post-content .post-image,
.single-post .post-content .post-image a {
	display: block;
	width: 100%;
	overflow: hidden;
}

.single-post .post-content .post-image img {
	display: block;
	width: 100%;
	max-width: none;
	object-fit: cover;
	max-height: 500px;
}
.post-content-details > li:first-child {
	display: none;
}
.post-content-details li {
	margin-left: 0 !important;
}
.post-content-details li {
	font-size: 0 !important;
}

.post-content-details li a {
	font-size: 17px;
}
/* Две пары: внутри каждой 10% иконка / 90% текст */
.royal-icons-row {
	display: grid !important;
	grid-template-columns: 10% 40% 10% 40%;
	align-items: start;
}

.royal-icons-row::before,
.royal-icons-row::after {
	display: none !important;
	content: none !important;
}

.royal-icons-row > .wpb_column {
	float: none !important;
	width: auto !important;
	min-width: 0;
}

.royal-icons-row > .wpb_column:nth-child(2) p strong,
.royal-icons-row > .wpb_column:nth-child(4) p strong {
	font-weight: 600;
}
/* Колонки с иконками */
.royal-icons-row > .wpb_column:nth-child(1),
.royal-icons-row > .wpb_column:nth-child(3) {
	display: flex;
	justify-content: center;
}

.royal-icons-row > .wpb_column:nth-child(1) .wpb_text_column,
.royal-icons-row > .wpb_column:nth-child(3) .wpb_text_column {
	margin: 0 !important;
}

/* Круг ровно 90 × 90 px */
.royal-icons-row > .wpb_column:nth-child(1) p,
.royal-icons-row > .wpb_column:nth-child(3) p {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 90px;

	width: 90px !important;
	height: 90px !important;
	margin: 0;

	background: #82b541;
	border: 0;
	border-radius: 50%;
	box-sizing: border-box;
}

/* Белая иконка */
.royal-icons-row > .wpb_column:nth-child(1) i,
.royal-icons-row > .wpb_column:nth-child(3) i {
	color: #fff !important;
	font-size: 35px !important;
	line-height: 1 !important;
}

/* На мобильном каждая пара: 10% / 90% */
@media screen and (max-width: 767px) {
	.royal-icons-row {
		grid-template-columns: 10% 90%;
		row-gap: 30px;
	}
}

/* ROYAL: HEADER TOP BAR START */

/* Текст верхней контактной панели: увеличение примерно на 2 px */
#renovate_contact_details_list-2 > ul > li,
#renovate_contact_details_list-2 > ul > li > a,
#search-3 input[type="text"],
#search-3 input[type="search"] {
	font-size: 15px !important;
}

/* Иконки Facebook, контактов и поиска */
#renovate_social_icons-2 a,
#renovate_contact_details_list-2 > ul > li::before,
#search-3 .template-search {
	font-size: 16px !important;
}

/* ROYAL: HEADER TOP BAR END */

.single h2.box-header {
	display: block;
	margin-top: 30px;
	margin-bottom: 10px;
	font-size: 24px;
	text-align: left;
	text-transform: uppercase;
}
.single h2.box-header:after {
	text-align: left;
	margin: 15px 0 10px 0;
}
/* ROYAL OBJECTS DESKTOP AXIS START */

@media (min-width: 901px) {
	/* Общая вертикальная ось окружностей сдвинута вправо. */
	.royal-objects__rings {
		margin-left: 100px;
	}
}

/* ROYAL OBJECTS DESKTOP AXIS END */
/* SINGLE — последние и популярные записи */
body.single-post .wpb_column ul.blog.clearfix.small.margin-top-30 > li.small.post {
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: flex-start !important;
	clear: both !important;
	float: none !important;
	width: 100% !important;
	min-height: 90px !important;
	margin: 0 0 28px !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

body.single-post .wpb_column ul.blog.clearfix.small.margin-top-30 > li.small.post > a.post-image {
	display: block !important;
	flex: 0 0 90px !important;
	float: none !important;
	width: 90px !important;
	min-width: 90px !important;
	max-width: 90px !important;
	height: 90px !important;
	margin: 0 12px 0 0 !important;
	padding: 0 !important;
}

body.single-post .wpb_column ul.blog.clearfix.small.margin-top-30 > li.small.post > a.post-image img {
	display: block !important;
	width: 90px !important;
	min-width: 90px !important;
	max-width: 90px !important;
	height: 90px !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover !important;
}

body.single-post .wpb_column ul.blog.clearfix.small.margin-top-30 > li.small.post > .post-content {
	display: block !important;
	flex: 1 1 auto !important;
	float: none !important;
	clear: none !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

body.single-post .wpb_column ul.blog.clearfix.small.margin-top-30 > li.small.post > .post-content > a {
	display: block !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.35 !important;
}

body.single-post .wpb_column ul.blog.clearfix.small.margin-top-30 > li.small.post .post-details {
	display: block !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	margin: 10px 0 0 !important;
	padding: 0 !important;
}

body.single-post .wpb_column ul.blog.clearfix.small.margin-top-30 > li.small.post .post-details > li {
	display: block !important;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}
/* Главная: серый фон на всю ширину, форма внутри контейнера */
.royal-contact-section > .wpb_column > .wpb_wrapper {
	width: calc(100% - 80px) !important;
	max-width: 1170px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box;
}

/* Кнопка SEND MESSAGE не выходит за контейнер */
.royal-contact-section .contact-form,
.royal-contact-section .contact-form .vc_row {
	max-width: 100%;
	box-sizing: border-box;
}

@media (max-width: 767px) {
	.royal-contact-section > .wpb_column > .wpb_wrapper {
		width: calc(100% - 30px) !important;
	}
}

/* ROYAL OBJECTS NAV RING ANCHOR START */

/*
 * DESKTOP.
 *
 * 01–04 теперь позиционируются НЕ относительно viewport,
 * а относительно фактического bounding box внешнего кольца:
 *
 * .royal-objects__ring--4
 *
 * --ro-x:
 *   0   = левый край внешнего кольца
 *   50  = центр кольца
 *   100 = правый край кольца
 *
 * Можно использовать отрицательные значения и >100.
 *
 * --ro-y:
 *   0   = верх кольца
 *   50  = середина
 *   100 = низ кольца
 *
 * ЭТИ ВОСЕМЬ ЗНАЧЕНИЙ — ручная настройка положения.
 */

@media (min-width: 901px) {

	.royal-objects .royal-objects__nav {
		position: absolute !important;
		z-index: 5;

		left: 0 !important;
		right: 0 !important;
		top: 0 !important;
		bottom: 0 !important;

		display: block !important;

		width: 100% !important;
		height: 100% !important;

		pointer-events: none;
	}

	.royal-objects .royal-objects__nav-button {
		position: absolute !important;

		right: auto !important;
		bottom: auto !important;

		margin: 0 !important;

		pointer-events: auto;

		/*
		 * left/top выставляет JS.
		 * Центрируем объект по вертикали относительно заданной точки.
		 */
		transform: translateY(-50%);
	}

	/*
	 * ======================================================
	 * РУЧНАЯ НАСТРОЙКА ПУНКТОВ
	 * ======================================================
	 */

	/* 01 */
.royal-objects .royal-objects__nav-button:nth-child(1) {
	--ro-x: 8;
	--ro-y: 3;
}

/* 02 */
.royal-objects .royal-objects__nav-button:nth-child(2) {
	--ro-x: 1;
	--ro-y: 16;
}

/* 03 */
.royal-objects .royal-objects__nav-button:nth-child(3) {
	--ro-x: -4;
	--ro-y: 36;
}

/* 04 */
.royal-objects .royal-objects__nav-button:nth-child(4) {
	--ro-x: 0;
	--ro-y: 54;
}
	/*
	 * Сохраняем старый hover-сдвиг влево,
	 * не ломая вертикальное центрирование.
	 */
	.royal-objects .royal-objects__nav-button:hover,
	.royal-objects .royal-objects__nav-button:focus-visible {
		transform: translate(-7px, -50%);
	}

}

/* ROYAL OBJECTS NAV RING ANCHOR END */

.single-ql_services h6 {
	font-size: 22px
}

.single:not(.single-ql_services) p {
}
.step h2 {
	display: block;
	margin-bottom: 15px !important;
	font-weight: 500;
}
.single h3, .single h3.box-header, .single h3.vc_do_custom_heading,
.page h2, .single h2 {
	display: block;
	margin-top: 30px;
	margin-bottom: 10px;
	font-size: 24px;
	line-height: 1.3em;
} 
.single.single-ql_tech .ui-accordion-header h3 {
	margin-top: 0;
}
.single ul {
}
.single ul li:first-of-type {
}
.single h2.vc_do_custom_heading {
	font-size: 24px;
	font-weight: 600 !important;
	text-transform:uppercase;
}
.single h2 + p {
	margin-top: 0;
}
.single h3, .single h3.box-header, .single h3.vc_do_custom_heading {
	display: block;
	margin-top: 30px;
	margin-bottom: 10px;
	font-size: 20px;
	line-height: 1.3em;
	text-transform: uppercase;
} 


/* SEARCH FOOTER — blog_small как в single */
body.search .blog.small > li {
	display: block !important;
	overflow: hidden !important;
}

body.search .blog.small > li .post-image {
	float: left !important;
	display: block !important;
	width: 90px !important;
	height: 90px !important;
	margin: 0 12px 0 0 !important;
}

body.search .blog.small > li .post-image img {
	display: block !important;
	width: 90px !important;
	height: 90px !important;
	object-fit: cover !important;
}

body.search .blog.small > li .post-content,
body.search .blog.small > li .post-content-details {
	float: none !important;
	clear: none !important;
	width: auto !important;
	margin-left: 102px !important;
}

/* SEARCH FOOTER — дата/просмотры внутри текстового блока */
body.search .blog.small > li .post-content {
	margin-left: 102px !important;
	overflow: hidden !important;
}

body.search .blog.small > li .post-content .post-content-details {
	float: none !important;
	clear: none !important;
	width: auto !important;
	margin: 8px 0 0 0 !important;
}

body.search .blog.small > li .post-content .post-content-details li {
	float: none !important;
	margin-left: 0 !important;
}

body.search .theme-page > .clearfix > .vc_row.wpb_row.vc_row-fluid:first-child {
	margin-bottom: 90px !important;
}

body.search .margin-top-70 > .vc_column_container > .wpb_wrapper > .vc_row.wpb_row.vc_row-fluid {
	margin-bottom: 90px !important;
}
.vc_row.wpb_row.vc_row-fluid.page-margin-top {
	margin-top: 0 !important;
}
.vertical-align-cell.sl-small-lightbulb h3 {
	margin-top: 0 !important;
}
.vc_tta-panel-body p:first-of-type {
	margin-top: 0;
}
.logo.vertical-align-cell h2 {
	margin-top: 0;
}
.royal-service__toggle {
	min-height: auto;
	padding: 8px 0;
	
}
.royal-service__toggle .royal-service__title, .royal-service__excerpt {
	font-size: 16px;
}
@media (max-width: 900px) {
    .royal-objects__nav {
        right: 24px;
        left: 24px;
        top: 35% !important;
        bottom: auto;
        display: grid;
        grid-template-columns: repeat(1, minmax(0px, 1fr));
        width: 50%;
        gap: 12px 18px;
    }
}
h4.vc_do_custom_heading {
	line-height: 1.3em !important;
}
h4.vc_do_custom_heading:first-of-type {
	margin-top: 0 !important;
}

/* =========================================================
   ROYAL ABOUT — FINAL CLEAN
   Один блок вместо всех прежних ROYAL ABOUT overrides.
   ========================================================= */

.royal-about-real {
	--royal-container: 1170px;
	--royal-half: 585px;

	position: relative;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) var(--royal-half);
	align-items: stretch !important;

	width: calc(50vw + var(--royal-half)) !important;
	max-width: none !important;

	margin-left: calc(50% - 50vw) !important;
	margin-right: 0 !important;
	padding: 0 !important;

	overflow: hidden;
}

/*
 * ВАЖНО:
 * стандартный clearfix темы .vc_row::after становился третьим grid-item
 * и именно он мог сдвигать/растягивать раскладку.
 */
.royal-about-real::before,
.royal-about-real::after {
	content: none !important;
	display: none !important;
}

/* ---------------------------------------------------------
   Две основные колонки
   --------------------------------------------------------- */

.royal-about-real > .wpb_column {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

.royal-about-real > .wpb_column > .vc_column-inner {
	width: 100% !important;
	height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

/* ---------------------------------------------------------
   Левая часть: фото fluid от края viewport до центра контейнера
   --------------------------------------------------------- */

.royal-about-real-left {
	grid-column: 1 !important;
	grid-row: 1 !important;

	position: relative !important;
	align-self: stretch !important;

	min-width: 0 !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden !important;
	background: #f4f4f4 !important;
}

.royal-about-real-left > .wpb_wrapper,
.royal-about-real-left > .vc_column-inner,
.royal-about-real-left > .vc_column-inner > .wpb_wrapper {
	position: static !important;

	width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

/*
 * Фото не участвует в расчёте высоты.
 * Высоту всей секции создаёт контент справа.
 */
.royal-about-real-photo {
	position: absolute !important;
	z-index: 1 !important;
	inset: 0 !important;

	width: 100% !important;
	height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

.royal-about-real-photo > .wpb_wrapper,
.royal-about-real-photo .vc_single_image-wrapper {
	display: block !important;

	width: 100% !important;
	height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

.royal-about-real-photo img,
.royal-about-real.is-visible .royal-about-real-photo img {
	display: block !important;

	width: 100% !important;
	height: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	object-fit: cover !important;
	object-position: center !important;

	opacity: 1 !important;
	filter: none !important;
	transform: none !important;
	transition: none !important;
}

/* Старое дерево — окончательно выключено. */
.royal-about-real-left::after,
.royal-about-real-tree,
.royal-about-live-tree,
.royal-about-tree-svg {
	content: none !important;
	display: none !important;
}

/* Никакой старой затемняющей подложки поверх фото. */
.royal-about-real-left::before {
	content: none !important;
	display: none !important;
}

/* ---------------------------------------------------------
   О НАС + кнопка на фото
   --------------------------------------------------------- */

.royal-about-real-title {
	position: absolute !important;
	z-index: 20 !important;

	top: 40px !important;
	right: 40px !important;

	width: auto !important;

	margin: 0 !important;
	padding: 0 !important;

	text-align: right !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.royal-about-real-title > .wpb_wrapper {
	margin: 0 !important;
	padding: 0 !important;
}

.royal-about-real-title h2 {
	margin: 0 0 20px !important;
	padding: 0 !important;

	font-size: clamp(40px, 3.4vw, 62px) !important;
	font-weight: 500 !important;
	line-height: .95 !important;
	letter-spacing: -.035em !important;

	color: #fff !important;
}

/*
 * Кнопка под "О НАС":
 * тот же визуальный язык .more.small, но белая outline на фото.
 */
.royal-about-real-title a,
.royal-about-real-title a:visited,
.royal-about-real-title a:hover,
.royal-about-real-title a:focus,
.royal-about-real-title a:active {
	display: inline-block !important;

	margin: 0 !important;
	padding: 12px 19px 11px !important;

	border: 1px solid rgba(255,255,255,.85) !important;
	border-radius: 999px !important;

	background: transparent !important;

	color: #fff !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: normal !important;
	letter-spacing: 1px !important;

	text-align: center !important;
	text-transform: uppercase !important;
	text-decoration: none !important;

	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	text-shadow: none !important;

	opacity: 1 !important;
	transition: background .3s ease, border-color .3s ease !important;
}

.royal-about-real-title a:hover {
	background: rgba(255,255,255,.12) !important;
	border-color: #fff !important;
}

.royal-about-real-title a span {
	display: none !important;
}

/* ---------------------------------------------------------
   Правая часть: ровно 1/2 контейнера
   --------------------------------------------------------- */

.royal-about-real-right {
	grid-column: 2 !important;
	grid-row: 1 !important;

	position: relative !important;
	align-self: start !important;

	width: var(--royal-half) !important;
	max-width: var(--royal-half) !important;
	min-width: 0 !important;

	height: auto !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	background: #fff !important;
	overflow: visible !important;
}

.royal-about-real-right > .wpb_wrapper,
.royal-about-real-right > .vc_column-inner,
.royal-about-real-right > .vc_column-inner > .wpb_wrapper {
	display: block !important;

	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	background: #fff !important;
}

.royal-about-real-right .wpb_content_element {
	margin: 0 !important;
}

/* ---------------------------------------------------------
   Два текстовых блока справа
   --------------------------------------------------------- */

.royal-about-real .royal-about-real-text {
	position: relative !important;
	display: block !important;
	flex: none !important;

	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;

	box-sizing: border-box !important;

	margin: 0 !important;
	padding: 44px 48px !important;

	font-size: 16px !important;
	line-height: 1.68 !important;

	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

.royal-about-real .royal-about-real-text > .wpb_wrapper {
	display: block !important;

	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

.royal-about-real .royal-about-real-text-top {
	background: #82B541 !important;
	border: 0 !important;
	color: #fff !important;
	font-weight: 500 !important;
}

.royal-about-real .royal-about-real-text-top p {
	color: #fff !important;
	font-weight: 500 !important;
}

.royal-about-real .royal-about-real-text-bottom {
	background: #fff !important;
	border: 1px solid #d8d8d8 !important;
	color: #444 !important;
	font-weight: 400 !important;
}

.royal-about-real .royal-about-real-text-bottom p {
	color: #444 !important;
	font-weight: 400 !important;
}

/* ---------------------------------------------------------
   Внутри каждого текста:
   [ FA 48px ] [ ТЕКСТ + КНОПКА ]
   --------------------------------------------------------- */

.royal-about-real-inner {
	display: grid !important;
	grid-template-columns: 48px minmax(0, 1fr) !important;
	column-gap: 41px !important;
	align-items: start !important;

	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

.royal-about-real-icon {
	grid-column: 1 !important;
	float: none !important;

	display: block !important;

	width: 48px !important;
	height: 48px !important;

	margin: 0 !important;
	padding: 0 !important;

	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

.royal-about-real-icon {
	display: block !important;

	width: 48px !important;
	height: 48px !important;

	margin: 0 !important;
	padding: 0 !important;

	font-size: 48px !important;
	line-height: 48px !important;

	opacity: 1 !important;
	visibility: visible !important;
}

.royal-about-real-text-top .royal-about-real-icon {
	color: #fff !important;
}

.royal-about-real-text-bottom .royal-about-real-icon {
	color: #82B541 !important;
}

.royal-about-real-body {
	grid-column: 2 !important;

	display: block !important;

	min-width: 0 !important;
	height: auto !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

.royal-about-real-body > p:first-child {
	margin: 0 !important;
	padding: 0 !important;
}

/* ---------------------------------------------------------
   Кнопки в текстовых блоках
   РОВНО 20px после текста, справа
   --------------------------------------------------------- */

.royal-about-real-body .royal-about-real-link {
	display: block !important;
	clear: none !important;

	width: 100% !important;

	margin: 20px 0 0 !important;
	padding: 0 !important;

	text-align: right !important;
}

.royal-about-real-body .royal-about-real-link .more,
.royal-about-real-body .royal-about-real-link .more:visited,
.royal-about-real-body .royal-about-real-link .more:hover,
.royal-about-real-body .royal-about-real-link .more:focus,
.royal-about-real-body .royal-about-real-link .more:active {
	display: inline-block !important;
	width: auto !important;

	margin: 0 !important;
	padding: 12px 19px 11px !important;

	border-radius: 999px !important;

	color: #fff !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: normal !important;
	letter-spacing: 1px !important;

	text-align: center !important;
	text-decoration: none !important;
	text-transform: uppercase !important;

	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	text-shadow: none !important;

	opacity: 1 !important;
}

/* Верхняя кнопка: белая outline на зелёном фоне. */
.royal-about-real-text-top .royal-about-real-link .more,
.royal-about-real-text-top .royal-about-real-link .more:visited,
.royal-about-real-text-top .royal-about-real-link .more:hover,
.royal-about-real-text-top .royal-about-real-link .more:focus,
.royal-about-real-text-top .royal-about-real-link .more:active {
	background: transparent !important;
	border: 1px solid rgba(255,255,255,.85) !important;
	color: #fff !important;
}

.royal-about-real-text-top .royal-about-real-link .more:hover {
	background: rgba(255,255,255,.12) !important;
	border-color: #fff !important;
}

/* Нижняя кнопка: штатный зелёный .more. */
.royal-about-real-text-bottom .royal-about-real-link .more,
.royal-about-real-text-bottom .royal-about-real-link .more:visited,
.royal-about-real-text-bottom .royal-about-real-link .more:hover,
.royal-about-real-text-bottom .royal-about-real-link .more:focus,
.royal-about-real-text-bottom .royal-about-real-link .more:active {
	background: #82B541 !important;
	border: 2px solid #82B541 !important;
	color: #fff !important;
}

/* ---------------------------------------------------------
   Анимация сборки фото кубиками
   --------------------------------------------------------- */

.royal-about-cubes {
	position: absolute !important;
	z-index: 7 !important;
	inset: 0 !important;

	overflow: hidden !important;
	pointer-events: none !important;

	background: #f4f4f4 !important;

	opacity: 1 !important;
	transition: none !important;
}

.royal-about-cube {
	position: absolute !important;
	display: block !important;

	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;

	background-repeat: no-repeat !important;

	opacity: 0;

	transform: scale(.18) translateZ(0);
	transform-origin: center center;

	filter: none !important;
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	text-shadow: none !important;

	will-change: transform, opacity;

	transition-property: transform, opacity;
	transition-duration: .58s, .38s;
	transition-timing-function: cubic-bezier(.18,.76,.24,1), ease;
	transition-delay: var(--royal-cube-delay), var(--royal-cube-delay);
}

.royal-about-cubes.is-playing .royal-about-cube {
	opacity: 1;
	transform: scale(1) translateZ(0);
}

/*
 * Никакого финального fade/"всплеска":
 * даже если JS добавляет is-complete, собранная мозаика остаётся 1:1.
 */
.royal-about-cubes.is-complete {
	opacity: 1 !important;
	transition: none !important;
}

/* ---------------------------------------------------------
   Tablet
   --------------------------------------------------------- */

@media (max-width: 1200px) {

	.royal-about-real {
		--royal-container: calc(100vw - 30px);
		--royal-half: calc((100vw - 30px) / 2);

		width: calc(50vw + var(--royal-half)) !important;
	}

	.royal-about-real .royal-about-real-text {
		padding: 34px !important;
		font-size: 15px !important;
		line-height: 1.62 !important;
	}

	.royal-about-real-title {
		top: 34px !important;
		right: 34px !important;
	}

}

/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media (max-width: 760px) {

	.royal-about-real {
		display: block !important;

		width: 100vw !important;
		max-width: none !important;

		margin-left: calc(50% - 50vw) !important;
		margin-right: 0 !important;
	}

	.royal-about-real-left {
		width: 100% !important;
		height: 70vw !important;
		min-height: 390px !important;
	}

	.royal-about-real-right {
		width: 100% !important;
		max-width: none !important;
	}

	.royal-about-real-title {
		top: 25px !important;
		right: 20px !important;
	}

	.royal-about-real-title h2 {
		font-size: 40px !important;
	}

	.royal-about-real .royal-about-real-text {
		padding: 32px 20px !important;
		font-size: 16px !important;
		line-height: 1.7 !important;
	}

	.royal-about-real-inner {
		grid-template-columns: 42px minmax(0, 1fr) !important;
		column-gap: 26px !important;
	}

	.royal-about-real-icon,
	.royal-about-real-icon {
		width: 42px !important;
		height: 42px !important;

		font-size: 42px !important;
		line-height: 42px !important;
	}

}

@media (prefers-reduced-motion: reduce) {

	.royal-about-cubes {
		display: none !important;
	}

}


/* WPBAKERY GHOST P FIX START */

/*
 * wpautop создаёт пустые <p> непосредственно
 * внутри row и column wrapper.
 *
 * Они получали глобальный margin-top:24px
 * и физически раздвигали сетку.
 */

.royal-about-real > p,
.royal-about-real-left > .wpb_wrapper > p,
.royal-about-real-right > .wpb_wrapper > p {
	display: none !important;

	width: 0 !important;
	height: 0 !important;
	min-width: 0 !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	border: 0 !important;

	line-height: 0 !important;
	font-size: 0 !important;
}


/*
 * Обе реальные колонки строго в одной строке.
 */

.royal-about-real-left {
	grid-column: 1 !important;
	grid-row: 1 !important;

	align-self: stretch !important;
}

.royal-about-real-right {
	grid-column: 2 !important;
	grid-row: 1 !important;

	align-self: stretch !important;
}


/*
 * Правая колонка определяет реальную высоту строки.
 */

.royal-about-real-right > .wpb_wrapper {
	display: flex !important;
	flex-direction: column !important;

	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}


/*
 * Фото занимает ровно ту же высоту.
 */

.royal-about-real-left,
.royal-about-real-left > .wpb_wrapper {
	height: 100% !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}


/*
 * Никаких внешних отступов у двух Text Block.
 */

.royal-about-real-right
> .wpb_wrapper
> .royal-about-real-text {
	margin: 0 !important;
}


/* WPBAKERY GHOST P FIX END */


/* ROYAL ABOUT — FINAL CLEAN END */

/* ROYAL OBJECTS NATIVE BUTTON START */
.royal-objects .more.simple.small {
	display: inline-block !important;
	width: auto !important;
	margin-top: 20px !important;
}
/* ROYAL OBJECTS NATIVE BUTTON END */
