/*
Theme Name: olgim
Author: support@goodwebstudio.com
Description: Custom Theme for OLGiM
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
*/

@font-face {
    font-family: 'FuturaBookC';
    src: url('./fonts/FuturaBookC.eot');
    src: url('./fonts/FuturaBookC.eot?#iefix') format('embedded-opentype'),
        url('./fonts/FuturaBookC.woff2') format('woff2'),
        url('./fonts/FuturaBookC.woff') format('woff'),
        url('./fonts/FuturaBookC.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'FuturaDemiC';
    src: url('./fonts/FuturaDemiC.eot');
    src: url('./fonts/FuturaDemiC.eot?#iefix') format('embedded-opentype'),
        url('./fonts/FuturaDemiC.woff2') format('woff2'),
        url('./fonts/FuturaDemiC.woff') format('woff'),
        url('./fonts/FuturaDemiC.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

html, body{
    margin:0;
    padding:0;
    width:100%;
    height:100%;
}

body{
	color: #333;
	background-color: #f0f2f5;
	font-size: 18px;
	line-height: 1.375em;
	font-family: 'FuturaBookC';
}

@media screen and (min-width: 576px) and (max-width: 1599px){
	.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl{
		max-width: 94%;
	}
}

@media screen and (min-width: 1600px){
	.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl{
		max-width: 1500px;
	}

	body{
		font-size: 20px;
	}
}

object{
	pointer-events: none;
}

.page-template-page-service hr{
	background: #004824;
	opacity: 1;
	margin: 2em 0;
}

strong{
	font-family: 'FuturaDemiC';
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6{
	margin: 1.5em 0 1em;
}

h1, .h1{
	font-size: 2rem;
	text-transform: uppercase;
}

h2, .h2{
	font-size: 50px;
	text-transform: uppercase;
}

h2.section-title{
	font-size: 40px;
	text-transform: none;
	font-family: 'FuturaDemiC';
}

h3, .h3{
	font-size: 24px;
}

h4, .h4{
	font-size: 24px;
}

h5, .h5{
	font-size: 21px;
}

h6, .h6{
	font-size: 18px;
}

a, a:link, a:visited, a:active{
	color: #00b7ca;
	text-decoration: underline;
}

a:hover, a:focus{
	color: #00b7ca;
	text-decoration: none;
}

@media screen and (min-width: 992px){
	h1, .h1{
		font-size: 3rem;
	}
}

/* ~~~~~~~~~~~~~~~~ HEADER ~~~~~~~~~~~~~~~~~ */

header{
	padding: 1.5em 0 1em;
	transition: all ease .3s;
	background: #f0f2f5;
	position: absolute;
	z-index: 11;
	width: 100%;
}

body.home header:not(.sticky){
	background: transparent;
}

header.sticky{
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: auto;
	z-index: 2;
	padding: .5em 0;
	box-shadow: 0 1px 6px #8f8f8f;
}

header .logo{
	margin-top: .7em;
}

header.sticky .logo{
	margin-top: .3em;
	margin-bottom: 0;
}

header.sticky object:not(.sticky-logo),
header object.sticky-logo{
	display: none;
}

header.sticky .sticky-logo{
	display: block;
}

header .logo a{
	display: block;
}

header .logo object,
header .logo img{
	height: 35px;
}

.header{
	position: relative;
}

header .social{
	margin: 13px 60px 0 0;
}

h1.entry-title{
	font-size: 43px;
	margin: .625em 0 0;
	font-family: 'FuturaDemiC';
	text-transform: none;
}

body.single h1.entry-title{
	font-size: 50px;
	text-align: left;
}

.entry-content{
	margin-top: 1.5em;
}

.page-inner p{
	margin-bottom: 2.2em;
}

.post-meta{
	font-size: 14px;
	color: #1d3b6c;
}

.thumb{
	margin: 20px 0;
}

.blog-feed{
	margin-top: 40px;
}

.blog-feed .item{
	margin-bottom: 35px;
}

.blog-feed .item a{
	text-decoration: none;
}

.blog-feed .item h3{
    font-size: 18px;
}

.social a{
	display: inline-block;
	position: relative;
	width: 1.1rem;
	height: 1.1rem;
	margin: 0 .5em;
}

.social a:first-child{
	margin-left: 0;
}

.social a::before{
	content: '';
	display: block;
	position: absolute;
	width: 1.1rem;
	height: 1.1rem;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: contain;
}

.social a.facebook::before{
	background-image: url(imgs/icon-facebook-f.svg);
}

.social a.instagram::before{
	background-image: url(imgs/icon-instagram-lined.svg);
}

.social a.telegram::before{
	background-image: url(imgs/icon-telegram-plane.svg);
}

.social a.youtube::before{
	background-image: url(imgs/icon-youtube-sign.svg);
}

.social a.facebook:hover::before,
.social a.facebook:active::before,
.social a.facebook:focus::before{
	background-image: url(imgs/icon-facebook-f_color.svg);
}

.social a.instagram:hover::before,
.social a.instagram:active::before,
.social a.instagram:focus::before{
	background-image: url(imgs/icon-instagram-lined_color.svg);
}

.social a.telegram:hover::before,
.social a.telegram:active::before,
.social a.telegram:focus::before{
	background-image: url(imgs/icon-telegram-plane_color.svg);
}

.social a.youtube:hover::before,
.social a.youtube:active::before,
.social a.youtube:focus::before{
	background-image: url(imgs/icon-youtube-sign_color.svg);
}

#qtranxs_select_qtranslate-2-chooser{
	padding: 0;
    background: transparent;
	font-size: 14px;
	color: #004824;
	margin-bottom: 0;
	border: 0;
	font-family: 'FuturaDemiC';
	outline: none!important;
}

#qtranxs_select_qtranslate-2-chooser option{
	color: #004824;
}

.header-actions{
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 100%;
}

.header-actions .phone{
	font-family: 'FuturaDemiC';
}

.header-actions .phone a{
	color: #fff;
	text-decoration: none;
	font-size: 17px;
}

header.sticky .header-actions .phone a{
	color: #333;
	font-size: 14px;
}

@media screen and (min-width: 992px){
	.header-actions .phone a{
		color: #333;
		text-decoration: none;
		font-size: 14px;
	}
	
	header .social{
		margin: 0;
		height: 19px;
	}

	.entry-content{
		margin-top: 4.5em;
	}

	h1.entry-title{
		font-size: 56px;
	}
}

@media screen and (min-width: 1366px){
	.horizontal-menu{
		margin-left: 5%;
	}
}

/* ~~~ NAV ~~~ */

.navbar{
	padding: 0;
}

.navbar-nav .menu-item{
	padding: .5em 1em;
}

.navbar-nav .menu-item a{
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 23px;
	font-family: 'FuturaDemiC';
}

header.sticky .navbar-nav .menu-item a{
	font-size: 14px;
	color: #333;
}

.navbar-nav .menu-item a:hover,
.navbar-nav .menu-item a:focus,
.navbar-nav .menu-item a:active,
.navbar-nav .menu-item a.active{
	text-decoration: underline;
}

.navbar-subtitle{
	display: block;
    font-size: 12px;
    color: #231f59;
	margin-bottom: 2px;
}

.navbar-toggler{
	border: 0;
    padding: 0;
    text-align: center;
    position: absolute;
    top: -30px;
    right: 20px;
    z-index: 11;
}

.navbar-toggler:focus{
	box-shadow: none;
}

.navbar-toggler-icon{
	background: none!important;
}

.navbar-toggler-icon .icon-bar{
	display: block;
    width: 42px;
    height: 3px;
    background-color: #004724;
    margin: 0 auto 7px;
}

header:not(.sticky) .navbar-toggler-icon .icon-bar{
	background-color: #fff;
}

.navbar-default .navbar-nav > li > a{
	display: block;
	padding: 12px 5px 10px 55px;
    margin-bottom: 13px;
    margin-left: 15px;
	text-decoration: none;
	font-size: 18px;
	color: #fff;
	background-repeat: no-repeat;
}

.navbar-default .navbar-nav > li > a:before{
	content: '';
    width: 40px;
    height: 40px;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}

.navbar-nav > li:hover > ul.sub-menu{
	display: block;
}

.collapsing {
  transition: none !important;
}

#menu-item-41{
	position: relative;
	padding-right: 25px;
}

#menu-item-41::before{
	content: '';
	display: block;
	position: absolute;
	width: 9px;
	height: 5px;
	top: 18px;
	right: 5px;
	background: url(imgs/caret.png) 0 0 no-repeat;
}

