/*
 * Theme Name: Krany
 * Description: Krany is fully responsive, clean and minimal WordPress theme. It has various options in WordPress Customizer to change look of the theme - primary design color, background and header, page layout (left or right sidebar, full or centered content). Clean valid code, semantic markup, markup by Schema.org, full adaptation to mobile devices. Krany is ready to use with child themes and gives for developers simple design change with custom hooks and action. Translation Ready (English, Russian, Ukrainian, French, German, Polish, Turkish). Fully compatible with WPML, WooCommerce, bbPress.
 * Theme URI: http://setbenson.com/
 * Tested up to: 9.5
 * Requires PHP: 7.0
 * Author: SetBenson
 * Author URI: http://setbenson.com/
 * Version: 999.0.0
 * License: GNU General Public License v2 or later
 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
 * Tags: two-columns, one-column, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-images, sticky-post, threaded-comments, translation-ready, microformats
 * Text Domain: Krany
 */
 
 /* reset & 12 columns
 * ============================================================================ */
 *, :after, :before{
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    padding: 0;
    margin: 0;
    font-size: 100%;
    vertical-align: baseline;
    border: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section {
    display: block;
	width:100%;
}

#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:var(--main-color);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}
.preloader-logo{
	position:absolute;
	left:50%;
	top:50%;
	margin-top:-33px;
	margin-left:-95px;
    width:190px;
    height: 67px;
	text-align:center;
	overflow:hidden;
	display:flex;
	justify-content:center;
	animation: fadeScale 3s ease-in-out;
}

.preloader-logo img{
	width:0px;
	height:67px;
	max-width:190px;
	object-fit:cover;
}

@keyframes fadeScale {
    from {
        opacity: .75;
        transform: scale(1);
    }
    to {
        opacity: 1;
        transform: scale(5);
    }
}

a:focus {
    outline: 0;
}
blockquote,
q {
    quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
img,
object,
embed,
video {
    max-width: 100%;
}
object,
embed,
video {
    width: 100%;
}
img {
    height: auto;
    vertical-align: middle;
    border: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    -ms-interpolation-mode: bicubic;
}
svg:not(:root) {
    overflow: hidden;
}
.clearfix:before,
.clearfix:after {
    display: table;
    line-height: 0;
    content: "";
}
.clearfix:after {
    clear: both;
}
.table-responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}
.table-responsive  table {
    width: 100%;
    max-width: 100%;
    margin-bottom: 1rem;
    background-color: transparent;
}
.row {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-right: -16px;
		margin-left: -16px;
}

.row-20{
	margin-left:-20px;
	margin-right:-20px;
}

.row  [class*="col-"] {
        position: relative;
		width: 100%;
		min-height: 1px;
		padding-right: 16px;
		padding-left: 16px;
    }
  .row-20  [class^="col"] { 
  padding-left:20px;
  padding-right:20px;
  }
    .row .col-1 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
}
    .row .col-2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
}
    .row .col-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
}
    .row .col-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}
    .row .col-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
}
    .row .col-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}
    .row .col-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
}
    .row .col-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
}
    .row .col-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
}
    .row .col-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
}
    .row .col-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
}
    .row .col-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}

a.td-none{
	text-decoration:none;
}

.order-2{
	order:2;
}

.fl {
    float: left;
}
.fr {
    float: right;
}
.b {
    font-weight: bold;
}
.i {
    font-style: italic;
}
.tl {
    text-align: left;
}
.tc {
    text-align: center;
}
.tr {
    text-align: right;
}
.px-0{
	padding-left:0;
	padding-right:0;
}
.py-0{
	padding-top:0 !important;
	padding-bottom:0 !important;
}
.pb-0{
	padding-bottom:0 !important;
}
.pt-0{
	padding-top:0 !important;
}
.pn {
    padding: 0 !important;
}
.mn {
    margin: 0 !important;
}
.mb-0 {
    margin-bottom: 0 !important;
}
.hide {
    display: none;
}
.round-24{
	border-radius:24px;
}
.color-white{
	color:#fff !important;
}
.color-white-80{
	color:rgba(255,255,255,.8) !important;
}
.relative{
	position:relative;
}
.z-index-1{
	z-index:1;
}
.z-index-2{
	z-index:2;
}
.z-index-3{
	z-index:3;
}
.text-uppercase{
	text-transform:uppercase;
}
.ic {
    width: 20px;
    height: 20px;
    display: block;
    margin: 0;
    background-color: var(--main-color);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: auto;
    mask-size: auto;
    -webkit-mask-position: center;
    mask-position: center;
	transition: .3s;
}
.ic-facebook {
    -webkit-mask-image: url(img/ic-facebook.svg);
    mask-image: url(img/ic-facebook.svg);
}
.ic-instagram {
    -webkit-mask-image: url(img/ic-instagram.svg);
    mask-image: url(img/ic-instagram.svg);
}

