/*
 Theme Name:   Moesia Child
 Theme URI:    http://example.com/twenty-fifteen-child/
 Description:  Moesia Child Theme
 Author:       Vladimir Eric
 Author URI:   http://artitall.com
 Template:     moesia
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  moesia-child
*/

@charset "utf-8";
/* CSS Document */

/* 
HEADINGS
font-family: 'Montserrat', sans-serif;
bold
500

BODY
font-family: 'Maven Pro', sans-serif;
regular 400
bold 600

..... old
font-family: 'Titillium Web', sans-serif;
xlight 	regular	bold
200		400		700

font-family: 'Montserrat', sans-serif;
bold
500
*/

:root{
	--black: 	#000;
	--gray: 	#414042;
	--gray_pale:#fafafa;
	--blue: 	#3b5ea5;
	--blue_light:	#879fc1;
	--blue_pale:	#c7d6eb;
	--white:	#fff;
	--brown:	#a5673b;
	--brown_pale:	#a5673b17;
	
}
body{
	background-color:var(--white);
}
body div{
	color:var(--black);
		font-family: 'Maven Pro', sans-serif;
		font-size:16px;
			line-height:1.36em;
}
/* general *******************************************************/
.lez_content{
	box-sizing:border-box;
	display:block;
	margin:0 auto !important;
	padding:0 30px;
	width:1170px;
		max-width:100%;
}
.nolink {
   pointer-events: none;
   cursor: default;
}
.boxed_anch{
	border: 3px solid #ff0000;
	color: #999;
	display: block;
	margin: 50px;
		margin-top:0;
	padding: 30px;
	text-align: center;
}
.boxed_anch strong{
	color:#000;
	font-size:1.5em;
}
.entry-header{
    border: none;
    	border-bottom: none;
}
.hentry .post-content, .single .hentry, .page .hentry{
    border: none;
    padding: 0;
}
.one-row-images{
	display: table;
}
.one-row-images figure{
	display: table-cell;
	padding: 0 20px;
}
.widget-area{
    background-color: var(--gray_pale);
	border: none;
    padding: 15px;
}
.widget-title, .widgettitle{
	border-bottom:0;
	padding-bottom:0;
}
footer.entry-footer{
	display:none;
}
/* special pages */
body.page-id-2699 header,
body.page-id-2699 .sticky-wrapper,
body.page-id-2699 footer{
	display:none;
}
/* display .....................................................*/
.d_flex{
	display: flex;
}
.d_inblock{
	display: inline-block;
}
.d_tcell{
	display: table-cell;
}
.d_block{
	display: block;
}
.w_100perc{
	width: 100%;
}
/* button ...................................................... */
.button div[class*="so-widget-sow-button-flat-"] .ow-button-base a{
	background-color:var(--blue) !important;
		background: none;
	border:2px solid var(--blue) !important;
		border:none;
	border-radius:0px !important;
	color:var(--white);
		font-family: 'Montserrat', sans-serif;
		font-size:24px;
		line-height:1.36em;
		font-weight:500;
    display: inline-blockblock;
	padding:20px 70px;
}
.button div[class*="so-widget-sow-button-flat-"] .ow-button-base a *{
	color:var(--white) !important;
}
.ow-button-base a .sow-icon-image, .ow-button-base a [class^="sow-icon-"]{
	font-size:1em;
}
.button.button_blue div[class*="so-widget-sow-button-flat-"] .ow-button-base a{
	border:2px solid var(--blue) !important;
}
.button.button_blue div[class*="so-widget-sow-button-flat-"] .ow-button-base a *{
	color:var(--white) !important;
}
.button div[class*="so-widget-sow-button-flat-"] .ow-button-base a:hover{
	background-color:var(--white) !important;
}
.button div[class*="so-widget-sow-button-flat-"] .ow-button-base a:hover *{
	color:var(--blue) !important;
}
.button{
	border:none;
}
/* special style ...................................................*/
.cat{
	padding: 70px 0;
}
body div .cat *{
    color: var(--gray);
}
.cat .custom-html-widget > h2{
	margin-top:0;
    	font-size: 32px !important;
		line-height:1.36em;
}
.rounded,
.rounded .sow-image-container img{
	border-radius:10px !important;
}
i{
    font-family: 'FontAwesome' !important;
	font-style:normal;
    font-weight: 900;
}
.panel-grid{
	background-color: transparent;
	border-bottom: none;
}
/* background ...................................................*/
.bg_black{
	background-color: var(--black);
}
.bg_white{
	background-color: var(--white);
}
.bg_gray_pale{
	background-color: var(--gray_pale);
}
.bg_brown_pale{
	background-color: var(--brown_pale);
}
.over_black .fulling img{
	opacity:.75;
}
.over_black{
	background-color:var(--black);
}
/* font  ...................................................*/
h1, h2, h3, h4, h5, h6{
	color:var(--black);
		font-family: 'Montserrat', sans-serif;
		font-weight:500;
		text-transform: unset !important;
}
h1,
.custom-html-widget > h2{
	font-size:48px !important;
	    font-weight: 700 !important;
		line-height:1.36em;
}
.custom-html-widget > h3{
	font-size:24px;
		line-height:1.36em;
	margin-top:50px;
		margin-bottom:0;
}
.big{
	font-size: 1.5em;
}
.med{
	font-size: 1.2em;
}
.va_middle{
	vertical-align: middle;
}
.col_black{
	color:var(--black);
}
.col_white{
	color:var(--white);
}
.text-light{
	font-weight: 200;
}
.text-normal{
	font-weight: 400;
}
.text-bold{
	font-weight: 700;
}
.text-danger{
	color: #ff6b53;
}
.text-highlight {
	background-color: yellow;
	font-weight: 700;
	padding: 10px;
}
.text-shadow{
	text-shadow: 1px 1px 1px var(--black);
}
.text-center,
.text-center p{
	text-align:center;
}
.underlinedimg,
.underlinedimg_wh{
	background: url(img/underline_smudge.png) no-repeat center bottom;
		background-size: cover;
	padding-bottom: 20px;
}
.underlinedimg_wh{
	background: url(img/underline_smudge_wh.png) no-repeat center bottom;	
}
/* spaces ...................................................*/
.margB0,
.introduction:not(.intro_rich) h3.margB0{
	margin-bottom: 0px !important;
}
.margB30{
	margin-bottom: 30px !important;
}
.margB50{
	margin-bottom: 50px !important;
}
.margT50{
	margin-top: 50px !important;
}
.margB100{
	margin-bottom: 100px !important;
}
.padd0{
	padding:0;
}
.padd30{
	padding: 30px;
}
.padd50-0{
	padding: 50px 0;
}
.padd70{
	padding: 70px;
}
.padd70-0{
	padding: 70px 0;
}
.padd100{
	padding:100px;
}
.padd100-0{
	padding:100px 0;
}
.padd170-0{
	padding:170px 0;
}
.table_padd td{
	padding:10px;
}
.table_padd.cols_black_red td{
	background-color: #000;
}
.table_padd.cols_black_red tr > td:nth-child(2){
	background-color: #ff0000;
}
/* sizes ..................................................... */
.h40vh{
	height:40vh;
		min-height:40vh;
}
.max_w400{
	max-width:400px;
}
/* header *************************************************/
.sticky-wrapper{
	background-color: var(--white);
	height: auto;
}
.top-bar{
	background-color: var(--white);
	opacity: 1;
}
.top-bar .container{
	padding: 0;
}
.site-branding{
	padding: 30px 0;
}
/* menu ........................*/
.head_right_wdgt{
	display: none;
}
.main-navigation{
    padding: 0;
    width: 100%;
}
.main-navigation li{
    padding: 0;
		padding-left: 30px;
}
.main-navigation ul ul{
    padding: 10px;
}
.main-navigation ul ul li{
	border-bottom:none;
}
.main-navigation ul ul a{
    color: var(--blue);
 	   text-transform: uppercase;
}
.menu-toggle.btn,
.menu-toggle.btn:active, 
.menu-toggle.btn.active{
    background-color: transparent;
    box-shadow: none;
    color: var(--gray);
	margin: 0;
    outline: none;
	position: relative;
	    top: 7px;
    	left: 0;
}
/* header central small menu .......................................*/
/* header right menu ................................................*/
.main-navigation a{
	color:var(--blue);
	font-family: 'Maven Pro', sans-serif;
}
.main-navigation a:hover{
	color:var(--gray);
}
/* hero image ............................................... */
#masthead{
	height: 60vh !important;
	position: relative;
}
#masthead::before {
    background-color: var(--black);
    content: ' ';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9;
    opacity: .33;
}
.has-banner:after{
    background-attachment: unset;
		background-position:bottom;
}
.welcome-info{
	display: block;
    position: relative;
		top: 50px;
    padding: 0;
	width: 100%;
		max-width: 1170px;
}
.welcome-title{
	font-family: 'Montserrat', sans-serif;
		font-size:48px;
		line-height:1.2em;
	text-align: left;
	width: 66%;
}
.head_icons{
	color: white;
    display: block;
    text-align: right;
    margin: 0 auto;
    position: absolute;
   		top: 45vh;
    	z-index: 9;
    width: 100%;
}
.head_icons div{
	margin: 0 auto;
    width: 100%;
    	max-width: 1170px;
}
.head_icons i{
    border: 2px solid var(--blue_light);
    	border-radius: 50%;
    color: var(--blue_light);
    	font-size: 24px;
    	line-height: 30px;
	display: inline-block;
		height: 65px;
		width: 65px;
    margin-left: 30px;    
    text-align: center;
    opacity: 1;
    padding: 15px;
}
/* head search ----------------------------------------- */
#head_search{
	color: var(--blue_light);
    text-align: center;
	position: absolute;
    	bottom: 20px;
    width: 100%;
	z-index: 9;
}
/* sections ************************************************/
.siteorigin-panels-stretch > .panel-grid-cell > .so-panel{
	margin-bottom: 100px !important;
}
.siteorigin-panels-stretch > .panel-grid-cell > .so-panel:last-child{
	margin-bottom: 0 !important;
}
/* introduction .................................... */
.panel-row-style.introduction{
	padding-bottom:100px 0;
}
.panel-grid > .panel-row-style.introduction .panel-layout > .panel-grid{
	margin-bottom:100px !important;
}
.panel-grid > .panel-row-style.introduction .panel-layout > .panel-grid:last-child{
	margin-bottom:0px !important;
}
.panel-layout .panel-grid:first-child > .panel-row-style.introduction{
	padding-top:170px;
}
.panel-layout .panel-grid > .panel-row-style.introduction{
	padding:100px 0;
}
.panel-layout .panel-grid:last-child > .panel-row-style.introduction{
	padding-bottom:100px;
}
.introduction h2{
    color: var(--blue);
	margin:0;
		margin-top:0;
		margin-bottom:0;
}
.introduction h3{
    color: var(--gray);
}
.introduction:not(.intro_rich) h3{
	margin-bottom:100px !important;
    margin-left: auto;
    margin-right: auto;
	width: 80%;
    	max-width: 768px;
}
.intro_rich h2,
.intro_rich h3{
	margin-bottom:50px;
}
.intro_rich h3{
	margin-top:0px;
}
.introduction img{
    border-radius: 10px;
}
/* vendor_services ............................. */
.break_in_rows{
	margin-bottom: 50px;
}
.break_in_rows i,
.break_in_rows strong{
	display:block;
}
.break_in_rows i{
	color:var(--blue_light);
		font-size: 36px;
		line-height: 1.36em;
}
.check_cols .panel-grid-cell{
	position:relative;
}
.check_cols .panel-grid-cell > div{
    margin-left: 15px;
}
.check_cols .panel-grid-cell::before{
	content: "\f00c";
	color:var(--blue_light);
	font-family:'FontAwesome';
	font-size:24px;
	line-height: 30px;
	display: inline-block;
	height: 50px;
	width: 50px;
	position:absolute;
	top:-5px;
	left: 15px;
}
.list_rows > .panel-layout > .panel-grid{
	position: relative;
}
.list_rows > .panel-layout > .panel-grid:before{
    background-color: var(--blue_pale);
    content: ' ';
    line-height: 2px;
    overflow-y: hidden;
    position: absolute;
    	bottom: -32px;
    	left: calc(50% - 150px);
    width: 300px;
    	min-height: 2px;
}
.separate_row{
    border-top: 2px solid var(--blue_pale);
    margin-top: 70px;
    padding-top: 70px;
}
.vendor_services {
    margin: 50px 0;
    padding: 15px;
}
.vendor_services > .panel-grid-cell{
    box-shadow: 3px 3px 15px rgba(0,0,0,.13);
    border-radius: 10px;
    padding-top: 50px !important;
}
.introduction:not(.intro_rich) .vendor_services h3{
    color: var(--blue);
		text-align:center;
	margin-bottom:50px;
}
/* foot cat menu */
body.home .so-widget-sow-button a{
    max-width: 300px;
    	min-width: 300px;
    min-height: 70px;
	margin-bottom: 35px;

}
/* CAT top ............................................*/
/* services ...........................................*/
/* testimonials ...........................................*/
/* content ************************************************/
body.post-template-full-width_post .entry-header h1{
	text-align:center;
}