#menu-item-41.opened::before{
	transform: scale(1,-1);
}

body.home header:not(.sticky) #menu-item-41::before{
	background: url(imgs/caret-white.png) 0 0 no-repeat;
}

.sub-nav{
	display: none;
	position: fixed;
	top: 63px;
	left: 0;
	width: 100%;
	min-height: 150px;
	background: url(imgs/sub-nav-bg.jpg) no-repeat 0 0;
	z-index: 2;
}

body.home header:not(.sticky) .sub-nav{
	background-image: none;
	background-color: #004824;
	top: 115px;
}

.sub-nav ul{
	column-count: 2;
	padding: 35px 50px 25px;
}

.sub-nav ul li{
	list-style: none;
	margin-bottom: 8px;
}

.sub-nav ul li a{
	color: #fff;
	text-transform: uppercase;
	font-size: 14px;
	font-family: 'FuturaDemiC';
	text-decoration: none;
}

.sub-nav ul li a:hover{
	text-decoration: underline;
}

.modal-header .btn-close,
.close{
	position: absolute;
	width: 33px;
	height: 33px;
	top: 20px;
	right: 20px;
	background: url(imgs/close.png) 50% 50% no-repeat;
	border: 0;
	outline: none;
	box-shadow: none;
	z-index: 9;
}