[data-animation="1"]:not(.animated){visibility:hidden}
/* ============================================================================ */

/* ============================================================================
 *		LAYOUT
 * ============================================================================ */
 html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-size: 20px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    height: 100%;
}
body {
   margin: 0;
   padding:0;
    font-family: 'GillSans', sans-serif;
    font-weight: normal;
    overflow-x: hidden;
    font-size: 18px;
	font-weight:400;
    line-height: 1.25;
    color: #fff;
    background-color: #1A1A1A;
	    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	padding-top:73px;
}

#main {
    padding:0;
    margin: 0 auto;
    position: relative;
}
#content {
    width: 100%;
    float: none;
}
.wrapper {
    margin: 0 auto;
   max-width:1199px;
	padding-left:15px;
	padding-right:15px;
}

  
    #sidebar {
        width: 100%;
        display: block;
    }
 #sidebar ul{
	 margin:0;
	 padding:0;
	 list-style-type:none;
 } 

/* ============================================================================ */

/* ============================================================================
 *		inline HTML TAGS
 * ============================================================================ */

a {
    color:inherit;
}
a:hover {
    color: var(--accent-color);

}

.link{
	text-decoration:none;
}

.link:hover{
	text-decoration:underline;
}

p {
    padding: 0 0 32px 0;
}
p:last-child {
    padding-bottom: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.wtitle,
.title,
.btitle {
	line-height:normal;
    margin: 0;
    margin: 0 0 32px;
    font-weight: normal;
	font-family: 'GillSans', sans-serif;
	color:var(--accent-color);
}
.btitle.with-link-icon{
	padding-right:85px;
}
h1,.h1,.btitle {
    font-size: 24px;
	text-transform:uppercase;
	text-align:center;
}
h2,.h2 {
    font-size: 22px;
	font-weight:600;
}
h3,.h3 {
    font-size: 20px;
	font-weight:600;
}
h4,.h4 {
    font-size: 18px;
	font-weight:600;
}
h5,
h6 {
    font-size: 16px;
	font-weight:600;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    text-decoration: none;
}
.color-accent{
	color:var(--accent-color);
}
.font-medium{
	font-weight:500;
}


blockquote,
q {
    position: relative;
    padding: 30px 30px 30px 80px;
    margin: 10px 0 20px 30px;
    color: #444;
    font: normal 1em/1.2 "PT Serif", TimesNewRoman, "Times New Roman", Times, Baskerville, Georgia, serif;
    background: #efefef;
    border-left: 3px solid var(--accent-color);
    border-radius: 3px;
    display: block;
}
blockquote:after {
    content: "”";
    position: absolute;
    top: 10px;
    left: 20px;
    font-size: 4em;
    line-height: 1;
}

table th {
    background: #ddd;
    border-right: 1px solid #fff;
    padding: 10px 20px;
}
table tr th:last-child {
    border-right: 1px solid #ddd;
}
table td {
    padding: 5px 20px;
    border: 1px solid #ddd;
}

pre {
    background: #f5f5f5;
    border: 1px solid #ddd;
    padding: 10px;
    text-shadow: 1px 1px rgba(255, 255, 255, 0.4);
    font-size: 12px;
    line-height: 1.25;
    margin: 0 0 1em 0;
    overflow: auto;
}
sup,
sub {
    font-size: 75%;
    height: 0;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup {
    bottom: 1ex;
}
sub {
    top: 0.5ex;
}
small {
    font-size: 75%;
}
big {
    font-size: 125%;
}

.fs-14{
	font-size:14px;
}

/* ============================================================================
 *		FORM HTML TAG
 * ============================================================================ */
 ::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #A5B7C6;
   font: 400 16px/1.25 'GillSans', sans-serif;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #A5B7C6;
   font: 400 16px/1.25 'GillSans', sans-serif;
}
:-ms-input-placeholder { /* IE 10+ */
  color:#A5B7C6;
   font: 400 16px/1.25 'GillSans', sans-serif;
}
:-moz-placeholder { /* Firefox 18- */
  color: #A5B7C6;
   font: 400 16px/1.25 'GillSans', sans-serif;
}
input,
textarea,
select,
button {
    padding: 8px 24px;
    border-color: transparent;
    -webkit-border-radius: 24px;
    border-radius: 24px;
    font: 500 16px/1.25 'GillSans', sans-serif;
	color:var(--main-color);
}
textarea {
    min-height: 90px;
    max-width: 100%;
    box-sizing: border-box;
}
textarea,
select,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="time"],
input[type="month"],
input[type="week"],
input[type="number"],
input[type="search"] {
    border-width: 1px;
    border-style: solid;
    min-height: 42px;
	-webkit-box-shadow:none;
	box-shadow:none;
	display: block;
	width: 100%;
}
input[type="search"] {
    height: 48px;
}
input[type="color"] {
    padding: 0;
    border: 0;
    background: #fff;
}
input:focus,
textarea:focus,
select:focus {
    outline: none;
    border-color: var(--accent-color);
   -webkit-box-shadow:0px 1px 2px rgba(16,24,40,0.05);
	box-shadow:0 1px 2px rgba(16,24,40,0.05);
}


