/* ----------------------------------------------------------------

	- Basic
	- Typography
	- Basic Layout Styles
	- Helper Classes
	- Columns & Grids
	- Flex Slider
	- Header
		- Logo
		- Primary Menu
		- Sticky Header
	- Page Title
	- Content
	- Portfolio
	- Blog
	- Shortcodes
		- Buttons
		- Featured Boxes
	- Go To Top
	- Stretched Layout
	- Page Transitions

---------------------------------------------------------------- */


/* ----------------------------------------------------------------
	Bootstrap Adjustments
-----------------------------------------------------------------*/

@media (min-width: 576px) {
	.container { max-width: 540px; }
}

@media (min-width: 768px) {
	.container { max-width: 750px; }
}

@media (min-width: 992px) {
	.container { max-width: 970px; }
}

@media (min-width: 1200px) {
	.container { max-width: 1170px; padding: 0 75px;
	}
}


body,
.dropdown-menu { font-size: 0.875rem; }


/* ----------------------------------------------------------------
	Basic
-----------------------------------------------------------------*/

dl, dt, dd, ol, ul, li {
	margin: 0;
	padding: 0;
}

.clear {
	clear: both;
	display: block;
	font-size: 0px;
	height: 0px;
	line-height: 0;
	width: 100%;
	overflow:hidden;
}

::selection {
	background: #90BD43;
	color: #FFF;
	text-shadow: none;
}


/* ----------------------------------------------------------------
	Typography
-----------------------------------------------------------------*/


body {
	line-height: 1.5;
	color: #555;
	font-family: 'Montserrat', "Helvetica Neue", sans-serif;
}

a {
	text-decoration: none !important;
	color: #1ABC9C;
}

a img { border: none; }

a:hover { cursor: pointer !important; }

img { max-width: 100%; }

.nowrap { white-space: nowrap; font-size: inherit !important; }

.portfolio-item img {
	border-radius: 4px;
	box-shadow: 0 0 4px rgb(35, 35, 36);
}

@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@400;700&family=Montserrat:wght@300;400;700&display=swap');

/*--- CSS RULES FOR FONT FAMILY SPECIFICATION --- */

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("fonts/fa-regular-400.eot");
  src: 	url("fonts/fa-regular-400.eot?#iefix") format("embedded-opentype"),
  		url("fonts/fa-regular-400.woff2") format("woff2"),
  		url("fonts/fa-regular-400.woff") format("woff"),
  		url("fonts/fa-regular-400.ttf") format("truetype"),
  		url("fonts/fa-regular-400.svg#fontawesome") format("svg"); }

.far {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: 	url("fonts/fa-solid-900.eot");
  src: 	url("fonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),
  		url("fonts/fa-solid-900.woff2") format("woff2"),
  		url("fonts/fa-solid-900.woff") format("woff"),
  		url("fonts/fa-solid-900.ttf") format("truetype"),
  		url("fonts/fa-solid-900.svg#fontawesome") format("svg"); }

.fa,
.fas {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900; }

/* ----------------------------------------------------------------
	Basic Layout Styles
-----------------------------------------------------------------*/


h1,
h2,
h3,
h4,
h5,
h6 {
	color: #444;
	font-weight: 500;
	line-height: 1.5;
	margin: 0 0 30px 0;
	font-family: 'Baloo 2', sans-serif;
}

h1 { font-size: 36px; }

h2 { font-size: 30px; }

h3 { font-size: 24px; }

h1 > span:not(.nocolor):not(.badge),
h2 > span:not(.nocolor):not(.badge),
h3 > span:not(.nocolor):not(.badge),
h4 > span:not(.nocolor):not(.badge),
h5 > span:not(.nocolor):not(.badge),
h6 > span:not(.nocolor):not(.badge) { color: inherit; }

.portfolio-item h2 {
	font-family: 'Montserrat', "Helvetica Neue", sans-serif;
	font-size: 12px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	padding-right: 3px;
	margin-top: .6em;
}

p,
pre,
ul,
ol,
dl,
dd,
blockquote,
address,
table,
fieldset,
form { margin-bottom: 30px; }

/* ----------------------------------------------------------------
	Helper Classes
-----------------------------------------------------------------*/

.uppercase { text-transform: uppercase !important; }

.tright { text-align: right !important; }

.tleft { text-align: left !important; }

.fright { float: right !important; }

#wrapper {
	position: relative;
	float: none;
	width: 1220px;
	margin: 0 auto;
	background-color: #FFF;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
	-moz-box-shadow: 0 0 10px rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.nomargin {margin: 0 !important; }

.noborder { border: none !important; }

.nopadding { padding: 0 !important; }

.not-animated { opacity: 0; }

/* ----------------------------------------------------------------
	Columns & Grids
-----------------------------------------------------------------*/


.col_half,
.postcontent.bothsidebar { width: 48%; }
.col_one_third { width: 30.63%; }
.col_two_third { width: 65.33%; }
.col_one_fourth,
.sidebar { width: 22%; }
.col_three_fourth,
.postcontent { width: 74%; }
.col_one_fifth { width: 16.8%; }
.col_two_fifth { width: 37.6%; }
.col_three_fifth { width: 58.4%; }
.col_four_fifth { width: 79.2%; }
.col_one_sixth { width: 13.33%; }
.col_five_sixth { width: 82.67%; }

.postcontent,
.sidebar,
.col_full,
.col_half,
.col_one_third,
.col_two_third,
.col_three_fourth,
.col_one_fourth,
.col_one_fifth,
.col_two_fifth,
.col_three_fifth,
.col_four_fifth,
.col_one_sixth,
.col_five_sixth {
	display: block;
	position: relative;
	margin-right: 4%;
	margin-bottom: 50px;
	float: left;
}

.col_last {
	margin-right: 0 !important;
	float: right;
	clear: right;
}

#contact .contact-info .col-lg-3 {
	display: inline-block;
	background-color: #1F4957;
	margin-right: 4px;
	padding: 20px 0 10px 0;
	width: 24%;
}

#contact .contact-info a:hover { background-color: #36A7B2; transition: background .2s; }

#contact .contact-info a:first-of-type { border-radius: 30px 0 0 30px; }

#contact .contact-info a:nth-of-type(3) { border-radius: 0 30px 30px 0; }

#contact .contact-info .social a:hover { background: none; }

#contact .contact-info .col_last.social {
	background-color: initial;
	width: 24%;
	font-size: 30px;
	text-align: center;
	line-height: 0;
	padding: 0;
	display: inline-flex;
}

#contact .social i {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	line-height: 2.1em;
}

#contact .contact-info a { color: #fff; }

#contact .contact-info i { margin-right: 12px; }

.fa-linkedin:hover, .fa-linkedin-in:hover,
.fa-twitter-square:hover, .fa-twitter:hover,
.fa-youtube:hover, .fa-youtube-square:hover { transition: background .2s; }