@media screen and (max-width: 768px){
	#navbarSupportedContent{
		position: fixed;
		right: 0;
		top: 0;
		width: 100%;
		height: auto;
		z-index: 9998;
		text-align: center;
		background: #004724;
		background-size: cover;
		padding-top: 5rem;
		padding-bottom: 3em;
	}

	.navbar-nav .menu-item a {
		color: #fff!important;
		text-decoration: none;
		font-size: 21px!important;
	}

	.sub-nav{
		position: relative;
		width: 100%;
		background-image: none;
		background-color: #004824;
		z-index: 9999;
		top: 5px!important;
	}

	.sub-nav ul{
		column-count: 1;
	}

	.sub-nav ul li {
		margin-bottom: 14px;
	}

	.sub-nav ul li a {
		font-size: 16px;
	}

	#menu-item-41::before{
		background: url(imgs/caret-white.png) 0 0 no-repeat;
		right: 115px;
	}
}

@media screen and (min-width: 1600px){
	#menu-item-41::before{
		top: 22px;
	}
}

@media screen and (min-width: 769px){
	#navbarSupportedContent .close{
		display: none;
	}
}

@media screen and (min-width: 992px){	
	.navbar-nav .menu-item a{
		font-size: 16px;
	}

	header.sticky .navbar-expand-lg,
	header.sticky .navbar-expand-lg .navbar-nav,
	header.sticky .navbar-expand-lg .navbar-collapse{
		width: 100%;
	}
}	

/* ~~~~~~~~~~~~~~~~ END OF HEADER ~~~~~~~~~~~~~~~~~ */


/* ~~~~~~~~~~~~~~~~ CONTENT ~~~~~~~~~~~~~~~~~ */

body:not(.home) #content{
	padding-top: 110px;
}

body:not(.home) .page-inner .container{
	position: relative;
}

body:not(.home) .page-inner h2{
	font-size: 40px;
	font-family: 'FuturaDemiC';
	text-transform: none;
	margin-top: -.7em;
	margin-bottom: 0;
	padding: 1em 0 0;
	background: #f0f2f5;
	position: relative;
	z-index: 1;
}

.page-inner .container .vertical-logo{
	display: none;
}