input[type="submit"],
input[type="button"],
button,
.submit,
.button {
	display:inline-block;
    padding:9px 32px;
    min-height: 48px;
    border: 1px solid var(--accent-color);
    background-color: var(--accent-color);
    color: #fff;
    cursor: pointer;
	border-radius:24px;
	font-weight:600;
	text-decoration:none;
	transition:.3s;
	text-align:center;
	font: 400 16px/normal 'GillSans', sans-serif;
}
input[type="submit"]:hover,
input[type="button"]:hover,
button:hover,
.submit:hover,
.button:hover,
.li-button a:hover {
    background-color:#000;
	color:#fff;
	border-color:#000;
}
.button-white{
	border:2px solid #fff;
	background:none;
	color:#fff;
}

.button-white:hover,
.button-white.button-active,
.button-outline:hover,
.button-outline.button-active{
	color:#fff;
	background:var(--accent-color);
	border-color:var(--accent-color);
}
.button-block{
	width:100%;
}

.button-outline{
	border-color:#000;
	color:#000;
	background:transparent;
}

.button-grey{
	background:#EAEAEF;
	color:#000;
	border-color:#EAEAEF;
}

/* ============================================================================ */

/* ============================================================================
 *		HEADER
 * ============================================================================ */
 #header {
    padding:0;
	position: fixed;
    z-index: 9;
	left:0;
	width:100%;
	transition: .3s;
	top:0px;
	background:var(--accent-color);
}
body.admin-bar #header{
	top:32px;
}
.header-wrap{
	padding:15px 0;
	height:73px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	position:relative;
	z-index:9;
	transition:.3s;
}
#header .logo{
	margin-right:25px;
}
#header .logo img{
   height:43px;
}
 #header.clearHeader{
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
 }

body.admin-bar #header.clearHeader{
	top:32px;
}


/* mobile navigation button */
#mobile-menu {
    padding: 10px;
    text-decoration: none;
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    font-weight: 500;
    cursor: pointer;
    background: none;
    z-index: 999;
    position: relative;
    display: none;
	width:40px;
	height:40px;
	border-radius:0px;
	border:0;
	box-shadow:none;
	margin-left:10px;
}

#mobile-menu span{
	display:block;
	position:absolute;
	top:50%;
	margin-top:-1px;
	left:10px;
	width:20px;
	height:2px;
	background:var(--main-color);
	transition:.3s;
}