body.post-template-full-width_post .content-area{
	width:100%;
}
body.post-template-full-width_post .content-area{
	float:none;
}
/* contact ...............................................*/
form.wpcf7-form label, 
form.wpcf7-form input:not(.wpcf7-submit), 
form.wpcf7-form textarea{
	font-weight: 400;
	width:100%;
}
form.wpcf7-form input:not(.wpcf7-submit),
form.wpcf7-form textarea{
	background-color:var(--gray_pale);
		background:var(--gray_pale);
	border:none;
}
form.wpcf7-form input.wpcf7-submit{
	background-color:transparent;
	box-shadow: none;
    border: 2px solid var(--blue) !important;
    color: var(--blue);
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    line-height: 1.2em;
    font-weight: 500;
    text-transform: unset;
    border-radius: 0;
    padding: 20px 70px;
}
form.wpcf7-form input.wpcf7-submit:hover{
	background-color:var(--blue);
	color:var(--white) !important;
}
.welcome-desc,
.noptin-form-footer .noptin-form-submit,
.noptin-form-footer .noptin-optin-field-wrapper:not(.noptin-optin-field-wrapper-hidden) .noptin-form-field{
	font-size:1em;
}
/* news ............................................... */
body.home .all-news{
	display: none;
}
/* sidebar ***************************************************/
/* footer ***************************************************/
.site-info{
    color: var(--white);
    	font-size: .8em;
		text-align: center;
}