@media screen and (min-width: 992px){
	.page-inner .container .vertical-logo{
		content: '';
		display: block;
		position: absolute;
		top: 10px;
		left: 50px;
		width: 102px;
		height: 418px;
		background: url(imgs/vertical-logo.png);
	}

	body:not(.home) .page-inner .container::after{
		content: '';
		display: block;
		position: absolute;
		top: 470px;
		left: 100px;
		width: 1px;
		height: calc(100% - 600px);
		background: #d2d2d2;
	}

	body:not(.home) .page-inner h2{
		padding: 1em 0;
	}
}

.section{
	position: relative;
}

.section h2,
.section .h2{
	margin-bottom: 2rem;
}

/* ~~~ NAV TABS ~~~ */

.nav-tabs{
	border: none;
	margin: 0 0.5rem 1rem;
}

.nav-tabs.nav{
	justify-content: space-between;
	position: relative;
}

.nav-tabs .nav-item .nav-link{
	color: #666;
	text-align: left;
	border: none;
	padding: 0;
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active{
	display: inline-block;
	color: #00b7ca;
	border-radius: 0;
}

/* ~~~~~~~ */

.btn, a.btn,
.btn:visited, a.btn:visited{
	display: inline-block;
	text-decoration: none;
	letter-spacing: 1px;
	font-size: 14px;
	border-radius: 0;
	outline: none;
	position: relative;
	box-shadow: none!important;
	background: transparent;
	padding: 12px 25px 10px;
	text-transform: uppercase;
	font-family: 'FuturaDemiC';
}

.btn-primary,
a.btn-primary,
.btn-primary.disabled,
.btn-primary:disabled{
	color: #fff;
	border: 1px solid #fff;
	background: #004824;
}

.btn.disabled,
.btn:disabled{
	opacity: .5;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus,
a.btn-primary:hover,
a.btn-primary:active,
a.btn-primary:focus{
	color: #333;
	border: 1px solid #333;
	background: #fff;
}

.btn-inverted,
a.btn-inverted,
.btn-inverted.disabled,
.btn-inverted:disabled{
	color: #004824;
	border: 1px solid #fff;
	background: #fff;
}

@media screen and (min-width: 992px){
	.nav-tabs{
		margin: 1rem 0;
	}
}

/* ~~~ UTP  ~~~ */

#utp{
	background-color: #004824;
    padding: 115px 0 40px;
	position: relative;
	color: #fff;
	margin-bottom: 4em;
}

#utp h1{
	font-family: 'FuturaDemiC';
	font-size: 45px;
	text-transform: none;
	margin-top: 1em;
	line-height: 1em;
}

#utp .subtitle{
	font-size: 24px;
	line-height: 1.1em;
	margin: 1.5em 0;
	max-width: 390px;
}

.img-has-border{
	position: relative;
	display: inline-block;
}

.img-has-border::after{
	content: '';
	display: block;
	position: absolute;
	top: 6%;
	left: 5%;
	width: 90%;
	height: 88%;
	border: 1px solid #fff;
}

.img-has-border.border-green::after{
	border: 1px solid #004824;
}

@media screen and (min-width: 992px){
	#utp{
		background: linear-gradient(to right, #004824 65%, transparent 65%);
	}

	#utp::after{
		content: '';
		display: block;
		position: absolute;
		top: 24%;
		left: 34%;
		width: 102px;
		height: 418px;
		background: url(imgs/vertical-logo.png);
	}
	
	#utp h1{
		font-size: 72px;
	}

	#utp .utp-slider{
		position: relative;
	}

	#utp .utp-slider::before{
		content: '';
		display: block;
		width: 122px;
		height: 118px;
		position: absolute;
		top: 50%;
		margin-top: -59px;
		left: 47%;
		margin-left: -61px;
		background: url(imgs/logo-part.png);
		z-index: 1;
	}
}

@media screen and (max-width: 576px){
	#utp h1{
		margin: 1em 0 0.5em;
	}
	
	#utp .slick-prev,
	#utp .slick-next{
		bottom: inherit;
		top: 77%;
	}
	
	#utp .slick-prev{
		left: 15px;
	}

	#utp .slick-next{
		right: 15px;
	}

	#utp .img-has-border{
		margin-top: 2em;
	}

	header:not(.sticky) .header .lang-widget a.active, header:not(.sticky) .header .lang-widget a:hover, header:not(.sticky) .header .lang-widget a:focus{
		color: #fff;
	}
}