#mobile-menu span:before,
#mobile-menu span:after{
	content:"";
	display:block;
	width:100%;
	height:2px;
	position:absolute;
	background:var(--main-color);
	left:0px;
	transition:.3s;
}

#mobile-menu span:before{
	top:-6px;
}
#mobile-menu span:after{
	bottom:-6px;
}

#mobile-menu.is-active span{
	background-color:transparent;
}

#mobile-menu.is-active span:before{
	transform:rotate(-45deg);
	top:0px;
}
#mobile-menu.is-active span:after{
	transform:rotate(45deg);
	bottom:0px;
}

/* header navigation */
.topnav {
	display:flex;
	align-items:center;
	margin-right:auto;
}
.top-menu {
   margin:0 -16px;
    position: static;
  text-align: center;
}
.top-menu li {
    padding: 0;
    display: block;
	padding: 10px 25px;
	float:left;
	display: inline-block;
    position: relative;
}
.top-menu li a{
    display: block;
    color: var(--main-color);
    font-size:18px;
    text-decoration: none;
    position: relative;
    cursor: pointer;
	  -webkit-transition: 0.3s;
        transition:0.3s;
		text-transform:uppercase;
}

/* ============================================================================
 *		CONTENT
 * ============================================================================ */
.content-section{
	padding:60px 0;
	position:relative;
	margin:0;
}

.home-intro{
	    min-height: 735px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
	text-align:center;
}

.bg-intro{
	opacity:.24;
	position:absolute;
	z-index:-1;
	height:100%;
	width:auto;
	left:50%;
	margin-left:-16px;
	top:0;
	transform:translateX(-50%);
}
.block-title{
	display:inline-block;
	text-align:left;
}
.block-title .btitle{
	text-align:left;
	font-weight:700;
}
.block-title img{
	max-width:380px;
	margin-bottom:16px;
}
.section-block-title{
	padding:0px;
	margin:60px 0 0;
	display:flex;
	flex-wrap:wrap;
}
.section-block-title .block-bg{
	    display: block;
    flex: 1;
    background-repeat: no-repeat;
    background-position: center 31%;
    background-size: cover;
    opacity: .24;
    background-attachment: fixed;
    height: 70px;
}
.section-block-title .block-title{
	background:#1A1A1A;
}
.section-block-title .block-title img{
	max-width:195px;
	margin-bottom:8px;
}
.section-block-title .block-title .btitle{
	margin:0;
	font-size:12px;
}

.home-intro .inner{
	max-width:600px;
}
.home-intro .inner .btitle{
	font-weight:700;
	margin-bottom:16px;
}
.light-bg:before{
	content:"";
	display:block;
	position:absolute;
	top:0px;
	height:100%;
	width:100vw;
	margin-left:50%;
	transform:translateX(-50%);
	background-color:rgba(255,255,255,0.08);
}
.adv-list{
	margin:0 -32px -32px;
	justify-content: center;
}

.adv-list > .col-4,
.adv-list > .col-3{
	padding-left:32px;
	padding-right:32px;
	margin-bottom:32px;
}

.adv-list .item{
	text-align:center;
}

.adv-list .item .icon{
	width:150px;
	height:150px;
	border-radius:50%;
	background-color:var(--accent-color);
	padding:16px;
	margin:0 auto 32px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
}

.adv-list .item .icon img{
	max-height:100%;
	width:auto;
}

body.home  .adv-list .item-1 .icon{
	padding-right:0px;
	justify-content:flex-end;
}
body.home .adv-list .item-1 .icon img{
	margin-right:-3px;
}

body.home .adv-list .item-3 .icon img{
	margin-top:-10px;
}

.calc-page .adv-list .item .icon{
	padding:32px;
}

.calc-page .adv-section:before{
	display:none;
}

.adv-list .item .title{
	font-size:18px;
	margin-bottom:16px;
	text-transform:uppercase;
	font-weight:700;
}
.gallery-section .btitle a:not(:hover),
.adv-list .item .title a:not(:hover){
	text-decoration:none;
}
/* Carousel */
.carousel { position: relative;padding-left:72px;padding-right:72px;  }
.carousel-list {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 0;
  list-style: none;
  height: 300px;
  max-width: 100%; 
  margin: 0 auto;
}
.carousel-item {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  transition: left 0.5s, transform 0.5s, opacity 0.5s, filter 0.5s;
  transform:scale(0.7);
  width: 350px;
  height:100%;
  background: none;
  border-radius: 10px;
  z-index: 1;
  filter:  brightness(0.3);
}