.fa-linkedin:hover, .fa-linkedin-in:hover { background-color: #2867B2; }

.fa-twitter-square:hover, .fa-twitter:hover { background-color: #1DA1F2; }

.fa-youtube:hover, .fa-youtube-square:hover { background-color: #ff0000; }

/* ----------------------------------------------------------------
	Flex Slider
-----------------------------------------------------------------*/


.fslider,
.fslider .flexslider,
.fslider .slider-wrap,
.fslider .slide,
.fslider .slide > a,
.fslider .slide > img,
.fslider .slide > a > img {
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	overflow: hidden;
	-webkit-backface-visibility: hidden;
}

.fslider { min-height: 32px; }


.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus  { outline: none; border: none; }
.slider-wrap,
.flex-control-nav,
.flex-direction-nav {margin: 0; padding: 0; list-style: none; border: none;}

.flexslider {position: relative;margin: 0; padding: 0;}
.flexslider .slider-wrap > .slide {display: none; -webkit-backface-visibility: hidden;}
.flexslider .slider-wrap img {width: 100%; display: block;}
.flex-pauseplay span {text-transform: capitalize;}

.slider-wrap:after {content: "\0020"; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}
html[xmlns] .slider-wrap {display: block;}
* html .slider-wrap {height: 1%;}

.no-js .slider-wrap > .slide:first-child {display: block;}

.flex-viewport {
	max-height: 2000px;
	-webkit-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}

.flex-control-nav {
	position: absolute;
	z-index: 10;
	text-align: center;
	top: 14px;
	right: 10px;
	margin: 0;
}

.flex-control-nav li {
	float: left;
	display: block;
	margin: 0 3px;
	width: 10px;
	height: 10px;
}

.flex-control-nav li a {
	display: block;
	cursor: pointer;
	text-indent: -9999px;
	width: 10px !important;
	height: 10px !important;
	border: 1px solid #FFF;
	border-radius: 50%;
	transition: all .3s ease-in-out;
	-webkit-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
}

.flex-control-nav li:hover a,
.flex-control-nav li a.flex-active { background-color: #FFF; }

/* ----------------------------------------------------------------
	Header
-----------------------------------------------------------------*/


#header {
	position: relative;
	background-color: #FFF;
	border-bottom: 1px solid #F5F5F5;
}

#header .container { position: relative; padding: 0 0 0 22px; }

#header.transparent-header {
	background: transparent;
	border-bottom: none;
	z-index: 199;
}

#header.semi-transparent { background-color: rgba(255,255,255,0.8); }

#header.transparent-header.floating-header { margin-top: 60px; }

#header.transparent-header.floating-header .container {
	width: 1190px;
	max-width: 1190px;
	background-color: #FFF;
	padding: 0 40px;
	border-radius: 2px;
}

#header.transparent-header.floating-header.sticky-header .container {
	width: 1140px;
	max-width: 1140px;
	padding: 0 15px;
}

#header.transparent-header + #slider,
#header.transparent-header + #page-title.page-title-parallax,
#header.transparent-header + #google-map,
#slider + #header.transparent-header {
	top: -100px;
	margin-bottom: -100px;
}

#header.semi-transparent + #slider { top: -100px; margin-bottom: -100px; }

#header.transparent-header.floating-header + #slider,
#header.transparent-header.floating-header + #google-map {
	top: -160px;
	margin-bottom: -160px;
}

#header.transparent-header + #page-title.page-title-parallax .container {
	z-index: 5;
	padding-top: 100px;
}

#header.full-header { border-bottom-color: #fff; }

body.stretched #header.full-header .container {
	width: 100%;
	max-width: none;
	padding: 0 30px;
}

#header.transparent-header.full-header #header-wrap { border-bottom: 1px solid rgba(0,0,0,0.1); }

#slider + #header.transparent-header.full-header #header-wrap {
	border-top: 1px solid rgba(0,0,0,0.1);
	border-bottom: none;
}


/* ----------------------------------------------------------------
	Logo
-----------------------------------------------------------------*/


#logo {
	position: relative;
	float: left;
	font-family: 'Baloo 2', sans-serif;
	font-size: 36px;
	line-height: 100%;
	margin-right: 40px;
}

#logo a {
	display: block;
	color: #000;
}

#logo img {
	display: block;
	max-width: 100%;
}

#logo a.retina-logo { display: none; }

/* ----------------------------------------------------------------
	Primary Menu
-----------------------------------------------------------------*/


#primary-menu { float: right; }

#primary-menu ul.mobile-primary-menu { display: none; }

#header.full-header #primary-menu > ul {
	float: left;
	padding-right: 15px;
	margin-right: 15px;
	border-right: 1px solid #fff;
}

#header.transparent-header.full-header #primary-menu > ul { border-right-color: rgba(0,0,0,0.1); }

#primary-menu-trigger,
#page-submenu-trigger {
	opacity: 0;
	pointer-events: none;
	cursor: pointer;
	font-size: 14px;
	position: absolute;
	top: 50%;
	margin-top: -25px;
	width: 50px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	-webkit-transition: opacity .3s ease;
	-o-transition: opacity .3s ease;
	transition: opacity .3s ease;
}

.icon-reorder:before { 
	font-family: 'Font Awesome 5 Free';
	font-style: initial;
	content: '\f0c9';
	font-weight: bold;
}

#primary-menu ul {
	list-style: none;
	margin: 0;
}

#primary-menu > ul { float: left; }

#primary-menu ul li { position: relative; }

#primary-menu ul > li {
	float: left;
	margin-left: 2px;
}

#primary-menu > ul > li:first-child { margin-left: 0; }

#primary-menu ul li > a {
	display: block;
	line-height: 22px;
	padding: 33px 0 0;
	color: #444;
	font-weight: bold;
	font-size: 13px;
	letter-spacing: 1px;
	text-transform: uppercase;
	font-family: 'Baloo 2', sans-serif;
	-webkit-transition: margin .4s ease, padding .4s ease;
	-o-transition: margin .4s ease, padding .4s ease;
	transition: margin .4s ease, padding .4s ease;
}

#primary-menu ul li > a div::before {
	font-family: 'Font Awesome 5 Free';
	padding-right: 1em;
}

div.services::before { content: "\f0b1"; }

div.work::before { content: "\f53f"; }

div.contact::before { content: "\f086"; }

div.articles::before { content: "\f303"; }

#primary-menu ul li > a > div {
	padding: 10px 1.6em 8px;
	border-radius: 24px;
}
#primary-menu ul li > a > div:hover {
	background-color: #36A7B2;
	transition: background .3s;
}

/* ----------------------------------------------------------------
	Sticky Header
-----------------------------------------------------------------*/

#header,
#header-wrap,
#logo img {
	height: 100px;
	-webkit-transition: background-color .7s ease, height .4s ease, opacity .3s ease;
	-o-transition: background-color .7s ease, height .4s ease, opacity .3s ease;
	transition: background-color .7s ease, height .4s ease, opacity .3s ease;
}

#logo img { width: 280px; margin-top: -4px; }

#header.sticky-style-2 { height: 161px; }

#header.sticky-style-3 { height: 181px; }

#header.sticky-style-2 #header-wrap { height: 60px; }

#header.sticky-style-3 #header-wrap { height: 80px; }

#primary-menu > ul > li > ul,
#primary-menu > ul > li > .mega-menu-content,
#primary-menu > ul > li.mega-menu > .mega-menu-content {
	-webkit-transition: top .4s ease;
	-o-transition: top .4s ease;
	transition: top .4s ease;
}

#top-search,
#top-cart {
	-webkit-transition: margin .4s ease, opacity .3s ease;
	-o-transition: margin .4s ease, opacity .3s ease;
	transition: margin .4s ease, opacity .3s ease;
}

body:not(.top-search-open) #header-wrap #logo,
body:not(.top-search-open) #primary-menu > ul,
body:not(.top-search-open) #primary-menu > .container > ul,
body:not(.top-search-open) #top-cart,
body:not(.top-search-open) #side-panel-trigger,
body:not(.top-search-open) #top-account {
	opacity: 1;
	-webkit-transition: height .4s ease, margin .4s ease, opacity .2s .2s ease;
	-o-transition: height .4s ease, margin .4s ease, opacity .2s .2s ease;
	transition: height .4s ease, margin .4s ease, opacity .2s .2s ease;
}