/* ~~~ SERVICES ~~~ */

#services{
	padding-bottom: 3em;
	position: relative;
}

#services h2.section-title{
	margin-top: 0;
	position: relative;
}

#services h2.section-title::after{
	content: '';
	display: block;
	position: absolute;
	top: 110%;
	left: 6%;
	width: 102px;
	height: 418px;
	background: url(imgs/vertical-logo.png);
	background-size: cover;
}

body:not(.home) .services-list{
	padding: 2em 0 0;
}

.services-list h2{
	margin-bottom: 1em!important;
}

.services-list .item:first-child{
	border-top: 1px solid #333;
}

.services-list .item{
	padding: 5px 0;
	border-bottom: 1px solid #333;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 16px;
	cursor: pointer;
}

.services-list .item-entry{
	max-width: 230px;
	padding-left: 15px;
}

.services-list .item h3{
	font-size: 16px;
	font-family: 'FuturaDemiC';
	text-transform: uppercase;
	color: #333;
	margin-top: 2.2em;
}

.services-list .item p{
	max-height: 0;
    transition: max-height .4s cubic-bezier(.17,.67,.83,.67);
    overflow: hidden;
}

.services-list .item a{
	text-decoration: none;
}

.services-list .item a.img{
	text-decoration: none;
	display: inline-block;
	border-radius: 50%;
	min-width: 98px;
	width: 98px;
	height: 98px;
	border: 4px solid #004824;
	transition: all ease .3s;
}

.services-list .item img{
	border-radius: 50%;
	width: 90px;
	height: 90px;
	filter: grayscale(1);
	transition: all ease .3s;
}

.service-thumb img{
	border-radius: 50%;
	border: 4px solid #004824;
}

.page-template-page-service .info-block{
	padding-top: 2em;
}

.info-block ul{
	margin: 0;
	padding: 0;
	list-style: none;
}

.info-block ul li{
	margin-bottom: 10px;
	position: relative;
	padding-left: 27px;
}

.info-block ul li::before{
	content: '';
	display: block;
	position: absolute;
	top: 11px;
	left: 0;
	width: 17px;
	height: 1px;
	background: #004824;
}

@media screen and (min-width: 768px) {
	.services-list .item:hover p{
		max-height: 400px;
		transition: max-height .7s cubic-bezier(.17,.67,.83,.67);
	}
}

/* ~~~ Services Carousel ~~~ */

.services-carousel{
	padding: 11px 0 9px;
	border-top: 1px solid #004824;
	border-bottom: 1px solid #004824;
}

.services-carousel .item{
	border: 0!important;
	margin: 0 45px;
	display: flex!important;
    align-items: center;
}

.services-carousel .slick-list{
	width: 98%;
	margin: 0 auto;
}

.services-carousel .item h3{
	font-size: 15px;
}

.service-btn-wrap{
	margin-top: 2.5em;
}

@media screen and (min-width: 992px){
	#services{
		padding-bottom: 8em;
	}
	
	.services-list .item-entry{
		max-width: 250px;
	}

	.services-list h2{
		margin-bottom: 0!important;
	}

	.services-carousel .item{
		margin: 0 20px;
	}

	body.home .services-list .item:hover a.img{
		width: 151px;
		height: 151px;
	}

	body.home .services-list .item:hover img{
		filter: grayscale(0);
		width: 143px;
		height: 143px;
	}

	body:not(.home) .services-list{
		padding: 5em 0 0;
	}
}

/* ~~~ ABOUT ~~~ */

#about{
	margin-bottom: 2em;
}

#about h2.section-title{
	margin-top: 1em;
}

#about a.btn{
	margin-top: 3%;
}

.team-card{
	margin: 1.5em 0 1em;
}

.team-group .team-card{
	margin: 2em 0 0;
	border-top: 1px solid #004824;
	padding: 5em 0 1em;
}

.team-group h2{
	margin-top: 2em!important;
}