.carousel-item img{
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius: 32px;
	cursor: zoom-in;
}
.carousel-item.visible { opacity: 1; pointer-events: auto; }
.carousel-item.center  { left: 50%;  transform: translateX(-50%) scale(1);  z-index: 5; filter: brightness(1);}
.carousel-item.left1   { left: 25%;  transform: translateX(-50%) scale(0.85);  z-index: 4;filter:  brightness(0.7); }
.carousel-item.left2   { left: 10%;  transform: translateX(-50%) scale(0.7);  z-index: 3; }
.carousel-item.right1  { left: 75%;  transform: translateX(-50%) scale(0.85);  z-index: 4;filter:  brightness(0.7); }
.carousel-item.right2  { left: 90%;  transform: translateX(-50%) scale(0.7);  z-index: 3; }

.carousel-arrow {
 
  border: none;
  font-size: 2rem;
  width: 45px;
  cursor: pointer;
  position: absolute;
  top: 0;
  z-index: 6;
  height:100%;
}
.carousel-prev { left: 0; }
.carousel-next { right: 0; }

		.carousel-arrow:after{
			content:"";
			position:absolute;
			top:50%;
			margin-top:-15px;
			display:inline-block;
			width: 0px;
			height: 0px;
		}
		
		.carousel-next:after{
			right:0;
			border-top: 30px solid transparent;
			border-bottom: 30px solid transparent;
			border-left: 30px solid var(--accent-color);
		}
		.carousel-next:hover:after{
			border-left-color:var(--light-color);
		}
		.carousel-prev:after{
			left:0;
			border-top: 30px solid transparent;
			border-bottom: 30px solid transparent;
			border-right:30px solid var(--accent-color);
		}
		.carousel-prev:hover:after{
			border-right-color:var(--light-color);
		}
		


.contact-section > .row{
	align-items:center;
}
.contact-section .wpcf7{
	width:440px;
	padding:42px;
	background:rgba(255,255,255,0.15);
}

.contact-section .wpcf7 .btitle{
	text-align:left;
	color:#fff;
	line-height:1;
}
.contact-section .wpcf7 .btitle span{
	font-size:80%;
}


.contact-section .wpcf7 .dflex{
	display:flex;
	justify-content:flex-end;
	margin-top:32px;
}

.contact-list{
	width:80%;
	margin:0 auto;
}
.contact-list .item{
	text-decoration:none;
	display:flex;
	text-align:left;
	
}
.contact-list .item + .item{
	margin-top:16px;
}

.contact-list .icon{
	width:45px;
	height:45px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	margin-right:16px;
	border-radius:50%;
	background:var(--accent-color);
	transition:.3s;
}

.contact-list .item:hover .icon{
	background:var(--light-color);
}

.contact-list .icon img{
	width:24px;
	height:24px;
}

.contact-list .title{
	margin:0;
}

.page-text{
	max-width:750px;
	margin:0 auto;
	text-align:center;
}

.gallery-grid .btitle{
	text-align:left;
	text-uppercase:none;
}
.gallery-grid .row{
	margin-left:-8px;
	margin-right:-8px;
	margin-bottom:-16px;
}
.gallery-grid .row > .col-4{
	padding-left:8px;
	padding-right:8px;
	padding-bottom:16px;
}

.gallery-grid .row > .col-4 a{
	display:block;
	height:0px;
	width:100%;
	position:relative;
	border-radius:32px;
	padding-top:100%;
	overflow:hidden;
	transition:.3s;
}
.gallery-grid .row > .col-4 a img{
	cursor:zoom-in;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:cover;
}

.gallery-grid .row > .col-4 a:hover{
	filter: brightness(0.7);
}