@media
only screen and (-webkit-min-device-pixel-ratio: 2)      and (max-width: 1300px),
only screen and (   min--moz-device-pixel-ratio: 2)      and (max-width: 1300px),
only screen and (     -o-min-device-pixel-ratio: 2/1)    and (max-width: 1300px),
only screen and (        min-device-pixel-ratio: 2)      and (max-width: 1300px),
only screen and (                min-resolution: 192dpi) and (max-width: 1300px),
only screen and (                min-resolution: 2dppx)  and (max-width: 1300px) { 

  /* Large screen, retina, stuff to override above media query */

}
@media screen and (max-width: 992px) {	
	.text-right{
		text-align:left;
	}
	.ow-button-base.ow-button-align-left{
		text-align:center;
	}
	.mob_top_horline{
		border-top:2px solid var(--blue_pale);
		padding-top:50px;
	}
	.introduction .panel-grid-cell .widget_siteorigin-panels-builder{
		padding:0 !important;
	}
	.introduction h2{
		font-size:32px !important;
			line-height:1.36em;
	}
	.custom-html-widget > h3,
	.button div[class*="so-widget-sow-button-flat-"] .ow-button-base a{
		font-size:20px !important;
			line-height:1.36em;
	}
	/* header */
	.sticky-wrapper{
	    height: 44px !important;
	}
	.site-branding{
		padding: 10px 0;
		position: absolute;
		text-align: center;
	    width: 100%;
	}
	.main-navigation.toggled{
		margin-top: 20px;
		padding-top: 15px;
	}
	.main-navigation li{
		padding-bottom: 0 !important;
	}
	.main-navigation li ul li:last-child{
		margin-bottom: 10px !important;
	}
	.main-navigation ul ul a{
		color: var(--blue_light);
    	text-transform: uppercase;
	}
	.welcome-info{
	    position: absolute;
			top: 30px;
		padding-left: 15px;
			padding-right: 15px;
	}
	.welcome-title{
	    font-size: 32px !important;
    	text-align: center;
		width:100%;
	}
	.head_icons{
		text-align: center;
	}
	.head_icons i{
	    font-size: 18px !important;
		    line-height: 22px;
		height: 50px;
		    width: 50px;
    	margin-left: 5px;
	    padding: 12px;
	}
	/* sections */
	.panel-layout .panel-grid:first-child > .panel-row-style.introduction {
		padding-top: 100px;
	}
	.panel-grid > .panel-row-style.introduction .panel-layout > .panel-grid {
		margin-bottom: 30px !important;
	}
	.widget .container, section .container {
		padding-left: 15px;
		padding-right: 15px;
	}
	.so-widget-sow-button{
		text-align:center;
	}
	.so-widget-image{
		margin:0 auto;
	}
	/* intro */ 	
	.panel-grid > .panel-row-style.introduction .panel-layout > .panel-grid{
		margin-bottom:50px !important;
	}
}