.team-card .item{
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+52,004824+52,004824+52,004824+99 */
	background: #004824; /* Old browsers */
	background: -moz-linear-gradient(top,  transparent 0%, transparent 28%, #004824 28%, #004824 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  transparent 0%, transparent 42%,#004824 28%,#004824 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  transparent 0%, transparent 28%,#004824 28%,#004824 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#004824',GradientType=0 ); /* IE6-9 */
	color: #fff;
	padding: 0 40px 25px;
	font-size: 16px;
	margin-bottom: 35px;
}

.team-card .item h3{
	font-size: 16px;
	text-transform: uppercase;
	border-top: 1px solid #fff;
	padding-top: 1.3em;
	margin-bottom: .6em;
	font-family: 'FuturaDemiC';
} 

.info-block h3{
	text-transform: uppercase;
	font-size: 16px;
	font-family: 'FuturaDemiC';
}

@media screen and (min-width: 992px){
	#about{
		margin-bottom: 5em;
	}

	#about h2.section-title{
		margin-top: 0;
	}

	.team-card{
		display: flex;
		justify-content: center;
		margin: 4.8em 0 1em;
	}

	.team-group .team-card .item{
		width: 33.33333%;
	}

	.team-group .team-card{
		padding: 5em 0 3em;
	}
}

/* ~~~ COMPETENCE ~~~ */

#competence{
	padding-top: 3em;
	padding-bottom: 0;
	margin-bottom: 2em;
	position: relative;
}

#competence::after{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 55%;
	width: 102px;
	height: 418px;
	background: url(imgs/vertical-logo.png);
	background-size: cover;
}

#competence h2.section-title{
	margin-top: 0;
}

.competence-items{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.competence-items .item{
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	min-width: 350px;
	max-width: 350px;
	text-transform: uppercase;
	font-size: 14px;
	font-family: 'FuturaDemiC';
	margin-bottom: 3em;
}

.competence-items .item .icon{
	min-width: 124px;
	margin-right: 2em;
}

@media screen and (min-width: 992px){
	#competence{
		padding-bottom: 3em;
	}
}

/* ~~~ CLIENTS ~~~ */

#clients h2.section-title{
	margin-top: 0;
}

.clients-wrapper{
	padding: 1em 0;
	border-top: 1px solid #004824;
	border-bottom: 1px solid #004824;
}

.clients-carousel .slick-slide img{
    width: 150px;
	height: 90px;
}

/* ~~~ CONTACTS ~~~ */

.contacts-wrapper{
	background: #004824;
	color: #fff;
	padding: 2.5em 2.5em 1.5em;
	max-width: 560px;
	margin-top: 3.5em;
}

.contacts-wrapper p{
	margin-bottom: 1.2em;
}

.contacts-wrapper p span{
	display: block;
}

.contacts-wrapper p span:first-child{
	width: 45%;
}

.contacts-form{
	max-width: 404px;
	margin-top: 5em;
	padding-bottom: 3em;
}

.contacts-form form p{
	margin-bottom: 1em;
}

.page-template-page-contacts article .container .row:nth-child(2){
	background: url(imgs/contacts-bg.jpg) no-repeat 100% 50%;
	background-size: cover;
	margin-top: 1em;
}

@media screen and (min-width: 992px){	
	.contacts-wrapper p{
		display: flex;
		align-items: self-start;
		justify-content: flex-start;
	}

	.page-template-page-contacts article .container .row:nth-child(2){
		background-size: contain;
	}
}

/* ~~~ FOOTER
~~~ */

footer{
	color: #fff;
	font-size: 16px;
	position: relative;
	color: #fff;
	margin-top: 4em;
	line-height: 1.3em;
	background: #212121;
	padding: 45px 0 0;
}

footer a{
	color: #fff!important;
}

.footer .widget h3{
	margin-top: 2em;
	margin-bottom: 1em;
	font-size: 16px;
	font-family: 'FuturaDemiC';
	text-transform: uppercase;
}

.footer .footer-contacts p{
	margin-bottom: .5em;
}

.footer .footer-contacts p:nth-child(2){
	margin-bottom: 10px;
}

.footer-contacts a{
	text-decoration: none;
}

footer .logo{
	margin-bottom: 15px;
}

footer .logo object,
footer .logo img{
	height: 30px;
}