.largeimage {
    margin: 0 0 1em;
    max-width: 100%;
    height: auto;
}
.medium,
.thumbnail {
    float: left;
    margin: 5px 1.5em 0.5em 0;
}
.medium {
    max-width: 50%;
    height: auto;
}
.thumbnail {
    max-width: 30%;
    height: auto;
}

.alignleft img {
    display: block;
    margin: 0 auto 0 0;
}
.alignright img {
    display: block;
    margin: 0 0 0 auto;
}
img.alignleft,
.alignleft {
    float: left;
    margin-right: 20px;
    margin-left: 0;
}
img.alignright,
.alignright {
    float: right;
    margin-left: 20px;
    margin-right: 0;
}
.aligncenter,
div.aligncenter,
img.centered {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption,
.attachment img {
    text-align: center;
    max-width: 100%;
}
.wp-caption img {
    margin-top: 0;
    margin-bottom: 0;
}
.wp-caption-text,
.wp-caption p.wp-caption-text {
    font-size: 12px;
    color: #222;
    margin: 0 0 15px;
}

/* __________ galleries __________*/
.gallery {
    border: 2px solid #eee;
    padding: 15px 20px;
    margin: 20px 0 30px;
}
.gallery:after {
    content: "";
    display: table;
    clear: both;
}
.gallery-item img {
    display: block;
    margin: 0 auto;
}

.gallery-columns-1 .gallery-item {
    width: 100%;
    padding: 10px 0;
}

.gallery-columns-2 .gallery-item {
    width: 48%;
    padding: 10px 1%;
    float: left;
}
.gallery-columns-2 .gallery-item:nth-child(2n + 1) {
    clear: both;
}

.gallery-columns-3 .gallery-item {
    width: 31.33333333333333%;
    padding: 10px 1%;
    float: left;
}
.gallery-columns-3 .gallery-item:nth-child(3n + 1) {
    clear: both;
}

.gallery-columns-4 .gallery-item {
    width: 23%;
    padding: 10px 1%;
    float: left;
}
.gallery-columns-4 .gallery-item:nth-child(4n + 1) {
    clear: both;
}

.gallery-columns-5 .gallery-item {
    width: 18%;
    padding: 10px 1%;
    float: left;
}
.gallery-columns-5 .gallery-item:nth-child(5n + 1) {
    clear: both;
}

.gallery-columns-6 .gallery-item {
    width: 14.66666666666667%;
    padding: 10px 1%;
    float: left;
}
.gallery-columns-6 .gallery-item:nth-child(6n + 1) {
    clear: both;
}

.gallery-columns-7 .gallery-item {
    width: 12.28571428571429%;
    padding: 10px 1%;
    float: left;
}
.gallery-columns-7 .gallery-item:nth-child(7n + 1) {
    clear: both;
}

.gallery-columns-8 .gallery-item {
    width: 10.5%;
    padding: 10px 1%;
    float: left;
}
.gallery-columns-8 .gallery-item:nth-child(8n + 1) {
    clear: both;
}

.gallery-columns-9 .gallery-item {
    width: 10%;
    padding: 10px 0.5555555555555556%;
    float: left;
}
.gallery-columns-9 .gallery-item:nth-child(9n + 1) {
    clear: both;
}

/* __________ paginate __________ */
.
.pagination{
	display:flex;
	justify-content:space-between;
	margin:-24px 0 32px;
}
.pagination .text-found{
	font:600 24px/1.333 'GillSans', sans-serif;
	padding:0 !important;
}
.nav-links,
.page-numbers {
	 margin:0;
	 padding:0;
	 list-style-type:none;
    line-height: 32px;
	display:flex;
	margin-right:-8px;
	margin-left:auto;
}
.nav-links a,
.page-numbers li a{
    text-decoration: none;
	font:700 16px/32px 'GillSans', sans-serif;
	transition:.3s;
}
.nav-links .page-numbers,
.page-numbers li a,
.page-numbers li span {
    padding: 0 8px;
	min-width:25px;
    margin-right: 8px;
    background:#E2E6EF;
    color: #444;
    -webkit-border-radius: 8px;
    border-radius: 8px;
    -webkit-transition: .3s;
    transition: .3s;
}
.nav-links a:hover,
.page-numbers li a:hover {
    background: var(--accent-color);
    color: #fff;
}
.nav-links .total {
    margin-right: 5px;
}

.fullwidth-img{
	width: 100vw;
    max-width: unset;
    left: 50%;
    position: relative;
    margin-left: -50vw;
}

/* ============================================================================ */

/* ============================================================================
 *		FOOTER
 * ============================================================================ */
 
 #footer {
    width: 100%;
    padding:0px;
    margin: 0;
    background: var(--accent-color);
	color:#fff;
font-size:16px;
}