@media screen and (max-width: 768px) {
	.lez_content,
	.container{
		padding:0;
	}
}

@media /* Medium screen, retina, stuff to override above media query */
only screen and (-webkit-min-device-pixel-ratio: 2)      and (max-width: 768px),
only screen and (   min--moz-device-pixel-ratio: 2)      and (max-width: 768px),
only screen and (     -o-min-device-pixel-ratio: 2/1)    and (max-width: 768px),
only screen and (        min-device-pixel-ratio: 2)      and (max-width: 768px),
only screen and (                min-resolution: 192dpi) and (max-width: 768px),
only screen and (                min-resolution: 2dppx)  and (max-width: 768px) { 

}

@media screen and (max-width: 480px) {
}

@media /* Small screen, retina, stuff to override above media query */
only screen and (-webkit-min-device-pixel-ratio: 2)      and (max-width: 320px),
only screen and (   min--moz-device-pixel-ratio: 2)      and (max-width: 320px),
only screen and (     -o-min-device-pixel-ratio: 2/1)    and (max-width: 320px),
only screen and (        min-device-pixel-ratio: 2)      and (max-width: 320px),
only screen and (                min-resolution: 192dpi) and (max-width: 320px),
only screen and (                min-resolution: 2dppx)  and (max-width: 320px) { 

}