footer .logo .copyright{
	margin-top: 50px;
	text-align: center;
}

footer .site-name{
	margin: 15px 0 17px;
	text-align: center;
}

ul.footer-menu{
	margin: 0;
	padding: 0;
	list-style: none;
}

ul.footer-menu li{
	margin-bottom: .5em;
}

.subfooter{
	padding: 8px 0;
	background: #004824;
	font-size: 16px;
	margin-top: 3em;
}

@media screen and (min-width: 992px){
	footer{
		margin-top: 8em;
		padding: 45px 0 0;
	}
	
	footer .gws-copyright{
		text-align: right;
	}

	.footer .logo-text{
		max-width: 200px;
	}

	.footer .container .row .col-lg-3:last-child .footer-menu{
		margin-top: 3.2em
	}

	
	.footer .widget h3{
		margin-top: .5em;
		margin-bottom: 1.5em;
	}
}

/* ~~~ FORM STYLES
~~~ */

.form-title{
	font-size: 24px;
	text-transform: uppercase;
	margin-bottom: 2rem;
}

input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), textarea{
	font-size: 14px;
	padding: 12px 15px 10px;
	box-shadow: none;
	display: inline-block;
	margin-bottom: 1.5rem;
	width: 100%;
	background: transparent;
	border: 1px solid #fff;
	border-radius: 7px;
	color: #fff;
	text-transform: uppercase;
}

input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):focus, textarea:focus{
	background: rgba(255,255,255,.8);
	border: 1px solid #fff;
	outline: none;
	color: #333;
}

textarea{
	min-width: 100%;
	width: 100%;
	max-width: 100%;
	min-height: 110px;
	height: 110px;
	max-height: 110px;
	margin-bottom: 10px;
}