#header-wrap {
	position: relative;
	z-index: 199;
	-webkit-backface-visibility: hidden;
	background-color: rgba(43,48,59,0.8);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}

#header.sticky-header #header-wrap {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background-color: #FFF;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

#header.semi-transparent.sticky-header #header-wrap { background-color: rgba(255,255,255,0.8) }

#header.sticky-header:not(.static-sticky),
#header.sticky-header:not(.static-sticky) #header-wrap,
#header.sticky-header:not(.static-sticky):not(.sticky-style-2):not(.sticky-style-3) #logo img { height: 60px; }

#header.sticky-header:not(.static-sticky):not(.sticky-style-2):not(.sticky-style-3) #logo img {
	width: 220px;
	transition: width .4s ease, height .4s ease, margin .4s ease;
}

#header.sticky-header:not(.static-sticky) #primary-menu > ul > li > a {
	padding-top: 9px;
}

#header.sticky-header:not(.static-sticky).sticky-style-2,
#header.sticky-header:not(.static-sticky).sticky-style-3 { height: 161px; }

#header.sticky-header:not(.static-sticky).sticky-style-2 #primary-menu,
#header.sticky-header:not(.static-sticky).sticky-style-3 #primary-menu { border-top: 0; }

#header.sticky-header:not(.static-sticky) #top-search,
#header.sticky-header:not(.static-sticky) #top-cart,
#header.sticky-header:not(.static-sticky) #side-panel-trigger {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}

#header.sticky-header:not(.static-sticky) #top-account {
	margin-top: 15px !important;
	margin-bottom: 14px !important;
}

#header.sticky-header:not(.static-sticky) #top-cart .top-cart-content { top: 40px; }

#header.sticky-header.sticky-style-2 #primary-menu { border-top: 0; }

/* Flex Slider - Thumbs
-----------------------------------------------------------------*/

.fslider[data-animation="fade"][data-thumbs="true"] .flexslider,
.fslider.testimonial[data-animation="fade"] .flexslider { height: auto !important; }

.flex-control-nav.flex-control-thumbs {
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	margin: 2px -2px -2px 0;
	height: 75px;
}

.flex-control-nav.flex-control-thumbs li { margin: 0 2px 2px 0; }

.flex-control-nav.flex-control-thumbs li img {
	cursor: pointer;
	text-indent: -9999px;
	border: 0;
	border-radius: 0;
	margin: 0;
	opacity: 0.5;
	-webkit-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.flex-control-nav.flex-control-thumbs li,
.flex-control-nav.flex-control-thumbs li img {
	display: block;
	width: auto !important;
	height: auto !important;
	border: 1px solid #383c45;
	margin-right: -1px;
}

.flex-control-nav.flex-control-thumbs li:hover img,
.flex-control-nav.flex-control-thumbs li img.flex-active {
	opacity: 1;
}


/* Flex Thumbs - Flexible
-----------------------------------------------------------------*/

.fslider.flex-thumb-grid .flex-control-nav.flex-control-thumbs {
	margin: 2px -2px -2px 0;
	height: auto;
}

.fslider.flex-thumb-grid .flex-control-nav.flex-control-thumbs li {
	width: 25% !important;
	height: auto !important;
	margin: 0;
	padding: 0 2px 2px 0;
}

.fslider.flex-thumb-grid.grid-3 .flex-control-nav.flex-control-thumbs li { width: 33.30% !important; }
.fslider.flex-thumb-grid.grid-5 .flex-control-nav.flex-control-thumbs li { width: 20% !important; }
.fslider.flex-thumb-grid.grid-6 .flex-control-nav.flex-control-thumbs li { width: 16.66% !important; }
.fslider.flex-thumb-grid.grid-8 .flex-control-nav.flex-control-thumbs li { width: 12.5% !important; }
.fslider.flex-thumb-grid.grid-10 .flex-control-nav.flex-control-thumbs li { width: 10% !important; }
.fslider.flex-thumb-grid.grid-12 .flex-control-nav.flex-control-thumbs li { width: 8.33% !important; }

.fslider.flex-thumb-grid .flex-control-nav.flex-control-thumbs li img {
	width: 100% !important;
	height: auto !important;
}

/* Page Title - Mini
-----------------------------------------------------------------*/

#page-title.page-title-mini { padding: 20px 0; }

#page-title.page-title-mini h1 {
	font-weight: 600 500;
	font-size: 18px;
	color: #444;
}

#page-title.page-title-mini span { display: none; }


/* ----------------------------------------------------------------
	Content
-----------------------------------------------------------------*/


/*#content {
	position: relative;
	overflow: hidden;
	background-color: #FFF;
}*/

#content p { color: #e4e7e7; line-height: 1.8; font-size: 14px; }

.content-wrap {
	position: relative;
	padding: 60px 0 10px;
}

#content .container {
	position: relative;
	padding: 50px 50px 50px 74px;
	margin: 40px auto;
	border-radius: 12px;
	border-bottom: 4px solid #313642;
	box-shadow: inset 0px 4px 0px 0px rgba(31, 31, 32, 0.75);
}

#content .container, #footer { background-color: #242529; }

#content #services.container { margin-top: 0; padding-bottom: 10px; }

#content #services p { color: #abb9ba; }

.grid-container {
	position: relative;
	overflow: hidden;
}

body:not(.device-touch) .grid-container {
	-webkit-transition: height .4s ease;
	-o-transition: height .4s ease;
	transition: height .4s ease;
}


/* ----------------------------------------------------------------
	Portfolio
-----------------------------------------------------------------*/


/* Portfolio - Filter
-----------------------------------------------------------------*/

.portfolio-filter {
	position: relative;
	margin: 0 0 40px 0;
	list-style: none;
}

ul.portfolio-filter { display: flex; justify-content: space-between; }

.portfolio-filter li {
	float: left;
	position: relative;
	background-color: #1F4957;
	margin: 0 3px;
	border-radius: 20px;
}

.portfolio-filter li a {
	display: block;
	position: relative;
	padding: 4px 14px;
	border-radius: 20px;
	font-size: 10px;
	line-height: 15px;
}

.portfolio-filter li.flexbreak { display: none; }

.portfolio-filter li a:hover { color: #36A7B2; }

.portfolio-filter li.activeFilter a {
	color: #FFF !important;
	background-color: #90BD43;
	margin: -1px 0;
}


.bothsidebar .portfolio-filter li a { padding: 12px 14px; }


/* Portfolio - Items
-----------------------------------------------------------------*/

.portfolio {
	position: relative;
	margin: 0 -12px -12px 0;
}

body:not(.device-touch) .portfolio {
	-webkit-transition: height .4s linear;
	-o-transition: height .4s linear;
	transition: height .4s linear;
}

.portfolio-item {
	float: left;
	position: relative;
	width: 25%;
	height: auto;
	padding: 0 12px 12px 0;
}

#portfolio .col-md-2 { padding: 0 20px 12px 0; }

/* PORTFOLIO GALLERY
-----------------------------------------------------------------*/

#portfolio article img { border-radius: 3px; }

#portfolio article .modal img { border-radius: 0; }

#portfolio h2 {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 10px;
  line-height: 1.2em;
  font-weight: normal;
  color: #abb9ba;
  letter-spacing: 0;
  margin: 10px 0;
  clear: both;
}

a.image-modal-hover {
	position: relative;
	display: block;
	max-width: 100%;
}

a.image-modal-hover .portfolio-overlay {
	width: 100%;
	height: 100%;
	display: block;
	background: 0 0;
	position: absolute;
	top: 0;
	color: #fff;
	text-align: center;
	line-height: 100%;
	-webkit-transition: all .2s;
	transition: all .2s;
}