#footer a {
    color: #fff;
    transition: opacity 0.3s;
	text-decoration:none;
}
#footer a:hover {
    color:#fff;
    text-decoration: underline;
}


.footer-wrap {
	display:flex;
	justify-content:space-between;
	align-items:center;
	height:100px;
	padding:32px 0px;
}
.footer-wrap ul.footmenu{
    margin:0 48px 0 auto;
	list-style-type:none;
    padding:0;
	line-height:1;
	
}

.footer-wrap ul.footmenu li{
	float:left;
	padding:0 24px;
}

.footer-wrap ul.footmenu li + li{
	border-left:1px solid #fff;
}

#footer .copyrights {
	margin-right:auto;
}

.social-links{
	margin:0 -8px;
	display:inline-block;
	list-style-type:none;
	padding:0;
	display:inline-flex;
}
.social-links li{
	padding:0 8px;
	float:left;
}
.social-links .ic,
#footer .social-links a:hover .ic{
	background-color:var(--main-color);
}

.social-links a:hover .ic,
#footer .social-links .ic{
	background-color:var(--light-color);
}

#toTop {
    position: fixed;
    z-index: 1000;
    bottom: 75px;
    right: 20px;
    margin: 0;
    width: 56px;
    height: 56px;
    display: none;
    cursor: pointer;
    background: var(--accent-color);
    border-radius: 28px;
	    box-shadow: inset 0px 0px 0px 1px var(--main-color);
    transform: rotate(-45deg);
    font-size: 24px;
    text-align: center;
}
#toTop:before{
	content: "";
	background-color: #fff;
    display: block;
    margin: 0;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    -webkit-mask-position: center;
    mask-position: center;
    transition: .3s;
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    width: 24px;
    height: 24px;
   -webkit-mask-image: url(img/ic-arrow-top.svg);
    mask-image: url(img/ic-arrow-top.svg);
	
}
body.is-non-mobile #toTop:hover {
   opacity:.75;
}

.breadcrumbs ul{
	list-style-type:none;
	margin:0 0 16px;
	padding:0;
	display:flex;
	flex-wrap:wrap;
	font-size:16px;
	font-weight:500;
	color:#aaaaaa;
	font-family: 'GillSans', sans-serif;
}
.breadcrumbs ul li{
	padding:8px;
	display:inline-flex;
}
.breadcrumbs ul li + li:before{
	content:"/";
	display:inline-block;
	margin-right:16px;
}
.breadcrumbs ul li a{
	text-decoration:none;
}
.breadcrumbs ul li a:hover{
	text-decoration:underline;
}

.breadcrumbs ul li.is_archive,
.breadcrumbs ul li.is_archive a{
	color: var(--accent-color);
}
/* CONTACT PAGE */

.form-group{
	margin-bottom:16px;
}
.wpcf7-form-control-wrap{
	display:block;
}
.wpcf7 label{
	display:block;
	color:var(--main-color);
	font-size:16px;
	font-weight:700;
	margin-bottom:8px;
}
.wpcf7 textarea{
	height:114px;
}
.use-floating-validation-tip .wpcf7-not-valid-tip{
	position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    font-size: 12px;
    padding: 3px 14px;
    margin-top: -18px;
    color: #fff;
    background: #dc3232;
    border-radius: 0 0 24px 24px;
}
.wpcf7-checkbox,
.wpcf7-acceptance{
	margin:0 0 20px;
	display:block;
}
.wpcf7-checkbox:after{
	content:"";
	display:table;
	width:100%;
}
.wpcf7-list-item{
	display:block;
	margin:0;
}
.wpcf7-checkbox .wpcf7-list-item{
	display:block;
	margin:0;
	padding:0;
}

