@charset "UTF-8";

*{min-height: 0; min-width: 0}img{max-width: 100%; height: auto; min-height: 1px}img.alignright{float:right;margin:0 0 1em 1em}img.alignleft{float:left;margin:0 1em 1em 0}img.aligncenter{display:block;margin-left:auto;margin-right:auto}.alignright{float:right}.alignleft{float:left}.aligncenter{display:block;margin-left:auto;margin-right:auto}a, button, input, textarea, select{outline: none!important}*:focus{outline:none!important}

.font15{font-size:0.8333333333333334rem}

body{background-image: url(../images/body-bg.jpg); background-position: center top; background-repeat: no-repeat}

#wrapper{overflow: hidden}

/* =============================================================================
   row grid
   ========================================================================== */
@media (min-width: 768px){
	.row-grid > .col-lg-6:nth-child(n+3){margin-top: 30px}
}
@media (min-width: 992px){
	.row-grid > .col-lg-3:nth-child(n+5){margin-top: 30px}
}

blockquote{position: relative; padding: 15px 45px}
	blockquote:before,
	blockquote:after{content: ''; display: block; width: 30px; height: 30px; position: absolute; background-size: cover; background-repeat: no-repeat; opacity: 0.25}
		blockquote:before{background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNMTQuMDE3IDIxdi03LjM5MWMwLTUuNzA0IDMuNzMxLTkuNTcgOC45ODMtMTAuNjA5bC45OTUgMi4xNTFjLTIuNDMyLjkxNy0zLjk5NSAzLjYzOC0zLjk5NSA1Ljg0OWg0djEwaC05Ljk4M3ptLTE0LjAxNyAwdi03LjM5MWMwLTUuNzA0IDMuNzQ4LTkuNTcgOS0xMC42MDlsLjk5NiAyLjE1MWMtMi40MzMuOTE3LTMuOTk2IDMuNjM4LTMuOTk2IDUuODQ5aDMuOTgzdjEwaC05Ljk4M3oiLz48L3N2Zz4='); top: 0; left: 0}
		blockquote:after{background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNOS45ODMgM3Y3LjM5MWMwIDUuNzA0LTMuNzMxIDkuNTctOC45ODMgMTAuNjA5bC0uOTk1LTIuMTUxYzIuNDMyLS45MTcgMy45OTUtMy42MzggMy45OTUtNS44NDloLTR2LTEwaDkuOTgzem0xNC4wMTcgMHY3LjM5MWMwIDUuNzA0LTMuNzQ4IDkuNTcxLTkgMTAuNjA5bC0uOTk2LTIuMTUxYzIuNDMzLS45MTcgMy45OTYtMy42MzggMy45OTYtNS44NDloLTMuOTgzdi0xMGg5Ljk4M3oiLz48L3N2Zz4='); bottom: 0; right: 0}	
	
/* =============================================================================
   editor content
   ========================================================================== */
.editor-content * + p,
.editor-content p + *,
.editor-content * + ul,
.editor-content ul + *,
.editor-content * + ol,
.editor-content ol + *{margin-top: 1.6666666666666667rem}

.editor-content ul > li + li,
.editor-content ol > li + li{margin-top: 1.1111111111111112rem}

.editor-content ul,
.editor-content ol{padding-left: 0; list-style: none}

.editor-content ol{counter-reset: ama-counter}
.editor-content ol > li{counter-increment: ama-counter; padding-left: 2.2222222222222223rem; position: relative}
.editor-content ol > li:before{font-family: 'Prata', serif; display: block; content: counter(ama-counter); color: #5f2779; width: 2.2222222222222223rem; position: absolute; top: 0.1111111111111111rem; left: 0; text-align: center}

.editor-content h1 + *,
.editor-content h2 + *,
.editor-content h3 + *,
.editor-content h4 + *,
.editor-content h5 + *,
.editor-content h6 + *{margin-top: 0.5555555555555556rem}

.editor-content h4{font-family: 'Open Sans', sans-serif; font-weight: 600; font-size: 1.3333333333333333rem; line-height: 1.6666666666666667rem}

/* =============================================================================
   header
   ========================================================================== */
#header > .container > .row{height: 5.833333333333333rem}

	.header-contact{margin: 0; padding: 0; list-style: none; overflow: hidden; font-size: 0.8333333333333334rem; letter-spacing: 2px}
		.header-contact > li{float: left}
		.header-contact > li + li{margin-left: 2.7777777777777777rem}
			.header-contact > li > a{color: #222}
				.header-contact > li > a svg{width: 1.1111111111111112rem; height: 1.1111111111111112rem}
				.header-contact > li > a span{margin-left: 0.5555555555555556rem}

	.header-contact,
	.wpml-ls{display: inline-block; vertical-align: middle}
	* + .wpml-ls{margin-left: 2.7777777777777777rem}
		.wpml-ls ul{margin: 0; padding: 0; list-style: none; overflow: hidden}
			.wpml-ls ul > li{float: left}
			.wpml-ls ul > li + li{margin-left: 0.2777777777777778rem}
				.wpml-ls ul > li > a{
					display: -ms-flexbox;
					display: -webkit-flex;
					display: flex;
					-webkit-flex-direction: row;
					-ms-flex-direction: row;
					flex-direction: row;
					-webkit-flex-wrap: wrap;
					-ms-flex-wrap: wrap;
					flex-wrap: wrap;
					-webkit-justify-content: center;
					-ms-flex-pack: center;
					justify-content: center;
					-webkit-align-content: stretch;
					-ms-flex-line-pack: stretch;
					align-content: stretch;
					-webkit-align-items: center;
					-ms-flex-align: center;
					align-items: center;
					text-transform: uppercase;
					font-size: 0.8333333333333334rem;
					width: 2.7777777777777777rem;
					height: 2.7777777777777777rem;
					color: #222;
					background-color: #eaeaea;
					-webkit-border-radius: 50%;
					-moz-border-radius: 50%;
					border-radius: 50%;
					-webkit-transition: all 0.25s linear;
					-moz-transition: all 0.25s linear;
					-ms-transition: all 0.25s linear;
					-o-transition: all 0.25s linear;
					transition: all 0.25s linear
				}
				.wpml-ls ul > li > a:hover{text-decoration: none; background-color: #5f2779; color: #fff}
	
	#header-items{padding-top: 2.5rem; margin: 0 0 3.611111111111111rem 0}
		.primary-menu{font-size: 0.8333333333333334rem; font-weight: 700; text-transform: uppercase}
			.primary-menu ul{margin: 0; list-style: none; padding: 0}
			.primary-menu > ul{display: inline-block; vertical-align: top; margin: 0 -15px}
				.primary-menu > ul > li{float: left; padding: 0 15px}
					.primary-menu > ul > li > a{
						display: -ms-flexbox;
						display: -webkit-flex;
						display: flex;
						-webkit-flex-direction: row;
						-ms-flex-direction: row;
						flex-direction: row;
						-webkit-flex-wrap: wrap;
						-ms-flex-wrap: wrap;
						flex-wrap: wrap;
						-webkit-justify-content: flex-start;
						-ms-flex-pack: start;
						justify-content: flex-start;
						-webkit-align-content: stretch;
						-ms-flex-line-pack: stretch;
						align-content: stretch;
						-webkit-align-items: center;
						-ms-flex-align: center;
						align-items: center;
						color: #3a3a3a;
						position: relative;
						height: 2.2222222222222223rem
					}
					.primary-menu li:hover > a{text-decoration: none}
						.primary-menu > ul > li > a:before,
						.primary-menu > ul > li > a:after{
							content: '';
							display: block;
							position: absolute;
							bottom: 0;
							width: 0;
							height: 2px;
							background-color: #5f2779;
							-webkit-transition: width 0.25s ease-in-out;
							-moz-transition: width 0.25s ease-in-out;
							-ms-transition: width 0.25s ease-in-out;
							-o-transition: width 0.25s ease-in-out;
							transition: width 0.25s ease-in-out
						}
						.primary-menu > ul > li > a:before{right: 50%}
						.primary-menu > ul > li > a:after{left: 50%}
						.primary-menu > ul > li:hover > a:before,
						.primary-menu > ul > li.current-menu-item > a:before,
						.primary-menu > ul > li.current-menu-parent > a:before,
						.primary-menu > ul > li.current-menu-ancestor > a:before,
						.primary-menu > ul > li.current-page-item > a:before,
						.primary-menu > ul > li.current-page-parent > a:before,
						.primary-menu > ul > li.current-page-ancestor > a:before,
						.primary-menu > ul > li:hover > a:after,
						.primary-menu > ul > li.current-menu-item > a:after,
						.primary-menu > ul > li.current-menu-parent > a:after,
						.primary-menu > ul > li.current-menu-ancestor > a:after,
						.primary-menu > ul > li.current-page-item > a:after,
						.primary-menu > ul > li.current-page-parent > a:after,
						.primary-menu > ul > li.current-page-ancestor > a:after{width: 50%}

/* =============================================================================
   builder elements
   ========================================================================== */
.builder-element{position: relative}
.builder-element + .builder-element{margin-top: 4.444444444444445rem; padding-top: 4.444444444444445rem}
.builder-element.element-hero + .builder-element{margin-top: 3rem; padding-top: 3rem}

.builder-element.no-primary-content + .builder-element{margin-top: 2rem; padding-top: 0; border: none}

.element-header{color: #78c4a0}
	.element-header h1{font-size: 3.3333333333333335rem; line-height: 1em}
	.element-header h2{font-size: 3.5555555555555554rem; line-height: 3.3333333333333335rem}
	.element-header h3{font-size: 2.2222222222222223rem; line-height: 3.3333333333333335rem}
	.element-header > .row > div > p{
		color: #3d3d3d;
		font-weight: 300;
		font-size: 1.3333333333333333rem;
		line-height: 1.6666666666666667rem
	}
.container > .element-header + .element-body{margin-top: 4.722222222222222rem}
* + .element-footer{margin-top: 2.7777777777777777rem}
.container > .row > div > .element-header + .element-body{margin-top: 1.6666666666666667rem}
.container > .row > div > * + .element-footer{margin-top: 2.2222222222222223rem}

/* element hero */

.element-hero .container{position: relative}
	.element-hero .container:before{
		content: '';
		display: block;
		width: 756px;
		height: 505px;
		position: absolute;
		top: 50px;
		right: 15px;
		background-color: #97e3bf;	
		-webkit-mask-image: url(../images/masks/welcome-before-mask.png);
		-webkit-mask-size: 100% 100%;
		mask-image: url(../images/masks/welcome-before-mask.png);
	}		
	.welcome-content{
		width: 907px;
		height: 606px;
		color: #fff;
		mask-size: 100% 100%;
		margin-left: -60px;
		padding-left: 8.777777777777779rem;
		padding-right: 12.222222222222221rem;
		position: relative;
		background-color: #5f2779;
		-webkit-mask-image: url(../images/masks/welcome-mask.png);
		-webkit-mask-size: 100% 100%;
		mask-image: url(../images/masks/welcome-mask.png);
		float: left;
	}
		.welcome-content .element-header{color: inherit}
		.welcome-content .element-body{font-family: 'Noto Sans', sans-serif}
		.welcome-content * + .element-body{margin-top: 1.9444444444444444rem}
		
	.welcome-person{
		margin-top: 5.555555555555555rem;
		margin-left: -7.055555555555555rem;
		width: 23.333333333333332rem;
		float: right;
		position: relative
	}
		.welcome-person > .person-thumb{
			background-color: #000;
			width: 23.333333333333332rem;
			height: 22.77777777777778rem;
			-webkit-mask-image: url(../images/masks/welcome-person-mask.png);
			-webkit-mask-size: 100% 100%;
			mask-image: url(../images/masks/welcome-person-mask.png);
		}
			img.person-masked{
				min-width: 23.333333333333332rem;
				height: 22.77777777777778rem;
				object-fit: cover;
				-webkit-mask-image: url(../images/masks/welcome-person-mask.png);
				-webkit-mask-size: 100% 100%;
				mask-image: url(../images/masks/welcome-person-mask.png);
			}
		.welcome-person > .person-content{
			margin-top: 1.3333333333333333rem;
			font-size: 0.7777777777777778rem;
			padding-left: 9.166666666666666rem;
			padding-right: 1.9444444444444444rem;
			line-height: 1rem
		}
			.welcome-person > .person-content > h3{
				font-size: 1.3333333333333333rem;
				line-height: 1em;
				color: #5f2779
			}
			.welcome-person > .person-content h3 + p{margin-top: 3px}
			.welcome-person > .person-content p + p{margin-top: 5px}

/* element posts */
.thumbnail-wrap{height: 14.555555555555555rem; margin: 0 0 1.1111111111111112rem 0}
	.thumbnail-wrap img,
	.thumbnail-wrap svg{display: block; margin: 0 auto}
	.thumbnail-wrap img{-webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px}
	.thumbnail-wrap svg{opacity: 0.1; width: 11.11111111111111rem; height: 11.11111111111111rem}

.row-posts{font-size: 0.8333333333333334rem; line-height: 1.1666666666666667rem}
	.row-posts > div > a{text-align: center; position: relative; display: block; height: 100%; color: #5f2779}
		.row-posts > div > a h6{font-size: 1em; line-height: 1.4em; font-family: 'Open Sans', sans-serif; font-weight: 700}
	.row-posts > div > a:hover{color: #3d3d3d; text-decoration: none}

.post-date{color: #3d3d3d}

/* element txtimg */
.element-txtimg .element-body > .row + .row{margin-top: 6.666666666666667rem}
	.element-txtimg .element-body .element-header + *{margin-top: 1.6666666666666667rem}

	.masked-media img{display: block; -webkit-mask-size: 100% 100%;}
	
.element-txtimg .element-body > .row:nth-child(odd) .col-md-6{margin-right: 8.333333%}
.element-txtimg .element-body > .row:nth-child(odd) .masked-media{margin-left: -15px; margin-right: -123px}
	.element-txtimg .element-body > .row:nth-child(odd) .masked-media img{-webkit-mask-image: url(../images/masks/media-mask.png); mask-image: url(../images/masks/media-mask.png)}

.element-txtimg .element-body > .row:nth-child(even) .col-md-6{-ms-flex-order: 1; order: 1}
.element-txtimg .element-body > .row:nth-child(even) .masked-media{margin-right: 0; margin-left: -138px}
	.element-txtimg .element-body > .row:nth-child(even) .masked-media img{-webkit-mask-image: url(../images/masks/media-even-mask.png); mask-image: url(../images/masks/media-even-mask.png)}

.element-txtimg .editor-content ol{font-size: 0.8333333333333334rem}
.element-txtimg .editor-content ol > li + li{margin-top: 0.8333333333333334rem}

/* element txtimg2 */
.fullwidth-media img{display: block; max-width: none}
.element-txtimg2 .element-body > .row:nth-child(odd) .fullwidth-media{float: left}
.element-txtimg2 .element-body > .row:nth-child(even) .col-md-6{margin-left: 8.333333%}
.element-txtimg2 .element-body > .row:nth-child(even) .fullwidth-media{float: right}

/*start reverse*/

.element-txtimg.start-reverse .element-body > .row:nth-child(odd) .col-md-6{-ms-flex-order: 1; order: 1}
.element-txtimg.start-reverse .element-body > .row:nth-child(even) .col-md-6{-ms-flex-order: 0; order: 0}
.element-txtimg.start-reverse .element-body > .row:nth-child(even) .col-md-6{margin-right: 8.333333%; margin-left: 0}
.element-txtimg.start-reverse .element-body > .row:nth-child(odd) .col-md-6{margin-left: 8.333333%; margin-right: 0}
.element-txtimg2.start-reverse .element-body > .row:nth-child(odd) .fullwidth-media{float:right}
.element-txtimg2.start-reverse .element-body > .row:nth-child(even) .fullwidth-media{float:left}
.builder-element.hide-line{margin-top: 0}
	.builder-element.hide-line::before{content:none!important;}

/* element primary */
.element-primary.element-txtimg2 .element-body > .row:nth-child(odd) .col-md-6{margin-left: 0}

.element-primary .element-header h1{font-size: 2.6666666666666665rem; line-height: 3.3333333333333335rem}
.element-primary .element-header + .element-body{margin-top: 1.6666666666666667rem}

.fullwidth-media + .element-footer{padding-top: 3.611111111111111rem; clear: left}

.element-primary + .builder-element:before{
	content: '';
	display: block;
	width: 1140px;
	height: 1px;
	background-color: #eaeaea;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -570px	
}

.element-primary.no-primary-content + .builder-element:before{display: none!important}

a.flex-email,
a.flex-phone{position: relative; padding-left: 34px; height: 24px}
	a.flex-email > span,
	a.flex-phone > span{line-height: 24px}
	a.flex-email:before,
	a.flex-phone:before{content: ''; display: block; position: absolute; top: 0; left: 0; width: 24px; height: 24px; background-size: cover; background-position: center}
	a.flex-email:before{background-image: url(../images/iconmonstr-email-8-24.png)}
	a.flex-phone:before{background-image: url(../images/iconmonstr-phone-13-24.png)}

/* =============================================================================
   footer
   ========================================================================== */
#footer{margin-top: 5.555555555555555rem; padding-top: 3.3333333333333335rem; position: relative}
	#footer:before{
		content: '';
		display: block;
		width: 1140px;
		height: 1px;
		background-color: #eaeaea;
		position: absolute;
		top: 0;
		left: 50%;
		margin-left: -570px	
	}
.home #footer{margin-top: 4.722222222222222rem; padding-top: 0}
.home #footer:before{display: none}
	#footer .primary-menu + *{margin-top: 2.7777777777777777rem}
	#footer img{display: block; margin: 0 auto 1.6666666666666667rem auto}
	#ama{display: inline-block; vertical-align: top; font-size: 0.7222222222222222rem; line-height: 0.7222222222222222rem; color: #3a3a3a; opacity: 0.5}
	#ama:hover{opacity: 1; text-decoration: none}

/* =============================================================================
   media query
   ========================================================================== */
.img-masked{
	display: block;
    -webkit-mask-image: url(../images/masks/welcome-person-mask.png);
    -webkit-mask-size: 100% 100%;
    mask-image: url(../images/masks/welcome-person-mask.png);	
	mask-size: 100% 100%;
}   
@media (min-width: 1024px){
	#mobile-toggle{display: none}
	#header-items{display: block!important}
}
@media (max-width: 1200px){
	.primary-menu > ul{margin: 0 -10px}
	.primary-menu > ul > li{padding: 0 10px}	
	
	.element-header h1{font-size: 2rem}
	.element-primary .element-header h1,
	.element-header h2{font-size: 1.8rem; line-height: 1.25em}
	.element-header h3{font-size: 1.6rem; line-height: 1.25em}
	.editor-content h4{font-size: 1.2rem; line-height: 1.25em}
	
	.welcome-content{width: 70%; padding-right: 10%; padding-left: 10%}
	
	.element-txtimg .element-body > .row + .row{margin-top: 30px}	
		.row-txtimg .col-md-5{
			-ms-flex: 0 0 50%;
			flex: 0 0 50%;
			max-width: 50%;
			flex: 0 0 auto\0
		}
		.element-txtimg.start-reverse .element-body > .row:nth-child(odd) .col-md-6,
		.row-txtimg .col-md-5.offset-md-1{margin-left: 0}
		.element-txtimg .element-body > .row:nth-child(odd) .col-md-6,
		.element-txtimg.start-reverse .element-body > .row:nth-child(even) .col-md-6{margin-right: 0}
		
	.builder-element + .builder-element{margin-top: 30px; padding-top: 30px}
	.builder-element.hide-line{margin-top: 0}
	
	.editor-content h1 + *, .editor-content h2 + *, .editor-content h3 + *, .editor-content h4 + *, .editor-content h5 + *, .editor-content h6 + *,
	.editor-content ul > li + li, .editor-content ol > li + li{margin-top: 1rem}
	
	.thumbnail-wrap{height: auto}
}
@media (max-width: 1023px){
	.noscroll{overflow: hidden}
	
	#wrapper{padding-top: 90px}
	
	#mobile-toggle{
		display: block!important;
		transition: 0.8s ease;
		z-index: 9999;
		position: absolute;
		height: 40px;
		width: 40px;
		margin-top: -20px;
		top: 50%;
		right: 15px;
		border: 1px solid #003e7e;
		-webkit-border-radius: 50%;
		-moz-border-radius: 50%;
		border-radius: 50%;
		background: none;
	}
		#mobile-toggle .menui {
			width: 24px;
			left: 50%;
			margin-left: -12px;
			height: 1px;
			background: #003e7e;
			transition: 0.6s ease;
			transition-timing-function: cubic-bezier(.75,0,.29,1.01);
			position: absolute;
		}
		#mobile-toggle .top-menu{top: 14px}
		#mobile-toggle .mid-menu{top: 19px}
		#mobile-toggle .bot-menu{top: 24px}
		#mobile-toggle .top-menu.animate{top: 19px!important; -webkit-transform: rotate(45deg); transform: rotate(45deg)}
		#mobile-toggle .mid-menu.animate{opacity: 0}
		#mobile-toggle .bot-menu.animate{top: 19px!important; -webkit-transform: rotate(-225deg); transform: rotate(-225deg)}
		
	#footer{margin-top: 45px; padding-top: 30px}
	
	.primary-menu{text-align: center}
		.primary-menu > ul > li{float: none}
		.primary-menu > ul > li + li{margin: 15px 0 0 0}
		
	.primary-menu > ul > li > a{
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center
	}
	
	.row-txtimg .col-md-5,
	.row-txtimg .col-md-6{
		-ms-flex: 0 0 100%!important;
		flex: 0 0 100%!important;
		max-width: 100%!important;
		flex: 0 0 auto\0!important
	}
	.row-txtimg .col-md-5{margin-top: 30px}
	
	.element-txtimg.start-reverse .element-body > .row:nth-child(odd) .col-md-6{-ms-flex-order: 0; order: 0}
	.element-txtimg .element-body > .row:nth-child(odd) .masked-media,
	.element-txtimg .element-body > .row:nth-child(odd) .masked-media img{margin-left: auto; margin-right: auto}
	.fullwidth-media img{max-width: 100%}
	
	.editor-content .person-masked{display: none!important}
	
	#header-logo,
	#header-logo + .col-md-8{flex: 1}
	#header-logo + .col-md-8{padding-right: 80px}
	.hide-mobile{display: none!important}
	
		#header-logo img{max-width: 140px}
		
	#header > .container > .row{height: 60px; position: fixed; top: 0; left: 0; z-index: 100; width: 100%; background-color: #fff; -ms-flex-align: center!important; align-items: center!important;}
	
	.header-contact > li + li{margin-left: 25px}
	* + .wpml-ls{margin-left: 30px}
	
	.wpml-ls ul > li > a{width: 40px; height: 40px; font-size: 12px}
	
	#header-items{margin: 0; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #fff; z-index: 50; padding: 75px 0 15px 0; display: none}
		#primary-menu{position: relative; height: 100%; overflow-y: auto}
}
@media (max-width: 767px){
	.builder-element.element-hero + .builder-element{margin-top: 30px; padding-top: 30px}
	
	.row-posts .col-sm-6:nth-child(n+3){margin-top: 30px}	
	
	.welcome-content{margin-left: 0; width: 100%; height: auto; padding: 25px 15px; text-align: center; mask-image: none!important; -webkit-mask-image: none!important}
		.element-hero .container:before{display: none}
	.welcome-person{display: none!important}
	
	.col-md-6 + .col-md-6,
	.col-md-4 + .col-md-4{margin-top: 30px}
	
	.element-header{text-align: center}
	
	.btn{min-width: inherit}
}
@media (max-width: 575px){
	.col-sm-6 + .col-sm-6{margin-top: 30px}	
}