a.image-modal-hover:hover .portfolio-overlay {
	background-color: rgba(144, 189, 67, .85);
	border-radius: 3px;
}

a.image-modal-hover .portfolio-overlay i {
	top: 60%;
	margin-top: -15px;
	position: absolute;
	left: 50%;
	margin-left: -15px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	color: transparent;
	-webkit-transition: all .5s;
	transition: all .5s;
	font-size: /*20px*/ 2em;
}

a.image-modal-hover:hover .portfolio-overlay i {
	top: 50%;
	color: #fff;
	text-shadow: 0 0 4px rgb(82, 107, 39);
}

.image-modal-hover + h3 { margin: 4px 0 10px 0; }

.modal-dialog {
	width: auto;
	margin: 30px auto;
	max-width: 700px;
}

.modal-dialog.portrait { max-width: 490px; }

.hover-effect {
    position: relative;
    display: inline-block;
    max-width: 100%
}

.hover-effect:hover {
    box-shadow: none
}

.hover-effect .overlay {
    width: 100%;
    height: 100%;
    display: block;
    background: 0 0;
    position: absolute;
    top: 0;
    color: #fff;
    text-align: center;
    line-height: 100%;
    -webkit-transition: all .2s;
    transition: all .2s
}

.hover-effect .fa {
    top: 60%;
    margin-top: -15px;
    position: absolute;
    left: 50%;
    margin-left: -15px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    color: transparent;
    -webkit-transition: all .5s;
    transition: all .5s
}

.hover-effect:hover .overlay {
    background-color: rgba(144, 189, 67, .85);
    border-radius: 4px;
    text-shadow: 0 1px 3px #5a7307
}

.hover-effect:hover .fa {
    top: 50%;
    color: #fff
}

#portfolio .entry-meta, .photometa .entry-meta { float: left; margin: 0; padding: 0; }

#portfolio .entry-meta li {
  font-size: 10px;
  line-height: 1em;
  margin: 6px 0 1em;
}

#portfolio .entry-meta li i {
  font-size: 11px;
  line-height: 1.2em;
}

.modal .entry-meta li {
  font-size: 12px;
  line-height: .4em;
  margin: 0 10px 15px 0;
}

.modal .entry-meta li i {
	font-size: 12px;
	margin-right: 5px;
	line-height: 1.2em;
}

.photometa { margin-top: 10px; padding-bottom: 10px; }

.photometa .credit { margin: 0; padding: 0; font-size: 12px; }

.portfolio-filter li a:hover { color: #fff !important; background-color: #36A7B2; }

.portfolio-filter li.activeFilter a { font-weight: inherit; }

.carousel-indicators {  margin-bottom: 2px; }

.carousel-control span.fa { position: absolute; top: 50%; right: 10px; }

.left.carousel-control span.fa { left: 10px; right: auto; }

.modal-body { padding: 0; }

.modal-body img {
	max-width: initial;
	width: 100%;
	display: block;
	margin: 0 auto;
}

.imageinfo-container { width: 1000px; margin: 0 auto; }

.imageinfo-container.medium { padding: 0 100px; }

.imageinfo-container .single-image-shadow { box-shadow: 0 0 4px #000; }

.modal-dialog img { height: auto; }

.modal-dialog img { height: auto; }

.modal-header { border: none; }

h1.modal-title { 
	margin: 20px 10px 10px;
	font-weight: 700;
	font-size: 24px;
}

.modal h2 { 
	margin: 20px 10px 10px;
	font-weight: 700;
	font-size: 18px;
	text-transform: uppercase;
}

#content .modal-body p, .tags { margin: 0 10px; }

#content .modal-body p > a { 
	color: #fff;
	margin-right: 12px;
	padding: 4px 14px;
	background-color: #1F4957;
	border-radius: 20px;
}

#content .modal-body p > a > span { display: none; }

#content .modal-body p > a:hover { background-color: #36A7B2; transition: all .2s ease-in-out; }

#content .modal-body p > a:hover > span { display: inline; margin-left: 12px; transition: all .2s ease-in-out; }

.modal-body ul.live-demo li {
	list-style-type: none;
	margin: .8em 10px 0;
	line-height: 1.6em;
}

.modal-body ul.live-demo li:last-of-type { 
	border-bottom: 1px dashed #4a4f4f;
	padding-bottom: 20px;
}

ul.live-demo li a::after { display: none; }

ul.live-demo li:hover a::after {
	display: inline;
	position: absolute;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900; content: "\f35d";
	font-size: .6em;
	margin: 0 0 0 .5em;
}

.dark .modal-body h3 {
	display: inline-block;
	font-family: 'Montserrat', "Helvetica Neue", sans-serif;
	font-size: 11px;
	text-transform: lowercase;
	color: #bdbdbd;
	letter-spacing: .01em;
}

.modal-body h3::after { content: ", "; }

.modal-body h3:last-of-type::after { content: none; }

.modal-body p {
	margin: 0;
	padding-bottom: 20px;
	color: #d2d2d2;
	font-family: 'Montserrat', "Helvetica Neue", sans-serif;
	border-bottom: 1px dashed #4a4f4f;
}

#content .modal-body p { line-height: 1.6; }

.note { 
	font-size: 10px;
	text-transform: uppercase;
}

.note i { margin-right: 4px; vertical-align: text-top; }

.tags {
	border: none;
	border-radius: 0 0 3px 3px;
	padding: 0;
	/*margin: 0;*/
	padding: 6px 0 6px;
}

.tags::before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900; content: "\f07b";
	font-size: 11px;
	margin-right: .4em;
}

.modal-body ol.photo-caption { margin-left: 26px; color: #d2d2d2; }

.modal-body ol.photo-caption li {
	list-style-type: none;
	counter-increment: step-counter;
	text-indent: -27px hanging;
	line-height: 1.8em;
}

.modal-body ol.photo-caption li::before {
	content: counter(step-counter);
    margin-right: 10px;
    background-color: #555;
    color: white;
    font-weight: bold;
    padding: 3px 6px;
    border-radius: 2px;
}

.modal-body ol.photo-caption li::after {
	content: "";
	margin-bottom: 1.2em;
	display: block;
}

.modal-body blockquote {
	color: #d2d2d2;
	border-left: 2px solid #626262;
	font-size: 14px;
	padding: 0 20px;
}

.modal-backdrop.in {
	opacity: 0.93;
	filter: alpha(opacity=93);
	z-index: 200;
}

.modal-body button.close {
	position: absolute;
	right: -5px;
	top: -3px;
	font-size: 21px;
	font-weight: bold;
	line-height: .8em;
	color: #888;
	opacity: 1;
	text-shadow: none;
}

.modal-body button.close:hover {
	color: #bababa;
}

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

.modal-dialog {
	margin: 30px auto;
}


/* ----------------------------------------------------------------
	Blog
-----------------------------------------------------------------*/

.entry-image { margin-bottom: 30px; }

.entry-image,
.entry-image > a,
.entry-image .slide a,
.entry-image img {
	display: block;
	position: relative;
	width: 100%;
	height: auto;
}

.entry-meta {
	margin: 10px -10px -15px 0;
	list-style: none;
}

.entry-content { position: relative; }

.ipost .entry-image img { border-radius: 0; }

.ipost .entry-meta {
	color: #abb9ba;
	margin: 0;
	font-size: 10px;
}

.ipost .entry-date { float: left; }

.ipost .entry-date::before {
	font-family: 'Font Awesome 5 Free';
	display: inline-block;
	content: "\f133";
	margin-right: 5px;
}

.ipost .entry-categories::before {
	font-family: 'Font Awesome 5 Free';
	display: inline-block;
	content: "\f07b";
	margin: 0 2px 0 10px;
}

.ipost .entry-content { margin-top: 20px; }

.ipost .entry-content p { margin-bottom: 0; }

#feature-articles .col_half { width: 47%; margin-right: 6%; }

#feature-articles h1 {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.4em;
}