.wpcf7-checkbox label,
.wpcf7-acceptance label{
	margin:0;
	font-size:16px;
	font-weight:normal;
	display:flex;
	align-items:center;
}

.wpcf7-acceptance label{
	font-weight:400;
	color:var(--main-color);
}
.wpcf7-acceptance label a{
	color:inherit;
}
.wpcf7-acceptance label a:hover{
	color:var(--main-color);
}


.wpcf7-checkbox input[type="checkbox"],
.wpcf7-acceptance input[type="checkbox"]{
	visibility:hidden;
	margin:0;
	width:0;
	height:0;
}
.wpcf7-checkbox input[type="checkbox"] + span,
.wpcf7-acceptance input[type="checkbox"] + span{
	padding-left:32px;
	display:block;
	position:relative;
}

.wpcf7-checkbox input[type="checkbox"] + span:before,
.wpcf7-acceptance input[type="checkbox"] + span:before{
	content:"";
	display:inline-block;
	position:absolute;
	left:0;
	top:3px;
	width:14px;
	height:14px;
	border:2px solid #000;
	border-radius:3px;
}

.wpcf7-checkbox input[type="checkbox"]:checked + span:before,
.wpcf7-acceptance input[type="checkbox"]:checked + span:before{
	background:#000;
}


.wpcf7-spinner{
	display:none !important;
}
.wpcf7 form.sent .wpcf7-response-output{
	margin:16px 0 0;
	border-radius: 10px;
}
.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7-response-output{
	display:none !important;
	
}

.contact-blocks .item + .item{
	margin-top:32px;
}

.contact-blocks .item .item-title{
	font:600 32px/normal 'GillSans', sans-serif;
	margin-bottom:16px;
}

.gmap{
	border-radius:32px;
	overflow:hidden;
	width:100%;
	height:0;
	padding-top:100%;
	position:relative;
}
.gmap iframe{
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
}

#calculator{
	max-width:600px;
	margin:0 auto;
	background:rgba(255,255,255,0.15);
	padding:48px 60px;
}
#calculator > .form-group{
	align-items:center;
}

#calculator label{
	display:block;
}

#calculator input{
	text-align:center;
}
#calculator input[disabled]{
	opacity:1;
	background-color: #fff;
	color:var(--accent-color);
	font-weight:bold;
}

.white-popup {
  position: relative;
  background: #000;
  padding: 20px;
  width: auto;
  max-width: 500px;
  margin: 20px auto;
}

#order-popup .button:hover{
	background-color:var(--accent-color)
}

#modal-success{
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	z-index:+999;
	position:fixed;
	left:0;
	top:0;
	background:rgba(0,0,0,0.75);
	cursor:pointer;
	display:none;
}

#modal-success .inner{
	padding: 40px 40px 24px;
    width: 540px;
    border-radius: 24px;
    text-align: center;
    font-size: 20px;
    color: var(--main-color);
    background: #fff;
    position: fixed;
	left:50%;
	top:50%;
	transform:translate(-50%, -50%);
}

#modal-success .close{
	border-radius: 100%;
    position: absolute;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    width: 36px;
    height: 36px;
    min-height: 36px;
    line-height: 36px;
    padding: 0;
    font-size: 28px;
    background: #fff;
    color: #fff;
    top: 5px;
    right: 5px;
    text-shadow: 0px 1px 1px #fff;
    font-weight: 400;
}
#modal-success .close:before,
#modal-success .close:after{
	content:"";
	position:absolute;
	display:block;
	width:40%;
	height:2px;
	background:var(--main-color);
	border-radius:2px;
	top:50%;
	left:30%;
	margin-top:-1px;
	
}
#modal-success .close:before{
	transform:rotate(45deg);
}
#modal-success .close:after{
	transform:rotate(-45deg);
}
@-webkit-keyframes scaleAnimation {
  0% {
    opacity: 0;
    transform: scale(1.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes scaleAnimation {
  0% {
    opacity: 0;
    transform: scale(1.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
#modal-success .successAnimation{
-webkit-animation: 1s ease-out 0s 1 both scaleAnimation;
          animation: 1s ease-out 0s 1 both scaleAnimation;
}