::-webkit-input-placeholder{color:#fff;}
::-moz-placeholder{color:#fff;}
:-moz-placeholder{color:#fff;}
:-ms-input-placeholder{color:#fff;}

:focus::-webkit-input-placeholder{color: transparent}
:focus::-moz-placeholder {color: transparent}
:focus:-moz-placeholder{color: transparent}
:focus:-ms-input-placeholder{color: transparent}

/* ~~~ SLICK THEME.CSS HERE ~~~ */

/* Slider */

/* Arrows */
.slick-prev,
.slick-next{
	font-size: 0;
    line-height: 0;
    position: absolute;
    bottom: 0;
    width: 13px;
	height: 25px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
	z-index: 1;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus{
    color: transparent;
    outline: none;
    background: transparent;
}

.slick-prev:hover::before,
.slick-prev:focus::before,
.slick-next:hover::before,
.slick-next:focus::before{
    opacity: 1;
}

.slick-prev.slick-disabled::before,
.slick-next.slick-disabled::before{
    opacity: .25;
}

.slick-prev::before,
.slick-next::before{
    content: '';
	display: block;
	position: absolute;
	width: 13px;
	height: 25px;
	top: 0;
	left: 0;
	background-image: url(imgs/slick-arrow.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev::before{
	transform: scale(-1,1);
}

.slick-prev,
.slick-next{
	bottom: inherit;
	top: 50%;
}
	
.slick-prev{
	left: 0;
}

.slick-next{
	right: 0;
}

.slick-slide img{
	margin: 0 auto;
}

.utp-slider .slick-prev::before,
.utp-slider .slick-next::before{
	background-image: url(imgs/slick-arrow-white.png);
}

@media screen and (min-width: 992px){
	.slick-prev,
	.slick-next{
		bottom: inherit;
		top: 50%;
	}
	
	.slick-prev{
		left: 0;
	}

	.slick-next{
		right: 0;
	}

	.utp-slider .slick-prev,
	.utp-slider	.slick-next{
		bottom: inherit;
		top: 50%;
	}

	.utp-slider .slick-prev{
		left: 43.3%;
	}

	.utp-slider .slick-next{
		right: inherit;
		left: 46.4%;
	}
}

/* ~~~ CUSTOM ACCEPTANCE ~~~ */

.wpcf7-acceptance{
	display: inline-block;
	font-size: 15px;
	margin-bottom: 20px;
	text-align: left;
}

.wpcf7-acceptance span.wpcf7-list-item{
	margin: 0;
}

.custom-checkbox {
	position: absolute;
	z-index: -1;
	opacity: 0;
}

.wpcf7-acceptance label{
	font-size: 14px;
	display: inline-flex;
	user-select: none;
	line-height: 1.3em;
}

.wpcf7-acceptance label::before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 15px;
	flex-shrink: 0;
	flex-grow: 0;
	border: 1px solid #fff;
    margin-top: 0;
    margin-right: 10px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 50% 50%;
}

.wpcf7-acceptance label a{
	text-decoration: underline!important;
}

label.has-cheked-input::before{
	background-image: url("imgs/accept-check-white.svg");
}

/* ~~~ SOME CF7 STYLES HERE ~~~ */

div.wpcf7-response-output {
	margin: 1em 0.5em 1em;
	padding: 0.2em 1em;
	font-size: 12px;
	line-height: 1.2em;
	text-align: center;
	clear: both;
}

div.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	width: 1px;
	margin: 0;
	padding: 0;
	border: 0;
}

.wpcf7-form-control-wrap {
	position: relative;
}

span.wpcf7-not-valid-tip {
	color: #f00;
	font-size: 12px;
	font-weight: normal;
	display: block;
	position: absolute;
	top: -10px;
	right: 10px;
}

.use-floating-validation-tip span.wpcf7-not-valid-tip {
	position: absolute;
	top: 20%;
	left: 20%;
	z-index: 100;
	border: 1px solid #ff0000;
	background: #fff;
	padding: .2em .8em;
}

.grecaptcha-badge{
	opacity: 0;
}

.wpcf7 input[name="order-item"],
.wpcf7-spinner{
	display: none !important;
}

.wpcf7 p{
	margin-bottom: 0;
}

/* ~~~ MODAL STYLES ~~~ */

body.modal-open{
	overflow: visible!important;
	padding-right: 0!important;
}

.modal .wpcf7-form p{
	margin-bottom: 0;
}

.modal-body form{
	text-align: center;
}

.modal-dialog{
	width: 90%;
	max-width: 400px;
	top: 4%;
	left: 50%;
	margin-left: -200px;
	border: none;
	border-radius: 0;
	box-shadow: none;
	background: #004824;
}

.modal-title{
	color: #fff;
	font-size: 21px;
	margin-bottom: 1em!important;
}

.wpcf7-acceptance label{
	color: #fff;
}

@media screen and (max-width: 576px){
	.modal-dialog{
		width: 100%;
	}
}

@media screen and (max-width: 390px){
	.modal-dialog{
		max-width: 360px;
		margin-left: -180px;
	}
}

@media screen and (max-width: 320px){
	.modal-dialog{
		max-width: 300px;
		margin-left: -150px;
	}
}

.modal-content{
	border: none;
	box-shadow: none;
	background: transparent;
}

.modal-content .btn{
	margin-top: 10px;
}

.modal-header{
	border: none;
	padding: 0;
}

.modal-body{
	margin: 1rem 1rem 1rem;
}

.modal-content .form-title{
	font-size: 21px;
}

.modal input, .modal textarea{
	margin-bottom: 15px!important;
}

.modal-full{
	width: 100%!important;
	max-width: 100%;
	height: 100%;
	background: rgba(255,255,255,1);
	top: 0;
	left: 0;
}

/* ~~~ WP DEFAULT STYLES ~~~ */

img.size-full, img{
	width: auto;
	height: auto;
	max-width: 100%;
}

.alignnone {
    margin: 5px 20px 20px 0;
}
.aligncenter, div.aligncenter {
    margin: 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
}

.pagination h2.screen-reader-text{
	display: none;
}

.nav-links .page-numbers{
	font-size: 17px;
	display: inline-block;
	background: #0099cc;
	color: #fff;
	text-decoration: none;
	padding: 5px 10px;
}

.nav-links .page-numbers:hover{
	background: #f7941c;
}

.nav-links .current,
.nav-links .current:hover{
	background: none;
	color: #323232;
}

/* ~~~ WP DEFAULT GALLERY ~~~ */

.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}