#feature-articles h1 a, .ipost .entry-categories a { color: #90BD43; }

#feature-articles h1 a:hover { color: #fff; }

#feature-articles img { border-radius: 12px; }

#feature-articles button {
	background-color: transparent;
	border: none;
	border-radius: 22px;
	background-color: #1F4957;
	font-family: 'Baloo 2', sans-serif;
	letter-spacing: .02em;
	font-weight: 700;
	padding: 8px 29px 6px;
	text-transform: uppercase;
}

#feature-articles button a { color: #fff; }

#feature-articles button i { margin-left: 12px; margin-left: 12px; }

#feature-articles button:hover { background-color: #36A7B2; transition: all .2s ease-in-out; }


/* ----------------------------------------------------------------
	Buttons
-----------------------------------------------------------------*/


.button {
	display: inline-block;
	position: relative;
	cursor: pointer;
	outline: none;
	white-space: nowrap;
	margin: 5px;
	padding: 0 22px;
	font-size: 14px;
	height: 40px;
	line-height: 40px;
	background-color: #1ABC9C;
	color: #FFF;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 1px;
	border: none;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
}

body:not(.device-touch) .button {
	-webkit-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.button.button-large {
	padding: 0 26px;
	font-size: 16px;
	height: 46px;
	line-height: 46px;
}

.button i {
	position: relative;
	top: 1px;
	line-height: 1;
	margin-right: 5px;
	width: 16px;
	text-align: center;
}

.button.tright i { margin: 0 0 0 5px; }


/* ----------------------------------------------------------------
	Featured Boxes
-----------------------------------------------------------------*/


.feature-box {
	position: relative;
	margin-top: 20px;
	padding: 0 0 0 80px;
}

.feature-box:first-child { margin-top: 0; }

.feature-box .fbox-icon {
	display: block;
	position: absolute;
	width: 60px;
	height: auto;
	top: 0;
	left: 0;
}

.feature-box .fbox-icon a,
.feature-box .fbox-icon i,
.feature-box .fbox-icon img {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	color: #FFF;
}

.feature-box .fbox-icon i,
.feature-box .fbox-icon img {
	border-radius: 50%;
	background-color: #1ABC9C;
}

.feature-box h3 {
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 0;
	color: #333;
}

.feature-box h3 span { color: inherit; }

.feature-box p {
	margin: 8px 0 0 0;
	color: #999;
}

/* Feature Box - Plain
-----------------------------------------------------------------*/

.feature-box.fbox-plain .fbox-icon {
	border: none !important;
	height: auto !important;
}

.feature-box.fbox-plain .fbox-icon i,
.feature-box.fbox-plain .fbox-icon img {
	border: none !important;
	background-color: transparent !important;
	color: #1ABC9C;
	border-radius: 0;
}

/*.feature-box.fbox-plain .fbox-icon img { height: 64px; }*/

/* Heading Block - with Subtitle
-----------------------------------------------------------------*/

.heading-block { margin-bottom: 50px; }

.heading-block h1,
.heading-block h2,
.heading-block h3,
.heading-block h4,
.emphasis-title h1,
.emphasis-title h2 {
	margin-bottom: 0;
	font-weight: 500;
	letter-spacing: 1px;
	color: #333;
}

.heading-block i {
	color: #D0DE52;
	font-size: 28px;
	position: absolute;
	left: 26px;
	top: 52px;
}

.heading-block h2 { font-size: 30px; }

.heading-block > span:not(.before-heading) {
	display: block;
	margin-top: 10px;
	font-weight: 400;
	color: #777;
}

.heading-block h2 + span { font-size: 18px; }

.heading-block:after {
	content: '';
	display: block;
	margin-top: 30px;
	width: 600px;
}

/* ----------------------------------------------------------------
	Go To Top
-----------------------------------------------------------------*/


#gotoTop {
	display: none;
	z-index: 299;
	position: fixed;
	width: 40px;
	height: 40px;
	background-color: rgba(36, 37, 41, .4);
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	font-size: 20px;
	line-height: 36px;
	text-align: center;
	color: #FFF;
	top: auto;
	left: auto;
	right: 30px;
	bottom: 50px;
	cursor: pointer;
	border-radius: 50%;
}

body:not(.device-touch) #gotoTop {
	transition: background-color .2s linear;
	-webkit-transition: background-color .2s linear;
	-o-transition: background-color .2s linear;
}

.icon-angle-up:before { content: '\f106'; }

.stretched #gotoTop { bottom: 30px; }

#gotoTop:hover { color: #fff; background-color: rgba(144, 189, 67, .8); }


/* ----------------------------------------------------------------
	Preloaders
-----------------------------------------------------------------*/


.preloader,
.preloader2,
.form-process {
	display: block;
	width: 100%;
	height: 100%;
	background: url("images/preloader.gif") center center no-repeat #FFF;
}

.preloader2 { background-color: transparent; }


/* ----------------------------------------------------------------
	Footer
-----------------------------------------------------------------*/


#footer {
	position: relative;
	padding: 56px 0 40px;
}

#footer .col_half { margin: 0; }

#footer ul { float: right; }

#footer li { display: inline; position: relative; }

#footer li:hover { 	transition: all .2s ease-in-out; }

#footer li:nth-child(3) {
	margin-right: 20px;
	padding-right: 20px;
	border-right: 4px solid #2b303b;
}

#footer a {
	display: inline;
	margin-right: 2px;
	border-radius: 50%;
}

#footer li span { display: none; }

#footer li:hover span {
	display: initial;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, 24px);
	font-size: 10px;
	color: white;
	text-transform: uppercase;
}

#footer li:hover:nth-child(3) span { left: 35%; }

#footer i {
	width: 40px;
	height: 40px;
	font-size: 20px;
	text-align: center;
	line-height: 1.2;
	padding: 8px;
	border-radius: 50%;
}

#footer a:hover i { color: #fff; background-color: #36A7B2; }

#footer a:hover i.fa-youtube { background-color: #ff0000; }

#footer a:hover i.fa-twitter { background-color: #1DA1F2; }

#footer a:hover i.fa-linkedin-in { background-color: #2867B2; }


/* ----------------------------------------------------------------
	Stretched Layout
-----------------------------------------------------------------*/


.stretched #wrapper {
	width: 100%;
	margin: 0;
	box-shadow: none;
}

/* ----------------------------------------------------------------
	Page Transitions
-----------------------------------------------------------------*/

body:not(.no-transition) #wrapper,
.animsition-overlay {
	position: relative;
	opacity: 0;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.page-transition-wrap,
.css3-spinner {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1000;
	text-align: center;
	background-color: #FFF;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-perspective: 1000;
}

.css3-spinner {
	position: absolute;
	z-index: auto;
	background-color: transparent;
}

.css3-spinner > div {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -9px;
	margin-left: 13px;
	width: 18px;
	height: 18px;
	background-color: #DDD;
	border-radius: 100%;
	display: inline-block;
	-webkit-animation: bouncedelay 1.4s infinite ease-in-out;
	animation: bouncedelay 1.4s infinite ease-in-out;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.css3-spinner .css3-spinner-bounce1 {
	margin-left: -31px;
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.css3-spinner .css3-spinner-bounce2 {
	margin-left: -9px;
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

@-webkit-keyframes bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0.0) }
	40% { -webkit-transform: scale(1.0) }
}

@keyframes bouncedelay {
	0%, 80%, 100% {
	transform: scale(0.0);
	-webkit-transform: scale(0.0);
	} 40% {
	transform: scale(1.0);
	-webkit-transform: scale(1.0);
	}
}


.css3-spinner > .css3-spinner-flipper {
	width: 32px;
	height: 32px;
	margin-top: -16px;
	margin-left: -16px;
	border-radius: 0;
	-webkit-animation: rotateplane 1.2s infinite ease-in-out;
	animation: rotateplane 1.2s infinite ease-in-out;
}

@-webkit-keyframes rotateplane {
	0% { -webkit-transform: perspective(120px) }
	50% { -webkit-transform: perspective(120px) rotateY(180deg) }
	100% { -webkit-transform: perspective(120px) rotateY(180deg)  rotateX(180deg) }
}

@keyframes rotateplane {
	0% {
		transform: perspective(120px) rotateX(0deg) rotateY(0deg);
		-webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg)
	} 50% {
		transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
		-webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg)
	} 100% {
		transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
		-webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
	}
}

.css3-spinner > .css3-spinner-double-bounce1,
.css3-spinner > .css3-spinner-double-bounce2 {
	width: 40px;
	height: 40px;
	margin-top: -20px;
	margin-left: -20px;
	border-radius: 50%;
	opacity: 0.6;
	-webkit-animation: cssspinnerbounce 2.0s infinite ease-in-out;
	animation: cssspinnerbounce 2.0s infinite ease-in-out;
}

.css3-spinner > .css3-spinner-double-bounce2 {
	-webkit-animation-delay: -1.0s;
	animation-delay: -1.0s;
}

@-webkit-keyframes cssspinnerbounce {
	0%, 100% { -webkit-transform: scale(0.0) }
	50% { -webkit-transform: scale(1.0) }
}

@keyframes cssspinnerbounce {
	0%, 100% {
	transform: scale(0.0);
	-webkit-transform: scale(0.0);
	} 50% {
	transform: scale(1.0);
	-webkit-transform: scale(1.0);
	}
}

.css3-spinner > .css3-spinner-rect1,
.css3-spinner > .css3-spinner-rect2,
.css3-spinner > .css3-spinner-rect3,
.css3-spinner > .css3-spinner-rect4,
.css3-spinner > .css3-spinner-rect5 {
	height: 30px;
	width: 6px;
	margin-top: -15px;
	margin-left: -21px;
	border-radius: 0;
	-webkit-animation: stretchdelay 1.2s infinite ease-in-out;
	animation: stretchdelay 1.2s infinite ease-in-out;
}

.css3-spinner > .css3-spinner-rect2 {
	margin-left: -12px;
	-webkit-animation-delay: -1.1s;
	animation-delay: -1.1s;
}

.css3-spinner > .css3-spinner-rect3 {
	margin-left: -3px;
	-webkit-animation-delay: -1.0s;
	animation-delay: -1.0s;
}

.css3-spinner > .css3-spinner-rect4 {
	margin-left: 6px;
	-webkit-animation-delay: -0.9s;
	animation-delay: -0.9s;
}

.css3-spinner > .css3-spinner-rect5 {
	margin-left: 15px;
	-webkit-animation-delay: -0.8s;
	animation-delay: -0.8s;
}

@-webkit-keyframes stretchdelay {
	0%, 40%, 100% { -webkit-transform: scaleY(0.4) }
	20% { -webkit-transform: scaleY(1.0) }
}

@keyframes stretchdelay {
	0%, 40%, 100% {
	transform: scaleY(0.4);
	-webkit-transform: scaleY(0.4);
	}  20% {
	transform: scaleY(1.0);
	-webkit-transform: scaleY(1.0);
	}
}


.css3-spinner > .css3-spinner-cube1,
.css3-spinner > .css3-spinner-cube2 {
	width: 16px;
	height: 16px;
	border-radius: 0;
	margin-top: -20px;
	margin-left: -20px;
	-webkit-animation: cubemove 1.8s infinite ease-in-out;
	animation: cubemove 1.8s infinite ease-in-out;
}

.css3-spinner > .css3-spinner-cube2 {
	-webkit-animation-delay: -0.9s;
	animation-delay: -0.9s;
}

@-webkit-keyframes cubemove {
	25% { -webkit-transform: translateX(42px) rotate(-90deg) scale(0.5) }
	50% { -webkit-transform: translateX(42px) translateY(42px) rotate(-180deg) }
	75% { -webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5) }
	100% { -webkit-transform: rotate(-360deg) }
}

@keyframes cubemove {
	25% {
	transform: translateX(42px) rotate(-90deg) scale(0.5);
	-webkit-transform: translateX(42px) rotate(-90deg) scale(0.5);
	} 50% {
	transform: translateX(42px) translateY(42px) rotate(-179deg);
	-webkit-transform: translateX(42px) translateY(42px) rotate(-179deg);
	} 50.1% {
	transform: translateX(42px) translateY(42px) rotate(-180deg);
	-webkit-transform: translateX(42px) translateY(42px) rotate(-180deg);
	} 75% {
	transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
	-webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
	} 100% {
	transform: rotate(-360deg);
	-webkit-transform: rotate(-360deg);
	}
}


.css3-spinner > .css3-spinner-scaler {
	width: 40px;
	height: 40px;
	margin-top: -20px;
	margin-left: -20px;
	-webkit-animation: scaleout 1.0s infinite ease-in-out;
	animation: scaleout 1.0s infinite ease-in-out;
}

@-webkit-keyframes scaleout {
	0% { -webkit-transform: scale(0.0) }
	100% {
		-webkit-transform: scale(1.0);
		opacity: 0;
	}
}

@keyframes scaleout {
	0% {
	transform: scale(0.0);
	-webkit-transform: scale(0.0);
	} 100% {
	transform: scale(1.0);
		-webkit-transform: scale(1.0);
		opacity: 0;
	}
}


.css3-spinner > .css3-spinner-grid-pulse {
	width: 48px;
	height: 48px;
	margin-top: -24px;
	margin-left: -24px;
	background-color: transparent !important;
	-webkit-animation: none;
	animation: none;
}

.css3-spinner-grid-pulse > div {
	background-color: #DDD;
	width: 12px;
	height: 12px;
	border-radius: 100%;
	margin: 2px;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	display: inline-block;
	float: left;
	-webkit-animation-name: ball-grid-pulse;
	animation-name: ball-grid-pulse;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-delay: 0;
	animation-delay: 0;
}

.css3-spinner-grid-pulse > div:nth-child(1) {
	-webkit-animation-delay: 0.73s;
	animation-delay: 0.73s;
	-webkit-animation-duration: 1.3s;
	animation-duration: 1.3s;
}

.css3-spinner-grid-pulse > div:nth-child(2) {
	-webkit-animation-delay: 0.32s;
	animation-delay: 0.32s;
	-webkit-animation-duration: 1.3s;
	animation-duration: 1.3s;
}

.css3-spinner-grid-pulse > div:nth-child(3) {
	-webkit-animation-delay: 0.71s;
	animation-delay: 0.71s;
	-webkit-animation-duration: 0.88s;
	animation-duration: 0.88s;
}

.css3-spinner-grid-pulse > div:nth-child(4) {
	-webkit-animation-delay: 0.62s;
	animation-delay: 0.62s;
	-webkit-animation-duration: 1.06s;
	animation-duration: 1.06s;
}

.css3-spinner-grid-pulse > div:nth-child(5) {
	-webkit-animation-delay: 0.31s;
	animation-delay: 0.31s;
	-webkit-animation-duration: 0.62s;
	animation-duration: 0.62s;
}

.css3-spinner-grid-pulse > div:nth-child(6) {
	-webkit-animation-delay: -0.14s;
	animation-delay: -0.14s;
	-webkit-animation-duration: 1.48s;
	animation-duration: 1.48s;
}

.css3-spinner-grid-pulse > div:nth-child(7) {
	-webkit-animation-delay: -0.1s;
	animation-delay: -0.1s;
	-webkit-animation-duration: 1.47s;
	animation-duration: 1.47s;
}

.css3-spinner-grid-pulse > div:nth-child(8) {
	-webkit-animation-delay: 0.4s;
	animation-delay: 0.4s;
	-webkit-animation-duration: 1.49s;
	animation-duration: 1.49s;
}

.css3-spinner-grid-pulse > div:nth-child(9) {
	-webkit-animation-delay: 0.73s;
	animation-delay: 0.73s;
	-webkit-animation-duration: 0.7s;
	animation-duration: 0.7s;
}

@-webkit-keyframes ball-grid-pulse {
	0% {
	-webkit-transform: scale(1);
	transform: scale(1); }

	50% {
	-webkit-transform: scale(0.5);
	transform: scale(0.5);
	opacity: 0.7; }

	100% {
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 1; }
}

@keyframes ball-grid-pulse {
	0% {
	-webkit-transform: scale(1);
	transform: scale(1); }

	50% {
	-webkit-transform: scale(0.5);
	transform: scale(0.5);
	opacity: 0.7; }

	100% {
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 1; }
}


.css3-spinner > .css3-spinner-clip-rotate {
	width: 33px;
	height: 33px;
	margin-top: -17px;
	margin-left: -17px;
	background-color: transparent !important;
	-webkit-animation: none;
	animation: none;
}

.css3-spinner-clip-rotate > div {
	border-radius: 100%;
	border: 2px solid #DDD;
	border-bottom-color: transparent !important;
	height: 33px;
	width: 33px;
	background: transparent !important;
	-webkit-animation: rotate 1s 0s linear infinite;
	animation: rotate 1s 0s linear infinite;
}

@keyframes rotate {
	0% {
	-webkit-transform: rotate(0deg) scale(1);
	transform: rotate(0deg) scale(1); }

	50% {
	-webkit-transform: rotate(180deg) scale(0.6);
	transform: rotate(180deg) scale(0.6); }

	100% {
	-webkit-transform: rotate(360deg) scale(1);
	transform: rotate(360deg) scale(1); }
}


.css3-spinner > .css3-spinner-ball-rotate {
	width: 12px;
	height: 12px;
	margin-top: -6px;
	margin-left: -6px;
	background-color: transparent !important;
	-webkit-animation: ballrotate 1s 0s cubic-bezier(.7, -.13, .22, .86) infinite;
	animation: ballrotate 1s 0s cubic-bezier(.7, -.13, .22, .86) infinite;
}

.css3-spinner-ball-rotate > div {
	background-color: #DDD;
	width: 12px;
	height: 12px;
	border-radius: 100%;
	position: relative;
}

.css3-spinner-ball-rotate > div:nth-child(1), .css3-spinner-ball-rotate > div:nth-child(3) {
	width: 12px;
	height: 12px;
	border-radius: 100%;
	content: "";
	position: absolute;
	opacity: 0.7;
}

.css3-spinner-ball-rotate > div:nth-child(1) {
	top: 0px;
	left: -22px;
}

.css3-spinner-ball-rotate > div:nth-child(3) {
	top: 0px;
	left: 22px;
}


@-webkit-keyframes ballrotate {
  0% {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg); }

  50% {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg); }

  100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg); }
}

@keyframes ballrotate {
  0% {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg); }

  50% {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg); }

  100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg); }
}


.css3-spinner > .css3-spinner-zig-zag {
	background-color: transparent !important;
	-webkit-transform: translate(-15px, -15px);
	-ms-transform: translate(-15px, -15px);
	transform: translate(-15px, -15px);
	-webkit-animation: none;
	animation: none;
}

.css3-spinner-zig-zag > div {
	background-color: #DDD;
	width: 12px;
	height: 12px;
	border-radius: 100%;
	position: absolute;
	margin-left: 15px;
	top: 4px;
	left: -7px;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.css3-spinner-zig-zag > div:first-child {
	-webkit-animation: ball-zig-deflect 1.5s 0s infinite linear;
	animation: ball-zig-deflect 1.5s 0s infinite linear;
}

.css3-spinner-zig-zag > div:last-child {
	-webkit-animation: ball-zag-deflect 1.5s 0s infinite linear;
	animation: ball-zag-deflect 1.5s 0s infinite linear;
}


@-webkit-keyframes ball-zig-deflect {
  17% {
	-webkit-transform: translate(-15px, -30px);
	transform: translate(-15px, -30px); }

  34% {
	-webkit-transform: translate(15px, -30px);
	transform: translate(15px, -30px); }

  50% {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0); }

  67% {
	-webkit-transform: translate(15px, -30px);
	transform: translate(15px, -30px); }

  84% {
	-webkit-transform: translate(-15px, -30px);
	transform: translate(-15px, -30px); }

  100% {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0); }
}

@keyframes ball-zig-deflect {
  17% {
	-webkit-transform: translate(-15px, -30px);
	transform: translate(-15px, -30px); }

  34% {
	-webkit-transform: translate(15px, -30px);
	transform: translate(15px, -30px); }

  50% {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0); }

  67% {
	-webkit-transform: translate(15px, -30px);
	transform: translate(15px, -30px); }

  84% {
	-webkit-transform: translate(-15px, -30px);
	transform: translate(-15px, -30px); }

  100% {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0); }
}

@-webkit-keyframes ball-zag-deflect {
  17% {
	-webkit-transform: translate(15px, 30px);
	transform: translate(15px, 30px); }

  34% {
	-webkit-transform: translate(-15px, 30px);
	transform: translate(-15px, 30px); }

  50% {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0); }

  67% {
	-webkit-transform: translate(-15px, 30px);
	transform: translate(-15px, 30px); }

  84% {
	-webkit-transform: translate(15px, 30px);
	transform: translate(15px, 30px); }

  100% {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0); }
}

@keyframes ball-zag-deflect {
  17% {
	-webkit-transform: translate(15px, 30px);
	transform: translate(15px, 30px); }

  34% {
	-webkit-transform: translate(-15px, 30px);
	transform: translate(-15px, 30px); }

  50% {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0); }

  67% {
	-webkit-transform: translate(-15px, 30px);
	transform: translate(-15px, 30px); }

  84% {
	-webkit-transform: translate(15px, 30px);
	transform: translate(15px, 30px); }

  100% {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0); }
}


.css3-spinner > .css3-spinner-ball-scale-multiple {
	width: 60px;
	height: 60px;
	margin-left: -30px;
	margin-top: -30px;
	background-color: transparent !important;
	-webkit-animation: none;
	animation: none;
}

.css3-spinner-ball-scale-multiple > div {
	background-color: #DDD;
	border-radius: 100%;
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	width: 60px;
	height: 60px;
	-webkit-animation: ball-scale-multiple 1.25s 0s linear infinite;
	animation: ball-scale-multiple 1.25s 0s linear infinite;
}

.css3-spinner-ball-scale-multiple > div:nth-child(2) {
	-webkit-animation-delay: -0.4s;
	animation-delay: -0.4s;
}

.css3-spinner-ball-scale-multiple > div:nth-child(3) {
	-webkit-animation-delay: -0.2s;
	animation-delay: -0.2s;
}

@-webkit-keyframes ball-scale-multiple {
  0% {
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0; }

  5% { opacity: 1; }

  100% {
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 0; }
}

@keyframes ball-scale-multiple {
  0% {
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0; }

  5% { opacity: 1; }

  100% {
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 0; }
}


.css3-spinner > .css3-spinner-triangle-path {
	background-color: transparent !important;
	-webkit-transform: translate(-29.994px, -37.50938px);
	-ms-transform: translate(-29.994px, -37.50938px);
	transform: translate(-29.994px, -37.50938px);
	-webkit-animation: none;
	animation: none;
}

.css3-spinner-triangle-path > div {
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	position: absolute;
	width: 10px;
	height: 10px;
	border-radius: 100%;
	background-color: #DDD;
}

.css3-spinner-triangle-path > div:nth-child(1) {
	-webkit-animation: ball-triangle-path-1 2s 0s ease-in-out infinite;
	animation: ball-triangle-path-1 2s 0s ease-in-out infinite;
}

.css3-spinner-triangle-path > div:nth-child(2) {
	-webkit-animation: ball-triangle-path-2 2s 0s ease-in-out infinite;
	animation: ball-triangle-path-2 2s 0s ease-in-out infinite;
}

.css3-spinner-triangle-path > div:nth-child(3) {
	-webkit-animation: ball-triangle-path-3 2s 0s ease-in-out infinite;
	animation: ball-triangle-path-3 2s 0s ease-in-out infinite;
}

.css3-spinner-triangle-path > div:nth-of-type(1) { top: 50px; }

.css3-spinner-triangle-path > div:nth-of-type(2) { left: 25px; }

.css3-spinner-triangle-path > div:nth-of-type(3) {
	top: 50px;
	left: 50px;
}

@-webkit-keyframes ball-triangle-path-1 {
  33% {
	-webkit-transform: translate(25px, -50px);
	transform: translate(25px, -50px); }

  66% {
	-webkit-transform: translate(50px, 0px);
	transform: translate(50px, 0px); }

  100% {
	-webkit-transform: translate(0px, 0px);
	transform: translate(0px, 0px); }
}

@keyframes ball-triangle-path-1 {
  33% {
	-webkit-transform: translate(25px, -50px);
	transform: translate(25px, -50px); }

  66% {
	-webkit-transform: translate(50px, 0px);
	transform: translate(50px, 0px); }

  100% {
	-webkit-transform: translate(0px, 0px);
	transform: translate(0px, 0px); }
}

@-webkit-keyframes ball-triangle-path-2 {
  33% {
	-webkit-transform: translate(25px, 50px);
	transform: translate(25px, 50px); }

  66% {
	-webkit-transform: translate(-25px, 50px);
	transform: translate(-25px, 50px); }

  100% {
	-webkit-transform: translate(0px, 0px);
	transform: translate(0px, 0px); }
}

@keyframes ball-triangle-path-2 {
  33% {
	-webkit-transform: translate(25px, 50px);
	transform: translate(25px, 50px); }

  66% {
	-webkit-transform: translate(-25px, 50px);
	transform: translate(-25px, 50px); }

  100% {
	-webkit-transform: translate(0px, 0px);
	transform: translate(0px, 0px); }
}

@-webkit-keyframes ball-triangle-path-3 {
  33% {
	-webkit-transform: translate(-50px, 0px);
	transform: translate(-50px, 0px); }

  66% {
	-webkit-transform: translate(-25px, -50px);
	transform: translate(-25px, -50px); }

  100% {
	-webkit-transform: translate(0px, 0px);
	transform: translate(0px, 0px); }
}

@keyframes ball-triangle-path-3 {
  33% {
	-webkit-transform: translate(-50px, 0px);
	transform: translate(-50px, 0px); }

  66% {
	-webkit-transform: translate(-25px, -50px);
	transform: translate(-25px, -50px); }

  100% {
	-webkit-transform: translate(0px, 0px);
	transform: translate(0px, 0px); }
}


.css3-spinner > .css3-spinner-ball-pulse-sync {
	width: 70px;
	height: 34px;
	margin-left: -35px;
	margin-top: -17px;
	background-color: transparent !important;
	-webkit-animation: none;
	animation: none;
}

.css3-spinner-ball-pulse-sync > div {
	display: inline-block;
	background-color: #DDD;
	width: 14px;
	height: 14px;
	margin: 10px 3px 0;
	border-radius: 100%;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.css3-spinner-ball-pulse-sync > div:nth-child(0) {
	-webkit-animation: ball-pulse-sync 0.7s -0.21s infinite ease-in-out;
	animation: ball-pulse-sync 0.7s -0.21s infinite ease-in-out;
}

.css3-spinner-ball-pulse-sync > div:nth-child(1) {
	-webkit-animation: ball-pulse-sync 0.7s -0.14s infinite ease-in-out;
	animation: ball-pulse-sync 0.7s -0.14s infinite ease-in-out;
}

.css3-spinner-ball-pulse-sync > div:nth-child(2) {
	-webkit-animation: ball-pulse-sync 0.7s -0.07s infinite ease-in-out;
	animation: ball-pulse-sync 0.7s -0.07s infinite ease-in-out;
}

.css3-spinner-ball-pulse-sync > div:nth-child(3) {
	-webkit-animation: ball-pulse-sync 0.7s 0s infinite ease-in-out;
	animation: ball-pulse-sync 0.7s 0s infinite ease-in-out;
}


@-webkit-keyframes ball-pulse-sync {
  33% {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0.85;
	}

  66% {
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
	opacity: 0.7;
	}

  100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
	}
}

@keyframes ball-pulse-sync {
  33% {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0.85;
	}

  66% {
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
	opacity: 0.7;
	}

  100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
	}
}


.css3-spinner > .css3-spinner-scale-ripple {
	width: 50px;
	height: 50px;
	margin-left: -25px;
	margin-top: -25px;
	background-color: transparent !important;
	-webkit-animation: none;
	animation: none;
}

.css3-spinner-scale-ripple > div {
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	position: absolute;
	top: 0;
	width: 50px;
	height: 50px;
	border-radius: 100%;
	border: 2px solid #DDD;
	-webkit-animation: ball-scale-ripple-multiple 1.4s 0s infinite cubic-bezier(.21, .53, .56, .8);
	animation: ball-scale-ripple-multiple 1.4s 0s infinite cubic-bezier(.21, .53, .56, .8);
}

.css3-spinner-scale-ripple > div:nth-child(0) {
	-webkit-animation-delay: -0.8s;
	animation-delay: -0.8s;
}

.css3-spinner-scale-ripple > div:nth-child(1) {
	-webkit-animation-delay: -0.6s;
	animation-delay: -0.6s;
}

.css3-spinner-scale-ripple > div:nth-child(2) {
	-webkit-animation-delay: -0.4s;
	animation-delay: -0.4s;
}

.css3-spinner-scale-ripple > div:nth-child(3) {
	-webkit-animation-delay: -0.2s;
	animation-delay: -0.2s;
}


@-webkit-keyframes ball-scale-ripple-multiple {
  0% {
	-webkit-transform: scale(0.1);
			transform: scale(0.1);
	opacity: 1; }

  70% {
	-webkit-transform: scale(1);
			transform: scale(1);
	opacity: 0.7; }

  100% {
	opacity: 0.0; }
}

@keyframes ball-scale-ripple-multiple {
  0% {
	-webkit-transform: scale(0.1);
			transform: scale(0.1);
	opacity: 1; }

  70% {
	-webkit-transform: scale(1);
			transform: scale(1);
	opacity: 0.7; }

  100% {
	opacity: 0.0; }
}
